coco-research / coco-research/coco

[GFI] Add a `coco doctor` health-check command

Open
#26 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement good first issue
Dominant language
HTML
Stars
347
Forks
12
Avg merge
7d 6h
Merged PRs (30d)
80

Description

Goal

Add a coco doctor health-check that diagnoses a Coco install and prints a clear pass/fail report. New users currently have no single command to confirm everything wired up correctly.

What it should check

  • Required tools present: git, bash, python3 (and node for the npm CLI)
  • Detected IDE/adapter (~/.claude, ~/.cursor, VS Code, Codex)
  • Symlinks resolve (no dangling links into the repo)
  • Installed bundles (gsd / brain / team / superintelligence) and their asset counts
  • For Superintelligence: that SI commands were generated (per-team + meta)
  • Installed version + whether an update is available (reuse scripts/check-update.sh)

Files involved

  • scripts/doctor.sh (new), or a doctor subcommand in bin/coco.js
  • Wire a mention into install.sh output and the README "Staying Current" section

Acceptance criteria

  • bash scripts/doctor.sh (or coco doctor) prints a readable report with ✓/✗ per check
  • Exit code non-zero when a hard requirement is missing
  • Offline-safe; no telemetry
  • CI passes (install script syntax check)

Hints

  • Reuse the detection logic in install.sh (detect_adapter) and scripts/check-update.sh.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with install.sh's detect_adapter logic and scripts/check-update.sh, then compare scripts/doctor.sh with a doctor subcommand in bin/coco.js. Trace the existing install output and the README "Staying Current" section. Done means the command reports each check with ✓/✗, returns non-zero for missing hard requirements, remains offline-safe, and passes the install script syntax check in CI.

Written by the indexing model from the issue text.

Assessment

Tech stack
bash, git, node.js, python, shell
Domain
cli, developer-experience, devtools
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.