@alexandrealvaro/agentic 0.1.0-beta.1 → 0.2.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +79 -58
  2. package/WORKFLOW.md +1 -1
  3. package/package.json +5 -3
  4. package/prompts/agents.md +12 -4
  5. package/prompts/architecture.md +13 -3
  6. package/prompts/task.md +26 -0
  7. package/src/commands/init.js +233 -71
  8. package/src/index.js +3 -5
  9. package/src/lib/detect.js +113 -1
  10. package/src/lib/install.js +148 -0
  11. package/src/lib/rootdoc.js +123 -0
  12. package/src/skills/claude-code/agentic-adr/SKILL.md +62 -0
  13. package/src/skills/claude-code/agentic-architecture/SKILL.md +104 -0
  14. package/src/skills/claude-code/agentic-audit/SKILL.md +51 -0
  15. package/src/skills/claude-code/agentic-bootstrap/SKILL.md +153 -0
  16. package/src/skills/claude-code/agentic-design/SKILL.md +63 -0
  17. package/{templates/agents-general.md → src/skills/claude-code/agentic-philosophy/SKILL.md} +16 -10
  18. package/src/skills/claude-code/agentic-review/SKILL.md +46 -0
  19. package/src/skills/claude-code/agentic-review/agents/fresh-context-reviewer.md +52 -0
  20. package/src/skills/claude-code/agentic-review/manifest.json +3 -0
  21. package/src/skills/claude-code/agentic-skill/SKILL.md +51 -0
  22. package/src/skills/claude-code/agentic-subagent/SKILL.md +59 -0
  23. package/src/skills/claude-code/agentic-task/SKILL.md +93 -0
  24. package/src/skills/codex/agentic-adr/SKILL.md +53 -0
  25. package/src/skills/codex/agentic-adr/agents/openai.yaml +5 -0
  26. package/src/skills/codex/agentic-architecture/SKILL.md +88 -0
  27. package/src/skills/codex/agentic-architecture/agents/openai.yaml +5 -0
  28. package/src/skills/codex/agentic-audit/SKILL.md +42 -0
  29. package/src/skills/codex/agentic-audit/agents/openai.yaml +5 -0
  30. package/src/skills/codex/agentic-bootstrap/SKILL.md +138 -0
  31. package/src/skills/codex/agentic-bootstrap/agents/openai.yaml +5 -0
  32. package/src/skills/codex/agentic-design/SKILL.md +48 -0
  33. package/src/skills/codex/agentic-design/agents/openai.yaml +5 -0
  34. package/src/skills/codex/agentic-philosophy/SKILL.md +26 -0
  35. package/src/skills/codex/agentic-philosophy/agents/openai.yaml +5 -0
  36. package/src/skills/codex/agentic-review/SKILL.md +68 -0
  37. package/src/skills/codex/agentic-review/agents/openai.yaml +5 -0
  38. package/src/skills/codex/agentic-skill/SKILL.md +42 -0
  39. package/src/skills/codex/agentic-skill/agents/openai.yaml +5 -0
  40. package/src/skills/codex/agentic-task/SKILL.md +82 -0
  41. package/src/skills/codex/agentic-task/agents/openai.yaml +5 -0
  42. package/templates/agents-project.md +5 -9
  43. package/templates/task.md +43 -0
  44. package/src/lib/render.js +0 -66
package/README.md CHANGED
@@ -2,106 +2,127 @@
2
2
 
