From b4d1bb0b12d9c761b27b9eb3bd63cb1704aff1a8 Mon Sep 17 00:00:00 2001 From: Jeremy Daer Date: Wed, 29 Jul 2026 01:36:10 -0700 Subject: [PATCH] Ship a Claude Code bridge in the CLI seed Claude Code reads CLAUDE.md, not AGENTS.md, so a generated CLI's AGENTS.md was invisible to it while Codex and Cursor read it fine. The seed already shipped .claude-plugin/ and AGENTS.md.tmpl but no bridge, which is why dash-cli -- the only CLI generated after this seed existed -- was born with no working Claude Code instructions at all. The bridge is copied verbatim rather than templated: it holds a single import and no substitutable values. It lives at .claude/CLAUDE.md so the repository root stays uncluttered, which is why the import is @../AGENTS.md. --- prompts/seed-cli.md | 3 +++ seed/.claude/CLAUDE.md | 1 + 2 files changed, 4 insertions(+) create mode 100644 seed/.claude/CLAUDE.md diff --git a/prompts/seed-cli.md b/prompts/seed-cli.md index a2f3160..af02d56 100644 --- a/prompts/seed-cli.md +++ b/prompts/seed-cli.md @@ -23,6 +23,8 @@ You are creating a new Go CLI for a 37signals product using the seed templates. ├── e2e/ ├── skills/ ├── scripts/ + ├── .claude/ + │ └── CLAUDE.md ├── .claude-plugin/ ├── .github/ │ ├── workflows/ @@ -74,6 +76,7 @@ You are creating a new Go CLI for a 37signals product using the seed templates. **Docs & project config:** - `seed/AGENTS.md.tmpl` → `AGENTS.md` (fill in app name) + - `seed/.claude/CLAUDE.md` → `.claude/CLAUDE.md` (copy as-is; Claude Code reads CLAUDE.md, not AGENTS.md) - `seed/CONTRIBUTING.md.tmpl` → `CONTRIBUTING.md` (fill in app name) - `seed/API-COVERAGE.md.tmpl` → `API-COVERAGE.md` (fill in app name) - `seed/RELEASING.md.tmpl` → `RELEASING.md` (fill in app name, org, repo) diff --git a/seed/.claude/CLAUDE.md b/seed/.claude/CLAUDE.md new file mode 100644 index 0000000..dba71e9 --- /dev/null +++ b/seed/.claude/CLAUDE.md @@ -0,0 +1 @@ +@../AGENTS.md