analyze-repo
Analyze an existing repository's structure, conventions, and guardrails.
Interactive wizard that configures Maggy for the user's org, issue tracker, and codebases. Writes `~/.maggy/config.yaml` and ensures deps are installed.
$ npx -y skills add alinaqi/claude-bootstrap --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
/maggy-initContext preview
What this command does when you run it.
Interactive wizard that configures Maggy for the user's org, issue tracker, and codebases. Writes `~/.maggy/config.yaml` and ensures deps are installed.
Interactive wizard that configures Maggy for the user's org, issue tracker, and codebases. Writes `~/.maggy/config.yaml` and ensures deps are installed.
---
`/maggy-init` — run the full setup wizard
---
BOOTSTRAP_DIR=$(cat ~/.claude/.bootstrap-dir) cd "$BOOTSTRAP_DIR/maggy" ./install.sh
This installs Python deps and copies the config template to `~/.maggy/config.yaml`.
Ask the user:
1. **Org name** — human-readable name (e.g. "Acme Corp") 2. **Domain** — primary competitive domain (e.g. "fintech", "devtools", "cx", "healthcare"). This drives competitor discovery. 3. **Issue tracker** — `github` (default) or `asana`. Linear is a stub. 4. **For GitHub:** org name + comma-separated repo list (`acmecorp/api, acmecorp/web`) 5. **For Asana:** workspace ID + project GID for their default board 6. **Codebases** — paths to each repo Maggy should execute in. Prompt key per path (short name like `api`, `web`). 7. **Competitor categories** — comma-separated (can match domain; encourages 1-3 categories) 8. **OKRs** — "skip" or "yaml" (paste OKRs inline if yaml)
Patch `~/.maggy/config.yaml` with the user's answers using a Python helper:
import yaml
from pathlib import Path
cfg_path = Path.home() / ".maggy" / "config.yaml"
cfg = yaml.safe_load(cfg_path.read_text())
cfg["org"]["name"] = "<answer>"
cfg["org"]["domain"] = "<answer>"
cfg["issue_tracker"]["provider"] = "<answer>"
# ... set github/asana section accordingly
cfg["codebases"] = [{"path": "<path>", "key": "<key>"}, ...]
cfg["competitors"]["categories"] = ["<cat>", ...]
cfg_path.write_text(yaml.safe_dump(cfg, sort_keys=False))Tell the user to export these in their shell and source them when starting Maggy:
export GITHUB_TOKEN=ghp_... # repo + issues scopes export ANTHROPIC_API_KEY=sk-ant-...
**Do not write tokens to `~/.maggy/.env`** — the Maggy server does not load that file automatically, so credentials would sit on disk in plaintext with no code reading them. Use your shell's standard secret store (e.g. `.zshrc`, `direnv`, `op run`, a secrets manager) or export them inline when launching Maggy.
cd "$BOOTSTRAP_DIR/maggy"
python3 -c "from src import config, providers; cfg = config.load(); p = providers.build(cfg); import asyncio; print('Found', len(asyncio.run(p.list_tasks(limit=5))), 'tasks')"If this returns tasks, setup is working.
> Maggy is configured. Run `/maggy` to launch the dashboard, or: > > ``` > cd $BOOTSTRAP_DIR/maggy && python3 -m maggy.main > ``` > > Then open http://127.0.0.1:8080
---
Turn Claude Code into a self-reviewing, test-enforced engineering system that remembers context across sessions — then route work across 13 models from a single dashboard.
Repo: alinaqi/claude-bootstrap
Analyze an existing repository's structure, conventions, and guardrails.
Full dynamic analysis of workspace topology, dependencies, and contracts.
Build-in-Public — generate posts from your engineering work, anonymize, and schedule via Buffer
Checks who's working on the project and optionally converts to a multi-person project with team state management.
Infer ReasonNodes from existing git commit history. One-time setup for existing codebases.
Run a full drift scan and display all unresolved drift events, grouped by dimension and sorted by severity.