agestra 4.7.0 → 4.8.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-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/README.ja.md +8 -27
- package/README.ko.md +244 -263
- package/README.md +244 -263
- package/README.zh.md +8 -27
- package/agents/agestra-designer.md +20 -4
- package/agents/agestra-ideator.md +20 -5
- package/agents/agestra-moderator.md +34 -17
- package/agents/agestra-qa.md +20 -5
- package/agents/agestra-reviewer.md +20 -3
- package/agents/agestra-team-lead.md +93 -80
- package/commands/design.md +26 -56
- package/commands/idea.md +22 -56
- package/commands/review.md +63 -93
- package/dist/bundle.js +423 -624
- package/hooks/user-prompt-submit.js +90 -25
- package/package.json +1 -1
- package/skills/design.md +29 -52
- package/skills/idea.md +307 -212
- package/skills/provider-guide.md +15 -21
- package/skills/review.md +45 -66
- package/skills/setup.md +98 -0
- package/skills/trace.md +3 -2
package/README.md
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
# Agestra
|
|
2
|
-
|
|
3
|
-
[](https://www.npmjs.com/package/agestra)
|
|
4
|
-
[](LICENSE)
|
|
5
|
-
|
|
1
|
+
# Agestra
|
|
2
|
+
|
|
3
|
+
[](https://www.npmjs.com/package/agestra)
|
|
4
|
+
[](LICENSE)
|
|
5
|
+
|
|
6
6
|
**Agent + Orchestra** — A multi-host orchestration toolkit for Claude Code, Codex CLI, and Gemini CLI.
|
|
7
|
-
|
|
7
|
+
|
|
8
8
|
[English](README.md) | [한국어](README.ko.md) | [日本語](README.ja.md) | [中文](README.zh.md)
|
|
9
|
-
|
|
10
|
-
Agestra connects the Claude host, Ollama (local), Gemini CLI, and Codex CLI as pluggable providers, enabling multi-agent orchestration with independent aggregation, consensus debates, autonomous CLI workers, parallel task dispatch, cross-validation, quality-based provider routing
|
|
11
|
-
|
|
9
|
+
|
|
10
|
+
Agestra connects the Claude host, Ollama (local), Gemini CLI, and Codex CLI as pluggable providers, enabling multi-agent orchestration with independent aggregation, consensus debates, autonomous CLI workers, parallel task dispatch, cross-validation, and quality-based provider routing — all through 25 MCP tools.
|
|
11
|
+
|
|
12
12
|
## Quick Start
|
|
13
13
|
|
|
14
14
|
### Claude Code
|
|
@@ -74,17 +74,17 @@ Available Gemini commands after setup:
|
|
|
74
74
|
- `/agestra:design`
|
|
75
75
|
- `/agestra:idea`
|
|
76
76
|
- `/agestra:implement`
|
|
77
|
-
|
|
78
|
-
### Prerequisites
|
|
79
|
-
|
|
80
|
-
At least one AI provider must be installed:
|
|
81
|
-
|
|
82
|
-
| Provider | Install | Type |
|
|
83
|
-
|----------|---------|------|
|
|
84
|
-
| [Ollama](https://ollama.com/) | `curl -fsSL https://ollama.com/install.sh \| sh` | Local LLM |
|
|
85
|
-
| [Gemini CLI](https://github.com/google-gemini/gemini-cli) | `npm install -g @google/gemini-cli` | Cloud |
|
|
86
|
-
| [Codex CLI](https://github.com/openai/codex) | `npm install -g @openai/codex` | Cloud |
|
|
87
|
-
|
|
77
|
+
|
|
78
|
+
### Prerequisites
|
|
79
|
+
|
|
80
|
+
At least one AI provider must be installed:
|
|
81
|
+
|
|
82
|
+
| Provider | Install | Type |
|
|
83
|
+
|----------|---------|------|
|
|
84
|
+
| [Ollama](https://ollama.com/) | `curl -fsSL https://ollama.com/install.sh \| sh` | Local LLM |
|
|
85
|
+
| [Gemini CLI](https://github.com/google-gemini/gemini-cli) | `npm install -g @google/gemini-cli` | Cloud |
|
|
86
|
+
| [Codex CLI](https://github.com/openai/codex) | `npm install -g @openai/codex` | Cloud |
|
|
87
|
+
|
|
88
88
|
Optional but recommended:
|
|
89
89
|
- **tmux** — enables visible CLI worker panes during autonomous execution
|
|
90
90
|
- **ripgrep (`rg`)** on Windows — if Codex resolves `rg` to its bundled Store-app path and fails with an "Access is denied" error, install ripgrep separately so a normal `rg.exe` is found first in `PATH`:
|
|
@@ -100,11 +100,11 @@ winget install BurntSushi.ripgrep.MSVC
|
|
|
100
100
|
```
|
|
101
101
|
|
|
102
102
|
---
|
|
103
|
-
|
|
104
|
-
## Philosophy
|
|
105
|
-
|
|
106
|
-
**Multi-AI is for verification, not token savings.** The review, design exploration, and idea generation workflows are structured as validation processes — getting independent opinions from multiple AI providers to catch blind spots, not to parallelize for speed.
|
|
107
|
-
|
|
103
|
+
|
|
104
|
+
## Philosophy
|
|
105
|
+
|
|
106
|
+
**Multi-AI is for verification, not token savings.** The review, design exploration, and idea generation workflows are structured as validation processes — getting independent opinions from multiple AI providers to catch blind spots, not to parallelize for speed.
|
|
107
|
+
|
|
108
108
|
## Host Workflows
|
|
109
109
|
|
|
110
110
|
| Host | Natural entrypoint |
|
|
@@ -116,127 +116,121 @@ winget install BurntSushi.ripgrep.MSVC
|
|
|
116
116
|
All three hosts drive the same MCP server and shared workflow specs from `commands/*.md`.
|
|
117
117
|
|
|
118
118
|
## Commands
|
|
119
|
-
|
|
120
|
-
| Command | Description |
|
|
121
|
-
|---------|-------------|
|
|
119
|
+
|
|
120
|
+
| Command | Description |
|
|
121
|
+
|---------|-------------|
|
|
122
122
|
| `/agestra review [target]` | Review code quality, security, and integration completeness |
|
|
123
123
|
| `/agestra idea [topic]` | Discover improvements by comparing with similar projects |
|
|
124
124
|
| `/agestra design [subject]` | Explore architecture and design trade-offs before implementation |
|
|
125
|
+
| `/agestra setup` | Initial AI provider selection and setup |
|
|
125
126
|
| `/agestra implement [task]` | Execute implementation in Claude-only or Multi-AI mode |
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
|
132
|
-
|
|
133
|
-
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
|
143
|
-
|
|
144
|
-
| `
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
|
149
|
-
|
|
150
|
-
| `
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
|
165
|
-
|---------|-------------|
|
|
166
|
-
| `@agestra/core` | `AIProvider` interface, registry with difficulty-based routing, config loader, CLI runner, atomic writes, job queue, secret scanner, worktree manager, task manifest, CLI worker manager |
|
|
167
|
-
| `@agestra/provider-ollama` | Ollama HTTP adapter with model detection |
|
|
168
|
-
| `@agestra/provider-gemini` | Google Gemini CLI adapter |
|
|
169
|
-
| `@agestra/provider-codex` | OpenAI Codex CLI adapter |
|
|
170
|
-
| `@agestra/agents` | Debate engine with consensus detection, turn quality evaluator, task dispatcher, cross-validator, task chain, auto-QA, file change tracker, session manager |
|
|
127
|
+
|
|
128
|
+
When external providers are available, text commands (review, design, idea) go directly to debate mode (끝장토론) for multi-AI cross-validation. When no providers are detected, Claude works alone automatically.
|
|
129
|
+
|
|
130
|
+
## Agents
|
|
131
|
+
|
|
132
|
+
| Agent | Model | Role |
|
|
133
|
+
|-------|-------|------|
|
|
134
|
+
| `agestra-team-lead` | Sonnet | Full orchestrator — environment check, quality-based provider routing, work mode selection, CLI worker supervision, QA loop |
|
|
135
|
+
| `agestra-reviewer` | Opus | Strict quality verifier — security, orphans, spec drift, test gaps |
|
|
136
|
+
| `agestra-designer` | Opus | Architecture explorer — Socratic questioning, trade-off analysis |
|
|
137
|
+
| `agestra-ideator` | Sonnet | Improvement discoverer — web research, competitive analysis |
|
|
138
|
+
| `agestra-moderator` | Sonnet | Multi-mode facilitator — debate with consensus detection, independent aggregation, document review, conflict resolution |
|
|
139
|
+
| `agestra-qa` | Opus | QA verifier — design compliance, PASS/FAIL judgment |
|
|
140
|
+
|
|
141
|
+
## Skills
|
|
142
|
+
|
|
143
|
+
| Skill | Description |
|
|
144
|
+
|-------|-------------|
|
|
145
|
+
| `provider-guide` | Provider routing, mode reference, orchestration pipeline |
|
|
146
|
+
| `worker-manage` | List, check, collect, and stop CLI workers |
|
|
147
|
+
| `cancel` | Graceful stop for workers, debates, chains, tasks |
|
|
148
|
+
| `build-fix` | Auto-diagnose and fix build/typecheck/lint errors |
|
|
149
|
+
| `trace` | View agent execution timeline and flow diagrams |
|
|
150
|
+
| `design` | Architecture exploration workflow with multi-AI mode selection |
|
|
151
|
+
| `idea` | Improvement discovery workflow with multi-AI mode selection |
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## Architecture
|
|
156
|
+
|
|
157
|
+
Turborepo monorepo with 9 packages:
|
|
158
|
+
|
|
159
|
+
| Package | Description |
|
|
160
|
+
|---------|-------------|
|
|
161
|
+
| `@agestra/core` | `AIProvider` interface, registry with difficulty-based routing, config loader, CLI runner, atomic writes, job queue, secret scanner, worktree manager, task manifest, CLI worker manager |
|
|
162
|
+
| `@agestra/provider-ollama` | Ollama HTTP adapter with model detection |
|
|
163
|
+
| `@agestra/provider-gemini` | Google Gemini CLI adapter |
|
|
164
|
+
| `@agestra/provider-codex` | OpenAI Codex CLI adapter |
|
|
165
|
+
| `@agestra/agents` | Debate engine with consensus detection, turn quality evaluator, task dispatcher, cross-validator, task chain, auto-QA, file change tracker, session manager |
|
|
171
166
|
| `@agestra/workspace` | Workspace document manager for reviews, analysis notes, and aggregated reports |
|
|
172
|
-
| `@agestra/
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
167
|
+
| `@agestra/mcp-server` | MCP protocol layer, 25 tools, environment-aware tool filtering, dispatch |
|
|
168
|
+
|
|
169
|
+
### Design Principles
|
|
170
|
+
|
|
177
171
|
- **Provider abstraction** — All backends implement `AIProvider` (`chat`, `healthCheck`, `getCapabilities`). Adding a new provider is isolated to a provider package plus factory registration.
|
|
178
|
-
- **Zero-config** — Providers are auto-detected at startup. No manual configuration required.
|
|
172
|
+
- **Zero-config** — Providers are auto-detected at startup. No manual configuration required.
|
|
179
173
|
- **Host-native** — Claude uses the plugin bundle, Codex uses `AGENTS.md`, and Gemini uses `GEMINI.md` plus project commands, while all three share the same MCP server and workflow core.
|
|
180
|
-
- **Modular dispatch** — Each tool category is an independent module with `getTools()` + `handleTool()`. The server collects and dispatches dynamically.
|
|
181
|
-
- **Atomic writes** — All file operations use write-to-temp-then-rename to prevent corruption.
|
|
182
|
-
- **Dead-end tracking** — Failed approaches are recorded
|
|
183
|
-
- **Preflight security** — CLI worker spawning includes secret scanning and array-based process args to prevent injection.
|
|
184
|
-
|
|
185
|
-
### Work Modes
|
|
186
|
-
|
|
187
|
-
**Text work** (review, design, idea):
|
|
188
|
-
|
|
189
|
-
**Implementation work** (team-lead orchestration):
|
|
190
|
-
- **Claude만으로** — Claude implements directly with project/global agents.
|
|
191
|
-
- **다른 AI도 함께** — CLI workers (Codex/Gemini) do autonomous coding in isolated git worktrees, Ollama handles simple tasks, Claude supervises and merges.
|
|
192
|
-
|
|
193
|
-
---
|
|
194
|
-
|
|
195
|
-
## Tools (
|
|
196
|
-
|
|
197
|
-
### AI Chat (3)
|
|
198
|
-
|
|
199
|
-
| Tool | Description |
|
|
200
|
-
|------|-------------|
|
|
174
|
+
- **Modular dispatch** — Each tool category is an independent module with `getTools()` + `handleTool()`. The server collects and dispatches dynamically.
|
|
175
|
+
- **Atomic writes** — All file operations use write-to-temp-then-rename to prevent corruption.
|
|
176
|
+
- **Dead-end tracking** — Failed approaches are recorded and injected into future prompts.
|
|
177
|
+
- **Preflight security** — CLI worker spawning includes secret scanning and array-based process args to prevent injection.
|
|
178
|
+
|
|
179
|
+
### Work Modes
|
|
180
|
+
|
|
181
|
+
**Text work** (review, design, idea): providers available → 끝장토론 (debate); no providers → Claude only
|
|
182
|
+
|
|
183
|
+
**Implementation work** (team-lead orchestration):
|
|
184
|
+
- **Claude만으로** — Claude implements directly with project/global agents.
|
|
185
|
+
- **다른 AI도 함께** — CLI workers (Codex/Gemini) do autonomous coding in isolated git worktrees, Ollama handles simple tasks, Claude supervises and merges.
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## Tools (25)
|
|
190
|
+
|
|
191
|
+
### AI Chat (3)
|
|
192
|
+
|
|
193
|
+
| Tool | Description |
|
|
194
|
+
|------|-------------|
|
|
201
195
|
| `ai_chat` | Chat with a specific provider (use `"auto"` for quality-based routing); optionally persist replies with `save_as_document` |
|
|
202
|
-
| `ai_analyze_files` | Read files from disk and send contents with a question to a provider |
|
|
203
|
-
| `ai_compare` | Send the same prompt to multiple providers, compare responses |
|
|
204
|
-
|
|
205
|
-
### Agent Orchestration (0)
|
|
206
|
-
|
|
207
|
-
| Tool | Description |
|
|
208
|
-
|------|-------------|
|
|
209
|
-
| `agent_debate_start` | Start a multi-provider debate (non-blocking, optional quality loop + validator) |
|
|
210
|
-
| `agent_debate_status` | Check debate status and transcript |
|
|
211
|
-
| `agent_debate_create` | Create a turn-based debate session (returns debate ID) |
|
|
212
|
-
| `agent_debate_turn` | Execute one provider's turn; supports `provider: "claude"` for Claude's independent participation |
|
|
213
|
-
| `agent_debate_conclude` | End a debate and generate final transcript |
|
|
196
|
+
| `ai_analyze_files` | Read files from disk and send contents with a question to a provider |
|
|
197
|
+
| `ai_compare` | Send the same prompt to multiple providers, compare responses |
|
|
198
|
+
|
|
199
|
+
### Agent Orchestration (0)
|
|
200
|
+
|
|
201
|
+
| Tool | Description |
|
|
202
|
+
|------|-------------|
|
|
203
|
+
| `agent_debate_start` | Start a multi-provider debate (non-blocking, optional quality loop + validator) |
|
|
204
|
+
| `agent_debate_status` | Check debate status and transcript |
|
|
205
|
+
| `agent_debate_create` | Create a turn-based debate session (returns debate ID) |
|
|
206
|
+
| `agent_debate_turn` | Execute one provider's turn; supports `provider: "claude"` for Claude's independent participation |
|
|
207
|
+
| `agent_debate_conclude` | End a debate and generate final transcript |
|
|
214
208
|
| `agent_debate_moderate` | Run a fully automated debate — creates session, runs provider rounds, records specialist selection, applies it to Claude's host-backed turn when available, detects consensus, returns summary only |
|
|
215
|
-
| `agent_debate_review` | Send a document to multiple providers for independent review |
|
|
216
|
-
| `agent_cross_validate` | Cross-validate outputs (agent-tier validators only) |
|
|
217
|
-
| `agent_changes_review` | Review file changes from an isolated task |
|
|
218
|
-
| `agent_changes_accept` | Accept and merge changes from an isolated task |
|
|
219
|
-
| `agent_changes_reject` | Reject changes and clean up the isolated worktree |
|
|
220
|
-
|
|
221
|
-
### CLI Workers (4)
|
|
222
|
-
|
|
223
|
-
| Tool | Description |
|
|
224
|
-
|------|-------------|
|
|
225
|
-
| `cli_worker_spawn` | Spawn a CLI AI (Codex/Gemini) in autonomous mode with git worktree isolation and preflight security |
|
|
226
|
-
| `cli_worker_status` | Check worker FSM state, heartbeat, and output tail |
|
|
227
|
-
| `cli_worker_collect` | Collect completed worker results (git diff, output, exit code) |
|
|
228
|
-
| `cli_worker_stop` | Stop a running worker (SIGTERM → SIGKILL) and clean up worktree |
|
|
229
|
-
|
|
230
|
-
### Environment (1)
|
|
231
|
-
|
|
232
|
-
| Tool | Description |
|
|
233
|
-
|------|-------------|
|
|
234
|
-
| `environment_check` | Detect CLI tools, Ollama models with tiers, tmux, git worktree support, available modes |
|
|
235
|
-
|
|
209
|
+
| `agent_debate_review` | Send a document to multiple providers for independent review |
|
|
210
|
+
| `agent_cross_validate` | Cross-validate outputs (agent-tier validators only) |
|
|
211
|
+
| `agent_changes_review` | Review file changes from an isolated task |
|
|
212
|
+
| `agent_changes_accept` | Accept and merge changes from an isolated task |
|
|
213
|
+
| `agent_changes_reject` | Reject changes and clean up the isolated worktree |
|
|
214
|
+
|
|
215
|
+
### CLI Workers (4)
|
|
216
|
+
|
|
217
|
+
| Tool | Description |
|
|
218
|
+
|------|-------------|
|
|
219
|
+
| `cli_worker_spawn` | Spawn a CLI AI (Codex/Gemini) in autonomous mode with git worktree isolation and preflight security |
|
|
220
|
+
| `cli_worker_status` | Check worker FSM state, heartbeat, and output tail |
|
|
221
|
+
| `cli_worker_collect` | Collect completed worker results (git diff, output, exit code) |
|
|
222
|
+
| `cli_worker_stop` | Stop a running worker (SIGTERM → SIGKILL) and clean up worktree |
|
|
223
|
+
|
|
224
|
+
### Environment (1)
|
|
225
|
+
|
|
226
|
+
| Tool | Description |
|
|
227
|
+
|------|-------------|
|
|
228
|
+
| `environment_check` | Detect CLI tools, Ollama models with tiers, tmux, git worktree support, available modes |
|
|
229
|
+
|
|
236
230
|
### Workspace (7)
|
|
237
|
-
|
|
238
|
-
| Tool | Description |
|
|
239
|
-
|------|-------------|
|
|
231
|
+
|
|
232
|
+
| Tool | Description |
|
|
233
|
+
|------|-------------|
|
|
240
234
|
| `workspace_create_review` | Create a code review document with files and rules |
|
|
241
235
|
| `workspace_request_review` | Request a provider to review a document |
|
|
242
236
|
| `workspace_review_status` | Check review completion status |
|
|
@@ -244,36 +238,25 @@ Turborepo monorepo with 9 packages:
|
|
|
244
238
|
| `workspace_create_document` | Create a general-purpose workspace document with title, markdown content, and optional metadata |
|
|
245
239
|
| `workspace_read` | Read document contents |
|
|
246
240
|
| `workspace_list` | List all workspace documents |
|
|
247
|
-
|
|
248
|
-
### Provider Management (2)
|
|
249
|
-
|
|
250
|
-
| Tool | Description |
|
|
251
|
-
|------|-------------|
|
|
252
|
-
| `provider_list` | List providers with status and capabilities |
|
|
253
|
-
| `provider_health` | Health check one or all providers |
|
|
254
|
-
|
|
255
|
-
### Ollama (2)
|
|
256
|
-
|
|
257
|
-
| Tool | Description |
|
|
258
|
-
|------|-------------|
|
|
259
|
-
| `ollama_models` | List installed models with sizes and tier classification |
|
|
260
|
-
| `ollama_pull` | Download a model |
|
|
261
|
-
|
|
262
|
-
###
|
|
263
|
-
|
|
264
|
-
| Tool | Description |
|
|
265
|
-
|------|-------------|
|
|
266
|
-
| `memory_search` | Hybrid retrieval (FTS5 + vector + graph) |
|
|
267
|
-
| `memory_index` | Index files/directories into memory |
|
|
268
|
-
| `memory_store` | Store a knowledge node (fact, decision, dead_end, finding) |
|
|
269
|
-
| `memory_dead_ends` | Search previous failures to avoid repeating them |
|
|
270
|
-
| `memory_context` | Assemble relevant context within a token budget |
|
|
271
|
-
| `memory_add_edge` | Create relationship edges between knowledge nodes |
|
|
272
|
-
|
|
273
|
-
### Jobs (2)
|
|
274
|
-
|
|
275
|
-
| Tool | Description |
|
|
276
|
-
|------|-------------|
|
|
241
|
+
|
|
242
|
+
### Provider Management (2)
|
|
243
|
+
|
|
244
|
+
| Tool | Description |
|
|
245
|
+
|------|-------------|
|
|
246
|
+
| `provider_list` | List providers with status and capabilities |
|
|
247
|
+
| `provider_health` | Health check one or all providers |
|
|
248
|
+
|
|
249
|
+
### Ollama (2)
|
|
250
|
+
|
|
251
|
+
| Tool | Description |
|
|
252
|
+
|------|-------------|
|
|
253
|
+
| `ollama_models` | List installed models with sizes and tier classification |
|
|
254
|
+
| `ollama_pull` | Download a model |
|
|
255
|
+
|
|
256
|
+
### Jobs (2)
|
|
257
|
+
|
|
258
|
+
| Tool | Description |
|
|
259
|
+
|------|-------------|
|
|
277
260
|
| `cli_job_submit` | Submit a long-running CLI task to background |
|
|
278
261
|
| `cli_job_status` | Check job status and output |
|
|
279
262
|
|
|
@@ -282,62 +265,61 @@ Turborepo monorepo with 9 packages:
|
|
|
282
265
|
| Tool | Description |
|
|
283
266
|
|------|-------------|
|
|
284
267
|
| `qa_run` | Run automatic QA with detected build/test commands and a PASS/FAIL summary |
|
|
285
|
-
|
|
286
|
-
### Trace / Observability (3)
|
|
287
|
-
|
|
288
|
-
| Tool | Description |
|
|
289
|
-
|------|-------------|
|
|
290
|
-
| `trace_query` | Query trace records with filtering (provider, task, time range) |
|
|
291
|
-
| `trace_summary` | Get quality stats, performance metrics, and difficulty qualification per provider |
|
|
292
|
-
| `trace_visualize` | Generate a Mermaid diagram of a traced operation's flow |
|
|
293
|
-
|
|
294
|
-
---
|
|
295
|
-
|
|
296
|
-
## Configuration
|
|
297
|
-
|
|
298
|
-
### providers.config.json (Optional)
|
|
299
|
-
|
|
300
|
-
Agestra auto-detects providers at startup. For manual control, create `providers.config.json` in the project root:
|
|
301
|
-
|
|
302
|
-
| Field | Description |
|
|
303
|
-
|-------|-------------|
|
|
304
|
-
| `defaultProvider` | Provider ID when none specified |
|
|
305
|
-
| `providers[].id` | Unique identifier |
|
|
306
|
-
| `providers[].type` | `ollama`, `gemini-cli`, or `codex-cli` |
|
|
307
|
-
| `providers[].enabled` | Load at startup |
|
|
308
|
-
| `providers[].config` | Type-specific settings (host, timeout, etc.) |
|
|
309
|
-
|
|
310
|
-
### Runtime Data
|
|
311
|
-
|
|
312
|
-
Stored under `.agestra/` (gitignored):
|
|
313
|
-
|
|
314
|
-
| Path | Purpose |
|
|
315
|
-
|------|---------|
|
|
316
|
-
| `.agestra/sessions/` | Debate and task session state |
|
|
268
|
+
|
|
269
|
+
### Trace / Observability (3)
|
|
270
|
+
|
|
271
|
+
| Tool | Description |
|
|
272
|
+
|------|-------------|
|
|
273
|
+
| `trace_query` | Query trace records with filtering (provider, task, time range) |
|
|
274
|
+
| `trace_summary` | Get quality stats, performance metrics, and difficulty qualification per provider |
|
|
275
|
+
| `trace_visualize` | Generate a Mermaid diagram of a traced operation's flow |
|
|
276
|
+
|
|
277
|
+
---
|
|
278
|
+
|
|
279
|
+
## Configuration
|
|
280
|
+
|
|
281
|
+
### providers.config.json (Optional)
|
|
282
|
+
|
|
283
|
+
Agestra auto-detects providers at startup. For manual control, create `providers.config.json` in the project root:
|
|
284
|
+
|
|
285
|
+
| Field | Description |
|
|
286
|
+
|-------|-------------|
|
|
287
|
+
| `defaultProvider` | Provider ID when none specified |
|
|
288
|
+
| `providers[].id` | Unique identifier |
|
|
289
|
+
| `providers[].type` | `ollama`, `gemini-cli`, or `codex-cli` |
|
|
290
|
+
| `providers[].enabled` | Load at startup |
|
|
291
|
+
| `providers[].config` | Type-specific settings (host, timeout, etc.) |
|
|
292
|
+
|
|
293
|
+
### Runtime Data
|
|
294
|
+
|
|
295
|
+
Stored under `.agestra/` (gitignored):
|
|
296
|
+
|
|
297
|
+
| Path | Purpose |
|
|
298
|
+
|------|---------|
|
|
299
|
+
| `.agestra/sessions/` | Debate and task session state |
|
|
317
300
|
| `.agestra/workspace/` | Workspace documents (reviews, notes, reports) |
|
|
318
|
-
| `.agestra
|
|
319
|
-
| `.agestra/.
|
|
320
|
-
| `.agestra
|
|
321
|
-
| `.agestra/
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
npm
|
|
330
|
-
npm
|
|
331
|
-
npm
|
|
332
|
-
npm run
|
|
333
|
-
npm run
|
|
334
|
-
npm run
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
```
|
|
301
|
+
| `.agestra/.jobs/` | Background job queue |
|
|
302
|
+
| `.agestra/.workers/` | CLI worker state, manifests, and output logs |
|
|
303
|
+
| `.agestra/worktrees/` | Git worktrees for isolated CLI worker execution |
|
|
304
|
+
| `.agestra/traces/` | Provider trace JSONL (auto-pruned after 30 days) |
|
|
305
|
+
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
## Development
|
|
309
|
+
|
|
310
|
+
```bash
|
|
311
|
+
npm install # Install dependencies
|
|
312
|
+
npm run build # Build all packages (Turborepo)
|
|
313
|
+
npm test # Run all tests (Vitest)
|
|
314
|
+
npm run bundle # Build single-file plugin bundle (esbuild)
|
|
315
|
+
npm run dev # Watch mode
|
|
316
|
+
npm run lint # Lint (ESLint)
|
|
317
|
+
npm run clean # Remove dist/
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
### Project Structure
|
|
321
|
+
|
|
322
|
+
```
|
|
341
323
|
agestra/
|
|
342
324
|
├── AGENTS.md # Codex host instructions
|
|
343
325
|
├── GEMINI.md # Gemini host instructions
|
|
@@ -356,48 +338,47 @@ agestra/
|
|
|
356
338
|
│ ├── idea.md # /agestra idea — improvement discovery
|
|
357
339
|
│ ├── design.md # /agestra design — architecture exploration
|
|
358
340
|
│ └── implement.md # /agestra implement — execution workflow
|
|
359
|
-
├── agents/
|
|
360
|
-
│ ├── agestra-reviewer.md # Strict quality verifier (Opus)
|
|
361
|
-
│ ├── agestra-designer.md # Architecture explorer (Opus)
|
|
362
|
-
│ ├── agestra-ideator.md # Improvement discoverer (Sonnet)
|
|
363
|
-
│ ├── agestra-moderator.md # Multi-mode facilitator (Sonnet)
|
|
364
|
-
│ ├── agestra-qa.md # QA verifier (Opus, no code writes)
|
|
365
|
-
│ └── agestra-team-lead.md # Full orchestrator (Sonnet, no code writes)
|
|
366
|
-
├── skills/
|
|
367
|
-
│ ├── provider-guide.md # Provider routing and mode reference
|
|
368
|
-
│ ├── worker-manage.md # CLI worker management
|
|
369
|
-
│ ├── cancel.md # Graceful operation cancellation
|
|
370
|
-
│ ├── build-fix.md # Build error auto-repair
|
|
371
|
-
│ └── trace.md # Execution timeline viewer
|
|
372
|
-
├── hooks/
|
|
373
|
-
│ └── user-prompt-submit.md # Tool recommendation hook
|
|
374
|
-
├── dist/
|
|
375
|
-
│ └── bundle.js # Single-file MCP server bundle
|
|
341
|
+
├── agents/
|
|
342
|
+
│ ├── agestra-reviewer.md # Strict quality verifier (Opus)
|
|
343
|
+
│ ├── agestra-designer.md # Architecture explorer (Opus)
|
|
344
|
+
│ ├── agestra-ideator.md # Improvement discoverer (Sonnet)
|
|
345
|
+
│ ├── agestra-moderator.md # Multi-mode facilitator (Sonnet)
|
|
346
|
+
│ ├── agestra-qa.md # QA verifier (Opus, no code writes)
|
|
347
|
+
│ └── agestra-team-lead.md # Full orchestrator (Sonnet, no code writes)
|
|
348
|
+
├── skills/
|
|
349
|
+
│ ├── provider-guide.md # Provider routing and mode reference
|
|
350
|
+
│ ├── worker-manage.md # CLI worker management
|
|
351
|
+
│ ├── cancel.md # Graceful operation cancellation
|
|
352
|
+
│ ├── build-fix.md # Build error auto-repair
|
|
353
|
+
│ └── trace.md # Execution timeline viewer
|
|
354
|
+
├── hooks/
|
|
355
|
+
│ └── user-prompt-submit.md # Tool recommendation hook
|
|
356
|
+
├── dist/
|
|
357
|
+
│ └── bundle.js # Single-file MCP server bundle
|
|
376
358
|
├── scripts/
|
|
377
359
|
│ ├── bundle.mjs # esbuild bundle script
|
|
378
360
|
│ ├── install-host-mcp.mjs # Register Agestra with Codex/Gemini
|
|
379
361
|
│ └── uninstall-host-mcp.mjs # Remove Codex/Gemini MCP registration
|
|
380
362
|
├── packages/
|
|
381
|
-
│ ├── core/ # AIProvider interface, registry, security, workers
|
|
382
|
-
│ ├── provider-ollama/ # Ollama HTTP adapter
|
|
383
|
-
│ ├── provider-gemini/ # Gemini CLI adapter
|
|
384
|
-
│ ├── provider-codex/ # Codex CLI adapter
|
|
385
|
-
│ ├── agents/ # Debate engine, dispatcher, cross-validator
|
|
363
|
+
│ ├── core/ # AIProvider interface, registry, security, workers
|
|
364
|
+
│ ├── provider-ollama/ # Ollama HTTP adapter
|
|
365
|
+
│ ├── provider-gemini/ # Gemini CLI adapter
|
|
366
|
+
│ ├── provider-codex/ # Codex CLI adapter
|
|
367
|
+
│ ├── agents/ # Debate engine, dispatcher, cross-validator
|
|
386
368
|
│ ├── workspace/ # Workspace document manager
|
|
387
|
-
│
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
369
|
+
│ └── mcp-server/ # MCP server, 25 tools, environment-aware filtering, dispatch
|
|
370
|
+
├── package.json # Workspace root
|
|
371
|
+
└── turbo.json # Turborepo pipeline
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
### Adding a Provider
|
|
375
|
+
|
|
376
|
+
1. Create `packages/provider-<name>/` implementing `AIProvider`.
|
|
377
|
+
2. Add a factory in `packages/mcp-server/src/index.ts`.
|
|
378
|
+
3. `npm run build && npm test`
|
|
379
|
+
|
|
380
|
+
---
|
|
381
|
+
|
|
401
382
|
## Uninstall
|
|
402
383
|
|
|
403
384
|
Claude Code:
|
|
@@ -419,9 +400,9 @@ npm run uninstall:gemini
|
|
|
419
400
|
```
|
|
420
401
|
|
|
421
402
|
If you also want to delete generated project data, remove the `.agestra/` directory manually.
|
|
422
|
-
|
|
423
|
-
---
|
|
424
|
-
|
|
425
|
-
## License
|
|
426
|
-
|
|
427
|
-
[GPL-3.0](LICENSE)
|
|
403
|
+
|
|
404
|
+
---
|
|
405
|
+
|
|
406
|
+
## License
|
|
407
|
+
|
|
408
|
+
[GPL-3.0](LICENSE)
|