3
3
  A starter kit for engineering production code with LLMs. Lean templates and init prompts grounded in established standards: [Anthropic Skills](https://code.claude.com/docs/en/skills), [Claude Code subagents](https://code.claude.com/docs/en/sub-agents), [agents.md](https://agents.md), Nygard ADRs, and [Google Labs DESIGN.md](https://github.com/google-labs-code/design.md).
4
4
 
5
- > **Status:** v0.1.0-betaearly. The CLI works for AGENTS.md bootstrap (`npx @alexandrealvaro/agentic@beta init`); other artifact commands are in development. The manual workflow below stays fully usable for everything. Report rough edges via [GitHub Issues](https://github.com/alexandremendoncaalvaro/agentic-development/issues).
5
+ > **Status:** v0.2 in development on the `cli` branch the CLI installs the full skill set (universal: `agentic-bootstrap`, `agentic-philosophy`, `agentic-architecture`, `agentic-adr`, `agentic-task`, `agentic-audit`, `agentic-review`; conditional: `agentic-design` for frontend, `agentic-subagent` for Claude Code, `agentic-skill` opt-in) into Claude Code or Codex. Each skill produces its artifact (or runs its operation) via the agent's native conversational UI. v0.1.0-beta on npm still prints prompts; the v0.2 release ships once the polish chunk lands. Report rough edges via [GitHub Issues](https://github.com/alexandremendoncaalvaro/agentic-development/issues).
6
6
 
7
7
  ## Prerequisites
8
8
 
9
9
  An agentic coding tool that reads markdown files. Examples here use **Claude Code** and **Codex CLI** (primary tools the author uses); the kit also works with [Antigravity](https://antigravity.google), [Gemini CLI](https://github.com/google-gemini/gemini-cli), Cursor, Continue, Aider, and any other tool that follows the [agents.md](https://agents.md) open standard.
10
10
 
11
- For the CLI path: Node.js 18+ (only needed if you use `npx`/`npm install`; the manual workflow has no runtime dependencies).
11
+ For the CLI path: Node.js 18+. The CLI is the recommended path. Paste-into-agent prompts (see [Manual prompts](#manual-prompts) below) remain as an alternative for users who don't want to run an installer — same artifacts, same patterns.
12
12
 
13
- ## What's here
13
+ For the philosophy and full reasoning behind the kit, see [WORKFLOW.md](WORKFLOW.md).
14
14
 
15
- - **[WORKFLOW.md](WORKFLOW.md)** the philosophy: how to engineer with LLMs without vibe-coding. Read this first.
16
- - **[templates/](templates/)** — pure templates. Copy and fill, or have your agent fill them via the matching prompt.
17
- - **[prompts/](prompts/)** — init prompts to paste into your agent. Each generates one artifact from its template.
18
-
19
- ## How to use
20
-
21
- This kit is a **reference repository, not a per-project dependency.** Templates and prompts stay here; only the generated artifacts (AGENTS.md, ARCHITECTURE.md, ADRs, etc.) end up in your target project. The pattern matches how [GitHub's spec-kit](https://github.com/github/spec-kit) and [cookiecutter](https://cookiecutter.readthedocs.io/) handle distribution — templates in one place, outputs in another, never mixed.
22
-
23
- ### Quickstart (CLI, beta)
24
-
25
- For AGENTS.md bootstrap, the fastest path is the CLI — no clone needed:
15
+ ## Install & use
26
16
 
27
17
  ```bash
28
18
  cd your-project
29
19
  npx @alexandrealvaro/agentic@beta init
30
20
  ```
31
21
 
32
- The CLI auto-detects greenfield/brownfield/audit mode, then prints a self-contained prompt (templates inlined) for you to paste into your agent. Add `--mode greenfield|brownfield|audit` to override detection.
22
+ The CLI installs the universal skill set into your agent's native location, plus conditional skills based on what your project needs:
33
23
 
34
- > **Beta scope:** Only `init` (AGENTS.md) is in v0.1.0-beta. For ARCHITECTURE.md, ADRs, design tokens, skills, and subagents, use the [manual workflow](#manual-workflow) below until those CLI commands ship.
24
+ * **Claude Code:** `.claude/skills/<skill-name>/SKILL.md` (plus `.claude/agents/<name>.md` for skills that ship a subagent)
25
+ * **Codex:** `.agents/skills/<skill-name>/SKILL.md` (+ `agents/openai.yaml`)
35
26
 
36
- ### Manual workflow
27
+ Two categories ([ADR-0007](doc/adr/0007-workflow-operational-skills.md)) and two installation modes (universal = always; conditional = depends on project signals or opt-in):
37
28
 
38
- Required for every artifact except AGENTS.md right now, and useful as a fallback for `init` if you want to run prompts directly without the CLI.
29
+ | Skill | Category | Installs | What it does | Invoke |
30
+ | --- | --- | --- | --- | --- |
31
+ | `agentic-bootstrap` | spec-driven | universal | Scans the repo, writes `AGENTS.md` ≤150 lines | `/agentic-bootstrap` |
32
+ | `agentic-architecture` | spec-driven | universal | Scans the code, writes `ARCHITECTURE.md` | `/agentic-architecture` |
33
+ | `agentic-adr` | spec-driven | universal | Drafts `doc/adr/NNNN-<slug>.md` from the conversation | `/agentic-adr` |
34
+ | `agentic-task` | spec-driven | universal | Drafts `doc/tasks/NNNN-<slug>.md` (checkbox + Notes format) | `/agentic-task` |
35
+ | `agentic-audit` | spec-driven | universal | Read-only drift report (AGENTS.md / ARCHITECTURE.md / ADRs) | `/agentic-audit` |
36
+ | `agentic-philosophy` | workflow-operational | universal | Universal agent guardrails — auto-loads on non-trivial work | implicit |
37
+ | `agentic-review` | workflow-operational | universal | Fresh-context code review per WORKFLOW §10; structured findings, no "approve" | `/agentic-review <range>` |
38
+ | `agentic-design` | spec-driven | auto if frontend detected | Bootstrap `DESIGN.md` from existing tokens (Figma, tailwind.config, tokens.json, CSS custom props) | `/agentic-design` |
39
+ | `agentic-subagent` | spec-driven | auto if installing for Claude Code | Drafts `.claude/agents/<name>.md` (Claude Code only — Codex has no subagent primitive) | `/agentic-subagent` |
40
+ | `agentic-skill` | spec-driven | opt-in only | Drafts a new Claude Code or Codex skill at the appropriate path | `/agentic-skill` |
39
41
 
40
- #### Setup (once)
42
+ A short TUI shows the detected mode, agent, and feature signals (frontend / `.claude/` / `.agents/` presence) and lets you toggle the conditional skills. Non-interactive flags: `--agent claude-code | codex | both`, `--yes` to skip confirmations — auto-checked conditionals (e.g., `agentic-design` if the project has React) install; `agentic-skill` stays opt-in. Re-running on an installed project is idempotent — unchanged files report `·`, divergent ones prompt to replace.
41
43
 
42
- 1. Read [`WORKFLOW.md`](WORKFLOW.md) the philosophy that everything else follows from.
43
- 2. Clone this repo to a location outside your projects:
44
+ If your project already has an `AGENTS.md` (or `CLAUDE.md`), the installer appends a managed `Skills installed by agentic` section bracketed by `<!-- agentic-managed-skills:start -->` / `:end -->` markers. User content outside those markers is byte-preserved; re-runs update only the managed block.
44
45
 
45
- ```bash
46
- git clone https://github.com/alexandremendoncaalvaro/agentic-development.git ~/dev/agentic-development
47
- ```
46
+ For persistent install:
48
47
 
49
- **Never copy this kit into your target project.** Only the generated artifacts go there.
48
+ ```bash
49
+ npm install -g @alexandrealvaro/agentic@beta
50
+ agentic init
51
+ ```
50
52
 
51
- #### Give the agent access to templates
53
+ ## Manual prompts
52
54
 
53
- When you paste a prompt from `prompts/`, the agent needs to read the matching template in `templates/`. Two ways to grant access:
55
+ If you prefer to skip the installer, the same artifacts can be generated by pasting prompts directly into your agent. Each prompt file has the literal text to copy, plus the matching template structure:
54
56
 
55
- - **Recommended** start the agent with the kit added. In Claude Code, from your target project's directory:
56
- ```
57
- claude --add-dir <path-to-this-kit>
58
- ```
59
- The agent can then read templates via the relative paths the prompts use.
60
- - **Standalone** copy the content of both `prompts/<X>.md` and `templates/<X>.md` into the agent session. No setup, slightly more friction.
57
+ | Artifact | Prompt | Template | Lives at |
58
+ | --- | --- | --- | --- |
59
+ | `AGENTS.md` | [prompts/agents.md](prompts/agents.md) | [agents-project](templates/agents-project.md) | repo root |
60
+ | `ARCHITECTURE.md` | [prompts/architecture.md](prompts/architecture.md) | [architecture](templates/architecture.md) | repo root |
61
+ | ADR | [prompts/adr.md](prompts/adr.md) | [adr](templates/adr.md) | `doc/adr/NNNN-<title>.md` |
62
+ | Task | [prompts/task.md](prompts/task.md) | [task](templates/task.md) | `doc/tasks/NNNN-<slug>.md` |
63
+ | `DESIGN.md` | [prompts/design.md](prompts/design.md) | (no template — bootstrap from existing tokens) | repo root |
64
+ | Skill | [prompts/skill.md](prompts/skill.md) | [skill](templates/skill.md) | `.claude/skills/<name>/SKILL.md` |
65
+ | Subagent | [prompts/subagent.md](prompts/subagent.md) | [subagent](templates/subagent.md) | `.claude/agents/<name>.md` |
66
+
67
+ Prompts reference templates by relative path. Two ways to give your agent access:
61
68
 
62
- #### Workflows by scenario
69
+ - **Browse on GitHub.** Open the prompt and template files in tabs, copy both into your agent session. No install.
70
+ - **Use the npm-installed package as a kit folder.** If you ran `npm install -g @alexandrealvaro/agentic@beta`, the kit is already on disk. For Claude Code from your project's directory:
71
+ ```bash
72
+ claude --add-dir "$(npm root -g)/@alexandrealvaro/agentic"
73
+ ```
74
+ The agent then reads the templates locally via the paths the prompts use.
63
75
 
64
- **New project (greenfield).** Initialize git and set up the project structure, then paste `prompts/agents.md`. The agent interviews you about stack, build, test, conventions, and security boundaries, then writes `AGENTS.md` at the repo root. As architectural and design decisions emerge, use `prompts/architecture.md`, `prompts/adr.md`, `prompts/design.md`, `prompts/skill.md`, and `prompts/subagent.md` for each new artifact.
76
+ ## Workflows by scenario
65
77
 
66
- **Existing project (brownfield).** Same prompts. The project-wide ones (`prompts/agents.md`, `prompts/architecture.md`) instruct the agent to read the codebase, verify what you told them, and flag any mismatch before writing so contradictions get surfaced instead of trusted. The per-artifact prompts (ADR, design, skill, subagent) work on a single decision or asset and don't need this verification. Backfill ADRs only for decisions that matter going forward; don't try to rewrite history.
78
+ **New project (greenfield).** Initialize git and project structure, then run `agentic init` to install the universal skill set plus any auto-detected conditional skills. From inside Claude Code or Codex: `/agentic-bootstrap` produces `AGENTS.md`, `/agentic-architecture` produces `ARCHITECTURE.md`, `/agentic-adr` records each binding decision, `/agentic-task` opens trackable work items, `/agentic-audit` flags drift, `/agentic-review <range>` runs a fresh-context review of a diff, `/agentic-design` bootstraps `DESIGN.md` from your tokens (frontend projects), `/agentic-subagent` and `/agentic-skill` scaffold custom subagents and skills. `agentic-philosophy` auto-loads on non-trivial work.
67
79
 
68
- **Revisiting / auditing existing specs.** When specs may have drifted from code, paste:
80
+ **Existing project (brownfield).** Same flow. The project-wide skills (`/agentic-bootstrap`, `/agentic-architecture`) follow a **scan-first pattern**: the agent reads the codebase first, pre-fills every placeholder it can verify, then asks you only about the genuine gaps and conflicts — no philosophical questions, no interview-by-section. The per-artifact skills (`/agentic-adr`, `/agentic-task`, `/agentic-design`, `/agentic-skill`, `/agentic-subagent`) work on a single decision or asset and don't need codebase-wide verification. Backfill ADRs only for decisions that matter going forward.
69
81
 
70
- > *"Read AGENTS.md (or ARCHITECTURE.md). Compare with the current state of the codebase. For every place where the spec disagrees with the code, list the disagreement and suggest whether the spec or the code should change. Do not rewrite the spec yourself flag and wait."*
82
+ **Revisiting / auditing existing specs.** Run `/agentic-audit` from inside Claude Code or Codex. The skill reads `AGENTS.md`, `ARCHITECTURE.md`, and `doc/adr/` and produces a drift list one finding per line, format `[file or section]: spec says X, code says Y. Suggested resolution: change spec / change code / discuss.` Read-only never rewrites specs. Apply judgment manually before changing anything.
71
83
 
72
- Apply judgment manually; don't let the agent rewrite specs unattended.
84
+ **Reviewing your own diff.** Run `/agentic-review <range>` (e.g. `/agentic-review main..HEAD` or `/agentic-review PR#42`). The skill assembles the diff, the relevant spec slice (`AGENTS.md`, applicable ADRs, the task's Acceptance Criteria), and delegates to a fresh-context reviewer subagent — no inherited bias from the session that wrote the code (WORKFLOW §10). Returns structured findings grouped Blocker / Concern / Note. Codex variant uses `/clear` + paste handoff since Codex has no subagent primitive.
73
85
 
74
- **Project already built with agents.** Treat missing artifacts as brownfield (generate via the relevant prompt) and existing artifacts as audit (run the comparison prompt above).
86
+ **Project already built with agents.** Treat missing artifacts as brownfield (run the relevant skill) and existing artifacts as audit (`/agentic-audit`).
75
87
 
76
- #### What ends up in your target project
88
+ ## What ends up in your target project
77
89
 
78
90
  Only the generated outputs — never templates, prompts, or this guide:
79
91
 
80
92
  ```
81
93
  your-project/
82
- ├── AGENTS.md
94
+ ├── AGENTS.md (with a managed "Skills installed by agentic" section
95
+ │ appended below your content if AGENTS.md already existed)
83
96
  ├── ARCHITECTURE.md
84
- ├── DESIGN.md (optional, UI projects)
97
+ ├── DESIGN.md (optional, frontend projects)
85
98
  ├── doc/
86
- └── adr/
87
- └── NNNN-<title>.md
88
- └── .claude/
89
- ├── skills/<name>/SKILL.md
90
- └── agents/<name>.md
99
+ ├── adr/
100
+ └── NNNN-<title>.md
101
+ └── tasks/
102
+ │ └── NNNN-<slug>.md
103
+ ├── .claude/ (Claude Code targets)
104
+ │ ├── skills/agentic-*/SKILL.md
105
+ │ └── agents/fresh-context-reviewer.md
106
+ └── .agents/ (Codex targets, cc-sdd convention)
107
+ └── skills/agentic-*/{SKILL.md, agents/openai.yaml}
91
108
  ```
92
109
 
93
- ### Reference table
110
+ The pattern matches how [GitHub's spec-kit](https://github.com/github/spec-kit) and [cookiecutter](https://cookiecutter.readthedocs.io/) handle distribution — templates in one place, outputs in another, never mixed.
111
+
112
+ ## Develop or fork
94
113
 
95
- | Artifact | Template | Prompt | Lives at |
96
- | ----------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------- | --------------------------------- |
97
- | `AGENTS.md` | [agents-general](templates/agents-general.md) + [agents-project](templates/agents-project.md) | [prompts/agents.md](prompts/agents.md) | repo root |
98
- | `ARCHITECTURE.md` | [architecture](templates/architecture.md) | [prompts/architecture.md](prompts/architecture.md) | repo root |
99
- | ADR | [adr](templates/adr.md) | [prompts/adr.md](prompts/adr.md) | `doc/adr/NNNN-<title>.md` |
100
- | `DESIGN.md` | (no template — bootstrap from existing tokens) | [prompts/design.md](prompts/design.md) | repo root |
101
- | Skill | [skill](templates/skill.md) | [prompts/skill.md](prompts/skill.md) | `.claude/skills/<name>/SKILL.md` |
102
- | Subagent | [subagent](templates/subagent.md) | [prompts/subagent.md](prompts/subagent.md) | `.claude/agents/<name>.md` |
114
+ Want to contribute, fork, or run the CLI from source?
115
+
116
+ ```bash
117
+ git clone https://github.com/alexandremendoncaalvaro/agentic-development.git
118
+ cd agentic-development
119
+ npm install
120
+ node bin/agentic.js init
121
+ ```
103
122
 
104
- Templates carry pure structure. Prompts carry the spec links, conventions, and the literal text to paste.
123
+ Branch layout:
124
+ - `main` — manual workflow source of truth (no CLI code; the npm package gets promoted here when mature).
125
+ - `cli` — CLI development (you're here). Beta releases are published from this branch.
105
126
 
106
127
  ## License
107
128
 
package/WORKFLOW.md CHANGED
@@ -89,7 +89,7 @@ Cite specific files, not "the codebase." Use just-in-time retrieval: pass paths
89
89
  For non-trivial changes, four phases:
90
90
 
91
91
  1. **Explore (read-only).** Plan mode in your agent. Read, build a mental model, no edits.
92
- 2. **Plan.** Agent writes a Markdown plan. You edit before approving.
92
+ 2. **Plan.** Agent writes a Markdown plan. You edit before approving. For non-trivial multi-step work, structure the plan as a per-task file (`doc/tasks/<NNNN>-<slug>.md`) with checkbox acceptance criteria and execution steps — the agent toggles checkboxes as it works rather than rewriting paragraphs, keeping edits cheap and resumable across sessions.
93
93
  3. **Implement.** Execute the approved plan; verify each step before moving to the next.
94
94
  4. **Commit.** One logical change per commit.
95
95
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alexandrealvaro/agentic",
3
- "version": "0.1.0-beta.1",
3
+ "version": "0.2.0-beta.1",
4
4
  "description": "Bootstrap and audit AGENTS.md, ARCHITECTURE.md, ADRs, skills, and subagents for engineering production code with LLMs",
5
5
  "type": "module",
6
6
  "bin": {
@@ -20,7 +20,7 @@
20
20
  },
21
21
  "scripts": {
22
22
  "start": "node bin/agentic.js",
23
- "test": "node bin/agentic.js --help && node bin/agentic.js init --help",
23
+ "test": "node bin/agentic.js --help && node bin/agentic.js init --help && node --test test/*.test.js",
24
24
  "prepublishOnly": "npm test"
25
25
  },
26
26
  "keywords": [
@@ -48,7 +48,9 @@
48
48
  },
49
49
  "dependencies": {
50
50
  "@clack/prompts": "^1.3.0",
51
- "clipboardy": "^5.3.1",
52
51
  "commander": "^12.1.0"
52
+ },
53
+ "devDependencies": {
54
+ "js-yaml": "^4.1.0"
53
55
  }
54
56
  }
package/prompts/agents.md CHANGED
@@ -4,10 +4,18 @@ Open standard: [agents.md](https://agents.md) (Linux Foundation / Agentic AI Fou
4
4
 
5
5
  ## Paste to your agent
6
6
 
7
- > Read [`templates/agents-general.md`](../templates/agents-general.md) and [`templates/agents-project.md`](../templates/agents-project.md). Interview me one section at a time to fill `agents-project.md`'s placeholders: stack, build/test/lint commands, repo layout (only what's not obvious from the tree), commit conventions, security boundaries, real gotchas you can confirm by reading the code.
7
+ > Read [`templates/agents-project.md`](../templates/agents-project.md). Your job: produce a single `AGENTS.md` at the repo root, ≤150 lines, every line operational. Generic agent behavior (think-before-coding, verify-before-done, etc.) does **not** belong here that lives in the `agentic-philosophy` skill.
8
8
  >
9
- > **Do not invent values.** When I don't know something, leave `<TODO>` and move on. After the interview, read the codebase to verify what I told you and flag any mismatch.
9
+ > **Step 1 Scan.** Read `package.json` / `pyproject.toml` / `Cargo.toml` / `go.mod` / equivalent, `README.md`, top-level directories, `doc/` and `doc/adr/` if present, `.claude/` if present, lockfiles, hook configs (`.husky/`, `.pre-commit-config.yaml`, `.github/workflows/`), `git remote -v`. Build a model of stack, entry points, build/test commands, conventions, quality gates, security boundaries, gotchas confirmed by code.
10
10
  >
11
- > Output a single `AGENTS.md` at the repo root: filled `agents-project.md` content first, then `agents-general.md` content appended (drop its H1`agents-project.md`'s `# AGENTS.md` owns the merged document).
11
+ > **Step 2 Pre-fill.** For every `<placeholder>` in [`templates/agents-project.md`](../templates/agents-project.md), fill it from observed signals. No fabrication. If a section has no signal, mark `<TODO: not yet wired>` in one line and move on do not write meta-prose explaining the gap.
12
12
  >
13
- > Cut every line you can bloat makes the agent ignore rules.
13
+ > **Step 3 Show me only the gaps.** Print:
14
+ > - (a) placeholders you could not fill from repo signals;
15
+ > - (b) signals that conflict (e.g. two test commands, two style configs).
16
+ >
17
+ > One question per gap. Skip everything you filled confidently. Do **not** ask philosophical questions ("is this doc primarily for agents or humans?", "what's the most important quality bar?") — those are decisions, not interview material.
18
+ >
19
+ > **Step 4 — On my confirmation, write `AGENTS.md`.** Cut every line that does not change agent behavior. No "External Resources" section (the agent derives URLs from `git remote` / `package.json`). No marketing prose. No appended Universal Agent Behavior block.
20
+ >
21
+ > If something I say contradicts what the code shows, surface the conflict. Don't silently trust me; don't silently trust the code. Flag and wait.
@@ -4,8 +4,18 @@ Pairs with ADRs in `doc/adr/`. Architecture is the binding pattern; ADRs are ind
4
4
 
5
5
  ## Paste to your agent
6
6
 
7
- > Read [`templates/architecture.md`](../templates/architecture.md). Interview me one section at a time to fill its placeholders: overview, layers and boundaries, patterns (data access, HTTP handlers, async/messaging, errors, validation), naming, observability, deployment topology.
7
+ > Read [`templates/architecture.md`](../templates/architecture.md). Your job: produce `ARCHITECTURE.md` at the repo root.
8
8
  >
9
- > Before writing each section, read the codebase to verify the claim is real. **Do not invent.** Leave `<TODO>` for unknowns.
9
+ > **Step 1 Scan the code.** Read top-level dirs, the main entry points (servers, CLI, jobs), boundary code (handlers, repos, gateways, middleware), config and env loading, observability hooks, deploy config (`Dockerfile`, `compose.yml`, `k8s/`, `terraform/`, GitHub Actions). Existing ADRs in `doc/adr/` are binding — read them all.
10
10
  >
11
- > Output `ARCHITECTURE.md` at the repo root. At the end, list any decision that should become an ADR don't write them yet, just flag.
11
+ > **Step 2 Pre-fill.** For each placeholder, fill from what the code actually does: layers and boundaries, data access pattern, HTTP middleware chain, async/messaging, error and validation patterns, naming, logging/metrics/tracing, deployment topology. No fabrication.
12
+ >
13
+ > **Step 3 — Show me only the gaps.** Print:
14
+ > - (a) placeholders without a code signal;
15
+ > - (b) places where the code shows two competing patterns (e.g. some handlers go through middleware, some don't).
16
+ >
17
+ > One question per gap.
18
+ >
19
+ > **Step 4 — On my confirmation, write the file.** Cut every line that does not lock a binding pattern. At the end, list any decision that should become an ADR — flag, do not write the ADR yet.
20
+ >
21
+ > If something I say contradicts what the code shows, surface the conflict. Don't silently trust me; don't silently trust the code.
@@ -0,0 +1,26 @@
1
+ # Bootstrap a Task
2
+
3
+ A per-task tracking file optimized for LLM editing: status changes via single checkbox toggles, append-only Notes log, no rewrites of large blocks.
4
+
5
+ ## Where it lives
6
+
7
+ `doc/tasks/<NNNN>-<short-slug>.md` — sequential numbering, kebab-case slug, mirrors the ADR convention (`doc/adr/`).
8
+
9
+ ## Why this format
10
+
11
+ Toggling a checkbox is a single-character `Edit` operation. Rewriting a paragraph is risky and expensive in tokens. Markdown checklists make the LLM's edits cheap, reviewable, and idempotent. Pattern documented in [spec-kit's tasks.md](https://github.com/github/spec-kit/blob/main/templates/commands/tasks.md), [taskmd](https://medium.com/@driangle/taskmd-task-management-for-the-ai-era-92d8b476e24e), [Backlog.md](https://github.com/MrLesk/Backlog.md), and [Claude Code's Tasks API](https://platform.claude.com/docs/en/agent-sdk/todo-tracking).
12
+
13
+ ## Paste to your agent
14
+
15
+ > Use [`templates/task.md`](../templates/task.md) to draft `doc/tasks/<NNNN>-<short-slug>.md` (next available number) for the task: `<one-line task description>`.
16
+ >
17
+ > Interview me to fill:
18
+ > - Context: why this task, what problem it solves
19
+ > - Acceptance Criteria: measurable conditions per [WORKFLOW.md §1](../WORKFLOW.md), each as a checkbox — pass/fail must be observable, not aspirational ("loads in under 2s" not "fast enough")
20
+ > - Plan: concrete sequential steps with file paths where applicable, each as a checkbox
21
+ >
22
+ > Status starts at `proposed`. Created: today. Owner: ask me. Board ref: leave blank unless I provide one. Leave Notes empty (it gets filled during execution). Definition of Done section stays as in the template.
23
+ >
24
+ > **Do not invent values.** When I don't know something, leave `<TODO>` and ask. Stop after writing the file. Wait for me to start work.
25
+ >
26
+ > When working on the task later, edit the file by toggling checkboxes (`- [ ]` → `- [x]`) and appending to Notes — never rewrite existing sections.