Skip to content
Agentmart
Submit a tool

self-diagnose

Sutando introspection — read logs + git + memory + build log for a chosen time window and produce a concise narrative of what the agent has been doing, what's…

Skill by sonichi

IndexedMIT★ 400
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/sonichi-self-diagnose

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Sutando introspection — read logs + git + memory + build log for a chosen time window and produce a concise narrative of what the agent has been doing, what's broken, and what to prioritize next.

Use cases: agent-building

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found
Runs as
Shell scripts

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/self-diagnose

What's inside

Skill name
self-diagnose
Description
Sutando introspection — read logs + git + memory + build log for a chosen time window and produce a concise narrative of what the agent has been doing, what's broken, and what to prioritize next.
License
MIT
Instructions
68 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts

Files (6)

  • SKILL.md
  • manifest.json
  • capped-capture.sh · scripts/
  • gather-remote.sh · scripts/
  • gather.sh · scripts/
  • test-gather.sh · scripts/

SKILL.md (first lines)

# Self-Diagnose

Read Sutando's own observable state (logs, git, memory, build log, pending questions, health check, cold-review log) over a chosen window and produce a structured narrative:

- **What's been happening** — significant events, PRs shipped, tasks processed, user interactions
- **What's broken** — errors in logs, pending questions, health-check failures, 1006/1011/1007 transport events, unresolved bugs surfaced in logs
- **What I'd do next** — concrete prioritized actions grounded in what was observed

**Usage**: `/self-diagnose [--since 24h]`

ARGUMENTS: `$ARGUMENTS`

## Flow

1. **Gather.** Run `bash skills/self-diagnose/scripts/gather.sh [window]` — collects log tails, git log, build_log.md tail, pending-questions, health-check output, cold-review-log, and recent Discord activity into `/tmp/sutando-diagnose-<ts>/`.
2. **Synthesize.** Read each gathered file. Group findings under the three headings above. Be concrete: cite log lines, PR numbers, timestamps. Skip speculation.
3. **Save.** Write the report to `notes/diagnose-YYYY-MM-DD-HHMM.md` with frontmatter (`title`, `date`, `tags: [diagnose, self]`).
4. **Summarize.** Reply to the caller with a 5–10 line executive summary + path to the full report.

## Cross-node mode (resolves #421)

When Sutando works on one machine but is broken on another, the helper script
runs `gather.sh` on both sides over SSH and produces a structured comparison:

```bash
bash skills/self-diagnose/scripts/gather-remote.sh <ssh-target> [window]
# e.g.
bash skills/self-diagnose/scripts/gather-remote.sh mac-mini
bash skills/self-diagnose/scripts/gather-remote.sh user@macbook.local 6h
```

Output: `/tmp/sutando-diagnose-cross-<ts>/{local,remote,diff.md}` plus a
persisted copy at `notes/diagnose-cross-node-<YYYY-MM-DD>.md`. The comparison
report surfaces commit drift, health-check differences, voice-agent error
counts, quota state, and PR-view divergence per side.

Override the remote sutando path via `SUTANDO_REMOTE_REPO=/path/on/peer` if
the failing node's checkout isn't at the default `~/Desktop/sutando`.

**Security posture** (per #421): read-only on the remote (only gather.sh
runs there, no mutation), allowlist enforced by gather.sh's existing scope
(no `.env`, no tokens), per-session SSH (no daemon, no persistent state on
the remote).

## Default window

24 hours if unspecified. Accept: `24h`, `3d`, `1w`. Longer windows = broader scope, higher token cost.

## What a good report looks like

- Cites specific log timestamps (`18:28:16 — transport 1006 after NoteView injection`) rather than "some errors happened"
- Lists PRs by number + status (`#394 mergeable no reviews`, `#354 retention sweep open`)
- Separates recurring from one-off issues
- Prioritizes "what I'd do next" by impact and blocking, not by what's most recent

## What to skip

- Verbose log dumps — the gathered files are on disk already; just reference them
- Speculation without log evidence — "maybe the Gemini server is..." should be backed by a log line showing the close code and preceding event
- Restating CLAUDE.md / build_log.md content — those are already durable; only surface what's NEW in the window

## Related

- `notes/cold-review-capability.md` — sister capability for PR-level review
- `notes/voice-transport-1006-hypothesis.md` — example of the depth of analysis a self-diagnose report should match
- `build_log.md` — the canonical "what has been built" log; complements but doesn't replace

From sonichi/sutando, MIT.

More from sonichi/sutando

Signals

Stars
400
Forks
98
Open issues
1,202
Last commit (this folder)
Oct 3, 2026 (26 days ago)
Last release
Aug 20, 2026 (2 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
Website
sutando.ai
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from sonichi

Cite this page

self-diagnose skill. Agent Mart. https://agentmart.dev/skills/sonichi-self-diagnose (last updated 2026-10-24)