CLAUDE.md@plugins/itp · git:20261001.d013546 · 2026-10-01 · sha256 191d173569019069

CLAUDE.md@plugins/itp git:20261001.d013546A

Immutable. This exact content never changes and is served at /api/v1/blob/191d173569019069.

# itp Plugin

> Implement-The-Plan workflow: ADR-driven 4-phase development with preflight, implementation, formatting, and release automation.

**Hub**: [Root CLAUDE.md](../../CLAUDE.md) | **Sibling**: [itp-hooks CLAUDE.md](../itp-hooks/CLAUDE.md)

**Keep the acronym neutral**: "ITP" avoids the action inference that caused Claude to skip preflight. Do not rename it to a verb.

## 4-Phase Workflow

```
Preflight (ADR + Spec) → Phase 1 (Implement) → Phase 2 (Format) → Phase 3 (Release)
```

1. **Preflight**: Creates ADR (MADR 4.0) and design spec
2. **Phase 1**: Implement from design spec with TodoWrite tracking
3. **Phase 2**: Format with Prettier, push to GitHub
4. **Phase 3**: Release via the repo's own release task (main/master only)

## Plan Mode Bridge

Two paths from Plan Mode to `/itp:go`:

| Path                              | Steps          | Interface                               |
| --------------------------------- | -------------- | --------------------------------------- |
| **A**: Type in rejection feedback | Fewer (direct) | Plain text field                        |
| **B**: Defer to command prompt    | Extra step     | Native slash commands with autocomplete |

## Skills

- [adr-code-traceability](./skills/adr-code-traceability/SKILL.md)
- [bootstrap-monorepo](./skills/bootstrap-monorepo/SKILL.md)
- [code-hardcode-audit](./skills/code-hardcode-audit/SKILL.md)
- [go](./skills/go/SKILL.md)
- [impl-standards](./skills/impl-standards/SKILL.md)
- [implement-plan-preflight](./skills/implement-plan-preflight/SKILL.md)
- [pypi-doppler](./skills/pypi-doppler/SKILL.md)
- [setup](./skills/setup/SKILL.md)

## Commands

| Command      | Purpose                                        |
| ------------ | ---------------------------------------------- |
| `/itp:go`    | Execute 4-phase workflow                       |
| `/itp:setup` | Install dependencies and configure environment |

For release, run the repo's own release task directly — in a moon repo that is `moon run <project>:release-full` (here: `moon run repo:release-full`).

**`/itp:tether` was retired (issue #127)**: it drove `scripts/manage-hooks.sh`, which injected itp-hooks entries into `~/.claude/settings.json` back when Claude Code did not load a plugin's own `hooks/hooks.json`. It does now — `plugins/itp-hooks/hooks/hooks.json` registers `posttooluse-reminder.ts` itself, so the injection would have fired the hook twice per matching event. The installer had also been inert since `posttooluse-reminder.sh` was renamed to `.ts`, and its second entry (`pretooluse-fake-data-guard.mjs`) was deliberately unregistered in `e6c665a9` for blocking legitimate writes and deleted on 2026-10-01.

## Dependencies

| Tool     | Install               | Notes                              |
| -------- | --------------------- | ---------------------------------- |
| uv       | `proto install uv`    | Or `brew install uv`               |
| gh       | `brew install gh`     | Homebrew only (iTerm2 issues)      |
| prettier | `bun add -g prettier` | Bun-first policy                   |