meow-swarm 0.3.0 → 0.5.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/.claude/scheduled_tasks.json +3 -0
- package/.claude/scheduled_tasks.lock +1 -0
- package/.claude/settings.local.json +45 -0
- package/380 +0 -0
- package/L2 +0 -0
- package/LICENSE +21 -21
- package/README.md +161 -111
- package/dist/bin/meow-eval.js +491 -58
- package/dist/bin/meow-mcp.js +1288 -736
- package/dist/bin/meow.js +4701 -2103
- package/eslint.config.js +25 -25
- package/meow.db +0 -0
- package/meow.db-shm +0 -0
- package/meow.db-wal +0 -0
- package/package.json +83 -78
- package/.context/ANTI_PATTERNS.md +0 -56
- package/.context/ARCHITECTURE.md +0 -29
- package/.context/ECOSYSTEM.md +0 -12
- package/.context/MISSION.md +0 -13
- package/.context/QA_REVIEW.md +0 -200
- package/.husky/pre-commit +0 -2
- package/.husky/pre-push +0 -2
- package/CHANGELOG.md +0 -25
- package/CONTRIBUTING.md +0 -55
- package/PUBLISH.md +0 -268
- package/REPORTS/QUANTUM_AUDIT.md +0 -40
- package/REPORTS/SELF_REVIEW.md +0 -50
- package/SECURITY.md +0 -16
- package/bun.lock +0 -613
- package/bunfig.toml +0 -11
- package/docs/ARCHITECTURAL_GAP_ANALYSIS.md +0 -400
- package/docs/GAP_ANALYSIS.md +0 -257
- package/docs/TOKEN_OPTIMIZATION_STRATEGY.md +0 -93
- package/docs/TUI_SPEC.md +0 -211
- package/docs/assets/image.png +0 -0
- package/docs/assets/repo_map.md +0 -181
- package/docs/gap-analysis-vs-kitchen-factory/QUALITY_FIRST_ARCHITECTURE.md +0 -368
- package/docs/processed/END_TO_END_TESTING.md +0 -76
- package/docs/processed/ENVIRONMENT_AWARENESS.md +0 -45
- package/docs/processed/LAYERED_AGENCY_UPGRADE.md +0 -70
- package/docs/processed/PRODUCTION_READINESS.md +0 -165
- package/evals/missions.jsonl +0 -5
- package/memory/MEMORY.md +0 -5
- package/memory/karpathy-guidelines.md +0 -59
- package/meow-agent-0.1.0.tgz +0 -0
- package/skills/computer-use/SKILL.md +0 -222
- package/skills/computer-use/scripts/computer_tool.py +0 -746
- package/skills/find-skills/SKILL.md +0 -170
- package/skills/game-vision/SKILL.md +0 -109
- package/skills/game-vision/game_vision.py +0 -246
- package/skills/karpathy_guidelines/SKILL.md +0 -70
- package/skills/mano-p/SKILL.md +0 -118
- package/skills/meow/SKILL.md +0 -388
- package/skills/meow/meow.py +0 -539
- package/skills/play-game/SKILL.md +0 -290
- package/skills/play-game/game_agent.py +0 -469
- package/skills/setup/SKILL.md +0 -47
- package/skills/token-max/SKILL.md +0 -299
- package/skills/token-max/token_max.py +0 -685
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"sessionId":"8ee49b11-9dbb-4c1b-8ed5-82d6e9023eaa","pid":492208,"procStart":"639150108404627040","acquiredAt":1779526818153}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
{
|
|
2
|
+
"permissions": {
|
|
3
|
+
"allow": [
|
|
4
|
+
"Bash(gh pr *)",
|
|
5
|
+
"Bash(npx vitest *)",
|
|
6
|
+
"Bash(git add *)",
|
|
7
|
+
"Bash(git commit -m ' *)",
|
|
8
|
+
"Bash(git push *)",
|
|
9
|
+
"Bash(git checkout *)",
|
|
10
|
+
"Bash(git rm *)",
|
|
11
|
+
"Bash(npm run *)",
|
|
12
|
+
"Bash(npm test *)",
|
|
13
|
+
"Bash(echo \"EXIT:$?\")",
|
|
14
|
+
"Read(//c/Users/stanc/github/meow/src/**)",
|
|
15
|
+
"Read(//c/Users/stanc/github/meow/src/ai_loop/**)",
|
|
16
|
+
"Bash(git -C ~/github/meow status --short)",
|
|
17
|
+
"Bash(git -C \"C:\\\\Users\\\\stanc\\\\github\\\\meow\" status)",
|
|
18
|
+
"Bash(git -C \"C:\\\\Users\\\\stanc\\\\github\\\\meow\" log --oneline -3)",
|
|
19
|
+
"Bash(git -C \"C:\\\\Users\\\\stanc\\\\github\\\\meow\" checkout -b docs/refactor-structure)",
|
|
20
|
+
"Bash(git -C \"C:\\\\Users\\\\stanc\\\\github\\\\meow\" log --oneline -5)",
|
|
21
|
+
"Bash(git -C \"C:\\\\Users\\\\stanc\\\\github\\\\meow\" push --no-verify -u origin docs/refactor-structure)",
|
|
22
|
+
"Bash(git -C \"C:\\\\Users\\\\stanc\\\\github\\\\meow\" diff README.md)",
|
|
23
|
+
"Bash(git commit --no-verify -m 'docs: simplify README to plain description *)",
|
|
24
|
+
"Bash(meow -p \"Create a repository map document and save it to docs/repo-map.md. The map should cover the top-level directories and key files, their purpose, and how they relate to each other. Format it as a clear reference guide for someone reading the codebase.\")",
|
|
25
|
+
"Bash(node dist/bin/meow.js -p \"Fix BUG-01: vec_memory integer primary key crash. Symptom: 'SqliteError: Only integers are allowed for primary key values on vec_memory' fires 7-10x per session. Root cause: the vec_memory table \\(sqlite-vec\\) requires integer PKs but inserts are passing a non-integer \\(UUID/string\\). Fix: use INTEGER PRIMARY KEY AUTOINCREMENT for the vec_memory table, store the UUID as a separate column. File: src/agent/memory.ts or wherever vec_memory rows are inserted. After fixing: run npm test to confirm no regressions, then mark BUG-01 closed in docs/STATUS.md and check its checkbox in docs/ROADMAP.md.\")",
|
|
26
|
+
"Bash(node dist/bin/meow.js --tui)",
|
|
27
|
+
"Read(//tmp/**)",
|
|
28
|
+
"Bash(xargs wc -l)",
|
|
29
|
+
"Bash(ls -lah /c/Users/stanc/AppData/Local/Temp/claude/*/tasks/bze8v5iiq.output 2>/dev/null | head -5 && echo \"---\" && wc -l /c/Users/stanc/AppData/Local/Temp/claude/*/tasks/bze8v5iiq.output 2>/dev/null)",
|
|
30
|
+
"Bash(git commit -m 'fix: resolve BUG-01 vec_memory integer PK crash by using correct sqlite-vec API vec0_insert\\(\\) *)",
|
|
31
|
+
"Bash(git commit -m 'fix: resolve BUG-02 fixMeow\\(\\) timeout on Windows by using exec\\(\\) instead of spawn\\(\\) *)",
|
|
32
|
+
"Bash(git commit -m 'docs: remove BUG-02 warning from CLAUDE.md \\(fixed in e0cfe07\\) *)",
|
|
33
|
+
"Bash(git commit -m 'chore: clean up .env — remove duplicate and non-standard variables *)",
|
|
34
|
+
"Bash(python3 -c ' *)",
|
|
35
|
+
"Bash(git clone *)",
|
|
36
|
+
"Bash(curl -s -o /dev/null -w \"%{http_code}\" https://biosphere-gateway-24qvfiqipa-uc.a.run.app/anthropic/v1/messages)",
|
|
37
|
+
"Bash(curl -s https://biosphere-gateway-24qvfiqipa-uc.a.run.app/)",
|
|
38
|
+
"Bash(curl -s -X POST https://biosphere-gateway-24qvfiqipa-uc.a.run.app/anthropic/v1/messages -H 'Authorization: Bearer sk-ant-api03-y7XcGi4-O5TQQIxzDR9OEWSQaIf9Lx5NPlSBsTPEj4BdjSljxUJCfSsdHQi4UvYy7KOizFUKv3GLmkyZ9-wVhFj4LZOsfP4' -H 'Content-Type: application/json' -H 'anthropic-version: 2023-01-01' -d '{\"model\":\"MiniMax-M2.7\",\"max_tokens\":10,\"messages\":[{\"role\":\"user\",\"content\":\"hi\"}]}')",
|
|
39
|
+
"Bash(curl -s -X POST https://biosphere-gateway-24qvfiqipa-uc.a.run.app/anthropic/v1/messages -H 'Authorization: sk-ant-api03-y7XcGi4-O5TQQIxzDR9OEWSQaIf9Lx5NPlSBsTPEj4BdjSljxUJCfSsdHQi4UvYy7KOizFUKv3GLmkyZ9-wVhFj4LZOsfP4' -H 'Content-Type: application/json' -H 'anthropic-version: 2023-01-01' -d '{\"model\":\"MiniMax-M2.7\",\"max_tokens\":10,\"messages\":[{\"role\":\"user\",\"content\":\"hi\"}]}')",
|
|
40
|
+
"Bash(curl -s -X POST https://biosphere-gateway-24qvfiqipa-uc.a.run.app/anthropic/v1/messages -H 'Authorization: Bearer sk-ant-api03-y7XcGi4-O5TQQIxzDR9OEWSQaIf9Lx5NPlSBsTPEj4BdjSljxUJCfSsdHQi4UvYy7KOizFUKv3GLmkyZ9-wVhFj4LZOsfP4' -H 'Content-Type: application/json' -H 'anthropic-version: 2023-01-01' -d '{\"model\":\"MiniMax-M2.7\",\"max_tokens\":5,\"messages\":[{\"role\":\"user\",\"content\":\"hi\"}]}')",
|
|
41
|
+
"Bash(python3 -c \"import sys,json; d=json.load\\(sys.stdin\\); print\\('OK:', d.get\\('type', d\\)\\)\")",
|
|
42
|
+
"Bash(curl -s -X POST https://biosphere-gateway-24qvfiqipa-uc.a.run.app/anthropic/v1/messages -H 'Authorization: Bearer sk-ant-api03-y7XcGi4-O5TQQIxzDR9OEWSQaIf9Lx5NPlSBsTPEj4BdjSljxUJCfSsdHQi4UvYy7KOizFUKv3GLmkyZ9-wVhFj4LZOsfP4' -H 'x-api-key: sk-ant-api03-y7XcGi4-O5TQQIxzDR9OEWSQaIf9Lx5NPlSBsTPEj4BdjSljxUJCfSsdHQi4UvYy7KOizFUKv3GLmkyZ9-wVhFj4LZOsfP4' -H 'Content-Type: application/json' -H 'anthropic-version: 2023-01-01' -d '{\"model\":\"MiniMax-M2.7\",\"max_tokens\":5,\"messages\":[{\"role\":\"user\",\"content\":\"hi\"}]}')"
|
|
43
|
+
]
|
|
44
|
+
}
|
|
45
|
+
}
|
package/380
ADDED
|
File without changes
|
package/L2
ADDED
|
File without changes
|
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2024 stancsz
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024 stancsz
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,111 +1,161 @@
|
|
|
1
|
-
# meow-swarm
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
---
|
|
13
|
-
|
|
14
|
-
##
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
1
|
+
# meow-swarm
|
|
2
|
+
|
|
3
|
+
> One prompt. Meow plans it, builds it, verifies it, and repairs itself if anything breaks.
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
meow -p "add OAuth2 login to the API with tests"
|
|
7
|
+
# → dispatched. check back with meow --tui
|
|
8
|
+
```
|
|
9
|
+
|
|
10
|
+
Most coding agents execute your prompt once and hand you back a diff. Meow-swarm is different: it runs a full plan → build → quality-verify → self-repair loop autonomously, and doesn't mark a task done until it can show evidence the work is correct.
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## What makes meow-swarm different
|
|
15
|
+
|
|
16
|
+
### 1. Definition of Done before the first line of code
|
|
17
|
+
|
|
18
|
+
When a task arrives, meow derives explicit acceptance criteria from your request before touching anything. It knows what "done" looks like — specific, verifiable outcomes — before it starts. This is what separates a task that completes from one that finishes.
|
|
19
|
+
|
|
20
|
+
### 2. Quality gates, not just a diff
|
|
21
|
+
|
|
22
|
+
After every execution, meow runs a structured self-review loop against a set of quality gates:
|
|
23
|
+
|
|
24
|
+
| Gate | What it checks |
|
|
25
|
+
|------|---------------|
|
|
26
|
+
| **Placeholder Detection** | No TODOs, FIXMEs, or stub bodies in produced code |
|
|
27
|
+
| **Lint / Type Check** | Zero errors from the project's linter and type checker |
|
|
28
|
+
| **Test Coverage** | Tests pass, coverage meets the project threshold |
|
|
29
|
+
| **Coherence** | The diff actually addresses the stated goal (LLM review pass) |
|
|
30
|
+
| **Human Sign-Off** | Production tasks require explicit approval before shipping |
|
|
31
|
+
|
|
32
|
+
If gates fail, meow feeds the specific issues back into the agent loop and retries — up to a configurable iteration limit. A `QualityConvergenceChecker` tracks whether quality is genuinely improving each iteration and stops early if it detects diminishing returns, so it doesn't burn tokens grinding on something unfixable.
|
|
33
|
+
|
|
34
|
+
### 3. Evidence-based completion
|
|
35
|
+
|
|
36
|
+
Meow doesn't consider a task done because the code compiled. It runs the thing it built and captures the evidence:
|
|
37
|
+
|
|
38
|
+
- **stdout / stderr** from running the produced code or tests
|
|
39
|
+
- **Screenshots** for UI changes (visual diff against baseline)
|
|
40
|
+
- **File read-back** for generated artifacts — confirms the file has real content, not a stub
|
|
41
|
+
|
|
42
|
+
This evidence is fed to an LLM judge that scores the work against the original task description. Score below threshold → back into the loop with a specific critique. Score above threshold → task is marked complete with the evidence attached.
|
|
43
|
+
|
|
44
|
+
### 4. MEOW-3-RULE: self-repair instead of giving up
|
|
45
|
+
|
|
46
|
+
When meow fails three consecutive attempts on a task, it doesn't ask you for help. It runs a targeted `claude -p` call — not to finish the task, but to diagnose and patch meow's own code, prompts, or tool configuration. After the patch, the task is re-queued for a fresh attempt with the fixed machinery.
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
Task fails × 3
|
|
50
|
+
→ claude -p "diagnose why meow failed, fix meow's code"
|
|
51
|
+
→ meow is patched
|
|
52
|
+
→ task re-queued → succeeds
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
The task and the mechanic are never conflated. Meow fixes itself; it doesn't sneak in a bad completion to avoid admitting failure.
|
|
56
|
+
|
|
57
|
+
### 5. Skills-first execution
|
|
58
|
+
|
|
59
|
+
Before writing any code for common task types — code review, frontend design, testing, documentation — meow searches the community skills ecosystem:
|
|
60
|
+
|
|
61
|
+
- [`https://github.com/anthropics/skills`](https://github.com/anthropics/skills)
|
|
62
|
+
- [`https://github.com/vercel-labs/skills`](https://github.com/vercel-labs/skills/blob/main/skills/find-skills/SKILL.md)
|
|
63
|
+
|
|
64
|
+
A battle-tested code review skill has better prompts and output structure than anything meow would derive from scratch on every run. Skills are installed automatically if found (`npx skills add <skill> -g -y`) and invoked before falling back to raw LLM generation or a summon call.
|
|
65
|
+
|
|
66
|
+
### 6. Background daemon — fire and forget
|
|
67
|
+
|
|
68
|
+
Meow is not a chat partner. It runs in the background like a worker process:
|
|
69
|
+
|
|
70
|
+
- Dispatch a task → returns immediately, work runs async
|
|
71
|
+
- Checkpoints every state change to SQLite — crashes are recoverable
|
|
72
|
+
- `meow --continue` resumes stranded tasks on reboot
|
|
73
|
+
- `meow --tui` gives a live dashboard of agent status, task queue, and token costs
|
|
74
|
+
|
|
75
|
+
You can dispatch a task, close your laptop, and come back to a completed result with a full audit trail of every decision and tool call.
|
|
76
|
+
|
|
77
|
+
### 7. Multi-layer architecture with specialist routing
|
|
78
|
+
|
|
79
|
+
```
|
|
80
|
+
meow -p "task"
|
|
81
|
+
↓
|
|
82
|
+
[L1 Liaison] Intent extraction, MissionBrief with acceptance criteria
|
|
83
|
+
↓
|
|
84
|
+
[L2 Architect] Task decomposition, dependency resolution, specialist assignment
|
|
85
|
+
↓
|
|
86
|
+
[L3 SwarmManager] Parallel or sequential execution across specialist agents
|
|
87
|
+
↓
|
|
88
|
+
[Self-Review Loop] Quality gates, convergence check, evidence capture
|
|
89
|
+
↓
|
|
90
|
+
[LLM Judge] Scores output against original task — passes or feeds critique back
|
|
91
|
+
↓
|
|
92
|
+
[L4 Auditor] Final checkpoint to SQLite, cost tracking, audit ledger
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
Each layer uses the right model for its job. The Liaison uses a fast model for sub-500ms intent parsing. Deep execution uses your configured model (Claude Sonnet by default). The judge uses a separate call with the full context to avoid self-grading bias.
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## Quick start
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
# Node.js 18+ required (Bun not supported — native SQLite addons require Node)
|
|
103
|
+
npm install -g meow-swarm
|
|
104
|
+
|
|
105
|
+
# Configure your API key
|
|
106
|
+
export ANTHROPIC_API_KEY="sk-ant-..."
|
|
107
|
+
|
|
108
|
+
# Dispatch a task
|
|
109
|
+
meow -p "refactor the auth module to use JWT and add tests"
|
|
110
|
+
|
|
111
|
+
# Watch it work
|
|
112
|
+
meow --tui
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## Commands
|
|
116
|
+
|
|
117
|
+
| Command | Description |
|
|
118
|
+
|---------|-------------|
|
|
119
|
+
| `meow -p "task"` | Dispatch task headlessly (primary interface) |
|
|
120
|
+
| `meow` | Interactive REPL |
|
|
121
|
+
| `meow --tui` | Live terminal dashboard |
|
|
122
|
+
| `meow --continue` | Resume stranded tasks after a crash |
|
|
123
|
+
| `meow --monitor` | Run the monitoring agent (cluster analysis, patch suggestions) |
|
|
124
|
+
|
|
125
|
+
## Configuration
|
|
126
|
+
|
|
127
|
+
Copy `.env.example` to `.env` and set:
|
|
128
|
+
|
|
129
|
+
| Variable | Default | Description |
|
|
130
|
+
|----------|---------|-------------|
|
|
131
|
+
| `ANTHROPIC_API_KEY` | required | API key |
|
|
132
|
+
| `ANTHROPIC_MODEL` | `claude-sonnet-4` | Model for execution |
|
|
133
|
+
| `MEOW_MODE` | `SHIP` | `SHIP`, `SEQUENTIAL`, `PARALLEL`, `ECOMODE`, `RALPH` |
|
|
134
|
+
| `MEOW_BUDGET_CENTS` | unset | Hard spend cap per session |
|
|
135
|
+
| `MEOW_DB` | `meow.db` | SQLite state database path |
|
|
136
|
+
|
|
137
|
+
**Execution modes:**
|
|
138
|
+
|
|
139
|
+
- `SHIP` — Full quality pipeline. Self-review loop, all gates, LLM judge. Use for production tasks.
|
|
140
|
+
- `SEQUENTIAL` — Gates enabled, no judge pass. Good for development iteration.
|
|
141
|
+
- `PARALLEL` — Maximum throughput, no quality gates. Use for bulk refactors you'll review yourself.
|
|
142
|
+
- `ECOMODE` — Cheap model, 1 retry, 30s timeout. Fast exploration.
|
|
143
|
+
- `RALPH` — Unlimited retries, relentless quality convergence. For hard problems where cost is secondary.
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
## MEOW-3-RULE (never violate this)
|
|
148
|
+
|
|
149
|
+
```
|
|
150
|
+
Task arrives → meow -p (3 retry attempts)
|
|
151
|
+
↓ fails × 3
|
|
152
|
+
claude -p (fixes meow's code/prompts — NOT the task)
|
|
153
|
+
↓
|
|
154
|
+
User re-runs same task → meow → succeeds
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
`claude -p` is a meow-swarm mechanic. It repairs broken machinery. It never completes the original task on meow's behalf.
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
See `docs/STATUS.md` for current known issues and `docs/TODO.md` for the prioritized improvement backlog.
|