compound-agent 2.1.1 → 2.2.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/CHANGELOG.md +25 -0
- package/README.md +16 -22
- package/package.json +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,31 @@ All notable changes to this project will be documented in this file.
|
|
|
7
7
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
8
8
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
9
9
|
|
|
10
|
+
## [2.2.0] - 2026-03-23
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- **CLI flag parity with TypeScript**: Ported 5 missing flags from the former TS CLI to the Go implementation for full migration parity:
|
|
15
|
+
- `--quiet` / `-q` global flag — suppresses non-essential `[ok]`/status output in `init` and `setup`
|
|
16
|
+
- `init --skip-agents` — skips template installation (AGENTS.md, skills, commands, docs)
|
|
17
|
+
- `init --skip-claude` — skips Claude Code hooks installation (alias for `--skip-hooks`)
|
|
18
|
+
- `setup claude --dry-run` — previews what would be installed/upgraded/reconciled without writing
|
|
19
|
+
- `download-model --json` — outputs download result as JSON
|
|
20
|
+
- **Stack-aware quality gates**: `ca setup` now detects the project stack (Go, Rust, Python, Node, Make) and substitutes `{{QUALITY_GATE_TEST}}` / `{{QUALITY_GATE_LINT}}` placeholders in skill and doc templates with the correct commands. Non-JS codebases no longer see hardcoded `pnpm test` / `pnpm lint`.
|
|
21
|
+
|
|
22
|
+
### Changed
|
|
23
|
+
|
|
24
|
+
- **Refactored `main.go`**: Extracted `buildHooksCmd()` helper from `main()` to stay within 50-line function limit.
|
|
25
|
+
- **Refactored `commands_setup.go`**: Extracted `setupClaudeOpts` struct and `runSetupClaude()` function from the `registerSetupClaudeCmd` inline closure.
|
|
26
|
+
- **Refactored `commands_advanced.go`**: Extracted `printDownloadModelResult()` helper from `downloadModelCmd`.
|
|
27
|
+
|
|
28
|
+
## [2.1.2] - 2026-03-23
|
|
29
|
+
|
|
30
|
+
### Fixed
|
|
31
|
+
|
|
32
|
+
- **Compound-agent prime output was invisible in Claude hooks**: `ca prime` now writes normal command output to stdout instead of stderr, so `SessionStart` and `PreCompact` hook output is visible to Claude Code rather than being dropped by stderr redirection or ignored by hook rendering.
|
|
33
|
+
- **Duplicate Claude hook reconciliation**: `ca setup claude` now detects and repairs duplicated compound-agent hook entries in `.claude/settings.json` instead of treating them as healthy installs. Hook detection and removal now correctly recognize shell-escaped binary commands like `'/path/to/ca' prime`.
|
|
34
|
+
|
|
10
35
|
## [2.1.1] - 2026-03-23
|
|
11
36
|
|
|
12
37
|
### Fixed
|
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/compound-agent)
|
|
6
6
|
[](LICENSE)
|
|
7
|
-
[](https://go.dev/)
|
|
8
8
|
|
|
9
9
|
<p align="center">
|
|
10
10
|
<img src="docs/assets/diagram-4.png" alt="Compound-agent ecosystem overview: Architect phase decomposes work via Socratic dialogue into a dependency graph. ca loop chains tasks with cross-model review, retry, and fresh sessions. Scenario evaluation validates changes with iterative refinement. All backed by persistent memory (lessons + knowledge across all sessions) and verification gates (tests, lint, type checks on every task)." width="700">
|
|
@@ -342,11 +342,14 @@ The CLI binary is `ca` (alias: `compound-agent`).
|
|
|
342
342
|
| `ca setup` | One-shot setup (hooks + templates) |
|
|
343
343
|
| `ca setup --skip-hooks` | Setup without installing hooks |
|
|
344
344
|
| `ca setup --json` | Output result as JSON |
|
|
345
|
-
| `ca setup --repo-root <path>` | Specify repository root |
|
|
346
345
|
| `ca setup claude` | Install Claude Code hooks only |
|
|
347
346
|
| `ca setup claude --status` | Check Claude Code integration health |
|
|
348
347
|
| `ca setup claude --uninstall` | Remove Claude hooks only |
|
|
348
|
+
| `ca setup claude --dry-run` | Preview what would change without writing |
|
|
349
349
|
| `ca init` | Initialize compound-agent in current repo |
|
|
350
|
+
| `ca init --skip-agents` | Skip AGENTS.md and template installation |
|
|
351
|
+
| `ca init --skip-claude` | Skip Claude Code hooks installation |
|
|
352
|
+
| `ca download-model --json` | Download embedding model with JSON output |
|
|
350
353
|
| `ca about` | Show version, animation, and recent changelog |
|
|
351
354
|
| `ca doctor` | Verify external dependencies and project health |
|
|
352
355
|
|
|
@@ -394,32 +397,23 @@ A: The loop works and has been used to ship real projects, including compound-ag
|
|
|
394
397
|
## Development
|
|
395
398
|
|
|
396
399
|
```bash
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
pnpm lint # Type check + ESLint
|
|
400
|
+
cd go && go build -tags sqlite_fts5 ./cmd/ca # Build CLI binary
|
|
401
|
+
cd go && go test -tags sqlite_fts5 ./... # Full test suite
|
|
402
|
+
cd go && go vet -tags sqlite_fts5 ./... # Static analysis
|
|
401
403
|
```
|
|
402
404
|
|
|
403
|
-
| Script | Duration | Use Case |
|
|
404
|
-
|--------|----------|----------|
|
|
405
|
-
| `pnpm test:fast` | ~12s | Rapid feedback during development |
|
|
406
|
-
| `pnpm test` | ~60s | Full suite before committing |
|
|
407
|
-
| `pnpm test:changed` | varies | Only tests affected by recent changes |
|
|
408
|
-
| `pnpm test:watch` | - | Watch mode for TDD workflow |
|
|
409
|
-
| `pnpm test:all` | ~60s | Full suite with model download |
|
|
410
|
-
|
|
411
405
|
## Technology Stack
|
|
412
406
|
|
|
413
407
|
| Component | Technology |
|
|
414
408
|
|-----------|------------|
|
|
415
|
-
| Language |
|
|
416
|
-
| Package Manager | pnpm |
|
|
417
|
-
| Build |
|
|
418
|
-
| Testing |
|
|
419
|
-
| Storage |
|
|
420
|
-
| Embeddings |
|
|
421
|
-
| CLI |
|
|
422
|
-
|
|
|
409
|
+
| Language | Go |
|
|
410
|
+
| Package Manager | Go modules (+ pnpm for npm wrapper) |
|
|
411
|
+
| Build | go build with CGO + sqlite_fts5 tag |
|
|
412
|
+
| Testing | go test + table-driven tests |
|
|
413
|
+
| Storage | mattn/go-sqlite3 + FTS5 |
|
|
414
|
+
| Embeddings | ca-embed (Rust daemon via IPC) |
|
|
415
|
+
| CLI | Cobra |
|
|
416
|
+
| Release | GoReleaser |
|
|
423
417
|
| Issue Tracking | Beads (bd) |
|
|
424
418
|
|
|
425
419
|
## Documentation
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "compound-agent",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.2.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Learning system for Claude Code — avoids repeating mistakes across sessions",
|
|
6
6
|
"bin": {
|
|
@@ -50,10 +50,10 @@
|
|
|
50
50
|
"knowledge-management"
|
|
51
51
|
],
|
|
52
52
|
"optionalDependencies": {
|
|
53
|
-
"@syottos/darwin-arm64": "2.
|
|
54
|
-
"@syottos/darwin-x64": "2.
|
|
55
|
-
"@syottos/linux-arm64": "2.
|
|
56
|
-
"@syottos/linux-x64": "2.
|
|
53
|
+
"@syottos/darwin-arm64": "2.2.0",
|
|
54
|
+
"@syottos/darwin-x64": "2.2.0",
|
|
55
|
+
"@syottos/linux-arm64": "2.2.0",
|
|
56
|
+
"@syottos/linux-x64": "2.2.0"
|
|
57
57
|
},
|
|
58
58
|
"author": "Nathan Delacrétaz",
|
|
59
59
|
"license": "MIT",
|