autograph
Schema-as-code enforcement for any Obsidian vault. Zero hardcoded domains. Use when creating vault cards, checking vault health, running schema compliance,…
Diagnose and repair a broken or non-standard agent-second-brain install/migration. Triggers — upgrade.sh failed, bot won't start after upgrade, "миграция сломалась", "бот не стартует после обновления", legacy d-brain units still present, brain session won't boot, doctor reports
$ npx -y skills add smixs/agent-second-brain --skill migrate-doctor --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/migrate-doctorContext preview
The summary Claude sees to decide when to auto-load this skill.
Diagnose and repair a broken or non-standard agent-second-brain install/migration. Triggers — upgrade.sh failed, bot won't start after upgrade, "миграция сломалась", "бот не стартует после обновления", legacy d-brain units still present, brain session won't boot, doctor reports
name: migrate-doctor description: Diagnose and repair a broken or non-standard agent-second-brain install/migration. Triggers — upgrade.sh failed, bot won't start after upgrade, "миграция сломалась", "бот не стартует после обновления", legacy d-brain units still present, brain session won't boot, doctor reports failures.
You are running INSIDE an interactive Claude Code session on the user's server (subscription billing — this is the supported way to use AI for repair). Your job: get a broken or half-migrated install to a healthy v3.0 state. The deterministic path is `bash upgrade.sh` — your job is to diagnose WHY it fails, remove the obstacle, and re-run it. Do not re-implement the migration by hand unless upgrade.sh itself cannot work.
| Version | Markers | Notes | |---|---|---| | v1 (Dec 2025) | system-level `/etc/systemd/system/d-brain-bot.service`, `TODOIST_API_KEY` in .env, mcp-config.json | Todoist/MCP era, `claude -p` per message | | v2 | `d-brain-*` units, `claude -p`/`claude --print` pipeline, weekly timer | headless calls — dead after 2026-06-15 billing change | | v3.0 (target) | `dbrain-*` systemd **--user** units, persistent tmux brain, `~/.dbrain/` runtime dir, cron subsystem | interactive session on subscription |
# What's installed and running? systemctl --user list-units 'dbrain-*' --all sudo systemctl list-units 'd-brain-*' --all # legacy system-level ls ~/.dbrain/ 2>/dev/null # runtime dir (v3) tmux ls 2>/dev/null # brain sessions git -C ~/projects/agent-second-brain log --oneline -3 cat ~/projects/agent-second-brain/.env | grep -v 'TOKEN\|KEY' # never print secrets claude auth status --json # needs "loggedIn": true journalctl --user -u dbrain-bot -n 50 --no-pager
1. **Backup before any destructive step**: `tar czf ~/dbrain-backup-$(date +%s).tgz -C ~/projects agent-second-brain --exclude=.venv` and note the current commit (`git rev-parse HEAD`). 2. **Never modify or delete vault content** (`vault/daily`, notes, cards). The vault is the user's data; migration touches code, units and runtime files only. 3. **Prefer re-running `bash upgrade.sh`** after each fix — it is idempotent. Fix the obstacle, not the symptom. 4. Typical obstacles and fixes:
5. **Report honestly**: if a step failed, say so with the output. Never claim health you didn't verify.
bash scripts/check-no-claude-p.sh # guard clean systemctl --user is-active dbrain-bot dbrain-watchdog dbrain-process.timer dbrain-doctor.timer uv run python -m d_brain.services.doctor # ok=True cat ~/.dbrain/STATUS.md # state: healthy
Finish with a short summary: what was broken, what you changed, what the user should watch for. Suggest sending the bot a test voice message.
An always-on second brain you talk to. Voice notes in Telegram → typed, linked knowledge in your Obsidian vault. Runs 24/7 on the Claude subscription you already have.
Schema-as-code enforcement for any Obsidian vault. Zero hardcoded domains. Use when creating vault cards, checking vault health, running schema compliance,…
Управление собственным расписанием — напоминания, рутины, периодические задачи. Триггеры — "напомни", "каждый день/час/утро", "по расписанию", "schedule",…
Personal assistant for processing daily voice/text entries from Telegram. Classifies content, saves thoughts to Obsidian with wiki-links, generates HTML…