opencode-orchestrator 0.8.12 β 0.8.14
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 +277 -67
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -28,70 +28,214 @@ Multi-agent system that autonomously executes complex tasks. Commander delegates
|
|
|
28
28
|
|
|
29
29
|
---
|
|
30
30
|
|
|
31
|
-
## ποΈ
|
|
31
|
+
## ποΈ Architecture Overview
|
|
32
|
+
|
|
33
|
+
### π User Flow: Real Scenario
|
|
34
|
+
|
|
35
|
+
> **Example:** `/task "Build a REST API with user authentication"`
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
39
|
+
β π€ USER: /task "Build a REST API with user authentication" β
|
|
40
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
41
|
+
β
|
|
42
|
+
βΌ
|
|
43
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
44
|
+
β π― COMMANDER (Master Session) β
|
|
45
|
+
β β
|
|
46
|
+
β "I'll break this into parallel tasks and delegate to specialized agents" β
|
|
47
|
+
β β
|
|
48
|
+
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
|
|
49
|
+
β β π Creates TODO.md: β β
|
|
50
|
+
β β - [ ] Research: Express.js + JWT best practices β β
|
|
51
|
+
β β - [ ] Setup: Project structure + dependencies β β
|
|
52
|
+
β β - [ ] Implement: User model + auth routes β β
|
|
53
|
+
β β - [ ] Test: API endpoints verification β β
|
|
54
|
+
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
|
|
55
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
56
|
+
β
|
|
57
|
+
ββββββββββββββββββββββββββΌβββββββββββββββββββββββββ
|
|
58
|
+
β β β
|
|
59
|
+
βΌ βΌ βΌ
|
|
60
|
+
|
|
61
|
+
βββββββββββββββββββββ βββββββββββββββββββββ βββββββββββββββββββββ
|
|
62
|
+
β π PLANNER β β π¨ WORKER #1 β β π¨ WORKER #2 β
|
|
63
|
+
β Session: ses_001 β β Session: ses_002 β β Session: ses_003 β
|
|
64
|
+
β ββββββββββββββββββββ£ β ββββββββββββββββββββ£ β ββββββββββββββββββββ£
|
|
65
|
+
β Research Express β β Create src/ β β Write auth.ts β
|
|
66
|
+
β + JWT docs β β Setup package.jsonβ β + user.model.ts β
|
|
67
|
+
β β β β β β
|
|
68
|
+
β π₯ websearch() β β π₯ write files β β π₯ write files β
|
|
69
|
+
β οΏ½ cache_docs() β β οΏ½ run_background β β β
|
|
70
|
+
βββββββββββββββββββββ β β npm install β βββββββββββββββββββββ
|
|
71
|
+
β βββββββββββββββββββββ β
|
|
72
|
+
β β β
|
|
73
|
+
β β‘ ALL RUN IN PARALLEL (async: true) β
|
|
74
|
+
β β±οΈ Commander monitors, doesn't wait β
|
|
75
|
+
ββββββββββββββββββββββββββΌβββββββββββββββββββββββ
|
|
76
|
+
βΌ
|
|
77
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
78
|
+
β π BACKGROUND PROCESSES β
|
|
79
|
+
β β
|
|
80
|
+
β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ β
|
|
81
|
+
β β npm install β β npm run build β β npm test β β
|
|
82
|
+
β β (bg_cmd_001) β β (bg_cmd_002) β β (bg_cmd_003) β β
|
|
83
|
+
β β β³ running... β β β³ running... β β β³ pending... β β
|
|
84
|
+
β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ β
|
|
85
|
+
β β
|
|
86
|
+
β β’ Check with: check_background / list_background β
|
|
87
|
+
β β’ Non-blocking: Commander continues other work β
|
|
88
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
89
|
+
β
|
|
90
|
+
βΌ
|
|
91
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
92
|
+
β π ASYNC RESULT COLLECTION β
|
|
93
|
+
β β
|
|
94
|
+
β get_task_result("ses_001") βββΆ β
Planner done: "Found JWT patterns..." β
|
|
95
|
+
β get_task_result("ses_002") βββΆ β
Worker #1 done: "Project setup complete" β
|
|
96
|
+
β get_task_result("ses_003") βββΆ β³ Still running... β
|
|
97
|
+
β β
|
|
98
|
+
β Commander: "Worker #2 still working, I'll delegate review task meanwhile" β
|
|
99
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
100
|
+
β
|
|
101
|
+
βΌ
|
|
102
|
+
βββββββββββββββββββββ
|
|
103
|
+
β β
REVIEWER β
|
|
104
|
+
β Session: ses_004 β
|
|
105
|
+
β ββββββββββββββββββββ£
|
|
106
|
+
β Verify endpoints β
|
|
107
|
+
β Update TODO.md: β
|
|
108
|
+
β - [x] Research β β
|
|
109
|
+
β - [x] Setup β β
|
|
110
|
+
β - [x] Implement ββ
|
|
111
|
+
β - [x] Test β β
|
|
112
|
+
βββββββββββββββββββββ
|
|
113
|
+
β
|
|
114
|
+
βΌ
|
|
115
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
116
|
+
β ποΈ MISSION COMPLETE β
|
|
117
|
+
β β
|
|
118
|
+
β Commander: "All TODOs checked. Mission complete." β
|
|
119
|
+
β β
|
|
120
|
+
β Output: <mission_seal>SEALED</mission_seal> β
|
|
121
|
+
β β
|
|
122
|
+
β β
Session cleanup β Resources freed β Ready for next mission β
|
|
123
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
**Key Concepts Visualized:**
|
|
127
|
+
|
|
128
|
+
| Concept | How It Works |
|
|
129
|
+
|---------|--------------|
|
|
130
|
+
| **Session** | Each agent runs in isolated session (ses_001, ses_002...) |
|
|
131
|
+
| **Parallel Agents** | Multiple Workers execute simultaneously, not sequentially |
|
|
132
|
+
| **Background Commands** | Long-running commands (npm install) don't block agents |
|
|
133
|
+
| **Async Collection** | Commander polls results, continues work while waiting |
|
|
134
|
+
| **Auto-Continue** | If TODOs remain, loop continues until all `[x]` checked |
|
|
135
|
+
|
|
136
|
+
### π Project Architecture
|
|
32
137
|
|
|
33
138
|
```
|
|
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
|
-
delegate_task (async)
|
|
65
|
-
β
|
|
66
|
-
βββββββββββββββββββββββββββΌββββββββββββββββββββββββββ
|
|
67
|
-
βΌ βΌ βΌ
|
|
139
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
140
|
+
β OpenCode Orchestrator Plugin β
|
|
141
|
+
β src/index.ts β
|
|
142
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
143
|
+
β
|
|
144
|
+
βββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββ
|
|
145
|
+
βΌ βΌ βΌ
|
|
146
|
+
βββββββββββββββββββββββ βββββββββββββββββββββββ βββββββββββββββββββββββββββββββ
|
|
147
|
+
β Plugin Hooks β β Core Systems β β Tools β
|
|
148
|
+
β plugin-handlers/ β β src/core/ β β src/tools/ β
|
|
149
|
+
βββββββββββββββββββββββ€ βββββββββββββββββββββββ€ βββββββββββββββββββββββββββββββ€
|
|
150
|
+
β β’ chat.message β β β’ agents/ β β β’ parallel/ β
|
|
151
|
+
β β’ event β β ParallelManager β β delegate_task β
|
|
152
|
+
β β’ tool.execute β β TaskStore β β get_task_result β
|
|
153
|
+
β β’ assistant.done β β Concurrency β β β’ web/ β
|
|
154
|
+
βββββββββββββββββββββββ β β’ loop/ β β webfetch, websearch β
|
|
155
|
+
β MissionSeal β β β’ background-cmd/ β
|
|
156
|
+
β TodoContinuation β β run_background β
|
|
157
|
+
β β’ recovery/ β β β’ search β
|
|
158
|
+
β SessionRecovery β β grep, glob, mgrep β
|
|
159
|
+
β β’ notification/ β βββββββββββββββββββββββββββββββ
|
|
160
|
+
β Toast, Manager β
|
|
161
|
+
β β’ session/ β
|
|
162
|
+
β SharedContext β
|
|
163
|
+
β β’ cache/ β
|
|
164
|
+
β DocumentCache β
|
|
165
|
+
βββββββββββββββββββββββ
|
|
166
|
+
β
|
|
167
|
+
βββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββ
|
|
168
|
+
βΌ βΌ βΌ
|
|
68
169
|
βββββββββββββββββββββββ βββββββββββββββββββββββ βββββββββββββββββββββββ
|
|
69
|
-
β
|
|
70
|
-
β
|
|
71
|
-
|
|
72
|
-
β
|
|
73
|
-
β
|
|
74
|
-
β
|
|
75
|
-
β β’ Notify parent β β β’ Notify parent β β β’ Notify parent β
|
|
76
|
-
β on complete β β on complete β β on complete β
|
|
170
|
+
β π― Commander β β π Planner β β π¨ Worker β
|
|
171
|
+
β Orchestrator β β Research+Plan β β Implementation β
|
|
172
|
+
βββββββββββββββββββββββ€ βββββββββββββββββββββββ€ βββββββββββββββββββββββ€
|
|
173
|
+
β β’ Mission control β β β’ Task decompose β β β’ Code writing β
|
|
174
|
+
β β’ Parallel delegate β β β’ Doc research β β β’ File operations β
|
|
175
|
+
β β’ TODO monitoring β β β’ TODO creation β β β’ Command execution β
|
|
77
176
|
βββββββββββββββββββββββ βββββββββββββββββββββββ βββββββββββββββββββββββ
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
β
|
|
83
|
-
β
|
|
84
|
-
β
|
|
85
|
-
β
|
|
86
|
-
β
|
|
87
|
-
β
|
|
88
|
-
β
|
|
89
|
-
β
|
|
90
|
-
β
|
|
91
|
-
|
|
177
|
+
β β β
|
|
178
|
+
β β β
|
|
179
|
+
β ββββββββββ΄βββββββββ β
|
|
180
|
+
β βΌ β β
|
|
181
|
+
β βββββββββββββββββββββββ β β
|
|
182
|
+
β β β
Reviewer β β β
|
|
183
|
+
β β Quality+Context β β β
|
|
184
|
+
β βββββββββββββββββββββββ€ β β
|
|
185
|
+
β β β’ Verification β β β
|
|
186
|
+
β β β’ TODO updates β β β
|
|
187
|
+
β β β’ Context manage β β β
|
|
188
|
+
β βββββββββββββββββββββββ β β
|
|
189
|
+
β β β β
|
|
190
|
+
ββββββββββββββββββββΌββββββββββββββββββ΄βββββββββββββββββββ
|
|
191
|
+
βΌ
|
|
192
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
193
|
+
β π Shared Workspace (.opencode/) β
|
|
194
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
|
|
195
|
+
β todo.md β Hierarchical task list (Epic β Task β Subtask) β
|
|
196
|
+
β context.md β Adaptive context (shrinks with progress) β
|
|
197
|
+
β loop-state.json β Mission loop iteration state β
|
|
198
|
+
β docs/ β Cached documentation (auto-expire) β
|
|
199
|
+
β archive/ β Old context snapshots β
|
|
200
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
### π Directory Structure
|
|
205
|
+
|
|
206
|
+
```
|
|
207
|
+
src/
|
|
208
|
+
βββ index.ts # Plugin main entry point
|
|
209
|
+
βββ agents/
|
|
210
|
+
β βββ commander.ts # Commander agent definition
|
|
211
|
+
β βββ definitions.ts # Agent exports
|
|
212
|
+
β βββ prompts/ # Prompt fragments (commander/, planner/, worker/, reviewer/)
|
|
213
|
+
β βββ subagents/ # Subagent definitions (planner.ts, worker.ts, reviewer.ts)
|
|
214
|
+
βββ core/
|
|
215
|
+
β βββ agents/ # ParallelAgentManager, TaskStore, ConcurrencyController
|
|
216
|
+
β βββ cache/ # DocumentCache
|
|
217
|
+
β βββ loop/ # MissionSeal, TodoContinuation, TodoEnforcer
|
|
218
|
+
β βββ notification/ # Toast, TaskToastManager
|
|
219
|
+
β βββ recovery/ # SessionRecovery, ErrorPatterns
|
|
220
|
+
β βββ session/ # SharedContext
|
|
221
|
+
β βββ task/ # TaskScheduler, TaskParser
|
|
222
|
+
βββ plugin-handlers/
|
|
223
|
+
β βββ chat-message-handler.ts # /task detection, mission start
|
|
224
|
+
β βββ event-handler.ts # session.idle, session.error handling
|
|
225
|
+
β βββ tool-execute-handler.ts # Tool completion tracking
|
|
226
|
+
β βββ assistant-done-handler.ts # Response completion
|
|
227
|
+
βββ shared/
|
|
228
|
+
β βββ constants/ # PATHS, TOOL_NAMES, MISSION_SEAL, etc.
|
|
229
|
+
β βββ agent/ # Agent definitions, names
|
|
230
|
+
β βββ errors/ # Error types
|
|
231
|
+
βββ tools/
|
|
232
|
+
β βββ parallel/ # delegate_task, get_task_result, list_tasks, cancel_task
|
|
233
|
+
β βββ web/ # webfetch, websearch, codesearch, cache_docs
|
|
234
|
+
β βββ background-cmd/ # run_background, check_background, list_background
|
|
235
|
+
β βββ search.ts # grep_search, glob_search, mgrep
|
|
236
|
+
βββ utils/ # Utility functions
|
|
92
237
|
```
|
|
93
238
|
|
|
94
|
-
---
|
|
95
239
|
|
|
96
240
|
## Installation
|
|
97
241
|
|
|
@@ -127,9 +271,17 @@ Use `/task` when you need the AI to **complete a mission autonomously**:
|
|
|
127
271
|
**What Commander Mode Does:**
|
|
128
272
|
- βΎοΈ **Runs until sealed** β Loops until agent outputs `<mission_seal>SEALED</mission_seal>`
|
|
129
273
|
- π§ **Anti-Hallucination** β Researches docs before coding
|
|
130
|
-
- β‘ **Parallel Execution** β Up to 50 concurrent
|
|
131
|
-
- π **Auto-Recovery** β Handles errors automatically
|
|
132
|
-
- π **
|
|
274
|
+
- β‘ **Parallel Execution** β Up to 50 concurrent Worker Sessions
|
|
275
|
+
- π **Auto-Recovery** β Handles errors automatically with pattern matching
|
|
276
|
+
- π **Progress Tracking** β Monitors TODO completion and shows progress
|
|
277
|
+
|
|
278
|
+
**Concurrency Limits (per agent type):**
|
|
279
|
+
| Agent | Max Concurrent | Purpose |
|
|
280
|
+
|--------|---------------|-----------|
|
|
281
|
+
| Commander | 1 | Single orchestrator per mission |
|
|
282
|
+
| Planner | 3 | Research and TODO planning |
|
|
283
|
+
| Worker | 10 | Implementation tasks |
|
|
284
|
+
| Reviewer | 5 | Verification and testing |
|
|
133
285
|
|
|
134
286
|
**ποΈ Mission Seal Loop:**
|
|
135
287
|
```
|
|
@@ -172,7 +324,65 @@ What's the difference between useState and useReducer?
|
|
|
172
324
|
|
|
173
325
|
---
|
|
174
326
|
|
|
175
|
-
##
|
|
327
|
+
## π Mission Loop Mechanism
|
|
328
|
+
|
|
329
|
+
The Commander uses an event-driven mission loop to autonomously complete missions:
|
|
330
|
+
|
|
331
|
+
```
|
|
332
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
333
|
+
β MISSION LOOP LIFECYCLE β
|
|
334
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
335
|
+
|
|
336
|
+
1οΈβ£ User sends "/task 'mission'"
|
|
337
|
+
β
|
|
338
|
+
2οΈβ£ chat.message handler detects /task
|
|
339
|
+
β
|
|
340
|
+
3οΈβ£ Create session + startMissionLoop()
|
|
341
|
+
β
|
|
342
|
+
Write .opencode/loop-state.json:
|
|
343
|
+
{
|
|
344
|
+
"active": true,
|
|
345
|
+
"sessionID": "ses_abc",
|
|
346
|
+
"iteration": 1,
|
|
347
|
+
"maxIterations": 20
|
|
348
|
+
}
|
|
349
|
+
β
|
|
350
|
+
4οΈβ£ Commander receives prompt β delegates work
|
|
351
|
+
β
|
|
352
|
+
5οΈβ£ Worker sessions execute β results collected
|
|
353
|
+
β
|
|
354
|
+
6οΈβ£ session.idle event triggers
|
|
355
|
+
β
|
|
356
|
+
Check for <mission_seal>SEALED</mission_seal>
|
|
357
|
+
ββ Seal found? β Clear loop state β Complete β
|
|
358
|
+
ββ Not found? β Increment iteration β Continue loop
|
|
359
|
+
β
|
|
360
|
+
Show countdown toast (3 seconds)
|
|
361
|
+
β
|
|
362
|
+
Inject continuation prompt
|
|
363
|
+
β
|
|
364
|
+
[Loop back to step 4]
|
|
365
|
+
```
|
|
366
|
+
|
|
367
|
+
**Key Loop Components:**
|
|
368
|
+
|
|
369
|
+
| Component | File | Purpose |
|
|
370
|
+
|-----------|-------|---------|
|
|
371
|
+
| Loop State | `src/core/loop/mission-seal.ts` | State management (.opencode/loop-state.json) |
|
|
372
|
+
| Seal Detection | `src/core/loop/mission-seal-handler.ts` | Detect `<mission_seal>` in responses |
|
|
373
|
+
| Continuation | `src/core/loop/mission-seal-handler.ts` | Inject prompts to continue work |
|
|
374
|
+
| Countdown | `src/core/loop/mission-seal-handler.ts` | 3-second countdown toast |
|
|
375
|
+
| Idle Handler | `src/plugin-handlers/assistant-done-handler.ts` | Monitor session.idle events |
|
|
376
|
+
|
|
377
|
+
**Why Event-Driven?**
|
|
378
|
+
- No fixed iteration limits - loop continues until sealed
|
|
379
|
+
- Resilient to network delays
|
|
380
|
+
- Can be interrupted by user at any time
|
|
381
|
+
- Efficient polling (500ms interval with backoff)
|
|
382
|
+
|
|
383
|
+
---
|
|
384
|
+
|
|
385
|
+
## The 4 Agents
|
|
176
386
|
|
|
177
387
|
| Agent | Role | Responsibility |
|
|
178
388
|
| :--------------- | :----------- | :--------------------------------- |
|
|
@@ -210,7 +420,7 @@ What's the difference between useState and useReducer?
|
|
|
210
420
|
| Notifications | 100/parent | FIFO eviction |
|
|
211
421
|
| Event History | 100 | Ring buffer |
|
|
212
422
|
| Session TTL | 60 min | Auto cleanup |
|
|
213
|
-
| Poll Interval |
|
|
423
|
+
| Poll Interval | 500ms | Fast completion detection |
|
|
214
424
|
| Max Poll Count | 600 | Hard limit prevents infinite loops |
|
|
215
425
|
| Sync Timeout | 5 min | Safe delegate_task timeout |
|
|
216
426
|
| Recovery Attempts | 3 | Auto session error recovery |
|
|
@@ -238,9 +448,9 @@ Automatic recovery from common errors:
|
|
|
238
448
|
|
|
239
449
|
### Todo Continuation
|
|
240
450
|
- Monitors `session.idle` events
|
|
241
|
-
-
|
|
451
|
+
- 3-second countdown toast before auto-continuation
|
|
242
452
|
- Cancels on user interaction
|
|
243
|
-
- Skips if background tasks running
|
|
453
|
+
- Skips if background tasks running or session is recovering
|
|
244
454
|
|
|
245
455
|
### noReply Optimization
|
|
246
456
|
- Individual task completion: `noReply: true` (saves tokens)
|
|
@@ -274,9 +484,9 @@ tail -f "$(node -e 'console.log(require("os").tmpdir())')/opencode-orchestrator.
|
|
|
274
484
|
## Documentation
|
|
275
485
|
|
|
276
486
|
- **[System Architecture](docs/SYSTEM_ARCHITECTURE.md)** β Detailed technical docs
|
|
277
|
-
- **[
|
|
487
|
+
- **[Architecture and Flow](docs/ARCHITECTURE_AND_FLOW.md)** β Complete architecture guide with scenarios
|
|
488
|
+
- **[Improvement Suggestions](docs/IMPROVEMENT_SUGGESTIONS.md)** β Project improvement recommendations
|
|
278
489
|
- [Release Notes](docs/releases/) β Version history
|
|
279
|
-
- [Troubleshooting](docs/PLUGIN_TROUBLESHOOTING.md)
|
|
280
490
|
|
|
281
491
|
---
|
|
282
492
|
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "opencode-orchestrator",
|
|
3
3
|
"displayName": "OpenCode Orchestrator",
|
|
4
4
|
"description": "Distributed Cognitive Architecture for OpenCode. Turns simple prompts into specialized multi-agent workflows (Planner, Coder, Reviewer).",
|
|
5
|
-
"version": "0.8.
|
|
5
|
+
"version": "0.8.14",
|
|
6
6
|
"author": "agnusdei1207",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"repository": {
|