@bhimudev/gnanai 0.4.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 +270 -0
- package/dist/bin/cli.d.ts +3 -0
- package/dist/bin/cli.d.ts.map +1 -0
- package/dist/bin/cli.js +188 -0
- package/dist/bin/cli.js.map +1 -0
- package/dist/commands/cleanup.d.ts +21 -0
- package/dist/commands/cleanup.d.ts.map +1 -0
- package/dist/commands/cleanup.js +380 -0
- package/dist/commands/cleanup.js.map +1 -0
- package/dist/commands/dispatch.d.ts +13 -0
- package/dist/commands/dispatch.d.ts.map +1 -0
- package/dist/commands/dispatch.js +85 -0
- package/dist/commands/dispatch.js.map +1 -0
- package/dist/commands/doctor.d.ts +2 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +155 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/generate.d.ts +3 -0
- package/dist/commands/generate.d.ts.map +1 -0
- package/dist/commands/generate.js +167 -0
- package/dist/commands/generate.js.map +1 -0
- package/dist/commands/init.d.ts +10 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +711 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/knowledge-sync.d.ts +69 -0
- package/dist/commands/knowledge-sync.d.ts.map +1 -0
- package/dist/commands/knowledge-sync.js +661 -0
- package/dist/commands/knowledge-sync.js.map +1 -0
- package/dist/commands/knowledge.d.ts +35 -0
- package/dist/commands/knowledge.d.ts.map +1 -0
- package/dist/commands/knowledge.js +254 -0
- package/dist/commands/knowledge.js.map +1 -0
- package/dist/commands/rollback.d.ts +13 -0
- package/dist/commands/rollback.d.ts.map +1 -0
- package/dist/commands/rollback.js +186 -0
- package/dist/commands/rollback.js.map +1 -0
- package/dist/commands/setup-config.d.ts +6 -0
- package/dist/commands/setup-config.d.ts.map +1 -0
- package/dist/commands/setup-config.js +663 -0
- package/dist/commands/setup-config.js.map +1 -0
- package/dist/commands/setup-project.d.ts +6 -0
- package/dist/commands/setup-project.d.ts.map +1 -0
- package/dist/commands/setup-project.js +361 -0
- package/dist/commands/setup-project.js.map +1 -0
- package/dist/commands/setup.d.ts +3 -0
- package/dist/commands/setup.d.ts.map +1 -0
- package/dist/commands/setup.js +293 -0
- package/dist/commands/setup.js.map +1 -0
- package/dist/commands/status.d.ts +51 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +182 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/uninstall.d.ts +3 -0
- package/dist/commands/uninstall.d.ts.map +1 -0
- package/dist/commands/uninstall.js +173 -0
- package/dist/commands/uninstall.js.map +1 -0
- package/dist/commands/update.d.ts +10 -0
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +435 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/commands/worktree.d.ts +30 -0
- package/dist/commands/worktree.d.ts.map +1 -0
- package/dist/commands/worktree.js +262 -0
- package/dist/commands/worktree.js.map +1 -0
- package/dist/generator/claude-cli.d.ts +24 -0
- package/dist/generator/claude-cli.d.ts.map +1 -0
- package/dist/generator/claude-cli.js +239 -0
- package/dist/generator/claude-cli.js.map +1 -0
- package/dist/generator/prompt-builder.d.ts +7 -0
- package/dist/generator/prompt-builder.d.ts.map +1 -0
- package/dist/generator/prompt-builder.js +144 -0
- package/dist/generator/prompt-builder.js.map +1 -0
- package/dist/index.d.ts +36 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +45 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/embeddings.d.ts +53 -0
- package/dist/mcp/embeddings.d.ts.map +1 -0
- package/dist/mcp/embeddings.js +68 -0
- package/dist/mcp/embeddings.js.map +1 -0
- package/dist/mcp/hybrid-search.d.ts +25 -0
- package/dist/mcp/hybrid-search.d.ts.map +1 -0
- package/dist/mcp/hybrid-search.js +72 -0
- package/dist/mcp/hybrid-search.js.map +1 -0
- package/dist/mcp/knowledge-server.d.ts +4 -0
- package/dist/mcp/knowledge-server.d.ts.map +1 -0
- package/dist/mcp/knowledge-server.js +294 -0
- package/dist/mcp/knowledge-server.js.map +1 -0
- package/dist/mcp/knowledge-utils.d.ts +65 -0
- package/dist/mcp/knowledge-utils.d.ts.map +1 -0
- package/dist/mcp/knowledge-utils.js +207 -0
- package/dist/mcp/knowledge-utils.js.map +1 -0
- package/dist/mcp/search-factory.d.ts +9 -0
- package/dist/mcp/search-factory.d.ts.map +1 -0
- package/dist/mcp/search-factory.js +23 -0
- package/dist/mcp/search-factory.js.map +1 -0
- package/dist/mcp/search-index.d.ts +45 -0
- package/dist/mcp/search-index.d.ts.map +1 -0
- package/dist/mcp/search-index.js +2 -0
- package/dist/mcp/search-index.js.map +1 -0
- package/dist/mcp/search-minisearch.d.ts +46 -0
- package/dist/mcp/search-minisearch.d.ts.map +1 -0
- package/dist/mcp/search-minisearch.js +99 -0
- package/dist/mcp/search-minisearch.js.map +1 -0
- package/dist/mcp/search-sqlite.d.ts +30 -0
- package/dist/mcp/search-sqlite.d.ts.map +1 -0
- package/dist/mcp/search-sqlite.js +188 -0
- package/dist/mcp/search-sqlite.js.map +1 -0
- package/dist/mcp/vector-store.d.ts +52 -0
- package/dist/mcp/vector-store.d.ts.map +1 -0
- package/dist/mcp/vector-store.js +183 -0
- package/dist/mcp/vector-store.js.map +1 -0
- package/dist/scaffold/copy-core-agents.d.ts +2 -0
- package/dist/scaffold/copy-core-agents.d.ts.map +1 -0
- package/dist/scaffold/copy-core-agents.js +90 -0
- package/dist/scaffold/copy-core-agents.js.map +1 -0
- package/dist/scaffold/create-claude-settings.d.ts +40 -0
- package/dist/scaffold/create-claude-settings.d.ts.map +1 -0
- package/dist/scaffold/create-claude-settings.js +422 -0
- package/dist/scaffold/create-claude-settings.js.map +1 -0
- package/dist/scaffold/create-config.d.ts +14 -0
- package/dist/scaffold/create-config.d.ts.map +1 -0
- package/dist/scaffold/create-config.js +199 -0
- package/dist/scaffold/create-config.js.map +1 -0
- package/dist/scaffold/create-project-description.d.ts +12 -0
- package/dist/scaffold/create-project-description.d.ts.map +1 -0
- package/dist/scaffold/create-project-description.js +104 -0
- package/dist/scaffold/create-project-description.js.map +1 -0
- package/dist/scaffold/create-structure.d.ts +2 -0
- package/dist/scaffold/create-structure.d.ts.map +1 -0
- package/dist/scaffold/create-structure.js +146 -0
- package/dist/scaffold/create-structure.js.map +1 -0
- package/dist/types/dependency-analysis.d.ts +11 -0
- package/dist/types/dependency-analysis.d.ts.map +1 -0
- package/dist/types/dependency-analysis.js +2 -0
- package/dist/types/dependency-analysis.js.map +1 -0
- package/dist/types/index.d.ts +526 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +3 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/task.d.ts +25 -0
- package/dist/types/task.d.ts.map +1 -0
- package/dist/types/task.js +3 -0
- package/dist/types/task.js.map +1 -0
- package/dist/utils/analyze-files.d.ts +7 -0
- package/dist/utils/analyze-files.d.ts.map +1 -0
- package/dist/utils/analyze-files.js +27 -0
- package/dist/utils/analyze-files.js.map +1 -0
- package/dist/utils/backup.d.ts +102 -0
- package/dist/utils/backup.d.ts.map +1 -0
- package/dist/utils/backup.js +352 -0
- package/dist/utils/backup.js.map +1 -0
- package/dist/utils/ci-provider.d.ts +23 -0
- package/dist/utils/ci-provider.d.ts.map +1 -0
- package/dist/utils/ci-provider.js +525 -0
- package/dist/utils/ci-provider.js.map +1 -0
- package/dist/utils/ci-status.d.ts +57 -0
- package/dist/utils/ci-status.d.ts.map +1 -0
- package/dist/utils/ci-status.js +349 -0
- package/dist/utils/ci-status.js.map +1 -0
- package/dist/utils/dependency-analysis.d.ts +34 -0
- package/dist/utils/dependency-analysis.d.ts.map +1 -0
- package/dist/utils/dependency-analysis.js +298 -0
- package/dist/utils/dependency-analysis.js.map +1 -0
- package/dist/utils/detect-git.d.ts +57 -0
- package/dist/utils/detect-git.d.ts.map +1 -0
- package/dist/utils/detect-git.js +439 -0
- package/dist/utils/detect-git.js.map +1 -0
- package/dist/utils/detect-mcp.d.ts +32 -0
- package/dist/utils/detect-mcp.d.ts.map +1 -0
- package/dist/utils/detect-mcp.js +178 -0
- package/dist/utils/detect-mcp.js.map +1 -0
- package/dist/utils/detect-project.d.ts +3 -0
- package/dist/utils/detect-project.d.ts.map +1 -0
- package/dist/utils/detect-project.js +155 -0
- package/dist/utils/detect-project.js.map +1 -0
- package/dist/utils/file-comparison.d.ts +89 -0
- package/dist/utils/file-comparison.d.ts.map +1 -0
- package/dist/utils/file-comparison.js +301 -0
- package/dist/utils/file-comparison.js.map +1 -0
- package/dist/utils/file-merger.d.ts +74 -0
- package/dist/utils/file-merger.d.ts.map +1 -0
- package/dist/utils/file-merger.js +350 -0
- package/dist/utils/file-merger.js.map +1 -0
- package/dist/utils/logger.d.ts +26 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +72 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/managed-process.d.ts +109 -0
- package/dist/utils/managed-process.d.ts.map +1 -0
- package/dist/utils/managed-process.js +481 -0
- package/dist/utils/managed-process.js.map +1 -0
- package/dist/utils/merge-claude-settings.d.ts +65 -0
- package/dist/utils/merge-claude-settings.d.ts.map +1 -0
- package/dist/utils/merge-claude-settings.js +133 -0
- package/dist/utils/merge-claude-settings.js.map +1 -0
- package/dist/utils/migration.d.ts +74 -0
- package/dist/utils/migration.d.ts.map +1 -0
- package/dist/utils/migration.js +345 -0
- package/dist/utils/migration.js.map +1 -0
- package/dist/utils/process-health.d.ts +51 -0
- package/dist/utils/process-health.d.ts.map +1 -0
- package/dist/utils/process-health.js +123 -0
- package/dist/utils/process-health.js.map +1 -0
- package/dist/utils/process-registry.d.ts +20 -0
- package/dist/utils/process-registry.d.ts.map +1 -0
- package/dist/utils/process-registry.js +151 -0
- package/dist/utils/process-registry.js.map +1 -0
- package/dist/utils/process-tree.d.ts +51 -0
- package/dist/utils/process-tree.d.ts.map +1 -0
- package/dist/utils/process-tree.js +499 -0
- package/dist/utils/process-tree.js.map +1 -0
- package/dist/utils/repair-mcp-config.d.ts +15 -0
- package/dist/utils/repair-mcp-config.d.ts.map +1 -0
- package/dist/utils/repair-mcp-config.js +129 -0
- package/dist/utils/repair-mcp-config.js.map +1 -0
- package/dist/utils/task-lifecycle.d.ts +60 -0
- package/dist/utils/task-lifecycle.d.ts.map +1 -0
- package/dist/utils/task-lifecycle.js +310 -0
- package/dist/utils/task-lifecycle.js.map +1 -0
- package/dist/utils/update-agent-mcp.d.ts +7 -0
- package/dist/utils/update-agent-mcp.d.ts.map +1 -0
- package/dist/utils/update-agent-mcp.js +115 -0
- package/dist/utils/update-agent-mcp.js.map +1 -0
- package/dist/utils/update-agent-templates.d.ts +6 -0
- package/dist/utils/update-agent-templates.d.ts.map +1 -0
- package/dist/utils/update-agent-templates.js +56 -0
- package/dist/utils/update-agent-templates.js.map +1 -0
- package/dist/utils/update-config-ci.d.ts +7 -0
- package/dist/utils/update-config-ci.d.ts.map +1 -0
- package/dist/utils/update-config-ci.js +72 -0
- package/dist/utils/update-config-ci.js.map +1 -0
- package/dist/utils/update-config-git.d.ts +18 -0
- package/dist/utils/update-config-git.d.ts.map +1 -0
- package/dist/utils/update-config-git.js +146 -0
- package/dist/utils/update-config-git.js.map +1 -0
- package/dist/utils/update-config-mcp.d.ts +7 -0
- package/dist/utils/update-config-mcp.d.ts.map +1 -0
- package/dist/utils/update-config-mcp.js +98 -0
- package/dist/utils/update-config-mcp.js.map +1 -0
- package/dist/utils/validate-config.d.ts +3 -0
- package/dist/utils/validate-config.d.ts.map +1 -0
- package/dist/utils/validate-config.js +109 -0
- package/dist/utils/validate-config.js.map +1 -0
- package/dist/utils/version-tracker.d.ts +130 -0
- package/dist/utils/version-tracker.d.ts.map +1 -0
- package/dist/utils/version-tracker.js +298 -0
- package/dist/utils/version-tracker.js.map +1 -0
- package/dist/utils/worktree.d.ts +68 -0
- package/dist/utils/worktree.d.ts.map +1 -0
- package/dist/utils/worktree.js +446 -0
- package/dist/utils/worktree.js.map +1 -0
- package/package.json +77 -0
- package/templates/ARCHAI_README.md +329 -0
- package/templates/CLAUDE.md +67 -0
- package/templates/PROMPTS.md +506 -0
- package/templates/core-agents/boss-agent.md +671 -0
- package/templates/core-agents/cleanup-agent.md +145 -0
- package/templates/core-agents/code-reviewer.md +175 -0
- package/templates/core-agents/critical-reviewer.md +117 -0
- package/templates/core-agents/deep-analyst.md +216 -0
- package/templates/core-agents/finalization-agent.md +252 -0
- package/templates/core-agents/git-coordinator.md +240 -0
- package/templates/core-agents/implementation-agent.md +151 -0
- package/templates/core-agents/maestro-agent.md +413 -0
- package/templates/core-agents/maestro-headless-agent.md +422 -0
- package/templates/core-agents/plan-validator.md +198 -0
- package/templates/core-agents/quick-fix.md +56 -0
- package/templates/core-agents/routing-templates.md +338 -0
- package/templates/core-agents/task-orchestrator.md +143 -0
- package/templates/core-agents/task-prep.md +202 -0
- package/templates/core-agents/tdd-designer.md +143 -0
- package/templates/specialist-meta.md +275 -0
package/README.md
ADDED
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
# Archai [Join our Discord](https://discord.gg/J3wgDb4YJv)
|
|
2
|
+
|
|
3
|
+
**A team of AI agents for Claude Code — not just one assistant, but a full development workflow.**
|
|
4
|
+
|
|
5
|
+
Archai scaffolds a multi-agent system that plans before it codes, validates before it implements, and tests before it ships. One command sets it up. Claude Code does the rest.
|
|
6
|
+
|
|
7
|
+

