smithers-orchestrator 0.15.0 → 0.15.1
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/docs/cli/overview.mdx +300 -249
- package/docs/cli/quickstart.mdx +21 -17
- package/docs/components/approval.mdx +5 -5
- package/docs/components/branch.mdx +4 -4
- package/docs/components/human-task.mdx +8 -8
- package/docs/components/loop.mdx +8 -8
- package/docs/components/parallel.mdx +4 -4
- package/docs/components/saga.mdx +2 -2
- package/docs/components/sequence.mdx +3 -3
- package/docs/components/signal.mdx +2 -2
- package/docs/components/task.mdx +6 -6
- package/docs/components/timer.mdx +4 -4
- package/docs/components/workflow.mdx +7 -7
- package/docs/components/worktree.mdx +4 -4
- package/docs/concepts/agents-and-tools.mdx +10 -8
- package/docs/concepts/approvals.mdx +9 -7
- package/docs/concepts/control-flow.mdx +11 -8
- package/docs/concepts/execution-model.mdx +17 -15
- package/docs/concepts/human-in-the-loop.mdx +10 -9
- package/docs/concepts/suspend-and-resume.mdx +7 -5
- package/docs/concepts/time-travel.mdx +13 -5
- package/docs/concepts/workflows-overview.mdx +24 -22
- package/docs/examples/approval-gate.mdx +7 -6
- package/docs/examples/hello-world.mdx +2 -1
- package/docs/examples/loop.mdx +2 -1
- package/docs/examples/multi-agent-review.mdx +3 -1
- package/docs/examples/tools-agent.mdx +4 -1
- package/docs/examples/workflow-approval.mdx +12 -8
- package/docs/examples/workflow-hello.mdx +3 -2
- package/docs/examples/workflow-quickstart.mdx +26 -31
- package/docs/guides/best-practices.mdx +13 -11
- package/docs/guides/debugging.mdx +43 -15
- package/docs/guides/patterns.mdx +11 -10
- package/docs/guides/review-loop.mdx +11 -9
- package/docs/guides/tutorial-workflow.mdx +26 -16
- package/docs/installation.mdx +15 -5
- package/docs/integrations/cli-agents.mdx +16 -9
- package/docs/integrations/gateway.mdx +12 -12
- package/docs/integrations/github-bot.mdx +16 -13
- package/docs/integrations/sdk-agents.mdx +7 -3
- package/docs/integrations/server.mdx +13 -6
- package/docs/integrations/tools.mdx +11 -4
- package/docs/introduction.mdx +12 -11
- package/docs/jsx/installation.mdx +23 -12
- package/docs/jsx/overview.mdx +13 -13
- package/docs/jsx/quickstart.mdx +20 -8
- package/docs/llms-full.txt +816 -625
- package/docs/quickstart.mdx +16 -15
- package/package.json +1 -1
- package/src/SmithersCtx.ts +5 -1
- package/src/agents/schema.ts +1 -1
- package/src/cli/workflow-pack.ts +454 -166
- package/src/engine/index.ts +28 -13
- package/src/external/json-schema-to-zod.ts +2 -2
- package/src/openapi/schema-converter.ts +2 -2
package/docs/cli/overview.mdx
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: CLI Reference
|
|
3
|
-
description: "Complete reference for the current smithers command-line interface: scaffold workflow packs, run workflows, inspect runs, manage approvals, hijack sessions, and operate local tooling."
|
|
3
|
+
description: "Complete reference for the current smithers-orchestrator command-line interface: scaffold workflow packs, run workflows, inspect runs, manage approvals, hijack sessions, and operate local tooling."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
```bash
|
|
7
|
-
smithers <command> [options]
|
|
7
|
+
bunx smithers-orchestrator <command> [options]
|
|
8
8
|
```
|
|
9
9
|
|
|
10
10
|
The CLI is the operational surface for Smithers. JSX defines the workflow. The CLI is how you launch it, inspect it, answer approvals, recover from interruption, and understand why it is blocked.
|
|
@@ -13,15 +13,15 @@ The CLI is the operational surface for Smithers. JSX defines the workflow. The C
|
|
|
13
13
|
|
|
14
14
|
| Goal | Command |
|
|
15
15
|
|---|---|
|
|
16
|
-
| Install the local workflow pack | `smithers init` |
|
|
17
|
-
| Launch a workflow file | `smithers up workflow.tsx --input '{"task":"..."}'` |
|
|
18
|
-
| Launch a discovered pack workflow | `smithers workflow implement --prompt "..."` |
|
|
19
|
-
| List recent and active runs | `smithers ps` |
|
|
20
|
-
| Inspect one run deeply | `smithers inspect <runId>` |
|
|
21
|
-
| Read event logs | `smithers logs <runId>` |
|
|
22
|
-
| Read agent prompts and replies | `smithers chat <runId>` |
|
|
23
|
-
| Approve or deny a pause | `smithers approve <runId>` / `smithers deny <runId>` |
|
|
24
|
-
| Resume after interruption | `smithers up workflow.tsx --run-id <runId> --resume true` |
|
|
16
|
+
| Install the local workflow pack | `bunx smithers-orchestrator init` |
|
|
17
|
+
| Launch a workflow file | `bunx smithers-orchestrator up workflow.tsx --input '{"task":"..."}'` |
|
|
18
|
+
| Launch a discovered pack workflow | `bunx smithers-orchestrator workflow implement --prompt "..."` |
|
|
19
|
+
| List recent and active runs | `bunx smithers-orchestrator ps` |
|
|
20
|
+
| Inspect one run deeply | `bunx smithers-orchestrator inspect <runId>` |
|
|
21
|
+
| Read event logs | `bunx smithers-orchestrator logs <runId>` |
|
|
22
|
+
| Read agent prompts and replies | `bunx smithers-orchestrator chat <runId>` |
|
|
23
|
+
| Approve or deny a pause | `bunx smithers-orchestrator approve <runId>` / `bunx smithers-orchestrator deny <runId>` |
|
|
24
|
+
| Resume after interruption | `bunx smithers-orchestrator up workflow.tsx --run-id <runId> --resume true` |
|
|
25
25
|
|
|
26
26
|
## How the CLI Fits With JSX
|
|
27
27
|
|
|
@@ -37,8 +37,8 @@ If you are new to Smithers, read [CLI Quickstart](/cli/quickstart) before using
|
|
|
37
37
|
|---|---|
|
|
38
38
|
| `init` | Install a local `.smithers/` workflow pack. |
|
|
39
39
|
| `up` | Start or resume a workflow execution. |
|
|
40
|
-
| `tui` | Open the
|
|
41
|
-
| `ps` | List
|
|
40
|
+
| `tui` | Open the interactive Smithers observability dashboard. |
|
|
41
|
+
| `ps` | List active, paused, and recently completed runs. |
|
|
42
42
|
| `logs` | Stream lifecycle events for a run. |
|
|
43
43
|
| `chat` | Show agent prompts, responses, and stderr. |
|
|
44
44
|
| `inspect` | Print structured run state, steps, approvals, and loop info. |
|
|
@@ -50,6 +50,7 @@ If you are new to Smithers, read [CLI Quickstart](/cli/quickstart) before using
|
|
|
50
50
|
| `supervise` | Watch for stale runs and auto-resume them. |
|
|
51
51
|
| `cancel` / `down` | Stop one run or all active runs. |
|
|
52
52
|
| `hijack` | Hand off an agent session or conversation. |
|
|
53
|
+
| `alerts` | List, acknowledge, resolve, or silence durable alerts. |
|
|
53
54
|
| `graph` | Render a workflow tree without executing. |
|
|
54
55
|
| `revert` | Restore workspace to a previous task attempt snapshot. |
|
|
55
56
|
| `retry-task` | Retry a specific task within a run, then resume. |
|
|
@@ -68,6 +69,9 @@ If you are new to Smithers, read [CLI Quickstart](/cli/quickstart) before using
|
|
|
68
69
|
| `openapi` | Preview AI SDK tools generated from an OpenAPI spec. |
|
|
69
70
|
| `workflow` | Discover, create, resolve, and run flat workflows in `.smithers/workflows`. |
|
|
70
71
|
| `cron` | Register and run background schedule triggers. |
|
|
72
|
+
| `completions` | Generate shell completion scripts. |
|
|
73
|
+
| `mcp add` | Register Smithers as an MCP server for an agent integration. |
|
|
74
|
+
| `skills` | Sync skill files to agent integrations. |
|
|
71
75
|
|
|
72
76
|
## Resolution Rules
|
|
73
77
|
|
|
@@ -76,25 +80,25 @@ If you are new to Smithers, read [CLI Quickstart](/cli/quickstart) before using
|
|
|
76
80
|
`up`, `graph`, and `revert` take explicit workflow file paths:
|
|
77
81
|
|
|
78
82
|
```bash
|
|
79
|
-
smithers up workflow.tsx --input '{"topic":"Zig"}'
|
|
80
|
-
smithers graph workflow.tsx
|
|
81
|
-
smithers revert workflow.tsx --run-id run-123 --node-id analyze
|
|
83
|
+
bunx smithers-orchestrator up workflow.tsx --input '{"topic":"Zig"}'
|
|
84
|
+
bunx smithers-orchestrator graph workflow.tsx
|
|
85
|
+
bunx smithers-orchestrator revert workflow.tsx --run-id run-123 --node-id analyze
|
|
82
86
|
```
|
|
83
87
|
|
|
84
88
|
A workflow file can be invoked directly without `up`:
|
|
85
89
|
|
|
86
90
|
```bash
|
|
87
|
-
smithers workflow.tsx --input '{"topic":"Zig"}'
|
|
91
|
+
bunx smithers-orchestrator workflow.tsx --input '{"topic":"Zig"}'
|
|
88
92
|
```
|
|
89
93
|
|
|
90
94
|
The `workflow` command family resolves IDs under `.smithers/workflows/*.tsx`:
|
|
91
95
|
|
|
92
96
|
```bash
|
|
93
|
-
smithers workflow implement --prompt "Add input validation"
|
|
94
|
-
smithers workflow run implement --prompt "Add input validation"
|
|
97
|
+
bunx smithers-orchestrator workflow implement --prompt "Add input validation"
|
|
98
|
+
bunx smithers-orchestrator workflow run implement --prompt "Add input validation"
|
|
95
99
|
```
|
|
96
100
|
|
|
97
|
-
`smithers workflow run <name>` is a real subcommand. `smithers workflow <name>` is a shorthand that rewrites to it.
|
|
101
|
+
`bunx smithers-orchestrator workflow run <name>` is a real subcommand. `bunx smithers-orchestrator workflow <name>` is a shorthand that rewrites to it.
|
|
98
102
|
|
|
99
103
|
### Finding persisted state
|
|
100
104
|
|
|
@@ -106,14 +110,14 @@ No database found: exit with error.
|
|
|
106
110
|
|
|
107
111
|
### Boolean options
|
|
108
112
|
|
|
109
|
-
|
|
113
|
+
Boolean flags accept either bare form or explicit `true` / `false`. Use `false` to disable a default-on option:
|
|
110
114
|
|
|
111
115
|
```bash
|
|
112
|
-
smithers logs run-123 --follow false
|
|
113
|
-
smithers chat run-123 --stderr false
|
|
114
|
-
smithers hijack run-123 --launch false
|
|
115
|
-
smithers up workflow.tsx --log false
|
|
116
|
-
smithers observability --down true
|
|
116
|
+
bunx smithers-orchestrator logs run-123 --follow false
|
|
117
|
+
bunx smithers-orchestrator chat run-123 --stderr false
|
|
118
|
+
bunx smithers-orchestrator hijack run-123 --launch false
|
|
119
|
+
bunx smithers-orchestrator up workflow.tsx --log false
|
|
120
|
+
bunx smithers-orchestrator observability --down true
|
|
117
121
|
```
|
|
118
122
|
|
|
119
123
|
## Commands
|
|
@@ -123,12 +127,12 @@ smithers observability --down true
|
|
|
123
127
|
Install the local workflow pack into `.smithers/`.
|
|
124
128
|
|
|
125
129
|
```bash
|
|
126
|
-
smithers init [
|
|
130
|
+
bunx smithers-orchestrator init [options]
|
|
127
131
|
```
|
|
128
132
|
|
|
129
133
|
| Option | Description |
|
|
130
134
|
|---|---|
|
|
131
|
-
| `--force <boolean>` | Overwrite existing scaffold files. Default: `false`. |
|
|
135
|
+
| `--force <boolean>` | Overwrite existing scaffold files. Default: `false`. The help output shows this as a bare boolean flag. |
|
|
132
136
|
|
|
133
137
|
Generated pack contents:
|
|
134
138
|
|
|
@@ -139,8 +143,8 @@ Generated pack contents:
|
|
|
139
143
|
- `.smithers/preload.ts`, `.smithers/bunfig.toml`, `package.json`, `tsconfig.json`
|
|
140
144
|
|
|
141
145
|
```bash
|
|
142
|
-
smithers init
|
|
143
|
-
smithers workflow implement --prompt "Commit the new .smithers pack"
|
|
146
|
+
bunx smithers-orchestrator init
|
|
147
|
+
bunx smithers-orchestrator workflow implement --prompt "Commit the new .smithers pack"
|
|
144
148
|
```
|
|
145
149
|
|
|
146
150
|
### up
|
|
@@ -148,14 +152,14 @@ smithers workflow implement --prompt "Commit the new .smithers pack"
|
|
|
148
152
|
Start or resume a workflow execution.
|
|
149
153
|
|
|
150
154
|
```bash
|
|
151
|
-
smithers up <workflow> [options]
|
|
155
|
+
bunx smithers-orchestrator up <workflow> [options]
|
|
152
156
|
```
|
|
153
157
|
|
|
154
158
|
| Option | Description |
|
|
155
159
|
|---|---|
|
|
156
160
|
| `--detach`, `-d <boolean>` | Background mode; print `runId`/`pid`/`logFile` and exit. Default: `false`. |
|
|
157
161
|
| `--run-id`, `-r <string>` | Explicit run ID. |
|
|
158
|
-
| `--max-concurrency`, `-c <number>` | Maximum parallel tasks. |
|
|
162
|
+
| `--max-concurrency`, `-c <number>` | Maximum parallel tasks. Default: `4`. |
|
|
159
163
|
| `--root <string>` | Tool sandbox root. Default: workflow file's parent directory. |
|
|
160
164
|
| `--log <boolean>` | NDJSON event log output. Default: `true`. |
|
|
161
165
|
| `--log-dir <string>` | NDJSON log directory. |
|
|
@@ -166,6 +170,10 @@ smithers up <workflow> [options]
|
|
|
166
170
|
| `--input`, `-i <string>` | Input JSON string. |
|
|
167
171
|
| `--resume <boolean>` | Resume existing run. Default: `false`. |
|
|
168
172
|
| `--force <boolean>` | Resume even if run is marked `running`. Default: `false`. |
|
|
173
|
+
| `--resume-claim-owner <string>` | Internal durable resume claim owner. |
|
|
174
|
+
| `--resume-claim-heartbeat <number>` | Internal durable resume claim heartbeat. |
|
|
175
|
+
| `--resume-restore-owner <string>` | Internal durable resume restore owner. |
|
|
176
|
+
| `--resume-restore-heartbeat <number>` | Internal durable resume restore heartbeat. |
|
|
169
177
|
| `--serve <boolean>` | Start an HTTP server alongside the workflow. Default: `false`. |
|
|
170
178
|
| `--port <number>` | HTTP server port when `--serve true`. Default: `7331`. |
|
|
171
179
|
| `--host <string>` | HTTP bind address when `--serve true`. Default: `127.0.0.1`. |
|
|
@@ -178,12 +186,12 @@ smithers up <workflow> [options]
|
|
|
178
186
|
| `--supervise-max-concurrent <number>` | With `--supervise`, max runs resumed per poll. Default: `3`. |
|
|
179
187
|
|
|
180
188
|
```bash
|
|
181
|
-
smithers up workflow.tsx --input '{"description":"Fix auth bug"}'
|
|
182
|
-
smithers up workflow.tsx --run-id run-123 --resume true
|
|
183
|
-
smithers up workflow.tsx --run-id run-123 --resume true --force true
|
|
184
|
-
smithers up workflow.tsx --detach
|
|
185
|
-
smithers up workflow.tsx --serve
|
|
186
|
-
smithers workflow.tsx --input '{"description":"Direct file shorthand"}'
|
|
189
|
+
bunx smithers-orchestrator up workflow.tsx --input '{"description":"Fix auth bug"}'
|
|
190
|
+
bunx smithers-orchestrator up workflow.tsx --run-id run-123 --resume true
|
|
191
|
+
bunx smithers-orchestrator up workflow.tsx --run-id run-123 --resume true --force true
|
|
192
|
+
bunx smithers-orchestrator up workflow.tsx --detach --input '{"description":"Deploy v2"}'
|
|
193
|
+
bunx smithers-orchestrator up workflow.tsx --serve --port 8080 --auth-token secret
|
|
194
|
+
bunx smithers-orchestrator workflow.tsx --input '{"description":"Direct file shorthand"}'
|
|
187
195
|
```
|
|
188
196
|
|
|
189
197
|
- Detached mode redirects stdout/stderr to a log file regardless of NDJSON logging settings.
|
|
@@ -192,43 +200,35 @@ smithers workflow.tsx --input '{"description":"Direct file shorthand"}'
|
|
|
192
200
|
|
|
193
201
|
### tui
|
|
194
202
|
|
|
195
|
-
Open the
|
|
203
|
+
Open the interactive Smithers observability dashboard for the nearest `smithers.db`.
|
|
196
204
|
|
|
197
205
|
```bash
|
|
198
|
-
smithers tui
|
|
206
|
+
bunx smithers-orchestrator tui
|
|
199
207
|
```
|
|
200
208
|
|
|
201
|
-
|
|
202
|
-
|---|---|
|
|
203
|
-
| `--attach` | Attach to an existing broker instead of starting a new one. |
|
|
204
|
-
| `--broker-only` | Start the broker daemon without attaching the UI client. For debugging. |
|
|
205
|
-
|
|
206
|
-
```bash
|
|
207
|
-
smithers tui
|
|
208
|
-
smithers tui --attach
|
|
209
|
-
smithers tui --broker-only
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
See the [TUI guide](/guides/tui) for the full keyboard model, workspace system, and feature reference.
|
|
209
|
+
There are no command-specific flags in the current help output. See the [TUI guide](/guides/tui) for the current keyboard model and feature reference.
|
|
213
210
|
|
|
214
211
|
### ps
|
|
215
212
|
|
|
216
213
|
List active, paused, and recent runs.
|
|
217
214
|
|
|
218
215
|
```bash
|
|
219
|
-
smithers ps [options]
|
|
216
|
+
bunx smithers-orchestrator ps [options]
|
|
220
217
|
```
|
|
221
218
|
|
|
222
219
|
| Option | Description |
|
|
223
220
|
|---|---|
|
|
224
|
-
| `--status`, `-s <string>` | Filter: `running`, `finished`, `failed`, `cancelled
|
|
221
|
+
| `--status`, `-s <string>` | Filter: `running`, `waiting-approval`, `waiting-event`, `waiting-timer`, `continued`, `finished`, `failed`, `cancelled`. |
|
|
225
222
|
| `--limit`, `-l <number>` | Max rows. Default: `20`. |
|
|
226
|
-
| `--all`, `-a <boolean>` |
|
|
223
|
+
| `--all`, `-a <boolean>` | Include all statuses. |
|
|
224
|
+
| `--watch`, `-w <boolean>` | Watch mode: refresh output continuously. Default: `false`. |
|
|
225
|
+
| `--interval`, `-i <number>` | Watch refresh interval in seconds. Default: `2`. |
|
|
227
226
|
|
|
228
227
|
```bash
|
|
229
|
-
smithers ps
|
|
230
|
-
smithers ps --status waiting-approval
|
|
231
|
-
smithers ps --limit 50
|
|
228
|
+
bunx smithers-orchestrator ps
|
|
229
|
+
bunx smithers-orchestrator ps --status waiting-approval
|
|
230
|
+
bunx smithers-orchestrator ps --limit 50
|
|
231
|
+
bunx smithers-orchestrator ps --watch --interval 5
|
|
232
232
|
```
|
|
233
233
|
|
|
234
234
|
### logs
|
|
@@ -236,7 +236,7 @@ smithers ps --limit 50
|
|
|
236
236
|
Tail lifecycle events for a run.
|
|
237
237
|
|
|
238
238
|
```bash
|
|
239
|
-
smithers logs <runId> [options]
|
|
239
|
+
bunx smithers-orchestrator logs <runId> [options]
|
|
240
240
|
```
|
|
241
241
|
|
|
242
242
|
| Option | Description |
|
|
@@ -247,11 +247,11 @@ smithers logs <runId> [options]
|
|
|
247
247
|
| `--tail`, `-n <number>` | Last `N` events. Default: `50`. |
|
|
248
248
|
|
|
249
249
|
```bash
|
|
250
|
-
smithers logs run-123
|
|
251
|
-
smithers logs run-123 --follow false
|
|
252
|
-
smithers logs run-123 --since 400
|
|
253
|
-
smithers logs run-123 --tail 10
|
|
254
|
-
smithers logs run-123 --follow-ancestry true
|
|
250
|
+
bunx smithers-orchestrator logs run-123
|
|
251
|
+
bunx smithers-orchestrator logs run-123 --follow false
|
|
252
|
+
bunx smithers-orchestrator logs run-123 --since 400
|
|
253
|
+
bunx smithers-orchestrator logs run-123 --tail 10
|
|
254
|
+
bunx smithers-orchestrator logs run-123 --follow-ancestry true
|
|
255
255
|
```
|
|
256
256
|
|
|
257
257
|
When `--follow-ancestry` is enabled, events from the full parent chain are merged into a single stream with each line prefixed by the originating run ID.
|
|
@@ -263,13 +263,13 @@ Reads from the database, not detached-process stdout. See [Events](/runtime/even
|
|
|
263
263
|
Query run event history with filters, grouping, and NDJSON output.
|
|
264
264
|
|
|
265
265
|
```bash
|
|
266
|
-
smithers events <runId> [options]
|
|
266
|
+
bunx smithers-orchestrator events <runId> [options]
|
|
267
267
|
```
|
|
268
268
|
|
|
269
269
|
| Option | Description |
|
|
270
270
|
|---|---|
|
|
271
271
|
| `--node`, `-n <string>` | Filter events by node ID. |
|
|
272
|
-
| `--type`, `-t <string>` | Filter by event category
|
|
272
|
+
| `--type`, `-t <string>` | Filter by event category: `agent`, `approval`, `frame`, `memory`, `node`, `openapi`, `output`, `rag`, `revert`, `run`, `sandbox`, `scorer`, `snapshot`, `supervisor`, `timer`, `token`, `tool-call`, `voice`, `workflow`. |
|
|
273
273
|
| `--since`, `-s <string>` | Filter to a recent duration window (e.g. `5m`, `2h`). |
|
|
274
274
|
| `--limit`, `-l <number>` | Maximum events to display. Default: `1000`. Max: `100000`. |
|
|
275
275
|
| `--json`, `-j <boolean>` | Output NDJSON for piping. Default: `false`. |
|
|
@@ -278,12 +278,12 @@ smithers events <runId> [options]
|
|
|
278
278
|
| `--interval`, `-i <number>` | Watch poll interval in seconds. Default: `2`. |
|
|
279
279
|
|
|
280
280
|
```bash
|
|
281
|
-
smithers events run-123
|
|
282
|
-
smithers events run-123 --node analyze --type tool
|
|
283
|
-
smithers events run-123 --since 5m --limit 500
|
|
284
|
-
smithers events run-123 --json
|
|
285
|
-
smithers events run-123 --watch
|
|
286
|
-
smithers events run-123 --group-by node
|
|
281
|
+
bunx smithers-orchestrator events run-123
|
|
282
|
+
bunx smithers-orchestrator events run-123 --node analyze --type tool-call
|
|
283
|
+
bunx smithers-orchestrator events run-123 --since 5m --limit 500
|
|
284
|
+
bunx smithers-orchestrator events run-123 --json
|
|
285
|
+
bunx smithers-orchestrator events run-123 --watch --interval 5
|
|
286
|
+
bunx smithers-orchestrator events run-123 --group-by node
|
|
287
287
|
```
|
|
288
288
|
|
|
289
289
|
### chat
|
|
@@ -291,7 +291,7 @@ smithers events run-123 --group-by node
|
|
|
291
291
|
Show agent transcripts for the latest or a specified run. Reconstructs chat from attempt metadata, `NodeOutput` events, and fallback `responseText`.
|
|
292
292
|
|
|
293
293
|
```bash
|
|
294
|
-
smithers chat [runId] [options]
|
|
294
|
+
bunx smithers-orchestrator chat [runId] [options]
|
|
295
295
|
```
|
|
296
296
|
|
|
297
297
|
| Option | Description |
|
|
@@ -302,11 +302,11 @@ smithers chat [runId] [options]
|
|
|
302
302
|
| `--stderr <boolean>` | Include agent stderr. Default: `true`. |
|
|
303
303
|
|
|
304
304
|
```bash
|
|
305
|
-
smithers chat
|
|
306
|
-
smithers chat run-123
|
|
307
|
-
smithers chat run-123 --all true
|
|
308
|
-
smithers chat run-123 --tail 20
|
|
309
|
-
smithers chat run-123 --follow true --stderr false
|
|
305
|
+
bunx smithers-orchestrator chat
|
|
306
|
+
bunx smithers-orchestrator chat run-123
|
|
307
|
+
bunx smithers-orchestrator chat run-123 --all true
|
|
308
|
+
bunx smithers-orchestrator chat run-123 --tail 20
|
|
309
|
+
bunx smithers-orchestrator chat run-123 --follow true --stderr false
|
|
310
310
|
```
|
|
311
311
|
|
|
312
312
|
### inspect
|
|
@@ -314,13 +314,19 @@ smithers chat run-123 --follow true --stderr false
|
|
|
314
314
|
Print structured run state.
|
|
315
315
|
|
|
316
316
|
```bash
|
|
317
|
-
smithers inspect <runId>
|
|
317
|
+
bunx smithers-orchestrator inspect <runId> [options]
|
|
318
318
|
```
|
|
319
319
|
|
|
320
|
+
| Option | Description |
|
|
321
|
+
|---|---|
|
|
322
|
+
| `--watch`, `-w <boolean>` | Watch mode: refresh output continuously. Default: `false`. |
|
|
323
|
+
| `--interval`, `-i <number>` | Watch refresh interval in seconds. Default: `2`. |
|
|
324
|
+
|
|
320
325
|
Output includes: run metadata, step states, pending approvals, loop state, parsed runtime config, and error details.
|
|
321
326
|
|
|
322
327
|
```bash
|
|
323
|
-
smithers inspect run-123
|
|
328
|
+
bunx smithers-orchestrator inspect run-123
|
|
329
|
+
bunx smithers-orchestrator inspect run-123 --watch --interval 5
|
|
324
330
|
```
|
|
325
331
|
|
|
326
332
|
### node
|
|
@@ -328,7 +334,7 @@ smithers inspect run-123
|
|
|
328
334
|
Show enriched node details for debugging retries, tool calls, and output.
|
|
329
335
|
|
|
330
336
|
```bash
|
|
331
|
-
smithers node <nodeId> [options]
|
|
337
|
+
bunx smithers-orchestrator node <nodeId> [options]
|
|
332
338
|
```
|
|
333
339
|
|
|
334
340
|
| Option | Description |
|
|
@@ -341,11 +347,11 @@ smithers node <nodeId> [options]
|
|
|
341
347
|
| `--interval <number>` | Watch refresh interval in seconds. Default: `2`. |
|
|
342
348
|
|
|
343
349
|
```bash
|
|
344
|
-
smithers node analyze -r run-123
|
|
345
|
-
smithers node analyze -r run-123 --attempts
|
|
346
|
-
smithers node analyze -r run-123 --tools
|
|
347
|
-
smithers node analyze -r run-123 --watch
|
|
348
|
-
smithers node analyze -r run-123 --iteration 2
|
|
350
|
+
bunx smithers-orchestrator node analyze -r run-123
|
|
351
|
+
bunx smithers-orchestrator node analyze -r run-123 --attempts
|
|
352
|
+
bunx smithers-orchestrator node analyze -r run-123 --tools
|
|
353
|
+
bunx smithers-orchestrator node analyze -r run-123 --watch --interval 5
|
|
354
|
+
bunx smithers-orchestrator node analyze -r run-123 --iteration 2
|
|
349
355
|
```
|
|
350
356
|
|
|
351
357
|
### why
|
|
@@ -353,7 +359,7 @@ smithers node analyze -r run-123 --iteration 2
|
|
|
353
359
|
Explain why a run is currently blocked or paused.
|
|
354
360
|
|
|
355
361
|
```bash
|
|
356
|
-
smithers why <runId> [options]
|
|
362
|
+
bunx smithers-orchestrator why <runId> [options]
|
|
357
363
|
```
|
|
358
364
|
|
|
359
365
|
| Option | Description |
|
|
@@ -361,8 +367,8 @@ smithers why <runId> [options]
|
|
|
361
367
|
| `--json <boolean>` | Output structured JSON diagnosis. Default: `false`. |
|
|
362
368
|
|
|
363
369
|
```bash
|
|
364
|
-
smithers why run-123
|
|
365
|
-
smithers why run-123 --json
|
|
370
|
+
bunx smithers-orchestrator why run-123
|
|
371
|
+
bunx smithers-orchestrator why run-123 --json
|
|
366
372
|
```
|
|
367
373
|
|
|
368
374
|
### scores
|
|
@@ -370,7 +376,7 @@ smithers why run-123 --json true
|
|
|
370
376
|
View scorer results for a specific run.
|
|
371
377
|
|
|
372
378
|
```bash
|
|
373
|
-
smithers scores <runId> [options]
|
|
379
|
+
bunx smithers-orchestrator scores <runId> [options]
|
|
374
380
|
```
|
|
375
381
|
|
|
376
382
|
| Option | Description |
|
|
@@ -378,8 +384,8 @@ smithers scores <runId> [options]
|
|
|
378
384
|
| `--node <string>` | Filter scores to a specific node ID. |
|
|
379
385
|
|
|
380
386
|
```bash
|
|
381
|
-
smithers scores run-123
|
|
382
|
-
smithers scores run-123 --node review
|
|
387
|
+
bunx smithers-orchestrator scores run-123
|
|
388
|
+
bunx smithers-orchestrator scores run-123 --node review
|
|
383
389
|
```
|
|
384
390
|
|
|
385
391
|
### approve
|
|
@@ -387,7 +393,7 @@ smithers scores run-123 --node review
|
|
|
387
393
|
Approve a pending approval gate.
|
|
388
394
|
|
|
389
395
|
```bash
|
|
390
|
-
smithers approve <runId> [options]
|
|
396
|
+
bunx smithers-orchestrator approve <runId> [options]
|
|
391
397
|
```
|
|
392
398
|
|
|
393
399
|
| Option | Description |
|
|
@@ -398,13 +404,13 @@ smithers approve <runId> [options]
|
|
|
398
404
|
| `--by <string>` | Approver identifier. |
|
|
399
405
|
|
|
400
406
|
```bash
|
|
401
|
-
smithers approve run-123 --node deploy --note "Looks good" --by alice
|
|
407
|
+
bunx smithers-orchestrator approve run-123 --node deploy --note "Looks good" --by alice
|
|
402
408
|
```
|
|
403
409
|
|
|
404
410
|
Recording approval does not resume execution. Resume with:
|
|
405
411
|
|
|
406
412
|
```bash
|
|
407
|
-
smithers up workflow.tsx --run-id run-123 --resume true
|
|
413
|
+
bunx smithers-orchestrator up workflow.tsx --run-id run-123 --resume true
|
|
408
414
|
```
|
|
409
415
|
|
|
410
416
|
### deny
|
|
@@ -412,11 +418,11 @@ smithers up workflow.tsx --run-id run-123 --resume true
|
|
|
412
418
|
Deny a pending approval gate. Same options as `approve`.
|
|
413
419
|
|
|
414
420
|
```bash
|
|
415
|
-
smithers deny <runId> [options]
|
|
421
|
+
bunx smithers-orchestrator deny <runId> [options]
|
|
416
422
|
```
|
|
417
423
|
|
|
418
424
|
```bash
|
|
419
|
-
smithers deny run-123 --node deploy --note "Rollback plan missing" --by bob
|
|
425
|
+
bunx smithers-orchestrator deny run-123 --node deploy --note "Rollback plan missing" --by bob
|
|
420
426
|
```
|
|
421
427
|
|
|
422
428
|
### signal
|
|
@@ -424,7 +430,7 @@ smithers deny run-123 --node deploy --note "Rollback plan missing" --by bob
|
|
|
424
430
|
Deliver a durable signal to a run waiting on `<WaitForEvent>`.
|
|
425
431
|
|
|
426
432
|
```bash
|
|
427
|
-
smithers signal <runId> <signalName> [options]
|
|
433
|
+
bunx smithers-orchestrator signal <runId> <signalName> [options]
|
|
428
434
|
```
|
|
429
435
|
|
|
430
436
|
| Option | Description |
|
|
@@ -434,8 +440,8 @@ smithers signal <runId> <signalName> [options]
|
|
|
434
440
|
| `--by <string>` | Name or identifier of the signal sender. |
|
|
435
441
|
|
|
436
442
|
```bash
|
|
437
|
-
smithers signal run-123 payment-received --data '{"amount":100}'
|
|
438
|
-
smithers signal run-123 approval --correlation txn-456 --by alice
|
|
443
|
+
bunx smithers-orchestrator signal run-123 payment-received --data '{"amount":100}'
|
|
444
|
+
bunx smithers-orchestrator signal run-123 approval --correlation txn-456 --by alice
|
|
439
445
|
```
|
|
440
446
|
|
|
441
447
|
### supervise
|
|
@@ -443,7 +449,7 @@ smithers signal run-123 approval --correlation txn-456 --by alice
|
|
|
443
449
|
Watch for stale running runs and auto-resume them.
|
|
444
450
|
|
|
445
451
|
```bash
|
|
446
|
-
smithers supervise [options]
|
|
452
|
+
bunx smithers-orchestrator supervise [options]
|
|
447
453
|
```
|
|
448
454
|
|
|
449
455
|
| Option | Description |
|
|
@@ -454,9 +460,9 @@ smithers supervise [options]
|
|
|
454
460
|
| `--max-concurrent`, `-c <number>` | Max runs resumed per poll. Default: `3`. |
|
|
455
461
|
|
|
456
462
|
```bash
|
|
457
|
-
smithers supervise
|
|
458
|
-
smithers supervise --dry-run
|
|
459
|
-
smithers supervise --interval 30s --stale-threshold 1m --max-concurrent 5
|
|
463
|
+
bunx smithers-orchestrator supervise
|
|
464
|
+
bunx smithers-orchestrator supervise --dry-run
|
|
465
|
+
bunx smithers-orchestrator supervise --interval 30s --stale-threshold 1m --max-concurrent 5
|
|
460
466
|
```
|
|
461
467
|
|
|
462
468
|
#### Supervisor behavior
|
|
@@ -477,11 +483,11 @@ Each poll cycle the supervisor:
|
|
|
477
483
|
Halt one active run. Marks in-progress attempts as cancelled.
|
|
478
484
|
|
|
479
485
|
```bash
|
|
480
|
-
smithers cancel <runId>
|
|
486
|
+
bunx smithers-orchestrator cancel <runId>
|
|
481
487
|
```
|
|
482
488
|
|
|
483
489
|
```bash
|
|
484
|
-
smithers cancel run-123
|
|
490
|
+
bunx smithers-orchestrator cancel run-123
|
|
485
491
|
```
|
|
486
492
|
|
|
487
493
|
Exits with code `2` on success.
|
|
@@ -491,7 +497,7 @@ Exits with code `2` on success.
|
|
|
491
497
|
Cancel all active runs in the nearest `smithers.db`.
|
|
492
498
|
|
|
493
499
|
```bash
|
|
494
|
-
smithers down [options]
|
|
500
|
+
bunx smithers-orchestrator down [options]
|
|
495
501
|
```
|
|
496
502
|
|
|
497
503
|
| Option | Description |
|
|
@@ -499,7 +505,7 @@ smithers down [options]
|
|
|
499
505
|
| `--force <boolean>` | Cancel stale runs too. Default: `false`. |
|
|
500
506
|
|
|
501
507
|
```bash
|
|
502
|
-
smithers down
|
|
508
|
+
bunx smithers-orchestrator down
|
|
503
509
|
```
|
|
504
510
|
|
|
505
511
|
### hijack
|
|
@@ -507,26 +513,26 @@ smithers down
|
|
|
507
513
|
Hand off the latest resumable agent session or conversation.
|
|
508
514
|
|
|
509
515
|
```bash
|
|
510
|
-
smithers hijack <runId> [options]
|
|
516
|
+
bunx smithers-orchestrator hijack <runId> [options]
|
|
511
517
|
```
|
|
512
518
|
|
|
513
519
|
| Option | Description |
|
|
514
520
|
|---|---|
|
|
515
|
-
| `--target <string>` | Expected engine: `claude-code
|
|
521
|
+
| `--target <string>` | Expected engine: `claude-code` or `codex`. |
|
|
516
522
|
| `--timeout-ms <number>` | Wait time for live handoff. Default: `30000`. |
|
|
517
523
|
| `--launch <boolean>` | Open session immediately. Default: `true`. |
|
|
518
524
|
|
|
519
525
|
Two hijack styles: native session hijack (CLI agents with resumable session IDs) and conversation hijack (agents resuming from durable message history).
|
|
520
526
|
|
|
521
527
|
```bash
|
|
522
|
-
smithers hijack run-123
|
|
523
|
-
smithers hijack run-123 --target codex
|
|
524
|
-
smithers hijack run-123 --launch false
|
|
528
|
+
bunx smithers-orchestrator hijack run-123
|
|
529
|
+
bunx smithers-orchestrator hijack run-123 --target codex
|
|
530
|
+
bunx smithers-orchestrator hijack run-123 --launch false
|
|
525
531
|
```
|
|
526
532
|
|
|
527
533
|
- Cross-engine hijack is not supported.
|
|
528
534
|
- If a live hijack succeeds and the run has a workflow path, Smithers auto-resumes in detached mode.
|
|
529
|
-
- If auto-resume fails, prints the equivalent `smithers up ... --resume true --run-id ...` command.
|
|
535
|
+
- If auto-resume fails, prints the equivalent `bunx smithers-orchestrator up ... --resume true --run-id ...` command.
|
|
530
536
|
- Conversation hijack reconstructs agents from the original `.tsx` source.
|
|
531
537
|
|
|
532
538
|
### graph
|
|
@@ -534,7 +540,7 @@ smithers hijack run-123 --launch false
|
|
|
534
540
|
Render a workflow tree without executing. Uses [renderFrame](/runtime/render-frame) internally.
|
|
535
541
|
|
|
536
542
|
```bash
|
|
537
|
-
smithers graph <workflow> [options]
|
|
543
|
+
bunx smithers-orchestrator graph <workflow> [options]
|
|
538
544
|
```
|
|
539
545
|
|
|
540
546
|
| Option | Description |
|
|
@@ -543,8 +549,8 @@ smithers graph <workflow> [options]
|
|
|
543
549
|
| `--input <string>` | Input JSON. Overrides persisted input. |
|
|
544
550
|
|
|
545
551
|
```bash
|
|
546
|
-
smithers graph workflow.tsx --input '{"description":"Preview"}'
|
|
547
|
-
smithers graph workflow.tsx --run-id run-123
|
|
552
|
+
bunx smithers-orchestrator graph workflow.tsx --input '{"description":"Preview"}'
|
|
553
|
+
bunx smithers-orchestrator graph workflow.tsx --run-id run-123
|
|
548
554
|
```
|
|
549
555
|
|
|
550
556
|
### revert
|
|
@@ -552,7 +558,7 @@ smithers graph workflow.tsx --run-id run-123
|
|
|
552
558
|
Restore workspace to a previous task attempt snapshot. See [Revert](/runtime/revert).
|
|
553
559
|
|
|
554
560
|
```bash
|
|
555
|
-
smithers revert <workflow> [options]
|
|
561
|
+
bunx smithers-orchestrator revert <workflow> [options]
|
|
556
562
|
```
|
|
557
563
|
|
|
558
564
|
| Option | Description |
|
|
@@ -563,7 +569,7 @@ smithers revert <workflow> [options]
|
|
|
563
569
|
| `--iteration <number>` | Loop iteration. Default: `0`. |
|
|
564
570
|
|
|
565
571
|
```bash
|
|
566
|
-
smithers revert workflow.tsx --run-id run-123 --node-id analyze --attempt 2
|
|
572
|
+
bunx smithers-orchestrator revert workflow.tsx --run-id run-123 --node-id analyze --attempt 2
|
|
567
573
|
```
|
|
568
574
|
|
|
569
575
|
### retry-task
|
|
@@ -571,7 +577,7 @@ smithers revert workflow.tsx --run-id run-123 --node-id analyze --attempt 2
|
|
|
571
577
|
Retry a specific task within a run. Resets the target node (and optionally its dependents) to `pending`, clears their output rows, then resumes the workflow. Only the reset tasks re-execute; completed tasks use cached results.
|
|
572
578
|
|
|
573
579
|
```bash
|
|
574
|
-
smithers retry-task <workflow> [options]
|
|
580
|
+
bunx smithers-orchestrator retry-task <workflow> [options]
|
|
575
581
|
```
|
|
576
582
|
|
|
577
583
|
| Option | Description |
|
|
@@ -583,9 +589,9 @@ smithers retry-task <workflow> [options]
|
|
|
583
589
|
| `--force <boolean>` | Allow retry even if run is still marked `running`. Default: `false`. |
|
|
584
590
|
|
|
585
591
|
```bash
|
|
586
|
-
smithers retry-task workflow.tsx -r run-123 -n implement
|
|
587
|
-
smithers retry-task workflow.tsx -r run-123 -n analyze --no-deps true
|
|
588
|
-
smithers retry-task workflow.tsx -r run-123 -n stuck-task --force true
|
|
592
|
+
bunx smithers-orchestrator retry-task workflow.tsx -r run-123 -n implement
|
|
593
|
+
bunx smithers-orchestrator retry-task workflow.tsx -r run-123 -n analyze --no-deps true
|
|
594
|
+
bunx smithers-orchestrator retry-task workflow.tsx -r run-123 -n stuck-task --force true
|
|
589
595
|
```
|
|
590
596
|
|
|
591
597
|
- Resets the target node and all downstream dependents to `pending` by default.
|
|
@@ -598,7 +604,7 @@ smithers retry-task workflow.tsx -r run-123 -n stuck-task --force true
|
|
|
598
604
|
Time-travel to a previous task state: revert the filesystem via jj to an attempt's snapshot, reset the DB state, and optionally resume. Combines `revert` + node reset into one atomic operation.
|
|
599
605
|
|
|
600
606
|
```bash
|
|
601
|
-
smithers timetravel <workflow> [options]
|
|
607
|
+
bunx smithers-orchestrator timetravel <workflow> [options]
|
|
602
608
|
```
|
|
603
609
|
|
|
604
610
|
| Option | Description |
|
|
@@ -613,9 +619,9 @@ smithers timetravel <workflow> [options]
|
|
|
613
619
|
| `--force <boolean>` | Force even if run is still marked `running`. Default: `false`. |
|
|
614
620
|
|
|
615
621
|
```bash
|
|
616
|
-
smithers timetravel workflow.tsx -r run-123 -n implement --resume true
|
|
617
|
-
smithers timetravel workflow.tsx -r run-123 -n analyze -a 1 --no-vcs true
|
|
618
|
-
smithers timetravel workflow.tsx -r run-123 -n step-3 --no-deps true --resume true
|
|
622
|
+
bunx smithers-orchestrator timetravel workflow.tsx -r run-123 -n implement --resume true
|
|
623
|
+
bunx smithers-orchestrator timetravel workflow.tsx -r run-123 -n analyze -a 1 --no-vcs true
|
|
624
|
+
bunx smithers-orchestrator timetravel workflow.tsx -r run-123 -n step-3 --no-deps true --resume true
|
|
619
625
|
```
|
|
620
626
|
|
|
621
627
|
- Restores the filesystem to the attempt's `jjPointer` snapshot (unless `--no-vcs`).
|
|
@@ -628,7 +634,7 @@ smithers timetravel workflow.tsx -r run-123 -n step-3 --no-deps true --resume tr
|
|
|
628
634
|
Fork from a checkpoint and resume execution (time travel). Creates a new run branched from a specific frame of an existing run, optionally resetting a node and overriding input, then immediately resumes execution.
|
|
629
635
|
|
|
630
636
|
```bash
|
|
631
|
-
smithers replay <workflow> [options]
|
|
637
|
+
bunx smithers-orchestrator replay <workflow> [options]
|
|
632
638
|
```
|
|
633
639
|
|
|
634
640
|
| Option | Description |
|
|
@@ -641,9 +647,9 @@ smithers replay <workflow> [options]
|
|
|
641
647
|
| `--restore-vcs <boolean>` | Restore jj filesystem state to the source frame's revision. Default: `false`. |
|
|
642
648
|
|
|
643
649
|
```bash
|
|
644
|
-
smithers replay workflow.tsx --run-id run-123 --frame 5
|
|
645
|
-
smithers replay workflow.tsx -r run-123 -f 5 -n analyze --input '{"topic":"Rust"}'
|
|
646
|
-
smithers replay workflow.tsx -r run-123 -f 5 --label experiment-1 --restore-vcs true
|
|
650
|
+
bunx smithers-orchestrator replay workflow.tsx --run-id run-123 --frame 5
|
|
651
|
+
bunx smithers-orchestrator replay workflow.tsx -r run-123 -f 5 -n analyze --input '{"topic":"Rust"}'
|
|
652
|
+
bunx smithers-orchestrator replay workflow.tsx -r run-123 -f 5 --label experiment-1 --restore-vcs true
|
|
647
653
|
```
|
|
648
654
|
|
|
649
655
|
### diff
|
|
@@ -651,7 +657,7 @@ smithers replay workflow.tsx -r run-123 -f 5 --label experiment-1 --restore-vcs
|
|
|
651
657
|
Compare two time-travel snapshots.
|
|
652
658
|
|
|
653
659
|
```bash
|
|
654
|
-
smithers diff <a> <b> [options]
|
|
660
|
+
bunx smithers-orchestrator diff <a> <b> [options]
|
|
655
661
|
```
|
|
656
662
|
|
|
657
663
|
Arguments are snapshot refs in the format `run_id:frame_no` or `run_id` (uses latest frame).
|
|
@@ -661,9 +667,9 @@ Arguments are snapshot refs in the format `run_id:frame_no` or `run_id` (uses la
|
|
|
661
667
|
| `--json <boolean>` | Output as JSON. Default: `false`. |
|
|
662
668
|
|
|
663
669
|
```bash
|
|
664
|
-
smithers diff run-123:5 run-123:10
|
|
665
|
-
smithers diff run-123 run-456
|
|
666
|
-
smithers diff run-123:5 run-456:3 --json
|
|
670
|
+
bunx smithers-orchestrator diff run-123:5 run-123:10
|
|
671
|
+
bunx smithers-orchestrator diff run-123 run-456
|
|
672
|
+
bunx smithers-orchestrator diff run-123:5 run-456:3 --json
|
|
667
673
|
```
|
|
668
674
|
|
|
669
675
|
### fork
|
|
@@ -671,7 +677,7 @@ smithers diff run-123:5 run-456:3 --json true
|
|
|
671
677
|
Create a branched run from a snapshot checkpoint (time travel). Unlike `replay`, `fork` does not automatically resume execution unless `--run true` is passed.
|
|
672
678
|
|
|
673
679
|
```bash
|
|
674
|
-
smithers fork <workflow> [options]
|
|
680
|
+
bunx smithers-orchestrator fork <workflow> [options]
|
|
675
681
|
```
|
|
676
682
|
|
|
677
683
|
| Option | Description |
|
|
@@ -684,9 +690,9 @@ smithers fork <workflow> [options]
|
|
|
684
690
|
| `--run <boolean>` | Immediately start the forked run. Default: `false`. |
|
|
685
691
|
|
|
686
692
|
```bash
|
|
687
|
-
smithers fork workflow.tsx --run-id run-123 --frame 5
|
|
688
|
-
smithers fork workflow.tsx -r run-123 -f 5 -n analyze --label fix-branch
|
|
689
|
-
smithers fork workflow.tsx -r run-123 -f 5 --run true
|
|
693
|
+
bunx smithers-orchestrator fork workflow.tsx --run-id run-123 --frame 5
|
|
694
|
+
bunx smithers-orchestrator fork workflow.tsx -r run-123 -f 5 -n analyze --label fix-branch
|
|
695
|
+
bunx smithers-orchestrator fork workflow.tsx -r run-123 -f 5 --run true
|
|
690
696
|
```
|
|
691
697
|
|
|
692
698
|
### timeline
|
|
@@ -694,7 +700,7 @@ smithers fork workflow.tsx -r run-123 -f 5 --run true
|
|
|
694
700
|
View execution timeline for a run and its forks (time travel).
|
|
695
701
|
|
|
696
702
|
```bash
|
|
697
|
-
smithers timeline <runId> [options]
|
|
703
|
+
bunx smithers-orchestrator timeline <runId> [options]
|
|
698
704
|
```
|
|
699
705
|
|
|
700
706
|
| Option | Description |
|
|
@@ -703,9 +709,9 @@ smithers timeline <runId> [options]
|
|
|
703
709
|
| `--json <boolean>` | Output as JSON. Default: `false`. |
|
|
704
710
|
|
|
705
711
|
```bash
|
|
706
|
-
smithers timeline run-123
|
|
707
|
-
smithers timeline run-123 --tree
|
|
708
|
-
smithers timeline run-123 --json
|
|
712
|
+
bunx smithers-orchestrator timeline run-123
|
|
713
|
+
bunx smithers-orchestrator timeline run-123 --tree
|
|
714
|
+
bunx smithers-orchestrator timeline run-123 --json
|
|
709
715
|
```
|
|
710
716
|
|
|
711
717
|
### observability
|
|
@@ -713,7 +719,7 @@ smithers timeline run-123 --json true
|
|
|
713
719
|
Start or stop the local observability stack (Docker Compose).
|
|
714
720
|
|
|
715
721
|
```bash
|
|
716
|
-
smithers observability [options]
|
|
722
|
+
bunx smithers-orchestrator observability [options]
|
|
717
723
|
```
|
|
718
724
|
|
|
719
725
|
| Option | Description |
|
|
@@ -722,9 +728,9 @@ smithers observability [options]
|
|
|
722
728
|
| `--down <boolean>` | Stop and remove stack. Default: `false`. |
|
|
723
729
|
|
|
724
730
|
```bash
|
|
725
|
-
smithers observability
|
|
726
|
-
smithers observability --detach
|
|
727
|
-
smithers observability --down
|
|
731
|
+
bunx smithers-orchestrator observability
|
|
732
|
+
bunx smithers-orchestrator observability --detach
|
|
733
|
+
bunx smithers-orchestrator observability --down
|
|
728
734
|
```
|
|
729
735
|
|
|
730
736
|
Prints Grafana, Prometheus, and Tempo endpoints on success. See [Monitoring & Logs](/guides/monitoring-logs).
|
|
@@ -734,14 +740,15 @@ Prints Grafana, Prometheus, and Tempo endpoints on success. See [Monitoring & Lo
|
|
|
734
740
|
Query via the best available installed agent CLI.
|
|
735
741
|
|
|
736
742
|
```bash
|
|
737
|
-
smithers ask "How do I resume an approval-gated run?"
|
|
743
|
+
bunx smithers-orchestrator ask "How do I resume an approval-gated run?"
|
|
738
744
|
```
|
|
739
745
|
|
|
740
|
-
Supported agents: Claude
|
|
746
|
+
Supported agents: Claude, Codex, Gemini, Kimi, and PI. The command bootstraps a temporary MCP config, exposes Smithers as a local MCP server (`bunx smithers-orchestrator --mcp`), and delegates the question. Exits with error if no supported agent is installed.
|
|
741
747
|
|
|
742
748
|
| Option | Description |
|
|
743
749
|
|---|---|
|
|
744
|
-
| `--agent <string>` | Force a specific agent
|
|
750
|
+
| `--agent <string>` | Force a specific agent: `claude`, `codex`, `gemini`, `kimi`, or `pi`. Default: auto-select best available. |
|
|
751
|
+
| `--tool-surface <string>` | MCP tool surface to expose: `semantic` or `raw`. Default: `semantic`. |
|
|
745
752
|
| `--no-mcp <boolean>` | Disable MCP bootstrap; pass the question as a plain prompt. Default: `false`. |
|
|
746
753
|
| `--print-bootstrap <boolean>` | Print the bootstrap configuration (agent, mode, tool surface) instead of running. Default: `false`. |
|
|
747
754
|
| `--dump-prompt <boolean>` | Print the full system prompt that would be sent to the agent. Default: `false`. |
|
|
@@ -750,11 +757,12 @@ Supported agents: Claude Code, Kimi, Gemini, Codex. Bootstraps a temporary MCP c
|
|
|
750
757
|
MCP bootstrap mode is selected automatically per agent: `mcp-config-file` for Claude Code and Kimi, `mcp-config-inline` for Codex, `mcp-allow-list` for Gemini, and `prompt-only` for PI. Use `--no-mcp` to disable MCP entirely.
|
|
751
758
|
|
|
752
759
|
```bash
|
|
753
|
-
smithers ask "How do I resume an approval-gated run?"
|
|
754
|
-
smithers ask --agent codex "Explain the workflow graph"
|
|
755
|
-
smithers ask --
|
|
756
|
-
smithers ask --
|
|
757
|
-
smithers ask --
|
|
760
|
+
bunx smithers-orchestrator ask "How do I resume an approval-gated run?"
|
|
761
|
+
bunx smithers-orchestrator ask --agent codex "Explain the workflow graph"
|
|
762
|
+
bunx smithers-orchestrator ask --tool-surface raw "List the raw Smithers MCP tools"
|
|
763
|
+
bunx smithers-orchestrator ask --list-agents
|
|
764
|
+
bunx smithers-orchestrator ask --print-bootstrap "test query"
|
|
765
|
+
bunx smithers-orchestrator ask --dump-prompt "test query"
|
|
758
766
|
```
|
|
759
767
|
|
|
760
768
|
### agents
|
|
@@ -762,7 +770,7 @@ smithers ask --dump-prompt "test query"
|
|
|
762
770
|
Inspect Smithers' built-in CLI agent capability registries.
|
|
763
771
|
|
|
764
772
|
```bash
|
|
765
|
-
smithers agents <subcommand> [options]
|
|
773
|
+
bunx smithers-orchestrator agents <subcommand> [options]
|
|
766
774
|
```
|
|
767
775
|
|
|
768
776
|
| Subcommand | Purpose |
|
|
@@ -775,7 +783,7 @@ smithers agents <subcommand> [options]
|
|
|
775
783
|
Print a JSON report of all built-in CLI agent capability registries. Use this to understand which CLI-backed agents Smithers knows about and what features each one advertises.
|
|
776
784
|
|
|
777
785
|
```bash
|
|
778
|
-
smithers agents capabilities
|
|
786
|
+
bunx smithers-orchestrator agents capabilities
|
|
779
787
|
```
|
|
780
788
|
|
|
781
789
|
Output is always JSON.
|
|
@@ -785,7 +793,7 @@ Output is always JSON.
|
|
|
785
793
|
Validate the built-in CLI agent capability registries for drift or contradictions. Exits with code `0` when the registry is internally consistent, `1` when problems are detected.
|
|
786
794
|
|
|
787
795
|
```bash
|
|
788
|
-
smithers agents doctor [options]
|
|
796
|
+
bunx smithers-orchestrator agents doctor [options]
|
|
789
797
|
```
|
|
790
798
|
|
|
791
799
|
| Option | Description |
|
|
@@ -793,8 +801,8 @@ smithers agents doctor [options]
|
|
|
793
801
|
| `--json <boolean>` | Print the doctor report as JSON instead of human-readable output. Default: `false`. |
|
|
794
802
|
|
|
795
803
|
```bash
|
|
796
|
-
smithers agents doctor
|
|
797
|
-
smithers agents doctor --json
|
|
804
|
+
bunx smithers-orchestrator agents doctor
|
|
805
|
+
bunx smithers-orchestrator agents doctor --json
|
|
798
806
|
```
|
|
799
807
|
|
|
800
808
|
Use `agents doctor` in CI to catch registry drift before deployment.
|
|
@@ -804,7 +812,7 @@ Use `agents doctor` in CI to catch registry drift before deployment.
|
|
|
804
812
|
List and resolve durable human requests generated by `<HumanTask>` nodes.
|
|
805
813
|
|
|
806
814
|
```bash
|
|
807
|
-
smithers human <action> [requestId] [options]
|
|
815
|
+
bunx smithers-orchestrator human <action> [requestId] [options]
|
|
808
816
|
```
|
|
809
817
|
|
|
810
818
|
| Subcommand | Purpose |
|
|
@@ -818,7 +826,7 @@ smithers human <action> [requestId] [options]
|
|
|
818
826
|
#### human inbox
|
|
819
827
|
|
|
820
828
|
```bash
|
|
821
|
-
smithers human inbox
|
|
829
|
+
bunx smithers-orchestrator human inbox
|
|
822
830
|
```
|
|
823
831
|
|
|
824
832
|
Lists all pending human requests. Output includes: `requestId`, `runId`, `workflowName`, `nodeId`, `kind`, `prompt`, `status`, `requestedAt`, `age`, and `timeoutAtMs`.
|
|
@@ -826,7 +834,7 @@ Lists all pending human requests. Output includes: `requestId`, `runId`, `workfl
|
|
|
826
834
|
Pass `--format json` for structured output:
|
|
827
835
|
|
|
828
836
|
```bash
|
|
829
|
-
smithers human inbox --format json
|
|
837
|
+
bunx smithers-orchestrator human inbox --format json
|
|
830
838
|
```
|
|
831
839
|
|
|
832
840
|
#### human answer
|
|
@@ -834,7 +842,7 @@ smithers human inbox --format json
|
|
|
834
842
|
Submit a response to a pending human request. The workflow resumes after the answer is recorded.
|
|
835
843
|
|
|
836
844
|
```bash
|
|
837
|
-
smithers human answer <requestId> [options]
|
|
845
|
+
bunx smithers-orchestrator human answer <requestId> [options]
|
|
838
846
|
```
|
|
839
847
|
|
|
840
848
|
| Option | Description |
|
|
@@ -843,11 +851,11 @@ smithers human answer <requestId> [options]
|
|
|
843
851
|
| `--by <string>` | Name or identifier of the operator answering. |
|
|
844
852
|
|
|
845
853
|
```bash
|
|
846
|
-
smithers human answer req-abc123 --value '{"approved":true}' --by "alice"
|
|
847
|
-
smithers human answer req-abc123 --value '{"choice":"option-a","notes":"Looks good"}' --by "alice"
|
|
854
|
+
bunx smithers-orchestrator human answer req-abc123 --value '{"approved":true}' --by "alice"
|
|
855
|
+
bunx smithers-orchestrator human answer req-abc123 --value '{"choice":"option-a","notes":"Looks good"}' --by "alice"
|
|
848
856
|
```
|
|
849
857
|
|
|
850
|
-
If the `<HumanTask>` node has a corresponding approval gate, `answer` automatically bridges the approval as well — no separate `smithers approve` call is needed.
|
|
858
|
+
If the `<HumanTask>` node has a corresponding approval gate, `answer` automatically bridges the approval as well — no separate `bunx smithers-orchestrator approve` call is needed.
|
|
851
859
|
|
|
852
860
|
Exits with code `4` if the request is not found, not pending, or has already expired.
|
|
853
861
|
|
|
@@ -856,7 +864,7 @@ Exits with code `4` if the request is not found, not pending, or has already exp
|
|
|
856
864
|
Cancel a pending human request without providing an answer.
|
|
857
865
|
|
|
858
866
|
```bash
|
|
859
|
-
smithers human cancel <requestId> [options]
|
|
867
|
+
bunx smithers-orchestrator human cancel <requestId> [options]
|
|
860
868
|
```
|
|
861
869
|
|
|
862
870
|
| Option | Description |
|
|
@@ -864,17 +872,41 @@ smithers human cancel <requestId> [options]
|
|
|
864
872
|
| `--by <string>` | Name or identifier of the operator cancelling. |
|
|
865
873
|
|
|
866
874
|
```bash
|
|
867
|
-
smithers human cancel req-abc123 --by "alice"
|
|
875
|
+
bunx smithers-orchestrator human cancel req-abc123 --by "alice"
|
|
868
876
|
```
|
|
869
877
|
|
|
870
878
|
If a corresponding approval gate exists, it is automatically denied with the cancellation reason. The workflow will resume and handle the cancelled state according to its error handling logic.
|
|
871
879
|
|
|
880
|
+
### alerts
|
|
881
|
+
|
|
882
|
+
List, acknowledge, resolve, or silence durable alert instances.
|
|
883
|
+
|
|
884
|
+
```bash
|
|
885
|
+
bunx smithers-orchestrator alerts <action> [alertId] [options]
|
|
886
|
+
```
|
|
887
|
+
|
|
888
|
+
| Action | Purpose |
|
|
889
|
+
|---|---|
|
|
890
|
+
| `alerts list` | List active alerts from the nearest `smithers.db`. |
|
|
891
|
+
| `alerts ack <alertId>` | Mark an alert as acknowledged. |
|
|
892
|
+
| `alerts resolve <alertId>` | Mark an alert as resolved. |
|
|
893
|
+
| `alerts silence <alertId>` | Silence an alert without resolving it. |
|
|
894
|
+
|
|
895
|
+
The current help output exposes no alert-specific flags. `ack`, `resolve`, and `silence` require an alert ID.
|
|
896
|
+
|
|
897
|
+
```bash
|
|
898
|
+
bunx smithers-orchestrator alerts list
|
|
899
|
+
bunx smithers-orchestrator alerts ack alert-123
|
|
900
|
+
bunx smithers-orchestrator alerts resolve alert-123
|
|
901
|
+
bunx smithers-orchestrator alerts silence alert-123
|
|
902
|
+
```
|
|
903
|
+
|
|
872
904
|
### memory
|
|
873
905
|
|
|
874
906
|
Inspect cross-run memory facts and perform semantic recall.
|
|
875
907
|
|
|
876
908
|
```bash
|
|
877
|
-
smithers memory <subcommand> [options]
|
|
909
|
+
bunx smithers-orchestrator memory <subcommand> [options]
|
|
878
910
|
```
|
|
879
911
|
|
|
880
912
|
| Subcommand | Purpose |
|
|
@@ -889,7 +921,7 @@ Both subcommands require `--workflow` to locate the `smithers.db` for the target
|
|
|
889
921
|
List all facts stored in a namespace.
|
|
890
922
|
|
|
891
923
|
```bash
|
|
892
|
-
smithers memory list <namespace> [options]
|
|
924
|
+
bunx smithers-orchestrator memory list <namespace> [options]
|
|
893
925
|
```
|
|
894
926
|
|
|
895
927
|
Arguments:
|
|
@@ -901,8 +933,8 @@ Arguments:
|
|
|
901
933
|
| `--workflow`, `-w <string>` | Path to a `.tsx` workflow file. Required to locate the database. |
|
|
902
934
|
|
|
903
935
|
```bash
|
|
904
|
-
smithers memory list workflow:implement -w .smithers/workflows/implement.tsx
|
|
905
|
-
smithers memory list global:default -w .smithers/workflows/implement.tsx
|
|
936
|
+
bunx smithers-orchestrator memory list workflow:implement -w .smithers/workflows/implement.tsx
|
|
937
|
+
bunx smithers-orchestrator memory list global:default -w .smithers/workflows/implement.tsx
|
|
906
938
|
```
|
|
907
939
|
|
|
908
940
|
#### memory recall
|
|
@@ -910,7 +942,7 @@ smithers memory list global:default -w .smithers/workflows/implement.tsx
|
|
|
910
942
|
Search stored facts by semantic similarity using vector embeddings.
|
|
911
943
|
|
|
912
944
|
```bash
|
|
913
|
-
smithers memory recall <query> [options]
|
|
945
|
+
bunx smithers-orchestrator memory recall <query> [options]
|
|
914
946
|
```
|
|
915
947
|
|
|
916
948
|
Arguments:
|
|
@@ -924,8 +956,8 @@ Arguments:
|
|
|
924
956
|
| `--top-k`, `-k <number>` | Number of results to return. Default: `5`. |
|
|
925
957
|
|
|
926
958
|
```bash
|
|
927
|
-
smithers memory recall "auth bug fixes" -w .smithers/workflows/implement.tsx
|
|
928
|
-
smithers memory recall "database migrations" -w .smithers/workflows/implement.tsx --namespace workflow:implement --top-k 10
|
|
959
|
+
bunx smithers-orchestrator memory recall "auth bug fixes" -w .smithers/workflows/implement.tsx
|
|
960
|
+
bunx smithers-orchestrator memory recall "database migrations" -w .smithers/workflows/implement.tsx --namespace workflow:implement --top-k 10
|
|
929
961
|
```
|
|
930
962
|
|
|
931
963
|
See [Cross-Run Memory](/concepts/memory) and [Memory Quickstart](/guides/memory-quickstart) for the runtime model.
|
|
@@ -935,7 +967,7 @@ See [Cross-Run Memory](/concepts/memory) and [Memory Quickstart](/guides/memory-
|
|
|
935
967
|
Preview the AI SDK tools that Smithers would generate from an OpenAPI spec.
|
|
936
968
|
|
|
937
969
|
```bash
|
|
938
|
-
smithers openapi <subcommand>
|
|
970
|
+
bunx smithers-orchestrator openapi <subcommand>
|
|
939
971
|
```
|
|
940
972
|
|
|
941
973
|
| Subcommand | Purpose |
|
|
@@ -947,7 +979,7 @@ smithers openapi <subcommand>
|
|
|
947
979
|
Parse an OpenAPI spec and print the tool names and summaries that Smithers would generate from it.
|
|
948
980
|
|
|
949
981
|
```bash
|
|
950
|
-
smithers openapi list <specPath>
|
|
982
|
+
bunx smithers-orchestrator openapi list <specPath>
|
|
951
983
|
```
|
|
952
984
|
|
|
953
985
|
Arguments:
|
|
@@ -955,8 +987,8 @@ Arguments:
|
|
|
955
987
|
- `specPath`: File path or URL to an OpenAPI spec (JSON or YAML).
|
|
956
988
|
|
|
957
989
|
```bash
|
|
958
|
-
smithers openapi list ./api/openapi.yaml
|
|
959
|
-
smithers openapi list https://petstore3.swagger.io/api/v3/openapi.json
|
|
990
|
+
bunx smithers-orchestrator openapi list ./api/openapi.yaml
|
|
991
|
+
bunx smithers-orchestrator openapi list https://petstore3.swagger.io/api/v3/openapi.json
|
|
960
992
|
```
|
|
961
993
|
|
|
962
994
|
Output lists one tool per operation: `operationId — summary (or method + path)`. The count of tools is printed at the end.
|
|
@@ -970,7 +1002,7 @@ See [OpenAPI Tools](/concepts/openapi-tools) and [OpenAPI Tools Quickstart](/gui
|
|
|
970
1002
|
Ingest documents into the RAG store or query it for relevant chunks.
|
|
971
1003
|
|
|
972
1004
|
```bash
|
|
973
|
-
smithers rag <subcommand> [options]
|
|
1005
|
+
bunx smithers-orchestrator rag <subcommand> [options]
|
|
974
1006
|
```
|
|
975
1007
|
|
|
976
1008
|
| Subcommand | Purpose |
|
|
@@ -985,7 +1017,7 @@ Both subcommands require `--workflow` to locate the `smithers.db` for the target
|
|
|
985
1017
|
Chunk and embed a document into the SQLite vector store.
|
|
986
1018
|
|
|
987
1019
|
```bash
|
|
988
|
-
smithers rag ingest <file> [options]
|
|
1020
|
+
bunx smithers-orchestrator rag ingest <file> [options]
|
|
989
1021
|
```
|
|
990
1022
|
|
|
991
1023
|
Arguments:
|
|
@@ -1001,9 +1033,9 @@ Arguments:
|
|
|
1001
1033
|
| `--overlap <number>` | Chunk overlap. Default: `200`. |
|
|
1002
1034
|
|
|
1003
1035
|
```bash
|
|
1004
|
-
smithers rag ingest ./docs/api-reference.md -w .smithers/workflows/implement.tsx
|
|
1005
|
-
smithers rag ingest ./data/knowledge-base.txt -w .smithers/workflows/implement.tsx --namespace kb --strategy markdown
|
|
1006
|
-
smithers rag ingest ./src/README.md -w .smithers/workflows/implement.tsx --size 500 --overlap 100
|
|
1036
|
+
bunx smithers-orchestrator rag ingest ./docs/api-reference.md -w .smithers/workflows/implement.tsx
|
|
1037
|
+
bunx smithers-orchestrator rag ingest ./data/knowledge-base.txt -w .smithers/workflows/implement.tsx --namespace kb --strategy markdown
|
|
1038
|
+
bunx smithers-orchestrator rag ingest ./src/README.md -w .smithers/workflows/implement.tsx --size 500 --overlap 100
|
|
1007
1039
|
```
|
|
1008
1040
|
|
|
1009
1041
|
#### rag query
|
|
@@ -1011,7 +1043,7 @@ smithers rag ingest ./src/README.md -w .smithers/workflows/implement.tsx --size
|
|
|
1011
1043
|
Search the vector store for chunks most relevant to a query.
|
|
1012
1044
|
|
|
1013
1045
|
```bash
|
|
1014
|
-
smithers rag query <query> [options]
|
|
1046
|
+
bunx smithers-orchestrator rag query <query> [options]
|
|
1015
1047
|
```
|
|
1016
1048
|
|
|
1017
1049
|
Arguments:
|
|
@@ -1025,8 +1057,8 @@ Arguments:
|
|
|
1025
1057
|
| `--top-k`, `-k <number>` | Number of results to return. Default: `5`. |
|
|
1026
1058
|
|
|
1027
1059
|
```bash
|
|
1028
|
-
smithers rag query "how does authentication work" -w .smithers/workflows/implement.tsx
|
|
1029
|
-
smithers rag query "database connection pooling" -w .smithers/workflows/implement.tsx --namespace kb --top-k 10
|
|
1060
|
+
bunx smithers-orchestrator rag query "how does authentication work" -w .smithers/workflows/implement.tsx
|
|
1061
|
+
bunx smithers-orchestrator rag query "database connection pooling" -w .smithers/workflows/implement.tsx --namespace kb --top-k 10
|
|
1030
1062
|
```
|
|
1031
1063
|
|
|
1032
1064
|
See [RAG](/concepts/rag) and [RAG Quickstart](/guides/rag-quickstart) for the retrieval model.
|
|
@@ -1036,7 +1068,7 @@ See [RAG](/concepts/rag) and [RAG Quickstart](/guides/rag-quickstart) for the re
|
|
|
1036
1068
|
Manage flat workflows in `.smithers/workflows/*.tsx`.
|
|
1037
1069
|
|
|
1038
1070
|
```bash
|
|
1039
|
-
smithers workflow <command>
|
|
1071
|
+
bunx smithers-orchestrator workflow <command>
|
|
1040
1072
|
```
|
|
1041
1073
|
|
|
1042
1074
|
| Command | Purpose |
|
|
@@ -1051,26 +1083,26 @@ smithers workflow <command>
|
|
|
1051
1083
|
Run shorthands:
|
|
1052
1084
|
|
|
1053
1085
|
```bash
|
|
1054
|
-
smithers workflow implement --prompt "Add input validation"
|
|
1055
|
-
smithers workflow run implement --prompt "Add input validation"
|
|
1086
|
+
bunx smithers-orchestrator workflow implement --prompt "Add input validation"
|
|
1087
|
+
bunx smithers-orchestrator workflow run implement --prompt "Add input validation"
|
|
1056
1088
|
```
|
|
1057
1089
|
|
|
1058
1090
|
Shorthand resolution:
|
|
1059
1091
|
1. Resolve name from `.smithers/workflows/<name>.tsx`
|
|
1060
|
-
2. Rewrite to `smithers workflow run <name>`
|
|
1092
|
+
2. Rewrite to `bunx smithers-orchestrator workflow run <name>`
|
|
1061
1093
|
|
|
1062
1094
|
```bash
|
|
1063
|
-
smithers workflow
|
|
1064
|
-
smithers workflow list
|
|
1065
|
-
smithers workflow run implement --prompt "Investigate flaky tests"
|
|
1066
|
-
smithers workflow path implement
|
|
1067
|
-
smithers workflow doctor implement
|
|
1068
|
-
smithers workflow create foo
|
|
1069
|
-
smithers workflow foo --prompt "Investigate flaky tests"
|
|
1095
|
+
bunx smithers-orchestrator workflow
|
|
1096
|
+
bunx smithers-orchestrator workflow list
|
|
1097
|
+
bunx smithers-orchestrator workflow run implement --prompt "Investigate flaky tests"
|
|
1098
|
+
bunx smithers-orchestrator workflow path implement
|
|
1099
|
+
bunx smithers-orchestrator workflow doctor implement
|
|
1100
|
+
bunx smithers-orchestrator workflow create foo
|
|
1101
|
+
bunx smithers-orchestrator workflow foo --prompt "Investigate flaky tests"
|
|
1070
1102
|
```
|
|
1071
1103
|
|
|
1072
1104
|
- Names: lowercase letters, numbers, hyphens only.
|
|
1073
|
-
- `workflow create` writes only the workflow file. Run `smithers init` first for `.smithers/agents.ts` and `.smithers/components/`.
|
|
1105
|
+
- `workflow create` writes only the workflow file. Run `bunx smithers-orchestrator init` first for `.smithers/agents.ts` and `.smithers/components/`.
|
|
1074
1106
|
|
|
1075
1107
|
#### Workflow metadata comments
|
|
1076
1108
|
|
|
@@ -1093,13 +1125,13 @@ Discovery extracts optional metadata from `//` comments in the first six lines o
|
|
|
1093
1125
|
List all discovered workflows under `.smithers/workflows/`. Output includes each workflow's ID, entry file path, and source type.
|
|
1094
1126
|
|
|
1095
1127
|
```bash
|
|
1096
|
-
smithers workflow list
|
|
1128
|
+
bunx smithers-orchestrator workflow list
|
|
1097
1129
|
```
|
|
1098
1130
|
|
|
1099
1131
|
```bash
|
|
1100
|
-
smithers workflow list
|
|
1101
|
-
# implement .smithers/workflows/implement.tsx
|
|
1102
|
-
# sweep .smithers/workflows/sweep.tsx
|
|
1132
|
+
bunx smithers-orchestrator workflow list
|
|
1133
|
+
# implement .smithers/workflows/implement.tsx user
|
|
1134
|
+
# sweep .smithers/workflows/sweep.tsx generated
|
|
1103
1135
|
```
|
|
1104
1136
|
|
|
1105
1137
|
#### workflow run
|
|
@@ -1107,7 +1139,7 @@ smithers workflow list
|
|
|
1107
1139
|
Run a discovered workflow by ID.
|
|
1108
1140
|
|
|
1109
1141
|
```bash
|
|
1110
|
-
smithers workflow run <name> [options]
|
|
1142
|
+
bunx smithers-orchestrator workflow run <name> [options]
|
|
1111
1143
|
```
|
|
1112
1144
|
|
|
1113
1145
|
Arguments:
|
|
@@ -1131,7 +1163,7 @@ Workflow-specific behavior:
|
|
|
1131
1163
|
Resolve a workflow ID to its entry file path. Prints the absolute path, ID, and source type.
|
|
1132
1164
|
|
|
1133
1165
|
```bash
|
|
1134
|
-
smithers workflow path <name>
|
|
1166
|
+
bunx smithers-orchestrator workflow path <name>
|
|
1135
1167
|
```
|
|
1136
1168
|
|
|
1137
1169
|
Arguments:
|
|
@@ -1139,7 +1171,7 @@ Arguments:
|
|
|
1139
1171
|
- `name`: Workflow ID to resolve.
|
|
1140
1172
|
|
|
1141
1173
|
```bash
|
|
1142
|
-
smithers workflow path implement
|
|
1174
|
+
bunx smithers-orchestrator workflow path implement
|
|
1143
1175
|
# /home/user/project/.smithers/workflows/implement.tsx
|
|
1144
1176
|
```
|
|
1145
1177
|
|
|
@@ -1148,7 +1180,7 @@ smithers workflow path implement
|
|
|
1148
1180
|
Create a new workflow scaffold file in `.smithers/workflows/`. The name must contain only lowercase letters, numbers, and hyphens. Exits with code `4` if the name is invalid or the file already exists.
|
|
1149
1181
|
|
|
1150
1182
|
```bash
|
|
1151
|
-
smithers workflow create <name>
|
|
1183
|
+
bunx smithers-orchestrator workflow create <name>
|
|
1152
1184
|
```
|
|
1153
1185
|
|
|
1154
1186
|
Arguments:
|
|
@@ -1156,18 +1188,18 @@ Arguments:
|
|
|
1156
1188
|
- `name`: ID for the new workflow.
|
|
1157
1189
|
|
|
1158
1190
|
```bash
|
|
1159
|
-
smithers workflow create my-new-flow
|
|
1191
|
+
bunx smithers-orchestrator workflow create my-new-flow
|
|
1160
1192
|
# Created .smithers/workflows/my-new-flow.tsx
|
|
1161
1193
|
```
|
|
1162
1194
|
|
|
1163
|
-
Run `smithers init` first to ensure `.smithers/agents.ts` and `.smithers/components/` exist.
|
|
1195
|
+
Run `bunx smithers-orchestrator init` first to ensure `.smithers/agents.ts` and `.smithers/components/` exist.
|
|
1164
1196
|
|
|
1165
1197
|
#### workflow doctor
|
|
1166
1198
|
|
|
1167
1199
|
Inspect workflow discovery health. Reports the workflow root, discovered workflows, preload file status, bunfig status, and detected CLI agents. When `name` is provided, scopes the report to that single workflow.
|
|
1168
1200
|
|
|
1169
1201
|
```bash
|
|
1170
|
-
smithers workflow doctor [name]
|
|
1202
|
+
bunx smithers-orchestrator workflow doctor [name]
|
|
1171
1203
|
```
|
|
1172
1204
|
|
|
1173
1205
|
Arguments:
|
|
@@ -1175,8 +1207,8 @@ Arguments:
|
|
|
1175
1207
|
- `name` (optional): Workflow ID to inspect. Omit to inspect all discovered workflows.
|
|
1176
1208
|
|
|
1177
1209
|
```bash
|
|
1178
|
-
smithers workflow doctor
|
|
1179
|
-
smithers workflow doctor implement
|
|
1210
|
+
bunx smithers-orchestrator workflow doctor
|
|
1211
|
+
bunx smithers-orchestrator workflow doctor implement
|
|
1180
1212
|
```
|
|
1181
1213
|
|
|
1182
1214
|
### cron
|
|
@@ -1184,7 +1216,7 @@ smithers workflow doctor implement
|
|
|
1184
1216
|
Background schedule triggers stored in the nearest `smithers.db`.
|
|
1185
1217
|
|
|
1186
1218
|
```bash
|
|
1187
|
-
smithers cron <command>
|
|
1219
|
+
bunx smithers-orchestrator cron <command>
|
|
1188
1220
|
```
|
|
1189
1221
|
|
|
1190
1222
|
| Command | Purpose |
|
|
@@ -1195,22 +1227,22 @@ smithers cron <command>
|
|
|
1195
1227
|
| `cron rm <cronId>` | Delete an entry. |
|
|
1196
1228
|
|
|
1197
1229
|
```bash
|
|
1198
|
-
smithers cron add "0 * * * *" .smithers/workflows/implement.tsx
|
|
1199
|
-
smithers cron list
|
|
1200
|
-
smithers cron start
|
|
1201
|
-
smithers cron rm 0d3a8b0f-6f1c-4e2b-9f4d-0a7b7b95c2e1
|
|
1230
|
+
bunx smithers-orchestrator cron add "0 * * * *" .smithers/workflows/implement.tsx
|
|
1231
|
+
bunx smithers-orchestrator cron list
|
|
1232
|
+
bunx smithers-orchestrator cron start
|
|
1233
|
+
bunx smithers-orchestrator cron rm 0d3a8b0f-6f1c-4e2b-9f4d-0a7b7b95c2e1
|
|
1202
1234
|
```
|
|
1203
1235
|
|
|
1204
1236
|
- Polls every 15 seconds.
|
|
1205
|
-
- Due jobs launch as detached `smithers up ... -d` processes.
|
|
1206
|
-
- `workflowPath` is replayed through `smithers up`; use an explicit file path.
|
|
1237
|
+
- Due jobs launch as detached `bunx smithers-orchestrator up ... -d` processes.
|
|
1238
|
+
- `workflowPath` is replayed through `bunx smithers-orchestrator up`; use an explicit file path.
|
|
1207
1239
|
|
|
1208
1240
|
#### cron start
|
|
1209
1241
|
|
|
1210
|
-
Start the background scheduler loop in the current terminal. The loop polls every 15 seconds and launches due jobs as detached `smithers up ... -d` processes. Runs until interrupted.
|
|
1242
|
+
Start the background scheduler loop in the current terminal. The loop polls every 15 seconds and launches due jobs as detached `bunx smithers-orchestrator up ... -d` processes. Runs until interrupted.
|
|
1211
1243
|
|
|
1212
1244
|
```bash
|
|
1213
|
-
smithers cron start
|
|
1245
|
+
bunx smithers-orchestrator cron start
|
|
1214
1246
|
```
|
|
1215
1247
|
|
|
1216
1248
|
#### cron add
|
|
@@ -1218,7 +1250,7 @@ smithers cron start
|
|
|
1218
1250
|
Register a new workflow cron schedule. Returns the generated `cronId`.
|
|
1219
1251
|
|
|
1220
1252
|
```bash
|
|
1221
|
-
smithers cron add <pattern> <workflowPath>
|
|
1253
|
+
bunx smithers-orchestrator cron add <pattern> <workflowPath>
|
|
1222
1254
|
```
|
|
1223
1255
|
|
|
1224
1256
|
Arguments:
|
|
@@ -1227,8 +1259,8 @@ Arguments:
|
|
|
1227
1259
|
- `workflowPath`: Path or ID of the workflow to schedule.
|
|
1228
1260
|
|
|
1229
1261
|
```bash
|
|
1230
|
-
smithers cron add "0 9 * * *" .smithers/workflows/sweep.tsx
|
|
1231
|
-
smithers cron add "*/30 * * * *" .smithers/workflows/implement.tsx
|
|
1262
|
+
bunx smithers-orchestrator cron add "0 9 * * *" .smithers/workflows/sweep.tsx
|
|
1263
|
+
bunx smithers-orchestrator cron add "*/30 * * * *" .smithers/workflows/implement.tsx
|
|
1232
1264
|
```
|
|
1233
1265
|
|
|
1234
1266
|
#### cron list
|
|
@@ -1236,7 +1268,7 @@ smithers cron add "*/30 * * * *" .smithers/workflows/implement.tsx
|
|
|
1236
1268
|
List all registered background cron schedules from `smithers.db`. Output includes `cronId`, pattern, workflow path, enabled state, and last/next run timestamps.
|
|
1237
1269
|
|
|
1238
1270
|
```bash
|
|
1239
|
-
smithers cron list
|
|
1271
|
+
bunx smithers-orchestrator cron list
|
|
1240
1272
|
```
|
|
1241
1273
|
|
|
1242
1274
|
#### cron rm
|
|
@@ -1244,7 +1276,7 @@ smithers cron list
|
|
|
1244
1276
|
Delete an existing cron schedule by its ID.
|
|
1245
1277
|
|
|
1246
1278
|
```bash
|
|
1247
|
-
smithers cron rm <cronId>
|
|
1279
|
+
bunx smithers-orchestrator cron rm <cronId>
|
|
1248
1280
|
```
|
|
1249
1281
|
|
|
1250
1282
|
Arguments:
|
|
@@ -1252,7 +1284,7 @@ Arguments:
|
|
|
1252
1284
|
- `cronId`: UUID of the cron entry to remove (from `cron list` output).
|
|
1253
1285
|
|
|
1254
1286
|
```bash
|
|
1255
|
-
smithers cron rm 0d3a8b0f-6f1c-4e2b-9f4d-0a7b7b95c2e1
|
|
1287
|
+
bunx smithers-orchestrator cron rm 0d3a8b0f-6f1c-4e2b-9f4d-0a7b7b95c2e1
|
|
1256
1288
|
```
|
|
1257
1289
|
|
|
1258
1290
|
## Framework-Provided Built-Ins
|
|
@@ -1260,25 +1292,25 @@ smithers cron rm 0d3a8b0f-6f1c-4e2b-9f4d-0a7b7b95c2e1
|
|
|
1260
1292
|
### completions
|
|
1261
1293
|
|
|
1262
1294
|
```bash
|
|
1263
|
-
smithers completions bash
|
|
1264
|
-
smithers completions zsh
|
|
1265
|
-
smithers completions fish
|
|
1266
|
-
smithers completions nushell
|
|
1295
|
+
bunx smithers-orchestrator completions bash
|
|
1296
|
+
bunx smithers-orchestrator completions zsh
|
|
1297
|
+
bunx smithers-orchestrator completions fish
|
|
1298
|
+
bunx smithers-orchestrator completions nushell
|
|
1267
1299
|
```
|
|
1268
1300
|
|
|
1269
1301
|
| Shell | Setup |
|
|
1270
1302
|
|---|---|
|
|
1271
|
-
| `bash` | `eval "$(smithers completions bash)"` |
|
|
1272
|
-
| `zsh` | `eval "$(smithers completions zsh)"` |
|
|
1273
|
-
| `fish` | `smithers completions fish \| source` |
|
|
1274
|
-
| `nushell` | Add output of `smithers completions nushell` to `config.nu` |
|
|
1303
|
+
| `bash` | `eval "$(bunx smithers-orchestrator completions bash)"` |
|
|
1304
|
+
| `zsh` | `eval "$(bunx smithers-orchestrator completions zsh)"` |
|
|
1305
|
+
| `fish` | `bunx smithers-orchestrator completions fish \| source` |
|
|
1306
|
+
| `nushell` | Add output of `bunx smithers-orchestrator completions nushell` to `config.nu` |
|
|
1275
1307
|
|
|
1276
1308
|
### mcp add
|
|
1277
1309
|
|
|
1278
1310
|
Register Smithers as an MCP server for an agent integration.
|
|
1279
1311
|
|
|
1280
1312
|
```bash
|
|
1281
|
-
smithers mcp add [options]
|
|
1313
|
+
bunx smithers-orchestrator mcp add [options]
|
|
1282
1314
|
```
|
|
1283
1315
|
|
|
1284
1316
|
| Option | Description |
|
|
@@ -1288,17 +1320,30 @@ smithers mcp add [options]
|
|
|
1288
1320
|
| `--agent <agent>` | Target agent (`claude-code`, `cursor`, etc.). |
|
|
1289
1321
|
|
|
1290
1322
|
```bash
|
|
1291
|
-
smithers mcp add
|
|
1292
|
-
smithers mcp add --agent claude-code
|
|
1293
|
-
smithers mcp add --command "
|
|
1323
|
+
bunx smithers-orchestrator mcp add
|
|
1324
|
+
bunx smithers-orchestrator mcp add --agent claude-code
|
|
1325
|
+
bunx smithers-orchestrator mcp add --command "bunx smithers-orchestrator --mcp"
|
|
1294
1326
|
```
|
|
1295
1327
|
|
|
1296
|
-
### skills
|
|
1328
|
+
### skills
|
|
1297
1329
|
|
|
1298
1330
|
Sync skill files to agent integrations.
|
|
1299
1331
|
|
|
1300
1332
|
```bash
|
|
1301
|
-
smithers skills
|
|
1333
|
+
bunx smithers-orchestrator skills <command>
|
|
1334
|
+
```
|
|
1335
|
+
|
|
1336
|
+
| Command | Description |
|
|
1337
|
+
|---|---|
|
|
1338
|
+
| `skills add [options]` | Sync skill files to agents. |
|
|
1339
|
+
| `skills list` | List available skills. |
|
|
1340
|
+
|
|
1341
|
+
`skills` also has the alias `skill`.
|
|
1342
|
+
|
|
1343
|
+
#### skills add
|
|
1344
|
+
|
|
1345
|
+
```bash
|
|
1346
|
+
bunx smithers-orchestrator skills add [options]
|
|
1302
1347
|
```
|
|
1303
1348
|
|
|
1304
1349
|
| Option | Description |
|
|
@@ -1307,16 +1352,22 @@ smithers skills add [options]
|
|
|
1307
1352
|
| `--no-global` | Project-local install. |
|
|
1308
1353
|
|
|
1309
1354
|
```bash
|
|
1310
|
-
smithers skills add
|
|
1311
|
-
smithers skills add --depth 2
|
|
1312
|
-
smithers skills add --no-global
|
|
1355
|
+
bunx smithers-orchestrator skills add
|
|
1356
|
+
bunx smithers-orchestrator skills add --depth 2
|
|
1357
|
+
bunx smithers-orchestrator skills add --no-global
|
|
1358
|
+
```
|
|
1359
|
+
|
|
1360
|
+
#### skills list
|
|
1361
|
+
|
|
1362
|
+
```bash
|
|
1363
|
+
bunx smithers-orchestrator skills list
|
|
1313
1364
|
```
|
|
1314
1365
|
|
|
1315
1366
|
## Global Options
|
|
1316
1367
|
|
|
1317
1368
|
| Option | Description |
|
|
1318
1369
|
|---|---|
|
|
1319
|
-
| `--format <json\|yaml\|md\|jsonl>` | Output format. |
|
|
1370
|
+
| `--format <toon\|json\|yaml\|md\|jsonl>` | Output format. |
|
|
1320
1371
|
| `--verbose` | Full output envelope. |
|
|
1321
1372
|
| `--filter-output <keys>` | Filter JSON by key path (e.g. `runs[0].id`). |
|
|
1322
1373
|
| `--schema` | Print JSON schema for the command. |
|
|
@@ -1324,9 +1375,9 @@ smithers skills add --no-global
|
|
|
1324
1375
|
| `--token-count` | Print token count instead of output. |
|
|
1325
1376
|
| `--token-limit <n>` | Limit output to `n` tokens. |
|
|
1326
1377
|
| `--token-offset <n>` | Skip first `n` output tokens. |
|
|
1327
|
-
| `--help
|
|
1328
|
-
| `--version
|
|
1329
|
-
| `--mcp` | Start as MCP stdio server. Used by `smithers ask` and external tooling. |
|
|
1378
|
+
| `--help` | Command help. |
|
|
1379
|
+
| `--version` | CLI version. |
|
|
1380
|
+
| `--mcp` | Start as MCP stdio server. Used by `bunx smithers-orchestrator ask` and external tooling. |
|
|
1330
1381
|
|
|
1331
1382
|
## Operational Behavior
|
|
1332
1383
|
|