meto-cli 0.9.3 → 0.11.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 (43) hide show
  1. package/README.md +40 -7
  2. package/dist/cli/audit/blueprint.d.ts +53 -0
  3. package/dist/cli/audit/blueprint.d.ts.map +1 -0
  4. package/dist/cli/audit/blueprint.js +386 -0
  5. package/dist/cli/audit/blueprint.js.map +1 -0
  6. package/dist/cli/audit/detect-stack.d.ts +31 -0
  7. package/dist/cli/audit/detect-stack.d.ts.map +1 -0
  8. package/dist/cli/audit/detect-stack.js +154 -0
  9. package/dist/cli/audit/detect-stack.js.map +1 -0
  10. package/dist/cli/audit/fixer.d.ts +75 -0
  11. package/dist/cli/audit/fixer.d.ts.map +1 -0
  12. package/dist/cli/audit/fixer.js +802 -0
  13. package/dist/cli/audit/fixer.js.map +1 -0
  14. package/dist/cli/audit/index.d.ts +24 -0
  15. package/dist/cli/audit/index.d.ts.map +1 -0
  16. package/dist/cli/audit/index.js +212 -0
  17. package/dist/cli/audit/index.js.map +1 -0
  18. package/dist/cli/audit/reporter.d.ts +42 -0
  19. package/dist/cli/audit/reporter.d.ts.map +1 -0
  20. package/dist/cli/audit/reporter.js +101 -0
  21. package/dist/cli/audit/reporter.js.map +1 -0
  22. package/dist/cli/audit/scanner.d.ts +48 -0
  23. package/dist/cli/audit/scanner.d.ts.map +1 -0
  24. package/dist/cli/audit/scanner.js +202 -0
  25. package/dist/cli/audit/scanner.js.map +1 -0
  26. package/dist/cli/index.js +6 -0
  27. package/dist/cli/index.js.map +1 -1
  28. package/dist/cli/renderer.d.ts.map +1 -1
  29. package/dist/cli/renderer.js +4 -1
  30. package/dist/cli/renderer.js.map +1 -1
  31. package/dist/cli/stacks.d.ts +11 -0
  32. package/dist/cli/stacks.d.ts.map +1 -1
  33. package/dist/cli/stacks.js +82 -0
  34. package/dist/cli/stacks.js.map +1 -1
  35. package/package.json +1 -1
  36. package/templates/.claude/agent-memory/meto-community/MEMORY.md +23 -0
  37. package/templates/.claude/agents/community-manager-agent.md +72 -0
  38. package/templates/.claude/agents/developer-agent.md +6 -3
  39. package/templates/.claude/agents/pm-agent.md +2 -2
  40. package/templates/.claude/agents/tester-agent.md +5 -2
  41. package/templates/CLAUDE.md +10 -6
  42. package/templates/ai/workflows/code-guidelines.md +46 -0
  43. package/templates/ai/workflows/session-checkpoint.md +1 -2
