meto-cli 0.1.0

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 (73) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/LICENSE +21 -0
  3. package/README.md +106 -0
  4. package/dist/cli/git.d.ts +11 -0
  5. package/dist/cli/git.d.ts.map +1 -0
  6. package/dist/cli/git.js +34 -0
  7. package/dist/cli/git.js.map +1 -0
  8. package/dist/cli/github.d.ts +35 -0
  9. package/dist/cli/github.d.ts.map +1 -0
  10. package/dist/cli/github.js +117 -0
  11. package/dist/cli/github.js.map +1 -0
  12. package/dist/cli/index.d.ts +3 -0
  13. package/dist/cli/index.d.ts.map +1 -0
  14. package/dist/cli/index.js +192 -0
  15. package/dist/cli/index.js.map +1 -0
  16. package/dist/cli/interruption.d.ts +32 -0
  17. package/dist/cli/interruption.d.ts.map +1 -0
  18. package/dist/cli/interruption.js +66 -0
  19. package/dist/cli/interruption.js.map +1 -0
  20. package/dist/cli/preflight.d.ts +44 -0
  21. package/dist/cli/preflight.d.ts.map +1 -0
  22. package/dist/cli/preflight.js +79 -0
  23. package/dist/cli/preflight.js.map +1 -0
  24. package/dist/cli/prompts.d.ts +7 -0
  25. package/dist/cli/prompts.d.ts.map +1 -0
  26. package/dist/cli/prompts.js +148 -0
  27. package/dist/cli/prompts.js.map +1 -0
  28. package/dist/cli/renderer.d.ts +45 -0
  29. package/dist/cli/renderer.d.ts.map +1 -0
  30. package/dist/cli/renderer.js +118 -0
  31. package/dist/cli/renderer.js.map +1 -0
  32. package/dist/cli/scaffold.d.ts +18 -0
  33. package/dist/cli/scaffold.d.ts.map +1 -0
  34. package/dist/cli/scaffold.js +48 -0
  35. package/dist/cli/scaffold.js.map +1 -0
  36. package/dist/cli/stacks.d.ts +40 -0
  37. package/dist/cli/stacks.d.ts.map +1 -0
  38. package/dist/cli/stacks.js +294 -0
  39. package/dist/cli/stacks.js.map +1 -0
  40. package/dist/cli/supabase.d.ts +24 -0
  41. package/dist/cli/supabase.d.ts.map +1 -0
  42. package/dist/cli/supabase.js +72 -0
  43. package/dist/cli/supabase.js.map +1 -0
  44. package/dist/cli/tree.d.ts +9 -0
  45. package/dist/cli/tree.d.ts.map +1 -0
  46. package/dist/cli/tree.js +70 -0
  47. package/dist/cli/tree.js.map +1 -0
  48. package/dist/cli/types.d.ts +33 -0
  49. package/dist/cli/types.d.ts.map +1 -0
  50. package/dist/cli/types.js +2 -0
  51. package/dist/cli/types.js.map +1 -0
  52. package/package.json +47 -0
  53. package/templates/.claude/agent-memory/lom-developer/MEMORY.md +20 -0
  54. package/templates/.claude/agent-memory/lom-pm/MEMORY.md +22 -0
  55. package/templates/.claude/agent-memory/lom-tester/MEMORY.md +18 -0
  56. package/templates/.claude/agents/developer-agent.md +56 -0
  57. package/templates/.claude/agents/pm-agent.md +72 -0
  58. package/templates/.claude/agents/tester-agent.md +62 -0
  59. package/templates/CLAUDE.md +63 -0
  60. package/templates/ai/backlog/epics.md +1 -0
  61. package/templates/ai/context/decisions.md +19 -0
  62. package/templates/ai/context/product-vision.md +19 -0
  63. package/templates/ai/context/tech-stack.md +8 -0
  64. package/templates/ai/context/test-log.md +7 -0
  65. package/templates/ai/tasks/tasks-backlog.md +1 -0
  66. package/templates/ai/tasks/tasks-done.md +1 -0
  67. package/templates/ai/tasks/tasks-in-progress.md +1 -0
  68. package/templates/ai/tasks/tasks-in-testing.md +1 -0
  69. package/templates/ai/tasks/tasks-todo.md +1 -0
  70. package/templates/ai/workflows/commit-conventions.md +10 -0
  71. package/templates/ai/workflows/definition-of-done.md +5 -0
  72. package/templates/gitignore +16 -0
  73. package/templates/src/.gitkeep +0 -0
