Claude-skill-registry logs
View shella daemon and plugin logs. Use when debugging issues, checking what happened, or monitoring plugin output.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/logs" ~/.claude/skills/majiayu000-claude-skill-registry-logs && rm -rf "$T"
manifest:
skills/data/logs/SKILL.mdsource content
Shella Logs
View daemon and plugin logs from
~/.local/state/shella/dev.log.
Arguments
may contain:$ARGUMENTS- A plugin name to filter by (e.g., "agent", "terminal")
- A number of lines to show (default: 50)
- "all" to show more lines
- "errors" or "error" to filter to errors/warnings only
Log File Location
~/.local/state/shella/dev.log
Each line is JSON with fields:
time, level, prefix, msg, and optional data fields.
Commands
Recent logs (last 50 lines):
tail -50 ~/.local/state/shella/dev.log
Filter by plugin (prefix field contains plugin name):
grep '"prefix":"agent' ~/.local/state/shella/dev.log | tail -50
Errors only:
grep '"level":"error"' ~/.local/state/shella/dev.log | tail -50
Parse and format for readability - extract time, prefix, level, msg:
tail -50 ~/.local/state/shella/dev.log | while read line; do echo "$line" | python3 -c "import sys,json; d=json.loads(sys.stdin.read()); print(f'{d.get(\"prefix\",\"daemon\"):20} {d.get(\"level\",\"info\"):5} {d.get(\"msg\",\"\")}')" 2>/dev/null || echo "$line" done
Output
Present logs in a readable format. For JSON lines, extract the key fields (timestamp, prefix, level, message). Highlight errors in your response.
If the log file doesn't exist, tell the user the daemon hasn't been run yet or logs are empty.