@@ -47,7 +47,7 @@ Never write to `/src/`, `tasks-in-progress.md`, `tasks-in-testing.md`, or `tasks
47
47
  ## Context Budget
48
48
  - Grep before reading — only open files you need
49
49
  - Use targeted line ranges for long files
50
- - Max 3 files open before acting — note key info in memory
50
+ - Max 10 files open before acting — note key info in memory
51
51
  - Read each epic once, then work from memory — don't re-read `/ai/backlog/epics.md` every task
52
52
 
53
53
  ## Task Definition Format
@@ -85,4 +85,4 @@ Sprint [N] is ready. [X] tasks in tasks-todo.md.
85
85
 
86
86
  When all slices of an epic are in `tasks-done.md`, tell the user:
87
87
 
88
- Epic [N] complete! Consider starting a new session for the next epic fresh context keeps agents sharp.
88
+ Epic [N] complete! You can continue to the next epic or start a fresh session if context feels heavy.
@@ -10,7 +10,8 @@ tools: Read, Bash, Glob, Grep
10
10
  1. Read `CLAUDE.md`
11
11
  2. Read `.claude/agent-memory/meto-tester/MEMORY.md`
12
12
  3. Read `/ai/workflows/definition-of-done.md`
13
- 4. Proceed with validation
13
+ 4. Read `/ai/workflows/code-guidelines.md` — verify these during validation
14
+ 5. Proceed with validation
14
15
 
15
16
  ## Session End
16
17
  Update `.claude/agent-memory/meto-tester/MEMORY.md` with patterns worth remembering.
@@ -38,7 +39,7 @@ Process items sequentially even when other agents run in parallel.
38
39
  ## Context Budget
39
40
  - Grep before reading — only open files you need
40
41
  - Use targeted line ranges for long files
41
- - Max 3 files open before acting — note key info in memory
42
+ - Max 10 files open before acting — note key info in memory
42
43
  - Only read files listed in "Files changed" on the task block — don't explore the whole codebase
43
44
 
44
45
  ## Validation Protocol
@@ -61,6 +62,8 @@ ONE item at a time — parallel writes corrupt the board. Always sequential.
61
62
  - [ ] Error states handled
62
63
  - [ ] No hardcoded secrets
63
64
  - [ ] No broken imports
65
+ - [ ] No file exceeds 300 lines (check changed files with `wc -l`)
66
+ - [ ] No function exceeds 50 lines
64
67
 
65
68
  ## Pass Note
66
69
  ```
@@ -24,10 +24,10 @@ cd your-project && claude # start a session
24
24
  Esc Esc → /rewind # undo if something went wrong
25
25
  ```
26
26
 
27
- - **One session per epic/feature** — start fresh when you finish an epic
27
+ - **One session per epic/feature** — start fresh when you finish an epic or context feels heavy
28
28
  - **Commit frequently** — don't let work pile up uncommitted
29
- - **`/compact` early** — don't wait for context to degrade, compress proactively
30
- - **New session signs:** sluggish responses, repeated file reads, agent forgetting prior work
29
+ - **`/compact` when needed** — context is large (1M tokens), but compress if responses slow down
30
+ - **New session signs:** agent forgetting prior work, repeated file reads, sluggish responses
31
31
 
32
32
  ## Quick Reference
33
33
 
@@ -60,7 +60,7 @@ See `/ai/workflows/definition-of-done.md` for done criteria.
60
60
 
61
61
  ## Agent Teams
62
62
 
63
- This project supports Agent Teams. The lead agent can spawn teammates using `@meto-pm`, `@meto-developer`, `@meto-tester`.
63
+ This project supports Agent Teams. The lead agent can spawn teammates using `@meto-pm`, `@meto-developer`, `@meto-tester`, `@meto-community`.
64
64
 
65
65
  **Coordination model:** Agent Teams has its own task system, but this project uses the kanban board (`tasks-backlog` through `tasks-done`) as the single source of truth for task state. Teammates must read and update the board files, not rely on Agent Teams' internal task tracking.
66
66
 
@@ -71,6 +71,7 @@ This project supports Agent Teams. The lead agent can spawn teammates using `@me
71
71
  | `@meto-pm` | `/ai/` files, `tasks-backlog.md`, `tasks-todo.md` |
72
72
  | `@meto-developer` | `/src/`, config files, `tasks-in-progress.md`, `tasks-in-testing.md` |
73
73
  | `@meto-tester` | `tasks-in-testing.md`, `tasks-done.md`, `tasks-todo.md` (failed items) |
74
+ | `@meto-community` | Read-only — reads product files, drafts community content in `/ai/community/` |
74
75
 
75
76
  Each agent writes only its own memory file in `.claude/agent-memory/` -- never another agent's.
76
77
 
@@ -80,10 +81,10 @@ Teammates do NOT inherit the lead's conversation history. Each teammate reads CL
80
81
 
81
82
  ## Context Management
82
83
 
