groove-admin-doctor — Claude Code skill: checks and setup
Runs Groove health checks for the repository, versions, companion skills, symlinks, and native hooks. It helps locate setup issues before work starts.
npx skills add andreadellacorte/groove --skill groove-admin-doctor -a claude-codeWhat groove-admin-doctor does
This skill checks the Git repository first, then compares Groove versions and runs /groove-utilities-task-doctor and /groove-utilities-memory-doctor. It also looks for find-skills, agent-browser, and pdf-to-markdown, then verifies Groove symlinks under .claude/skills/ and .cursor/skills/.
For Claude Code, it reads .claude/settings.json and checks for six Groove hook entries. When .cursor/ is present, it performs the matching check in .cursor/hooks.json. Results are collected before output, with a per-check status, an overall health message, and a repair command beside each failure.
The skill reports issues but does not repair them. A Git repository is required for the first check, so a project outside Git is reported as unhealthy.
What it helps with
- verify that the project is a Git repository
- compare local and installed Groove versions
- find missing companion skills
- check Groove symlinks in
.claude/and.cursor/ - detect missing native hook entries
Example prompts for the agent
- Run every Groove health check in the current repository and list a repair command for each failure.
- Check the companion skills and Groove symlinks for Claude Code and Cursor.
- Inspect the Claude Code and Cursor native hooks, then show the consolidated Groove report.
How to install groove-admin-doctor
1Skills CLI (Vercel)
npx skills add andreadellacorte/groove --skill groove-admin-doctor -a claude-code2Manually: put the files in place
~/.claude/skills/groove-admin-doctor/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/groove-admin-doctor/
1Skills CLI (Vercel)
npx skills add andreadellacorte/groove --skill groove-admin-doctor -a codex2Manually: put the files in place
.agents/skills/groove-admin-doctor/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add andreadellacorte/groove --skill groove-admin-doctor -a cursor2Manually: put the files in place
.cursor/skills/groove-admin-doctor/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install andreadellacorte/groove groove-admin-doctor2Manually: put the files in place
.github/skills/groove-admin-doctor/SKILL.md1Skills CLI (Vercel)
npx skills add andreadellacorte/groove --skill groove-admin-doctor -a gemini-cli2Platform CLI
gemini skills install https://github.com/andreadellacorte/groove --path skills/groove-admin-doctorManually: put the files in place
.devin/skills/groove-admin-doctor/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add andreadellacorte/groove --skill groove-admin-doctor -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about groove-admin-doctor
How do I install groove-admin-doctor in Claude Code?
Run npx skills add andreadellacorte/groove --skill groove-admin-doctor -a claude-code, then open ~/.claude/skills/groove-admin-doctor/SKILL.md.
What does groove-admin-doctor do?
It checks the repository, Groove versions, companion skills, symlinks, and native hooks for Claude Code and Cursor. The report shows each check and a repair command for failures.
Does the skill fix detected issues automatically?
No. It reports the findings and prints a concrete command for each failed check.
Source text
SKILL.md · MIT
---
name: groove-admin-doctor
description: "Run all groove health checks: config, backends, companions, AGENTS.md."
license: MIT
allowed-tools: Read Write Edit Glob Grep Bash(git:*) Bash(beans:*) Bash(gh:*) Bash(linear:*) Bash(npx:*) Bash(mkdir:*) AskUserQuestion
metadata:
author: andreadellacorte
---
<!-- groove:managed — do not edit; changes will be overwritten by groove update -->
# groove-admin-doctor
## Outcome
All groove sub-skill health checks are run and a consolidated summary is reported. User knows exactly what is working, what is misconfigured, and what action to take for any failure.
## Acceptance Criteria
- `/groove-utilities-task-doctor` and `/groove-utilities-memory-doctor` are run
- Companion skill presence is checked directly
- Results are shown per sub-skill with pass/fail per check
- Overall status is shown: all healthy, or N issues found
- Each failure includes a specific remediation action
## Output format
```
groove doctor
─────────────────────────────────────
groove
✓ git repo: detected
✓ groove-version: 0.1.0
✓ installed version: 0.1.0
✓ up to date
task
✓ .groove/index.md present
✓ tasks.backend: beans
✓ beans installed (v0.x.x)
✓ .beans.yml present
✓ beans reachable
memory
✓ memory path exists (.groove/memory/) [hardcoded]
✓ memory dirs exist (.groove/memory/daily/, weekly/, monthly/, git/)
companions
✓ find-skills installed
✓ agent-browser installed
✓ pdf-to-markdown installed
platform symlinks
✓ .claude/skills/groove → ../../.agents/skills/groove
✗ .cursor/skills/ missing — run: /groove-admin-install
─────────────────────────────────────
1 issue found. Run the suggested commands above to fix.
```
## Constraints
- Run git repo check first, then version check, then `/groove-utilities-task-doctor`, `/groove-utilities-memory-doctor`, companions check in sequence
- Git repo check:
- Run `git rev-parse --is-inside-work-tree` in the current directory
- If it succeeds: `✓ git repo: detected`
- If it fails: `✗ git repo: not a git repository — groove requires a git repo`
- Version check:
- Read `groove-version:` from `.groove/index.md` (if absent, treat as `0.1.0`)
- Read `version:` from `skills/groove/SKILL.md`
- If they differ: `✗ groove-version (<local>) behind installed (<installed>) — run: /groove-admin-update`
- Companions check:
- Check `ls .agents/skills/find-skills/SKILL.md` — if absent: `✗ find-skills not installed — run: /groove-admin-install`
- Check `ls .agents/skills/agent-browser/SKILL.md` — if absent: `✗ agent-browser not installed — run: /groove-admin-install`
- Check `ls .agents/skills/pdf-to-markdown/SKILL.md` — if absent: `✗ pdf-to-markdown not installed — run: /groove-admin-install`
- Platform symlinks check (after companions):
- For each `groove-*` directory in `.agents/skills/`: check that `.claude/skills/<name>` is a symlink pointing to `../../.agents/skills/<name>`
- If missing or not a symlink: `✗ .claude/skills/<name> not a symlink — run: /groove-admin-install`
- If symlink is broken (target doesn't exist): `✗ .claude/skills/<name> broken symlink — run: /groove-admin-install`
- Check if `.cursor/skills/` directory exists:
- If absent: `✗ .cursor/skills/ missing — run: /groove-admin-install`
- If present: check each groove symlink as above
- All symlinks healthy: `✓ platform symlinks (.claude/, .cursor/)`
- Claude Code native hooks check (after platform symlinks):
- Check if `.claude/settings.json` exists
- If it exists: parse JSON and verify groove's hook entries are present (`daily-end-reminder`, `git-activity-buffer`, `block-managed-paths`, `context-reprime`, `version-check`, `session-capture` commands in the `hooks` key)
- Each missing entry: `✗ .claude/settings.json missing groove hook <name> — run: /groove-admin-claude-hooks`
- If absent: `ℹ .claude/settings.json not present — run /groove-admin-claude-hooks to install native hooks (optional)`
- All present: `✓ Claude Code native hooks (daily-end-reminder, git-activity-buffer, block-managed-paths, context-reprime, version-check, session-capture)`
- Cursor native hooks check (after Claude Code hooks):
- Check if `.cursor/` directory exists
- If `.cursor/` exists:
- Check if `.cursor/hooks.json` exists
- If it exists: parse JSON and verify groove's hook entries are present (`context-reprime`, `daily-end-reminder`, `git-activity-buffer`, `block-managed-paths`, `version-check`, `session-capture` commands in the `hooks` key)
- Each missing entry: `✗ .cursor/hooks.json missing groove hook <name> — run: /groove-admin-cursor-hooks`
- If absent: `ℹ .cursor/hooks.json not present — run /groove-admin-cursor-hooks to install native hooks (optional)`
- All present: `✓ Cursor native hooks (context-reprime, daily-end-reminder, git-activity-buffer, block-managed-paths, version-check, session-capture)`
- If `.cursor/` absent: skip silently (Cursor not in use)
- Collect all results before printing — do not interleave output with check progress
- Each `✗` item must include a concrete remediation command on the same line
- Exit with a clear "all healthy" message if no issues found
- Do not attempt to auto-fix issues — report only
© andreadellacorte · MIT · andreadellacorte/groove