@oxgeneral/orch 1.0.4 → 1.0.5
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/dist/{chunk-YHIYJ5OL.js → chunk-UTDC3OB3.js} +9 -4
- package/dist/chunk-UTDC3OB3.js.map +1 -0
- package/dist/cli.js +1 -1
- package/dist/{container-FJI7RN2L.js → container-FUHRQOV4.js} +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.js +3 -3
- package/dist/once-runner-UCMXCY6C.js +2 -0
- package/dist/orchestrator-64BHTD42.js +6 -0
- package/dist/{orchestrator-QFNYZ6AH.js.map → orchestrator-64BHTD42.js.map} +1 -1
- package/dist/orchestrator-KEH7RQAV.js +13 -0
- package/dist/serve-3DV74ZSO.js +3 -0
- package/dist/structured-logger-EXMGTUDB.js +4 -0
- package/dist/{task-SZBYNAZP.js → task-M2JGNUYW.js} +1 -1
- package/package.json +1 -1
- package/readme.md +417 -97
- package/dist/chunk-YHIYJ5OL.js.map +0 -1
- package/dist/orchestrator-PM4BW7W5.js +0 -13
- package/dist/orchestrator-QFNYZ6AH.js +0 -6
package/readme.md
CHANGED
|
@@ -1,40 +1,86 @@
|
|
|
1
|
+
<!-- Hero Banner -->
|
|
2
|
+
<picture>
|
|
3
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/banner-dark.svg?v=2">
|
|
4
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/banner-light.svg?v=2">
|
|
5
|
+
<img alt="ORCH — AI Agent Runtime" src="./assets/banner-dark.svg?v=2" width="100%">
|
|
6
|
+
</picture>
|
|
7
|
+
|
|
1
8
|
<p align="center">
|
|
2
|
-
<
|
|
3
|
-
<
|
|
4
|
-
<strong>Open-source orchestration for zero-human companies, processes and departments.</strong><br/>
|
|
5
|
-
Engineering, editorial, sales, analytics — deploy entire AI departments from your terminal. Free forever.
|
|
6
|
-
</p>
|
|
7
|
-
<p align="center">
|
|
8
|
-
<a href="https://github.com/oxgeneral/ORCH/stargazers"><img src="https://img.shields.io/github/stars/oxgeneral/ORCH?style=social" alt="GitHub Stars" /></a>
|
|
9
|
-
<a href="https://www.orch.one/"><img src="https://img.shields.io/badge/website-orch.one-amber" alt="Website" /></a>
|
|
10
|
-
<a href="https://www.npmjs.com/package/@oxgeneral/orch"><img src="https://img.shields.io/npm/v/@oxgeneral/orch?color=cb0000" alt="npm" /></a>
|
|
11
|
-
<a href="#launch-your-ai-company-in-30-seconds"><img src="https://img.shields.io/badge/setup-30%20seconds-brightgreen" alt="30 second setup" /></a>
|
|
12
|
-
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License" /></a>
|
|
13
|
-
<a href="#development"><img src="https://img.shields.io/badge/tests-1493%20passing-brightgreen" alt="Tests" /></a>
|
|
14
|
-
<a href="#architecture"><img src="https://img.shields.io/badge/TypeScript-strict-blue" alt="TypeScript strict" /></a>
|
|
15
|
-
</p>
|
|
9
|
+
<strong>Open-source orchestration for zero-human companies, processes and departments.</strong><br/>
|
|
10
|
+
<sub>Run multiple AI agents on one project — without babysitting any of them.<br/>Coordinate Claude, Codex, Cursor and any CLI tool in parallel. One npm install. Zero infrastructure.</sub>
|
|
16
11
|
</p>
|
|
17
12
|
|
|
18
|
-
|
|
13
|
+
<p align="center">
|
|
14
|
+
<a href="https://github.com/oxgeneral/ORCH/stargazers"><img src="https://img.shields.io/github/stars/oxgeneral/ORCH?style=for-the-badge&color=f59e0b&labelColor=0a0a0a" alt="GitHub Stars" /></a>
|
|
15
|
+
<a href="https://www.orch.one/"><img src="https://img.shields.io/badge/website-orch.one-f59e0b?style=for-the-badge&labelColor=0a0a0a" alt="Website" /></a>
|
|
16
|
+
<a href="https://www.npmjs.com/package/@oxgeneral/orch"><img src="https://img.shields.io/npm/v/@oxgeneral/orch?style=for-the-badge&color=f59e0b&labelColor=0a0a0a" alt="npm" /></a>
|
|
17
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-f59e0b?style=for-the-badge&labelColor=0a0a0a" alt="MIT License" /></a>
|
|
18
|
+
<a href="#development"><img src="https://img.shields.io/badge/tests-1493%20passing-f59e0b?style=for-the-badge&labelColor=0a0a0a" alt="Tests" /></a>
|
|
19
|
+
</p>
|
|
20
|
+
|
|
21
|
+
<br/>
|
|
22
|
+
|
|
23
|
+
<p align="center">
|
|
24
|
+
<a href="#you-hired-ai-agents-now-youre-managing-them-full-time">Problem</a> •
|
|
25
|
+
<a href="#start-coordinating-agents-in-30-seconds">Install</a> •
|
|
26
|
+
<a href="#how-your-ai-team-works">How It Works</a> •
|
|
27
|
+
<a href="#why-founders-choose-orch">Features</a> •
|
|
28
|
+
<a href="#pre-built-teams--start-with-a-proven-setup">Templates</a> •
|
|
29
|
+
<a href="#full-cli-reference">CLI</a> •
|
|
30
|
+
<a href="#architecture">Architecture</a> •
|
|
31
|
+
<a href="#faq">FAQ</a>
|
|
32
|
+
</p>
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
npm install -g @oxgeneral/orch # Install
|
|
36
|
+
cd ~/your-project && orch # Launch TUI
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
<br/>
|
|
40
|
+
|
|
41
|
+
<!-- Divider -->
|
|
42
|
+
<picture>
|
|
43
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/divider-dark.svg">
|
|
44
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/divider-light.svg">
|
|
45
|
+
<img alt="" src="./assets/divider-dark.svg" width="100%">
|
|
46
|
+
</picture>
|
|
47
|
+
|
|
48
|
+
<br/>
|
|
19
49
|
|
|
20
50
|
<div align="center">
|
|
21
51
|
<video src="https://github.com/user-attachments/assets/c7c3ab77-e718-4e5a-a8cf-bfc446ace64e" width="100%" controls autoplay loop muted></video>
|
|
22
52
|
</div>
|
|
23
53
|
<p align="center">
|
|
24
|
-
<em>
|
|
54
|
+
<em>Set a goal at 10pm. Five agents decompose, implement, test, and review. You wake up to pull requests.</em>
|
|
25
55
|
</p>
|
|
26
56
|
|
|
27
|
-
|
|
57
|
+
<br/>
|
|
58
|
+
|
|
59
|
+
<!-- Divider -->
|
|
60
|
+
<picture>
|
|
61
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/divider-dark.svg">
|
|
62
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/divider-light.svg">
|
|
63
|
+
<img alt="" src="./assets/divider-dark.svg" width="100%">
|
|
64
|
+
</picture>
|
|
28
65
|
|
|
29
|
-
|
|
66
|
+
<br/>
|
|
30
67
|
|
|
31
|
-
You
|
|
68
|
+
## You hired AI agents. Now you're managing them full-time.
|
|
32
69
|
|
|
33
|
-
You
|
|
70
|
+
You bought Claude, Codex, maybe Cursor. Each one is powerful alone. But your actual job isn't "use AI tools" — it's **ship a product at the speed of a full team, while being one person.**
|
|
34
71
|
|
|
35
|
-
|
|
72
|
+
Here's what that looks like today:
|
|
36
73
|
|
|
37
|
-
|
|
74
|
+
- You open 3 terminals. Copy-paste context between them. Forget which agent is doing what.
|
|
75
|
+
- One agent edits a file another is working on. Merge conflict. You fix it manually.
|
|
76
|
+
- An agent crashes at 2am. You don't notice until morning. Half a night wasted.
|
|
77
|
+
- You spend **40-60% of your time routing agents** instead of building your product.
|
|
78
|
+
|
|
79
|
+
**You're not the founder. You're the bottleneck.**
|
|
80
|
+
|
|
81
|
+
<br/>
|
|
82
|
+
|
|
83
|
+
## What if your agents coordinated themselves?
|
|
38
84
|
|
|
39
85
|
```
|
|
40
86
|
$ orch org deploy startup-mvp --goal "Implement user auth with OAuth2"
|
|
@@ -65,55 +111,167 @@ $ orch run --all --watch
|
|
|
65
111
|
→ You wake up to 6 tasks in review. Approve. Merge. Ship.
|
|
66
112
|
```
|
|
67
113
|
|
|
68
|
-
One goal. Five agents. Six PRs. Zero tab-switching. $4.20 in tokens
|
|
114
|
+
<p align="center"><strong>One goal. Five agents. Six PRs. Zero tab-switching. $4.20 in tokens.</strong></p>
|
|
69
115
|
|
|
70
|
-
|
|
116
|
+
<br/>
|
|
71
117
|
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
118
|
+
<!-- Divider -->
|
|
119
|
+
<picture>
|
|
120
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/divider-dark.svg">
|
|
121
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/divider-light.svg">
|
|
122
|
+
<img alt="" src="./assets/divider-dark.svg" width="100%">
|
|
123
|
+
</picture>
|
|
75
124
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
125
|
+
<br/>
|
|
126
|
+
|
|
127
|
+
## Start coordinating agents in 30 seconds
|
|
128
|
+
|
|
129
|
+
<!-- Install Card -->
|
|
130
|
+
<picture>
|
|
131
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/install-dark.svg">
|
|
132
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/install-light.svg">
|
|
133
|
+
<img alt="Install ORCH" src="./assets/install-dark.svg" width="100%">
|
|
134
|
+
</picture>
|
|
79
135
|
|
|
80
|
-
|
|
136
|
+
<br/>
|
|
81
137
|
|
|
82
|
-
|
|
138
|
+
That's it. ORCH auto-initializes and opens the TUI dashboard. Add agents, set goals, and run — right from there.
|
|
139
|
+
|
|
140
|
+
Or deploy a pre-built team:
|
|
83
141
|
|
|
84
142
|
```bash
|
|
85
143
|
orch org deploy startup-mvp --goal "Build invoicing SaaS with Stripe"
|
|
86
144
|
orch run --all --watch
|
|
87
145
|
```
|
|
88
146
|
|
|
89
|
-
|
|
147
|
+
### System requirements
|
|
148
|
+
|
|
149
|
+
<table>
|
|
150
|
+
<tr>
|
|
151
|
+
<td width="50%" valign="top">
|
|
152
|
+
|
|
153
|
+
**Minimum**
|
|
154
|
+
1-2 agents
|
|
155
|
+
|
|
156
|
+
| | |
|
|
157
|
+
|---|---|
|
|
158
|
+
| **OS** | macOS, Linux, WSL2 |
|
|
159
|
+
| **CPU** | 2 cores |
|
|
160
|
+
| **RAM** | 4 GB |
|
|
161
|
+
| **Disk** | 300 MB |
|
|
162
|
+
| **Node.js** | >= 20 |
|
|
163
|
+
|
|
164
|
+
</td>
|
|
165
|
+
<td width="50%" valign="top">
|
|
166
|
+
|
|
167
|
+
**Recommended** — full department
|
|
168
|
+
4-6 agents
|
|
169
|
+
|
|
170
|
+
| | |
|
|
171
|
+
|---|---|
|
|
172
|
+
| **OS** | macOS, Linux, WSL2 |
|
|
173
|
+
| **CPU** | 4+ cores |
|
|
174
|
+
| **RAM** | 8 GB |
|
|
175
|
+
| **Disk** | 1 GB |
|
|
176
|
+
| **Node.js** | >= 20 |
|
|
177
|
+
|
|
178
|
+
</td>
|
|
179
|
+
</tr>
|
|
180
|
+
</table>
|
|
181
|
+
|
|
182
|
+
<p align="center">No database. No cloud. No Docker. No GPU — LLMs run via API, not locally.</p>
|
|
183
|
+
|
|
184
|
+
### Your code is safe
|
|
185
|
+
|
|
186
|
+
> **Every agent works in an isolated git worktree.** Your `main` branch is never touched until you explicitly approve and merge. Mandatory review step in the state machine — no code ships without your OK. Agents can't overwrite each other's work.
|
|
187
|
+
|
|
188
|
+
<details>
|
|
189
|
+
<summary><strong>Why does each agent need ~300 MB?</strong></summary>
|
|
90
190
|
|
|
91
|
-
|
|
191
|
+
<br/>
|
|
192
|
+
|
|
193
|
+
ORCH itself is lightweight (~120 MB). The RAM goes to the **agent CLI processes** that ORCH spawns — each is a separate Node.js/Python runtime:
|
|
194
|
+
|
|
195
|
+
| Agent process | RAM per instance | Why |
|
|
196
|
+
|---------------|-----------------|-----|
|
|
197
|
+
| Claude Code CLI | 200-400 MB | Full Node.js runtime + context window |
|
|
198
|
+
| OpenCode | 200-400 MB | Node.js + provider SDK |
|
|
199
|
+
| Codex CLI | 150-300 MB | Python runtime + OpenAI SDK |
|
|
200
|
+
| Cursor CLI | 200-400 MB | Electron-based agent |
|
|
201
|
+
| Shell scripts | 10-50 MB | Depends on the tool |
|
|
202
|
+
|
|
203
|
+
**Formula:** `120 MB (ORCH) + N × ~300 MB` per concurrent agent.
|
|
204
|
+
2 agents ≈ 0.7 GB, 4 agents ≈ 1.3 GB, 6 agents ≈ 2 GB.
|
|
205
|
+
|
|
206
|
+
</details>
|
|
207
|
+
|
|
208
|
+
<br/>
|
|
209
|
+
|
|
210
|
+
<!-- Divider -->
|
|
211
|
+
<picture>
|
|
212
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/divider-dark.svg">
|
|
213
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/divider-light.svg">
|
|
214
|
+
<img alt="" src="./assets/divider-dark.svg" width="100%">
|
|
215
|
+
</picture>
|
|
216
|
+
|
|
217
|
+
<br/>
|
|
218
|
+
|
|
219
|
+
## How your AI team works
|
|
220
|
+
|
|
221
|
+
<table>
|
|
222
|
+
<tr>
|
|
223
|
+
<td width="50%" valign="top">
|
|
92
224
|
|
|
93
225
|
### CTO — strategic decomposition
|
|
226
|
+
|
|
94
227
|
Set a high-level goal. Your CTO agent decomposes it into concrete tasks, assigns priorities, and delegates to the right departments. You set strategy — AI executes.
|
|
95
228
|
|
|
96
229
|
### Engineering Department — parallel execution
|
|
230
|
+
|
|
97
231
|
Backend A, Backend B, Frontend — each agent gets its own git worktree (isolated branch). They work in parallel without file conflicts. Failed? Auto-retry with exponential backoff. Stalled? Zombie detection kills and re-queues.
|
|
98
232
|
|
|
233
|
+
</td>
|
|
234
|
+
<td width="50%" valign="top">
|
|
235
|
+
|
|
99
236
|
### QA Department — automated verification
|
|
237
|
+
|
|
100
238
|
QA agents pick up completed work, run tests, validate contracts. Reject with feedback → task goes back to engineering with your notes. The loop closes automatically.
|
|
101
239
|
|
|
240
|
+
### Inter-department communication
|
|
241
|
+
|
|
242
|
+
Agents talk to each other — direct messages, team broadcasts, shared context store. Backend finishes auth module → sends message to QA → QA starts testing. No copy-paste. No manual routing.
|
|
243
|
+
|
|
244
|
+
</td>
|
|
245
|
+
</tr>
|
|
246
|
+
</table>
|
|
247
|
+
|
|
102
248
|
### Code Review — mandatory quality gate
|
|
249
|
+
|
|
103
250
|
Nothing touches `main` until reviewed. Every task flows through the state machine:
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
251
|
+
|
|
252
|
+
<!-- State Machine -->
|
|
253
|
+
<picture>
|
|
254
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/statemachine-dark.svg">
|
|
255
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/statemachine-light.svg">
|
|
256
|
+
<img alt="State Machine: todo → in_progress → review → done" src="./assets/statemachine-dark.svg" width="100%">
|
|
257
|
+
</picture>
|
|
258
|
+
|
|
109
259
|
Every transition validated. No task gets lost. No code merges without approval.
|
|
110
260
|
|
|
111
|
-
|
|
112
|
-
|
|
261
|
+
<br/>
|
|
262
|
+
|
|
263
|
+
<!-- Divider -->
|
|
264
|
+
<picture>
|
|
265
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/divider-dark.svg">
|
|
266
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/divider-light.svg">
|
|
267
|
+
<img alt="" src="./assets/divider-dark.svg" width="100%">
|
|
268
|
+
</picture>
|
|
269
|
+
|
|
270
|
+
<br/>
|
|
113
271
|
|
|
114
272
|
## Not just engineering
|
|
115
273
|
|
|
116
|
-
ORCH orchestrates **any process** — not just code. The shell adapter runs any CLI tool, which means any workflow becomes
|
|
274
|
+
ORCH orchestrates **any process** — not just code. The shell adapter runs any CLI tool, which means any workflow becomes an automated pipeline:
|
|
117
275
|
|
|
118
276
|
| Department | Agents | What they do |
|
|
119
277
|
|-----------|--------|-------------|
|
|
@@ -127,40 +285,55 @@ ORCH orchestrates **any process** — not just code. The shell adapter runs any
|
|
|
127
285
|
|
|
128
286
|
Every department gets the same superpowers: state machine governance, retry, messaging, isolation, review gate.
|
|
129
287
|
|
|
288
|
+
<br/>
|
|
289
|
+
|
|
290
|
+
<!-- Divider -->
|
|
291
|
+
<picture>
|
|
292
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/divider-dark.svg">
|
|
293
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/divider-light.svg">
|
|
294
|
+
<img alt="" src="./assets/divider-dark.svg" width="100%">
|
|
295
|
+
</picture>
|
|
296
|
+
|
|
297
|
+
<br/>
|
|
298
|
+
|
|
130
299
|
## Why founders choose ORCH
|
|
131
300
|
|
|
132
|
-
|
|
133
|
-
|
|
301
|
+
<!-- Features Grid -->
|
|
302
|
+
<picture>
|
|
303
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/features-dark.svg">
|
|
304
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/features-light.svg">
|
|
305
|
+
<img alt="ORCH Features" src="./assets/features-dark.svg" width="100%">
|
|
306
|
+
</picture>
|
|
134
307
|
|
|
135
|
-
|
|
136
|
-
Teams with leads, shared task pools, auto-claiming. CTO, Backend, QA, Reviewer — organized like a real org chart. Broadcasts, messaging, shared context.
|
|
308
|
+
<br/>
|
|
137
309
|
|
|
138
|
-
###
|
|
139
|
-
Auto-retry, stall detection, exponential backoff. Your agents don't stop when one fails — ORCH restarts, re-queues, and keeps going. Deploy at night, review in the morning.
|
|
310
|
+
### Works with every tool — AI or not
|
|
140
311
|
|
|
141
|
-
|
|
142
|
-
|
|
312
|
+
<!-- Adapters -->
|
|
313
|
+
<picture>
|
|
314
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/adapters-dark.svg">
|
|
315
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/adapters-light.svg">
|
|
316
|
+
<img alt="Adapters: Claude, OpenCode, Codex, Cursor, Shell" src="./assets/adapters-dark.svg" width="100%">
|
|
317
|
+
</picture>
|
|
143
318
|
|
|
144
|
-
|
|
145
|
-
`orch org deploy startup-mvp` — CTO, backend x2, QA, reviewer. Team created. Goal set. Agents ready. One command.
|
|
319
|
+
<br/>
|
|
146
320
|
|
|
147
|
-
|
|
148
|
-
MIT license. Your API keys. Your machine. State in `.orchestry/` — plain YAML, JSON, JSONL files you can read, edit, commit. Zero cloud dependencies.
|
|
321
|
+
The `shell` adapter is the key: **if it runs in a terminal, it's an agent** — `npm test`, `python bot.py`, Semgrep, `curl`, CRM scripts, data pipelines. Any CLI tool gets state tracking, retry, and coordination for free.
|
|
149
322
|
|
|
150
|
-
|
|
151
|
-
| Adapter | What it runs | Use as |
|
|
152
|
-
|---------|-------------|--------|
|
|
153
|
-
| `claude` | Claude Code CLI | CTO, Backend, Reviewer, Writer, Analyst |
|
|
154
|
-
| `opencode` | OpenCode (Gemini, DeepSeek via OpenRouter) | Backend, Frontend, Writer |
|
|
155
|
-
| `codex` | OpenAI Codex CLI | Backend, QA |
|
|
156
|
-
| `cursor` | Cursor Agent CLI (headless) | Frontend, Backend |
|
|
157
|
-
| `shell` | **Anything**: `npm test`, `python bot.py`, Semgrep, `curl`, CRM scripts, email senders, data pipelines | QA, Security, DevOps, Sales, Analytics, Content — any role |
|
|
323
|
+
<br/>
|
|
158
324
|
|
|
159
|
-
|
|
325
|
+
<!-- Divider -->
|
|
326
|
+
<picture>
|
|
327
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/divider-dark.svg">
|
|
328
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/divider-light.svg">
|
|
329
|
+
<img alt="" src="./assets/divider-dark.svg" width="100%">
|
|
330
|
+
</picture>
|
|
160
331
|
|
|
161
|
-
|
|
332
|
+
<br/>
|
|
162
333
|
|
|
163
|
-
|
|
334
|
+
## Pre-built teams — start with a proven setup
|
|
335
|
+
|
|
336
|
+
Deploy a full team with one command:
|
|
164
337
|
|
|
165
338
|
**Engineering**
|
|
166
339
|
|
|
@@ -183,72 +356,148 @@ Deploy a full department with one command:
|
|
|
183
356
|
| `docs-team` | Docs Lead, Writer x2, Editor, Reviewer | Technical docs from codebase analysis |
|
|
184
357
|
|
|
185
358
|
```bash
|
|
186
|
-
orch org list # See all
|
|
359
|
+
orch org list # See all teams
|
|
187
360
|
orch org deploy startup-mvp # Deploy the default
|
|
188
361
|
orch org deploy startup-mvp --goal "Build X" # Deploy with a goal
|
|
189
|
-
orch org export my-
|
|
362
|
+
orch org export my-team # Save your setup as template
|
|
190
363
|
```
|
|
191
364
|
|
|
365
|
+
<br/>
|
|
366
|
+
|
|
367
|
+
<!-- Divider -->
|
|
368
|
+
<picture>
|
|
369
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/divider-dark.svg">
|
|
370
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/divider-light.svg">
|
|
371
|
+
<img alt="" src="./assets/divider-dark.svg" width="100%">
|
|
372
|
+
</picture>
|
|
373
|
+
|
|
374
|
+
<br/>
|
|
375
|
+
|
|
192
376
|
## Full CLI reference
|
|
193
377
|
|
|
378
|
+
<details>
|
|
379
|
+
<summary><strong>Setup & Diagnostics</strong></summary>
|
|
380
|
+
|
|
194
381
|
```bash
|
|
195
|
-
# Setup
|
|
196
382
|
orch init # Initialize project
|
|
197
383
|
orch doctor # System diagnostics
|
|
384
|
+
orch update # Check for updates
|
|
385
|
+
```
|
|
198
386
|
|
|
199
|
-
|
|
387
|
+
</details>
|
|
388
|
+
|
|
389
|
+
<details>
|
|
390
|
+
<summary><strong>Departments & Agents</strong></summary>
|
|
391
|
+
|
|
392
|
+
```bash
|
|
200
393
|
orch agent add <name> --adapter claude --role "CTO — decomposes goals"
|
|
201
394
|
orch agent list # Status of all agents
|
|
202
395
|
orch agent disable/enable <id> # Toggle availability
|
|
396
|
+
```
|
|
203
397
|
|
|
204
|
-
|
|
398
|
+
</details>
|
|
399
|
+
|
|
400
|
+
<details>
|
|
401
|
+
<summary><strong>Organization Templates</strong></summary>
|
|
402
|
+
|
|
403
|
+
```bash
|
|
205
404
|
orch org list # List available companies
|
|
206
405
|
orch org deploy <template> # Deploy a full department
|
|
207
406
|
orch org deploy <template> --goal "..." # Deploy with a goal
|
|
208
407
|
orch org export <name> # Export current setup
|
|
408
|
+
```
|
|
209
409
|
|
|
210
|
-
|
|
410
|
+
</details>
|
|
411
|
+
|
|
412
|
+
<details>
|
|
413
|
+
<summary><strong>Tasks</strong></summary>
|
|
414
|
+
|
|
415
|
+
```bash
|
|
211
416
|
orch task add "Title" -p 1 # Create task (priority 1-4)
|
|
212
417
|
orch task list # List all tasks
|
|
213
418
|
orch task assign <task> <agent> # Manual assignment
|
|
214
419
|
orch task cancel <task> # Cancel running task
|
|
420
|
+
```
|
|
215
421
|
|
|
216
|
-
|
|
422
|
+
</details>
|
|
423
|
+
|
|
424
|
+
<details>
|
|
425
|
+
<summary><strong>Teams (Departments)</strong></summary>
|
|
426
|
+
|
|
427
|
+
```bash
|
|
217
428
|
orch team create <name> --lead <agent-id>
|
|
218
429
|
orch team join <team-id> <agent-id>
|
|
219
430
|
orch team add-task <team-id> <task-id>
|
|
220
431
|
orch team disband <id>
|
|
432
|
+
```
|
|
433
|
+
|
|
434
|
+
</details>
|
|
221
435
|
|
|
222
|
-
|
|
436
|
+
<details>
|
|
437
|
+
<summary><strong>Goals (Strategy)</strong></summary>
|
|
438
|
+
|
|
439
|
+
```bash
|
|
223
440
|
orch goal add "Title" --description "..."
|
|
224
441
|
orch goal list
|
|
225
442
|
orch goal status <id> achieved
|
|
443
|
+
```
|
|
444
|
+
|
|
445
|
+
</details>
|
|
226
446
|
|
|
227
|
-
|
|
447
|
+
<details>
|
|
448
|
+
<summary><strong>Communication</strong></summary>
|
|
449
|
+
|
|
450
|
+
```bash
|
|
228
451
|
orch msg send <agent-id> "message" # Direct message
|
|
229
452
|
orch msg broadcast "message" --team <team-id> # Team broadcast
|
|
230
453
|
orch context set <key> <value> # Shared context
|
|
454
|
+
```
|
|
455
|
+
|
|
456
|
+
</details>
|
|
231
457
|
|
|
232
|
-
|
|
458
|
+
<details>
|
|
459
|
+
<summary><strong>Execution & Monitoring</strong></summary>
|
|
460
|
+
|
|
461
|
+
```bash
|
|
233
462
|
orch run --all --watch # Launch all agents
|
|
234
463
|
orch run <task-id> # Run single task
|
|
235
|
-
|
|
236
|
-
# Monitoring
|
|
237
464
|
orch status # Quick overview
|
|
238
465
|
orch logs <run-id> # View run logs
|
|
239
466
|
orch tui # Command center (TUI)
|
|
240
|
-
|
|
241
|
-
# Config
|
|
242
467
|
orch config edit # Open in $EDITOR
|
|
243
|
-
orch update # Check for updates
|
|
244
468
|
```
|
|
245
469
|
|
|
246
|
-
|
|
470
|
+
</details>
|
|
471
|
+
|
|
472
|
+
<p align="center"><strong>Aliases:</strong> <kbd>orchestry</kbd> <kbd>orch</kbd> <kbd>ao</kbd></p>
|
|
473
|
+
|
|
474
|
+
<br/>
|
|
475
|
+
|
|
476
|
+
<!-- Divider -->
|
|
477
|
+
<picture>
|
|
478
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/divider-dark.svg">
|
|
479
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/divider-light.svg">
|
|
480
|
+
<img alt="" src="./assets/divider-dark.svg" width="100%">
|
|
481
|
+
</picture>
|
|
482
|
+
|
|
483
|
+
<br/>
|
|
247
484
|
|
|
248
485
|
## Architecture
|
|
249
486
|
|
|
250
487
|
ORCH is an engine first, CLI second. The core has zero dependencies on CLI/TUI layers — you can import `@oxgeneral/orch` as a library and build your own interface.
|
|
251
488
|
|
|
489
|
+
<!-- Architecture Diagram -->
|
|
490
|
+
<picture>
|
|
491
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/architecture-dark.svg">
|
|
492
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/architecture-light.svg">
|
|
493
|
+
<img alt="ORCH Architecture — Layered DDD" src="./assets/architecture-dark.svg" width="100%">
|
|
494
|
+
</picture>
|
|
495
|
+
|
|
496
|
+
<br/>
|
|
497
|
+
|
|
498
|
+
<details>
|
|
499
|
+
<summary><strong>Directory structure</strong></summary>
|
|
500
|
+
|
|
252
501
|
```
|
|
253
502
|
src/
|
|
254
503
|
├── domain/ # Models, state machine, errors
|
|
@@ -263,6 +512,10 @@ src/
|
|
|
263
512
|
└── tui/ # Ink + React command center
|
|
264
513
|
```
|
|
265
514
|
|
|
515
|
+
</details>
|
|
516
|
+
|
|
517
|
+
<br/>
|
|
518
|
+
|
|
266
519
|
## Development
|
|
267
520
|
|
|
268
521
|
```bash
|
|
@@ -272,6 +525,17 @@ npm test # 1493 tests via Vitest
|
|
|
272
525
|
npm run typecheck # Strict TypeScript
|
|
273
526
|
```
|
|
274
527
|
|
|
528
|
+
<br/>
|
|
529
|
+
|
|
530
|
+
<!-- Divider -->
|
|
531
|
+
<picture>
|
|
532
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/divider-dark.svg">
|
|
533
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/divider-light.svg">
|
|
534
|
+
<img alt="" src="./assets/divider-dark.svg" width="100%">
|
|
535
|
+
</picture>
|
|
536
|
+
|
|
537
|
+
<br/>
|
|
538
|
+
|
|
275
539
|
## Community
|
|
276
540
|
|
|
277
541
|
If ORCH saves you time — **[Star it on GitHub](https://github.com/oxgeneral/ORCH)** — it helps other founders find the project.
|
|
@@ -281,46 +545,102 @@ If ORCH saves you time — **[Star it on GitHub](https://github.com/oxgeneral/OR
|
|
|
281
545
|
- **Open an issue** if something breaks or could be better
|
|
282
546
|
- **Submit a PR** — see [CONTRIBUTING.md](CONTRIBUTING.md)
|
|
283
547
|
|
|
284
|
-
|
|
548
|
+
<br/>
|
|
285
549
|
|
|
286
|
-
|
|
550
|
+
## Ship something with ORCH?
|
|
287
551
|
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
552
|
+
> Using ORCH on a real project? [Share your setup](https://github.com/oxgeneral/ORCH/issues/new?title=Using+ORCH&body=Tell+us+about+your+setup) — we'd love to hear how it went.
|
|
553
|
+
|
|
554
|
+
<br/>
|
|
555
|
+
|
|
556
|
+
<!-- Divider -->
|
|
557
|
+
<picture>
|
|
558
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/divider-dark.svg">
|
|
559
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/divider-light.svg">
|
|
560
|
+
<img alt="" src="./assets/divider-dark.svg" width="100%">
|
|
561
|
+
</picture>
|
|
562
|
+
|
|
563
|
+
<br/>
|
|
291
564
|
|
|
292
565
|
## FAQ
|
|
293
566
|
|
|
294
|
-
|
|
567
|
+
<details>
|
|
568
|
+
<summary><strong>Do I need a team to use ORCH?</strong></summary>
|
|
569
|
+
|
|
570
|
+
<br/>
|
|
295
571
|
|
|
296
572
|
No. **Solo founders are the primary users.** You + 2 agents is already a zero-human company. ORCH gives you auto-retry, state machine, dashboard, and token tracking even with a single agent. Start with one, scale to departments.
|
|
297
573
|
|
|
298
|
-
|
|
574
|
+
</details>
|
|
575
|
+
|
|
576
|
+
<details>
|
|
577
|
+
<summary><strong>Will agents mess up my codebase?</strong></summary>
|
|
578
|
+
|
|
579
|
+
<br/>
|
|
299
580
|
|
|
300
581
|
No. Every agent works in an isolated git worktree on its own branch. Nothing touches `main` until you explicitly approve. Mandatory review step in the state machine. Scope overlap detection prevents conflicts before they happen.
|
|
301
582
|
|
|
302
|
-
|
|
583
|
+
</details>
|
|
584
|
+
|
|
585
|
+
<details>
|
|
586
|
+
<summary><strong>Is this only for engineering?</strong></summary>
|
|
587
|
+
|
|
588
|
+
<br/>
|
|
303
589
|
|
|
304
590
|
No. The shell adapter runs any CLI tool — which means ORCH orchestrates any process. Engineering, editorial, sales, analytics, security, DevOps. **If it runs in a terminal, it's an employee.** Deploy `content-agency`, `data-lab`, or `sales-machine` with one command.
|
|
305
591
|
|
|
306
|
-
|
|
592
|
+
</details>
|
|
593
|
+
|
|
594
|
+
<details>
|
|
595
|
+
<summary><strong>How much does it cost?</strong></summary>
|
|
307
596
|
|
|
308
|
-
|
|
597
|
+
<br/>
|
|
309
598
|
|
|
310
|
-
|
|
599
|
+
ORCH is open-source (MIT license). You pay only for the AI APIs you already use — Claude, Codex, etc. The TUI shows token costs per agent per run in real-time. Example: 5 agents, 6 tasks — **$4.20 in tokens**. No surprise bills.
|
|
600
|
+
|
|
601
|
+
</details>
|
|
602
|
+
|
|
603
|
+
<details>
|
|
604
|
+
<summary><strong>What AI tools does it support?</strong></summary>
|
|
605
|
+
|
|
606
|
+
<br/>
|
|
311
607
|
|
|
312
608
|
Five adapters: **Claude Code**, **OpenCode** (Gemini, DeepSeek, any OpenRouter model), **Codex**, **Cursor**, and **Shell** (any CLI tool). Your API keys, your tools — ORCH coordinates them.
|
|
313
609
|
|
|
314
|
-
|
|
610
|
+
</details>
|
|
611
|
+
|
|
612
|
+
<details>
|
|
613
|
+
<summary><strong>Is there a cloud component?</strong></summary>
|
|
614
|
+
|
|
615
|
+
<br/>
|
|
315
616
|
|
|
316
617
|
None. Zero cloud. All state in `.orchestry/` — plain YAML, JSON, JSONL files. No signup, no account, no data leaves your machine.
|
|
317
618
|
|
|
318
|
-
|
|
619
|
+
</details>
|
|
620
|
+
|
|
621
|
+
<details>
|
|
622
|
+
<summary><strong>How is this different from Paperclip?</strong></summary>
|
|
623
|
+
|
|
624
|
+
<br/>
|
|
319
625
|
|
|
320
626
|
Paperclip needs PostgreSQL, a web server, and cloud setup. ORCH needs `npm install`. Same vision — zero-human companies — but ORCH is the hacker's version: terminal-first, file-based, zero infrastructure, MIT licensed.
|
|
321
627
|
|
|
322
|
-
|
|
628
|
+
</details>
|
|
629
|
+
|
|
630
|
+
<br/>
|
|
323
631
|
|
|
324
|
-
|
|
632
|
+
<!-- Divider -->
|
|
633
|
+
<picture>
|
|
634
|
+
<source media="(prefers-color-scheme: dark)" srcset="./assets/divider-dark.svg">
|
|
635
|
+
<source media="(prefers-color-scheme: light)" srcset="./assets/divider-light.svg">
|
|
636
|
+
<img alt="" src="./assets/divider-dark.svg" width="100%">
|
|
637
|
+
</picture>
|
|
638
|
+
|
|
639
|
+
<br/>
|
|
640
|
+
|
|
641
|
+
<p align="center">
|
|
642
|
+
<a href="LICENSE"><strong>MIT</strong></a> — build whatever you want.<br/>
|
|
643
|
+
<sub>This is how zero-human engineering teams start.</sub>
|
|
644
|
+
</p>
|
|
325
645
|
|
|
326
|
-
|
|
646
|
+
<br/>
|