83
- - **Session cadence:** Start a new session every 3-5 slices or when context feels sluggish
84
+ - **Session cadence:** Start a new session every 10-15 slices or when context feels sluggish
84
85
  - **Session start:** Read CLAUDE.md, your agent memory file, and the board — then act
85
86
  - **Session end:** Update your memory file with decisions, patterns, and what to pick up next
86
- - **Context budget:** Grep before reading full files; read targeted line ranges; max 3 files open before acting
87
+ - **Context budget:** Grep before reading full files; read targeted line ranges; max 10 files open before acting
87
88
  - **Red flag:** If you re-read a file you already read this session, note key info in memory instead
88
89
 
89
90
  ---
@@ -107,6 +108,9 @@ chore(scope): description [bootstrap]
107
108
  <!-- Keep to 3-4 rules max. More rules = more ignored. Focus on what actually causes bugs. -->
108
109
  {{CODE_CONVENTIONS}}
109
110
 
111
+ ## Code Guidelines
112
+ See `/ai/workflows/code-guidelines.md` for file size limits, structure rules, naming, and stack-specific standards. Both `@meto-developer` and `@meto-tester` enforce these.
113
+
110
114
  ---
111
115
 
112
116
  ## Buildrack — Project Tracking
@@ -0,0 +1,46 @@
1
+ # Code Guidelines — {{PROJECT_NAME}}
2
+
3
+ These guidelines are enforced by `@meto-developer` during implementation and verified by `@meto-tester` before sign-off.
4
+
5
+ ## File Size Limits
6
+
7
+ | Scope | Max Lines | Action |
8
+ |---|---|---|
9
+ | Single file | 300 | Split into focused modules |
10
+ | Single function/method | 50 | Extract helper functions |
11
+ | Single React component | 200 | Break into sub-components |
12
+
13
+ If a file exceeds these limits, refactor before adding more code. Never let a file grow past 500 lines — that is a hard stop.
14
+
15
+ ## Structure Rules
16
+
17
+ - **One responsibility per file** — if a file does two things, split it
18
+ - **No god files** — a file that everything imports from is a design smell
19
+ - **No circular imports** — if A imports B and B imports A, introduce a shared module or restructure
20
+ - **Flat over nested** — prefer 2 levels of directory nesting max; deeply nested trees are hard to navigate
21
+ - **Co-locate related code** — tests next to source, types next to usage
22
+
23
+ ## Naming
24
+
25
+ - Files: `kebab-case.ts` (e.g., `user-service.ts`)
26
+ - Classes/Types: `PascalCase` (e.g., `UserService`)
27
+ - Functions/Variables: `camelCase` (e.g., `getUserById`)
28
+ - Constants: `UPPER_SNAKE_CASE` (e.g., `MAX_RETRIES`)
29
+ - Boolean variables: prefix with `is`, `has`, `should` (e.g., `isLoading`)
30
+
31
+ ## Code Hygiene
32
+
33
+ - No `console.log` in committed code — use a proper logger
34
+ - No commented-out code — delete it, git has history
35
+ - No `any` types (TypeScript) — use `unknown` and narrow
36
+ - No magic numbers — extract to named constants
37
+ - No deeply nested conditionals (3+ levels) — use early returns or extract functions
38
+
39
+ ## Error Handling
40
+
41
+ - Handle errors at the boundary, not in every function
42
+ - Never swallow errors silently (`catch (e) {}`)
43
+ - Use typed errors where the language supports it
44
+ - User-facing errors must be human-readable, not stack traces
45
+
46
+ {{CODE_GUIDELINES_STACK}}
@@ -43,7 +43,6 @@ Write this at session end. Paste it into the next session's first message.
43
43
  ## When to Force a New Session
44
44
 
45
45
  - Context feels sluggish (repeating yourself, forgetting earlier decisions)
46
- - 3-5 slices completed since last fresh session
47
- - Switching between agents (PM → Developer → Tester)
46
+ - 10-15 slices completed since last fresh session
48
47
  - After a major refactor or architecture change
49
48
  - When the checkpoint itself exceeds 30 lines