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.
- package/README.md +40 -7
- package/dist/cli/audit/blueprint.d.ts +53 -0
- package/dist/cli/audit/blueprint.d.ts.map +1 -0
- package/dist/cli/audit/blueprint.js +386 -0
- package/dist/cli/audit/blueprint.js.map +1 -0
- package/dist/cli/audit/detect-stack.d.ts +31 -0
- package/dist/cli/audit/detect-stack.d.ts.map +1 -0
- package/dist/cli/audit/detect-stack.js +154 -0
- package/dist/cli/audit/detect-stack.js.map +1 -0
- package/dist/cli/audit/fixer.d.ts +75 -0
- package/dist/cli/audit/fixer.d.ts.map +1 -0
- package/dist/cli/audit/fixer.js +802 -0
- package/dist/cli/audit/fixer.js.map +1 -0
- package/dist/cli/audit/index.d.ts +24 -0
- package/dist/cli/audit/index.d.ts.map +1 -0
- package/dist/cli/audit/index.js +212 -0
- package/dist/cli/audit/index.js.map +1 -0
- package/dist/cli/audit/reporter.d.ts +42 -0
- package/dist/cli/audit/reporter.d.ts.map +1 -0
- package/dist/cli/audit/reporter.js +101 -0
- package/dist/cli/audit/reporter.js.map +1 -0
- package/dist/cli/audit/scanner.d.ts +48 -0
- package/dist/cli/audit/scanner.d.ts.map +1 -0
- package/dist/cli/audit/scanner.js +202 -0
- package/dist/cli/audit/scanner.js.map +1 -0
- package/dist/cli/index.js +6 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/renderer.d.ts.map +1 -1
- package/dist/cli/renderer.js +4 -1
- package/dist/cli/renderer.js.map +1 -1
- package/dist/cli/stacks.d.ts +11 -0
- package/dist/cli/stacks.d.ts.map +1 -1
- package/dist/cli/stacks.js +82 -0
- package/dist/cli/stacks.js.map +1 -1
- package/package.json +1 -1
- package/templates/.claude/agent-memory/meto-community/MEMORY.md +23 -0
- package/templates/.claude/agents/community-manager-agent.md +72 -0
- package/templates/.claude/agents/developer-agent.md +6 -3
- package/templates/.claude/agents/pm-agent.md +2 -2
- package/templates/.claude/agents/tester-agent.md +5 -2
- package/templates/CLAUDE.md +10 -6
- package/templates/ai/workflows/code-guidelines.md +46 -0
- 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
|
|
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!
|
|
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.
|
|
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
|
|
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
|
```
|
package/templates/CLAUDE.md
CHANGED
|
@@ -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`
|
|
30
|
-
- **New session signs:**
|
|
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
|
|
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
|
|
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
|
-
-
|
|
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
|