|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## Why archai?
|
|
14
|
+
|
|
15
|
+
Without structure, AI assistants jump straight to code — skipping analysis, missing edge cases, and producing work that needs reworking. archai fixes this with a **three-phase workflow**:
|
|
16
|
+
|
|
17
|
+
1. **Planning Loop** — Analyze the problem, validate the plan, design tests (2-4 iterations)
|
|
18
|
+
2. **Implementation Loop** — Code, test, review (only after you approve the plan)
|
|
19
|
+
3. **Finalization** — Quality checks, cleanup, commit, push, CI verification
|
|
20
|
+
|
|
21
|
+
Agents **learn across sessions** through a persistent knowledge base — decisions, constraints, patterns, and gotchas are recorded and searched before every new task.
|
|
22
|
+
|
|
23
|
+
You stay in control with approval gates between phases. Or use **critical review mode** to let a separate AI session review the plan automatically.
|
|
24
|
+
|
|
25
|
+
## Quick Start
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
npm install -g @bhimudev/gnanai
|
|
29
|
+
cd your-project
|
|
30
|
+
gnanai init
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
That's it. gnanai detects your tech stack and creates everything you need. Now open Claude Code:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
claude
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
And tell it what to build:
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
> Use task-prep for: add user authentication with JWT
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
After reviewing and approving the spec:
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
> Use maestro-agent for: the prepared task in .tasks/inbox/Task-AUTH-001.md
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
The agent system takes over — plans the work, waits for your approval, implements it, runs tests, and commits.
|
|
52
|
+
|
|
53
|
+
### For small fixes
|
|
54
|
+
|
|
55
|
+
Skip the full workflow:
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
> Use quick-fix for: rename the userId variable to accountId
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### Shared knowledge across repos
|
|
62
|
+
|
|
63
|
+
Share decisions, patterns, and learnings between related projects:
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
archai knowledge create my-team # Create a shared knowledge group
|
|
67
|
+
archai knowledge join my-team # Link this project to the group
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
Agents automatically search shared knowledge before planning and write cross-cutting decisions back. Works across any number of repos.
|
|
71
|
+
|
|
72
|
+
For team sync via git:
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
archai knowledge remote my-team <git-url> # Add remote
|
|
76
|
+
archai knowledge sync # Commit + pull + push
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### Optional setup wizards
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
archai setup-project # Describe your project architecture
|
|
83
|
+
archai setup-config # Configure commands, specialists, permissions
|
|
84
|
+
archai generate # Generate project-specific specialist agents
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## How to Use
|
|
88
|
+
|
|
89
|
+
### Step 0 (Optional): Prepare the Task
|
|
90
|
+
|
|
91
|
+
For vague or complex tasks, structure them first:
|
|
92
|
+
|
|
93
|
+
```
|
|
94
|
+
> Use task-prep for: add user authentication with JWT
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
The agent gathers project context, asks targeted clarifying questions, and produces a structured spec. After you approve, it saves to `.tasks/inbox/` with a descriptive name like `Task-AUTH-001.md`.
|
|
98
|
+
|
|
99
|
+
### Step 1: Define Your Task
|
|
100
|
+
|
|
101
|
+
Write a clear description of what you want done. Drop it into a task file:
|
|
102
|
+
|
|
103
|
+
```
|
|
104
|
+
.tasks/inbox/add-user-auth.md
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
Or just describe it directly in Claude Code. The more specific you are, the better the agents perform.
|
|
108
|
+
|
|
109
|
+
### Step 2: Feed It to the Agent System
|
|
110
|
+
|
|
111
|
+
Open Claude Code and hand the task to `maestro-agent`:
|
|
112
|
+
|
|
113
|
+
```
|
|
114
|
+
> Use maestro-agent for: start working on the task .tasks/inbox/add-user-auth.md
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
That's it. The agent system takes over:
|
|
118
|
+
|
|
119
|
+
1. **Planning** — `deep-analyst` studies your codebase, `plan-validator` challenges the plan, `tdd-designer` writes tests first. This iterates 2-4 times until the plan is solid.
|
|
120
|
+
2. **Your approval** — The workflow stops and presents the plan. You APPROVE, REVISE, or REJECT.
|
|
121
|
+
3. **Implementation** — `implementation-agent` builds it, `code-reviewer` verifies it. Iterates until tests pass.
|
|
122
|
+
4. **Finalization** — `finalization-agent` runs quality checks, cleans up, commits, and pushes.
|
|
123
|
+
|
|
124
|
+
### Critical Review Mode
|
|
125
|
+
|
|
126
|
+
For routine tasks where you trust the process, skip manual plan approval:
|
|
127
|
+
|
|
128
|
+
```
|
|
129
|
+
> Use maestro-agent with critical-review for: [your task]
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
A separate Claude session reviews the plan for blind spots. If it passes, implementation starts automatically. If issues are found, it falls back to asking you.
|
|
133
|
+
|
|
134
|
+
| Mode | When to use | Plan approval |
|
|
135
|
+
|------|-------------|---------------|
|
|
136
|
+
| Manual (default) | Learning, high-stakes, security-sensitive | You approve |
|
|
137
|
+
| Critical review | Routine tasks, well-understood features | Auto if review passes |
|
|
138
|
+
|
|
139
|
+
### Quick Fix
|
|
140
|
+
|
|
141
|
+
For small, obvious changes (typos, renames, config tweaks, 1-3 files):
|
|
142
|
+
|
|
143
|
+
```
|
|
144
|
+
> Use quick-fix for: [small change]
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
No planning docs, no approval gates. If the change turns out to be bigger than expected, it tells you to use `maestro-agent` instead.
|
|
148
|
+
|
|
149
|
+
### Batch Tasks
|
|
150
|
+
|
|
151
|
+
For managing multiple tasks across an epic, drop them all into `.tasks/inbox/` and run:
|
|
152
|
+
|
|
153
|
+
```
|
|
154
|
+
> Use task-orchestrator for: work through the tasks in .tasks/inbox/
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
It claims tasks one by one, creates branches, spawns the full workflow for each, and tracks progress.
|
|
158
|
+
|
|
159
|
+
### Standalone Agents
|
|
160
|
+
|
|
161
|
+
You can use any agent directly:
|
|
162
|
+
|
|
163
|
+
| Agent | Use for |
|
|
164
|
+
|-------|---------|
|
|
165
|
+
| `deep-analyst` | Understanding code, analyzing a problem |
|
|
166
|
+
| `tdd-designer` | Designing test suites |
|
|
167
|
+
| `cleanup-agent` | Cleaning temp files before committing |
|
|
168
|
+
|
|
169
|
+
## Agents (14 Core)
|
|
170
|
+
|
|
171
|
+
| Agent | Phase | Role |
|
|
172
|
+
|-------|-------|------|
|
|
173
|
+
| `task-prep` | Preparation | Architect-level task structuring and scoping |
|
|
174
|
+
| `maestro-agent` | Orchestrator | Manages all three phases with iteration limits |
|
|
175
|
+
| `boss-agent` | Orchestrator | Scans inbox, builds queue, dispatches tasks sequentially |
|
|
176
|
+
| `deep-analyst` | Planning | Deep analysis and implementation planning |
|
|
177
|
+
| `plan-validator` | Planning | Adversarial plan review — finds gaps |
|
|
178
|
+
| `tdd-designer` | Planning | Designs tests before code, with concrete values |
|
|
179
|
+
| `critical-reviewer` | Planning | Blind review via separate SDK session |
|
|
180
|
+
| `implementation-agent` | Implementation | Autonomous execution of approved plan |
|
|
181
|
+
| `code-reviewer` | Implementation | Verifies against acceptance criteria |
|
|
182
|
+
| `cleanup-agent` | Finalization | Removes temp files, archives state |
|
|
183
|
+
| `finalization-agent` | Finalization | Quality checks, commit, push, CI/CD |
|
|
184
|
+
| `git-coordinator` | Finalization | Git coordination, merging, conflict resolution |
|
|
185
|
+
| `task-orchestrator` | Workflow | Epic/task lifecycle management |
|
|
186
|
+
| `quick-fix` | Standalone | Fast single-pass for small changes |
|
|
187
|
+
|
|
188
|
+
**Specialist agents** are generated from your config with `archai generate` — they understand your specific tech stack, file paths, and conventions.
|
|
189
|
+
|
|
190
|
+
## Commands
|
|
191
|
+
|
|
192
|
+
| Command | Purpose |
|
|
193
|
+
|---------|---------|
|
|
194
|
+
| `archai init` | Initialize archai in your project (smart — handles existing setups) |
|
|
195
|
+
| `archai update` | Update agents/templates with smart file comparison |
|
|
196
|
+
| `archai generate` | Generate specialist agents from your config |
|
|
197
|
+
| `archai setup-project` | Interactive wizard for project description |
|
|
198
|
+
| `archai setup-config` | Interactive wizard for config, commands, permissions |
|
|
199
|
+
| `archai doctor` | Validate your setup |
|
|
200
|
+
| `archai rollback` | Restore from automatic backup |
|
|
201
|
+
| `archai cleanup` | Remove deprecated files and old backups |
|
|
202
|
+
| `archai setup` | Auto-configure git and MCP integrations |
|
|
203
|
+
| `archai knowledge create` | Create a shared knowledge group |
|
|
204
|
+
| `archai knowledge join` | Link project to a knowledge group |
|
|
205
|
+
| `archai knowledge leave` | Unlink project from a knowledge group |
|
|
206
|
+
| `archai knowledge list` | List all knowledge groups |
|
|
207
|
+
| `archai knowledge sync` | Sync knowledge group with git remote |
|
|
208
|
+
| `archai knowledge info` | Show knowledge group status |
|
|
209
|
+
| `archai uninstall` | Remove archai from your project |
|
|
210
|
+
|
|
211
|
+
All commands support `--dry-run` to preview changes and `-y` for non-interactive CI mode.
|
|
212
|
+
|
|
213
|
+
### Key flags
|
|
214
|
+
|
|
215
|
+
```bash
|
|
216
|
+
archai init --skip-wizard # Use detected defaults
|
|
217
|
+
archai init --force # Re-initialize with file comparison
|
|
218
|
+
archai update --all # Force update all files
|
|
219
|
+
archai rollback --list # Show available backups
|
|
220
|
+
archai cleanup --all # Remove deprecated files + prune backups
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
## Permission Presets
|
|
224
|
+
|
|
225
|
+
archai configures Claude Code permissions via `.claude/settings.local.json`:
|
|
226
|
+
|
|
227
|
+
| Preset | Description |
|
|
228
|
+
|--------|-------------|
|
|
229
|
+
| **Permissive** (default) | Allows most operations. Blocks destructive actions: `rm -rf`, `git push --force`, `sudo`, credential access, database drops. |
|
|
230
|
+
| **Strict** | Read-only + controlled writes. No network, no push, no publish. Good for production environments. |
|
|
231
|
+
| **Custom** | Define your own allow/deny lists via the wizard. |
|
|
232
|
+
|
|
233
|
+
## Project Structure
|
|
234
|
+
|
|
235
|
+
```
|
|
236
|
+
your-project/
|
|
237
|
+
├── .claude/
|
|
238
|
+
│ ├── agents/ # Core + specialist agent definitions
|
|
239
|
+
│ ├── plans/ # Approved implementation plans
|
|
240
|
+
│ ├── state/ # Working state (gitignored)
|
|
241
|
+
│ └── version.json # Version tracking for smart updates
|
|
242
|
+
├── .knowledge/ # Persistent knowledge base (decisions, constraints, patterns, learnings)
|
|
243
|
+
├── .tasks/ # Task inbox, epics, review, done
|
|
244
|
+
├── archai.config.md # Project configuration
|
|
245
|
+
├── CLAUDE.md # Agentic behavior guidelines (auto-generated)
|
|
246
|
+
└── PROMPTS.md # Quick reference for all prompts
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
## Requirements
|
|
250
|
+
|
|
251
|
+
- **Node.js 18+**
|
|
252
|
+
- **Claude Code CLI** — [claude.ai/code](https://claude.ai/code)
|
|
253
|
+
|
|
254
|
+
## Troubleshooting
|
|
255
|
+
|
|
256
|
+
**Agent not following instructions?** Make sure agent file content is being passed and output locations are specified.
|
|
257
|
+
|
|
258
|
+
**Planning keeps iterating?** After 4 iterations, it stops automatically. If requirements are unclear, it escalates to you.
|
|
259
|
+
|
|
260
|
+
**Implementation failing?** After 5 fix attempts on the same step, it reports BLOCKED and stops. Check if the plan was specific enough.
|
|
261
|
+
|
|
262
|
+
**Tests too shallow?** Verify `tdd-designer` used concrete values and covered edge cases, not just happy paths.
|
|
263
|
+
|
|
264
|
+
## License
|
|
265
|
+
|
|
266
|
+
MIT
|
|
267
|
+
|
|
268
|
+
## Contributing
|
|
269
|
+
|
|
270
|
+
Contributions welcome! Join the [Discord](https://discord.gg/J3wgDb4YJv) to discuss ideas.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/bin/cli.ts"],"names":[],"mappings":""}
|
package/dist/bin/cli.js
ADDED
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { Command } from 'commander';
|
|
3
|
+
import { createRequire } from 'module';
|
|
4
|
+
import { init } from '../commands/init.js';
|
|
5
|
+
import { generate } from '../commands/generate.js';
|
|
6
|
+
import { doctor } from '../commands/doctor.js';
|
|
7
|
+
import { setupProject } from '../commands/setup-project.js';
|
|
8
|
+
import { setupConfig } from '../commands/setup-config.js';
|
|
9
|
+
import { setup } from '../commands/setup.js';
|
|
10
|
+
import { uninstall } from '../commands/uninstall.js';
|
|
11
|
+
import { update } from '../commands/update.js';
|
|
12
|
+
import { rollback } from '../commands/rollback.js';
|
|
13
|
+
import { cleanup } from '../commands/cleanup.js';
|
|
14
|
+
import { logger } from '../utils/logger.js';
|
|
15
|
+
import { knowledgeCreate, knowledgeJoin, knowledgeLeave, knowledgeList, } from '../commands/knowledge.js';
|
|
16
|
+
import { startKnowledgeMcpServer } from '../mcp/knowledge-server.js';
|
|
17
|
+
import { knowledgeRemote, knowledgeSync, knowledgeInfo, } from '../commands/knowledge-sync.js';
|
|
18
|
+
import { worktreeCreate, worktreeList, worktreeCleanup, } from '../commands/worktree.js';
|
|
19
|
+
import { dispatch } from '../commands/dispatch.js';
|
|
20
|
+
import { status } from '../commands/status.js';
|
|
21
|
+
const require = createRequire(import.meta.url);
|
|
22
|
+
const pkg = require('../../package.json');
|
|
23
|
+
const program = new Command();
|
|
24
|
+
program
|
|
25
|
+
.name('gnanai')
|
|
26
|
+
.description('Multi-agent AI development workflow setup for any project')
|
|
27
|
+
.version(pkg.version)
|
|
28
|
+
.option('--debug', 'Enable debug logging')
|
|
29
|
+
.hook('preAction', (thisCommand) => {
|
|
30
|
+
const opts = thisCommand.opts();
|
|
31
|
+
if (opts.debug) {
|
|
32
|
+
logger.setDebugMode(true);
|
|
33
|
+
logger.debug('Debug mode enabled');
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
program
|
|
37
|
+
.command('init')
|
|
38
|
+
.description('Initialize archai agent system in current directory')
|
|
39
|
+
.option('--force', 'Overwrite existing configuration')
|
|
40
|
+
.option('--skip-wizard', 'Skip interactive wizard, use defaults')
|
|
41
|
+
.option('--dry-run', 'Preview what would be created without creating files')
|
|
42
|
+
.option('-y, --yes', 'Non-interactive mode, use defaults for all prompts')
|
|
43
|
+
.action(init);
|
|
44
|
+
program
|
|
45
|
+
.command('generate')
|
|
46
|
+
.description('Generate specialist agents based on configuration')
|
|
47
|
+
.option('--dry-run', 'Show what would be generated without writing files')
|
|
48
|
+
.option('-y, --yes', 'Skip confirmation prompt')
|
|
49
|
+
.action(generate);
|
|
50
|
+
program
|
|
51
|
+
.command('doctor')
|
|
52
|
+
.description('Validate archai setup and check for issues')
|
|
53
|
+
.action(doctor);
|
|
54
|
+
program
|
|
55
|
+
.command('setup')
|
|
56
|
+
.description('Auto-configure environment integrations (Git, MCP)')
|
|
57
|
+
.option('--git', 'Configure Git integration only')
|
|
58
|
+
.option('--mcp', 'Configure MCP servers only')
|
|
59
|
+
.option('-y, --yes', 'Non-interactive mode, auto-apply safe defaults')
|
|
60
|
+
.action(setup);
|
|
61
|
+
program
|
|
62
|
+
.command('setup-project')
|
|
63
|
+
.description('Interactive wizard to fill out project description')
|
|
64
|
+
.option('--force', 'Overwrite existing content')
|
|
65
|
+
.action(setupProject);
|
|
66
|
+
program
|
|
67
|
+
.command('setup-config')
|
|
68
|
+
.description('Interactive wizard to configure archai.config.md')
|
|
69
|
+
.option('--force', 'Overwrite existing content')
|
|
70
|
+
.action(setupConfig);
|
|
71
|
+
program
|
|
72
|
+
.command('uninstall')
|
|
73
|
+
.description('Remove archai artifacts from the project')
|
|
74
|
+
.option('--keep-knowledge', 'Preserve .knowledge/ directory')
|
|
75
|
+
.option('--dry-run', 'Show what would be removed without removing')
|
|
76
|
+
.option('--force', 'Skip confirmation prompt')
|
|
77
|
+
.action(uninstall);
|
|
78
|
+
program
|
|
79
|
+
.command('update')
|
|
80
|
+
.description('Update archai core agents and templates to the latest version')
|
|
81
|
+
.option('--agents', 'Only update core agents')
|
|
82
|
+
.option('--templates', 'Only update task templates')
|
|
83
|
+
.option('--all', 'Force update all files')
|
|
84
|
+
.option('--dry-run', 'Show what would be updated without updating')
|
|
85
|
+
.option('-y, --yes', 'Non-interactive mode, skip user-modified files')
|
|
86
|
+
.action(update);
|
|
87
|
+
program
|
|
88
|
+
.command('rollback [timestamp]')
|
|
89
|
+
.description('Restore from a previous backup')
|
|
90
|
+
.option('--list', 'List available backups')
|
|
91
|
+
.option('--dry-run', 'Show what would be restored without restoring')
|
|
92
|
+
.option('-y, --yes', 'Skip confirmation prompt')
|
|
93
|
+
.action(rollback);
|
|
94
|
+
program
|
|
95
|
+
.command('cleanup')
|
|
96
|
+
.description('Clean up deprecated files and old backups')
|
|
97
|
+
.option('--deprecated', 'Remove deprecated/orphaned files')
|
|
98
|
+
.option('--backups', 'Prune old backups')
|
|
99
|
+
.option('--all', 'Clean everything')
|
|
100
|
+
.option('--zombies', 'Kill zombie processes and prune stale state files')
|
|
101
|
+
.option('--keep-backups <count>', 'Number of backups to keep (default: 5)', parseInt)
|
|
102
|
+
.option('--dry-run', 'Show what would be removed without removing')
|
|
103
|
+
.option('-y, --yes', 'Skip confirmation prompt')
|
|
104
|
+
.action(cleanup);
|
|
105
|
+
// Knowledge group commands
|
|
106
|
+
const knowledgeCmd = program
|
|
107
|
+
.command('knowledge')
|
|
108
|
+
.description('Manage shared knowledge groups');
|
|
109
|
+
knowledgeCmd
|
|
110
|
+
.command('create <name>')
|
|
111
|
+
.description('Create a new knowledge group')
|
|
112
|
+
.option('--from <url>', 'Clone from an existing remote knowledge repo')
|
|
113
|
+
.action(knowledgeCreate);
|
|
114
|
+
knowledgeCmd
|
|
115
|
+
.command('join <name>')
|
|
116
|
+
.description('Link current project to a knowledge group')
|
|
117
|
+
.action(knowledgeJoin);
|
|
118
|
+
knowledgeCmd
|
|
119
|
+
.command('leave <name>')
|
|
120
|
+
.description('Remove current project from a knowledge group')
|
|
121
|
+
.action(knowledgeLeave);
|
|
122
|
+
knowledgeCmd
|
|
123
|
+
.command('list')
|
|
124
|
+
.description('List all knowledge groups')
|
|
125
|
+
.action(knowledgeList);
|
|
126
|
+
knowledgeCmd
|
|
127
|
+
.command('remote <name> <url>')
|
|
128
|
+
.description('Add a git remote to a knowledge group for team sharing')
|
|
129
|
+
.action(knowledgeRemote);
|
|
130
|
+
knowledgeCmd
|
|
131
|
+
.command('sync [name]')
|
|
132
|
+
.description('Sync knowledge group(s) with git remote')
|
|
133
|
+
.action(knowledgeSync);
|
|
134
|
+
knowledgeCmd
|
|
135
|
+
.command('info <name>')
|
|
136
|
+
.description('Show details and sync status of a knowledge group')
|
|
137
|
+
.action(knowledgeInfo);
|
|
138
|
+
// MCP server commands
|
|
139
|
+
const mcpCmd = program
|
|
140
|
+
.command('mcp')
|
|
141
|
+
.description('Run MCP servers');
|
|
142
|
+
mcpCmd
|
|
143
|
+
.command('knowledge')
|
|
144
|
+
.description('Start the shared knowledge MCP server')
|
|
145
|
+
.requiredOption('--group <name>', 'Knowledge group name')
|
|
146
|
+
.action(startKnowledgeMcpServer);
|
|
147
|
+
// Worktree commands
|
|
148
|
+
const worktreeCmd = program
|
|
149
|
+
.command('worktree')
|
|
150
|
+
.description('Manage git worktrees for parallel task execution');
|
|
151
|
+
worktreeCmd
|
|
152
|
+
.command('create')
|
|
153
|
+
.description('Create a new worktree for a task')
|
|
154
|
+
.requiredOption('--task <id>', 'Task identifier (e.g., TASK-001)')
|
|
155
|
+
.option('--description <desc>', 'Human-readable description for the branch name')
|
|
156
|
+
.action(worktreeCreate);
|
|
157
|
+
worktreeCmd
|
|
158
|
+
.command('list')
|
|
159
|
+
.description('List all git worktrees')
|
|
160
|
+
.action(worktreeList);
|
|
161
|
+
worktreeCmd
|
|
162
|
+
.command('cleanup')
|
|
163
|
+
.description('Remove worktrees and prune stale entries')
|
|
164
|
+
.option('--task <id>', 'Remove specific worktree by task ID')
|
|
165
|
+
.option('--all', 'Remove all linked worktrees')
|
|
166
|
+
.option('--dry-run', 'Preview what would be removed')
|
|
167
|
+
.option('-y, --yes', 'Skip confirmation prompt')
|
|
168
|
+
.action(worktreeCleanup);
|
|
169
|
+
program
|
|
170
|
+
.command('dispatch')
|
|
171
|
+
.description('Spawn claude -p as a cross-platform child process (used by boss-agent)')
|
|
172
|
+
.requiredOption('--agent <name>', 'Agent name (e.g., maestro-headless-agent)')
|
|
173
|
+
.requiredOption('--prompt-file <path>', 'Path to prompt file')
|
|
174
|
+
.requiredOption('--output <path>', 'Path to write claude stdout')
|
|
175
|
+
.option('--exit-code-file <path>', 'Path to write exit code')
|
|
176
|
+
.option('--cwd <dir>', 'Working directory for child process')
|
|
177
|
+
.option('--max-turns <n>', 'Max agentic turns for claude -p', parseInt)
|
|
178
|
+
.option('--timeout <seconds>', 'Kill after N seconds (default: 7200)', parseInt)
|
|
179
|
+
.action(dispatch);
|
|
180
|
+
program
|
|
181
|
+
.command('status')
|
|
182
|
+
.description('Show all tracked processes and their health')
|
|
183
|
+
.option('--json', 'Machine-readable JSON output')
|
|
184
|
+
.option('--tree', 'Show full process tree for each task')
|
|
185
|
+
.option('--prune', 'Remove stale entries (dead processes, PID reuse)')
|
|
186
|
+
.action(status);
|
|
187
|
+
program.parse();
|
|
188
|
+
//# sourceMappingURL=cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/bin/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Options for the cleanup command.
|
|
3
|
+
*/
|
|
4
|
+
export interface CleanupOptions {
|
|
5
|
+
deprecated?: boolean;
|
|
6
|
+
backups?: boolean;
|
|
7
|
+
zombies?: boolean;
|
|
8
|
+
all?: boolean;
|
|
9
|
+
dryRun?: boolean;
|
|
10
|
+
yes?: boolean;
|
|
11
|
+
keepBackups?: number;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Clean up zombie processes and prune stale state files.
|
|
15
|
+
*/
|
|
16
|
+
export declare function cleanupZombies(options: CleanupOptions): Promise<number>;
|
|
17
|
+
/**
|
|
18
|
+
* Main cleanup command.
|
|
19
|
+
*/
|
|
20
|
+
export declare function cleanup(options?: CleanupOptions): Promise<void>;
|
|
21
|
+
//# sourceMappingURL=cleanup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"AAwBA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAyLD;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAgH7E;AA4ED;;GAEG;AACH,wBAAsB,OAAO,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4CzE"}
|