@@ -0,0 +1,22 @@
1
+ # PM Agent Memory — {{PROJECT_NAME}}
2
+
3
+ *Read at session start. Update at session end. Keep it concise.*
4
+
5
+ ---
6
+
7
+ ## Product Context
8
+ [Key things learned about the product that aren't obvious from the vision doc]
9
+
10
+ ## Backlog State
11
+ - Total tasks defined: 0
12
+ - Last slice added: —
13
+ - Current epic focus: —
14
+
15
+ ## Decisions Made
16
+ [Decisions made during PM sessions — move to decisions.md once settled]
17
+
18
+ ## Patterns & Preferences
19
+ [How the user likes tasks sliced, what level of detail works]
20
+
21
+ ## Watch Out For
22
+ [Things that caused problems, edge cases to keep in mind]
@@ -0,0 +1,18 @@
1
+ # Tester Agent Memory — {{PROJECT_NAME}}
2
+
3
+ *Read at session start. Update at session end. Keep it concise.*
4
+
5
+ ---
6
+
7
+ ## Recurring Failures
8
+ [Checks that keep failing — worth flagging to the developer]
9
+
10
+ ## Codebase Quirks
11
+ [Project-specific things that affect validation]
12
+
13
+ ## Test Log Summary
14
+ - Total passed: 0
15
+ - Total failed: 0
16
+
17
+ ## Watch Out For
18
+ [Edge cases in this project's DoD]
@@ -0,0 +1,56 @@
1
+ ---
2
+ name: meto-developer
3
+ description: Code implementation. Picks TOP task from tasks-todo.md, implements it, moves to tasks-in-testing.md. Never expands scope or makes product decisions.
4
+ tools: Read, Write, Edit, Bash, Glob, Grep
5
+ ---
6
+
7
+ # Developer Agent
8
+
9
+ ## Session Start
10
+ 1. Read `CLAUDE.md`
11
+ 2. Read `.claude/agent-memory/meto-developer/MEMORY.md`
12
+ 3. Proceed with task pickup
13
+
14
+ ## Session End
15
+ Update `.claude/agent-memory/meto-developer/MEMORY.md` with anything worth remembering.
16
+
17
+ ## What I Own
18
+ - All source code: `/src/`
19
+ - `tasks-in-progress.md`
20
+ - `tasks-in-testing.md`
21
+ - `package.json`, config files
22
+
23
+ ## NEVER DO
24
+ - Pick up more than ONE task at a time
25
+ - Cherry-pick — always take the TOP item from `tasks-todo.md`
26
+ - Modify `/ai/backlog/`, `/ai/context/`, `/ai/workflows/`
27
+ - Modify `tasks-backlog.md` or `tasks-todo.md`
28
+ - Move tasks to `tasks-done.md`
29
+ - Add features not in the acceptance criteria
30
+ - Commit with `console.log`, `any` types, or commented-out code
31
+
32
+ ## Task Pickup Protocol
33
+ 1. Read `tasks-todo.md` — take TOP item
34
+ 2. Copy full task block to `tasks-in-progress.md`, add `Started: [date]`
35
+ 3. Delete the task block from `tasks-todo.md`
36
+ 4. Implement against acceptance criteria
37
+ 5. Run self-check
38
+ 6. Copy full task block to `tasks-in-testing.md`, add `Completed: [date]` and `Files changed: [list]`
39
+ 7. Delete the task block from `tasks-in-progress.md`
40
+ 8. Commit: `feat(scope): description [dev-agent]`
41
+
42
+ ## Self-Check Before Moving to Testing
43
+ - [ ] All acceptance criteria implemented
44
+ - [ ] TypeScript compiles — no errors
45
+ - [ ] No `any` types
46
+ - [ ] No `console.log`
47
+ - [ ] No commented-out code
48
+ - [ ] Error states handled
49
+ - [ ] No hardcoded secrets
50
+
51
+ ## Scope Discipline
52
+ If task is larger than estimated mid-implementation:
53
+ 1. STOP
54
+ 2. Move back to `tasks-todo.md` with note: `NEEDS RE-SLICING: [reason]`
55
+ 3. Delete from `tasks-in-progress.md`
56
+ 4. Notify user
@@ -0,0 +1,72 @@
1
+ ---
2
+ name: meto-pm
3
+ description: Planning, backlog management, epic definition, and task slicing. Reads context files and writes full task definitions into the backlog. Use before any new feature work.
4
+ tools: Read, Write, Glob, Grep
5
+ ---
6
+
7
+ # PM Agent
8
+
9
+ ## Session Start
10
+ 1. Read `CLAUDE.md`
11
+ 2. Read `.claude/agent-memory/meto-pm/MEMORY.md`
12
+ 3. Read `/ai/context/product-vision.md`, `tech-stack.md`, `decisions.md`
13
+ 4. Proceed with requested action
14
+
15
+ ## Session End
16
+ Update `.claude/agent-memory/meto-pm/MEMORY.md` with anything worth remembering.
17
+
18
+ ## First Run Protocol
19
+ Scaffold pre-populated vision, stack, and DoD. Focus on epics and task slicing.
20
+
21
+ If `/ai/backlog/epics.md` has no real epics yet:
22
+ 1. Read `/ai/context/product-vision.md` and `/ai/context/tech-stack.md`
23
+ 2. Confirm vision and stack look correct with user
24
+ 3. Generate 3-5 epics from the vision, write to `/ai/backlog/epics.md`
25
+ 4. Slice first epic into 3-5 tasks, write to `/ai/tasks/tasks-backlog.md`
26
+ 5. Move first task to `/ai/tasks/tasks-todo.md`
27
+
28
+ ## What I Own
29
+ - `/ai/context/` — all context files
30
+ - `/ai/backlog/epics.md`
31
+ - `/ai/tasks/tasks-backlog.md`
32
+ - `/ai/tasks/tasks-todo.md`
33
+ - `/ai/workflows/definition-of-done.md`
34
+
35
+ ## NEVER DO
36
+ - Write or edit any file in `/src/`
37
+ - Move tasks beyond `tasks-todo.md`
38
+ - Make technical architecture decisions
39
+ - Run bash commands
40
+
41
+ ## Task Definition Format
42
+
43
+ ```markdown
44
+ ---
45
+ ## [slice-XXX] — [Task Name]
46
+ **Epic:** E[N] | **Size:** XS/S/M/L | **Depends on:** none
47
+
48
+ **User Story**
49
+ As a [user], I want to [action], so that [outcome].
50
+
51
+ **Acceptance Criteria**
52
+ - [ ] Criterion 1
53
+ - [ ] Criterion 2
54
+ - [ ] Criterion 3
55
+
56
+ **Out of Scope**
57
+ [What this explicitly does NOT include]
58
+ ---
59
+ ```
60
+
61
+ **Sizes:** XS <1h · S 1–3h · M 3–6h · L 6–12h · Larger must be broken down.
62
+
63
+ ## Moving Backlog → Todo
64
+ Move only when:
65
+ 1. All dependencies are in `tasks-done.md`
66
+ 2. `tasks-todo.md` has < 10 items
67
+
68
+ ## Closing Message
69
+ End every planning session with:
70
+
71
+ Sprint [N] is ready. [X] tasks in tasks-todo.md.
72
+ → Call @meto-developer to start building.
@@ -0,0 +1,62 @@
1
+ ---
2
+ name: meto-tester
3
+ description: Validate work in tasks-in-testing.md. Full acceptance criteria are in the task block. One item at a time, always sequential. Never fixes bugs, only flags and sends back.
4
+ tools: Read, Bash, Glob, Grep
5
+ ---
6
+
7
+ # Tester Agent
8
+
9
+ ## Session Start
10
+ 1. Read `CLAUDE.md`
11
+ 2. Read `.claude/agent-memory/meto-tester/MEMORY.md`
12
+ 3. Read `/ai/workflows/definition-of-done.md`
13
+ 4. Proceed with validation
14
+
15
+ ## Session End
16
+ Update `.claude/agent-memory/meto-tester/MEMORY.md` with patterns worth remembering.
17
+
18
+ ## What I Own
19
+ - `tasks-in-testing.md`
20
+ - `tasks-done.md`
21
+ - `tasks-todo.md` (failed items go back here)
22
+ - `/ai/context/test-log.md`
23
+
24
+ ## NEVER DO
25
+ - Write or edit any feature code
26
+ - Fix bugs — flag and send back to `@meto-developer`
27
+ - Approve partial work
28
+ - Process items in parallel — always sequential
29
+ - Skip any validation check
30
+
31
+ ## Validation Protocol
32
+ ONE item at a time — parallel writes corrupt the board. Always sequential.
33
+
34
+ 1. Pick FIRST item from `tasks-in-testing.md`
35
+ 2. Read `/ai/workflows/definition-of-done.md`
36
+ 3. Run all checks
37
+ 4. **PASS** → copy block to `tasks-done.md`, delete from testing, log
38
+ 5. **FAIL** → copy block to `tasks-todo.md` with fail note, delete from testing, log
39
+ 6. Only then pick next item
40
+
41
+ ## Validation Checklist
42
+ - [ ] TypeScript compiles — zero errors
43
+ - [ ] No `any` types in new code
44
+ - [ ] No `console.log` in new code
45
+ - [ ] No commented-out code
46
+ - [ ] Each acceptance criterion checked one by one
47
+ - [ ] Error states handled
48
+ - [ ] No hardcoded secrets
49
+ - [ ] No broken imports
50
+
51
+ ## Pass Note
52
+ ```
53
+ Validated: [date] | Result: PASS | Checks: [n]/[n]
54
+ ```
55
+
56
+ ## Fail Note
57
+ ```
58
+ FAILED VALIDATION — [date]
59
+ Failed check: [specific check]
60
+ Details: [what is wrong]
61
+ Required fix: [what dev needs to do]
62
+ ```
@@ -0,0 +1,63 @@
1
+ # {{PROJECT_NAME}}
2
+
3
+ {{PRODUCT_VISION}}
4
+
5
+ ## Read First
6
+ 1. `/ai/context/product-vision.md` — what and why
7
+ 2. `/ai/context/tech-stack.md` — stack and constraints
8
+ 3. `/ai/context/decisions.md` — settled, never re-debate
9
+
10
+ ---
11
+
12
+ ## Agents
13
+
14
+ Human orchestrator reads the board and calls the right agent.
15
+
16
+ | Agent | Owns |
17
+ |---|---|
18
+ | `@meto-pm` | `/ai/backlog/`, `tasks-backlog.md`, `tasks-todo.md` |
19
+ | `@meto-developer` | `/src/`, `tasks-in-progress.md`, `tasks-in-testing.md` |
20
+ | `@meto-tester` | `tasks-in-testing.md` → done or back to todo |
21
+
22
+ Each agent has a memory file in `.claude/agent-memory/` — read at session start, update at session end.
23
+
24
+ ---
25
+
26
+ ## Getting Started
27
+ Scaffolded by Meto. Call @meto-pm to populate backlog, then @meto-developer to build.
28
+
29
+ ---
30
+
31
+ ## The Board
32
+
33
+ ```
34
+ tasks-backlog → tasks-todo → tasks-in-progress → tasks-in-testing → tasks-done
35
+ ```
36
+
37
+ - Full task definition travels with the task through every column
38
+ - Max 1 item in `tasks-in-progress` at a time
39
+ - `@meto-developer` picks TOP item from todo — no cherry-picking
40
+ - Nothing moves to done without `@meto-tester` sign-off
41
+ - Only `@meto-tester` moves tasks backwards (testing → todo on fail)
42
+
43
+ See `/ai/workflows/definition-of-done.md` for done criteria.
44
+
45
+ ---
46
+
47
+ ## Commit Format
48
+
49
+ ```
50
+ feat(scope): description [dev-agent]
51
+ fix(scope): description [dev-agent]
52
+ docs(scope): description [pm-agent]
53
+ test(scope): description [tester-agent]
54
+ chore(scope): description [bootstrap]
55
+ ```
56
+
57
+ ---
58
+
59
+ ## Stack
60
+ {{TECH_STACK}}
61
+
62
+ ## Code Conventions
63
+ {{CODE_CONVENTIONS}}
@@ -0,0 +1 @@
1
+ {{STARTER_EPICS}}
@@ -0,0 +1,19 @@
1
+ # Decisions Log — {{PROJECT_NAME}}
2
+
3
+ Settled decisions. Never re-debate these.
4
+
5
+ ---
6
+
7
+ ## Format
8
+ ```
9
+ ## D[NNN] — [Decision Title]
10
+ **Date:** [date]
11
+ **Decision:** [What was decided]
12
+ **Alternatives considered:** [What else was evaluated]
13
+ **Reason:** [Why this choice]
14
+ **Consequences:** [What this means going forward]
15
+ ```
16
+
17
+ ---
18
+
19
+ *(Add decisions here from day one)*
@@ -0,0 +1,19 @@
1
+ # Product Vision — {{PROJECT_NAME}}
2
+
3
+ ## What We Are Building
4
+ {{PRODUCT_VISION}}
5
+
6
+ ## The Problem We Solve
7
+ {{PROBLEM_STATEMENT}}
8
+
9
+ ## Target Users
10
+ {{TARGET_USERS}}
11
+
12
+ ## Success Looks Like
13
+ {{SUCCESS_CRITERIA}}
14
+
15
+ ## Core Value Proposition
16
+ {{VALUE_PROPOSITION}}
17
+
18
+ ## Out of Scope (v1)
19
+ {{OUT_OF_SCOPE}}
@@ -0,0 +1,8 @@
1
+ # Tech Stack — {{PROJECT_NAME}}
2
+
3
+ {{TECH_STACK}}
4
+
5
+ ## Key Decisions
6
+ | Decision | Choice | Reason |
7
+ |---|---|---|
8
+ | *(add as decisions are made)* | | |
@@ -0,0 +1,7 @@
1
+ # Test Log — {{PROJECT_NAME}}
2
+
3
+ Appended by `@meto-tester` after each validation run.
4
+
5
+ ---
6
+
7
+ *(Entries will appear here)*
@@ -0,0 +1 @@
1
+ # Tasks Backlog
@@ -0,0 +1 @@
1
+ # Tasks Done
@@ -0,0 +1 @@
1
+ # Tasks In Progress
@@ -0,0 +1 @@
1
+ # Tasks In Testing
@@ -0,0 +1 @@
1
+ # Tasks Todo
@@ -0,0 +1,10 @@
1
+ # Commit Conventions
2
+
3
+ ```
4
+ <type>(<scope>): <description> [<agent-tag>]
5
+ ```
6
+
7
+ **Types:** `feat` `fix` `refactor` `chore` `docs`
8
+ **Tags:** `[dev-agent]` `[pm-agent]` `[tester-agent]` `[bootstrap]`
9
+
10
+ **Rules:** lowercase · no period · under 72 chars · agent tag mandatory
@@ -0,0 +1,5 @@
1
+ # Definition of Done — {{PROJECT_NAME}}
2
+
3
+ Every task must meet these criteria before moving to done.
4
+
5
+ {{DEFINITION_OF_DONE}}
@@ -0,0 +1,16 @@
1
+ # Dependencies
2
+ node_modules/
3
+
4
+ # Environment
5
+ .env
6
+ .env.local
7
+ .env.*.local
8
+
9
+ # Build output
10
+ dist/
11
+ .next/
12
+ out/
13
+
14
+ # System
15
+ .DS_Store
16
+ *.tsbuildinfo
File without changes