@wular/coder 0.2.12 → 0.3.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/README.md +46 -19
- package/dist/app-server-Dwd7IcQH.js +3 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +55 -159
- package/dist/flow/index.d.ts +31 -0
- package/dist/flow/index.js +1 -0
- package/dist/index-CUy_WPvw.d.ts +611 -0
- package/dist/lib/broker.d.ts +1 -0
- package/dist/lib/broker.js +3 -16
- package/dist/runtime-DRtQOCSz.js +16 -0
- package/dist/sdk.d.ts +734 -0
- package/dist/sdk.js +1 -0
- package/dist/upgrade-DFAtgbtD.js +27 -0
- package/docs/config.md +67 -0
- package/docs/flows.md +239 -0
- package/docs/{custom-models.md → models.md} +28 -4
- package/docs/sdk.md +82 -0
- package/package.json +18 -5
- package/plugins/agents/skills/coder/SKILL.md +28 -15
- package/plugins/claude/.claude-plugin/plugin.json +1 -1
- package/plugins/claude/skills/{handle → dispatch}/SKILL.md +27 -21
- package/plugins/cursor/.cursor-plugin/plugin.json +1 -1
- package/plugins/cursor/README.md +1 -1
- package/plugins/cursor/skills/coder/SKILL.md +27 -15
|
@@ -1,47 +1,60 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: coder
|
|
3
|
-
description: Use Coder
|
|
3
|
+
description: Use Coder to dispatch any coding, implementation, or investigation task - features, fixes, refactors, debugging, tests, code questions - one coder per focused goal, fanned out in parallel. Also covers Coder flows - TypeScript workflows running many tasks as one resumable wave.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Coder dispatch
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
(If `CODER_WORKER` is set in your environment, you _are_ a coder worker: stop reading, skip this skill, and do your assigned work directly - nested dispatch is disabled.)
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
You dispatch coding tasks through the `coder` runtime instead of implementing them yourself.
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
## Overview
|
|
13
13
|
|
|
14
|
-
-
|
|
15
|
-
- **Clean context, fast dispatch.** Implementation details live in the subagents, your conversation stays about intent; handoffs are instant and light enough to fan out many subagents at once.
|
|
16
|
-
- **Steerable, supervised tasks.** Full visibility from live progress to mid-run course corrections; each task runs in a sandboxed worker under unified permissions (read-only · workspace-write · auto), falling back down the configured chain when an agent can't start.
|
|
14
|
+
Coder delegates coding to supervised subagents of any model - Codex, Claude, or any OpenAI-compatible/local endpoint - from one runtime on every host. Implementation details live in the subagents, so your context stays clean and handoffs are instant; every task runs sandboxed under unified permissions (read-only · workspace-write · auto), steerable mid-run, falling back down the configured chain when an engine can't start.
|
|
17
15
|
|
|
18
|
-
|
|
16
|
+
`coder --help` is the cmd reference: every command and subcommand takes `--help` - reach for it instead of guessing flags.
|
|
17
|
+
|
|
18
|
+
Deeper guides ship with the CLI: `coder docs` lists them, `coder docs <topic>` prints one.
|
|
19
19
|
|
|
20
20
|
## Setup
|
|
21
21
|
|
|
22
|
-
If `coder` is not on PATH, install it yourself without asking (`npm install -g @wular/coder`).
|
|
22
|
+
If `coder` is not on PATH, install it yourself without asking (`npm install -g @wular/coder`). When a dispatch fails because engines are missing or logged out, run `coder setup-host` and follow its output - it checks engines and auth, fixes what it can, and prints the exact fix for the rest (safe to re-run anytime). Ask the user before installing an engine CLI or changing auth; if it updated codex, tell the user to restart their codex session.
|
|
23
23
|
|
|
24
24
|
## Dispatching a task
|
|
25
25
|
|
|
26
|
-
- If your harness sandboxes terminal commands or asks approval for them (Codex does both), run every `coder` command with escalated/approved permissions
|
|
26
|
+
- `coder` commands are safe to run in the terminal - the runtime is a supervisor and enforces its own OS sandbox and approval policy on the task. If your harness sandboxes terminal commands or asks approval for them (Codex does both), run every `coder` command with escalated/approved permissions; never retry a blocked `coder` call inside a (stricter) sandbox or with env workarounds.
|
|
27
27
|
- One coder per focused goal. When the work splits into independent parts, decompose it and dispatch each part as its own `coder task run` call - fan out a wide web of coders running in parallel, not one giant dispatch. Give each coder a self-contained goal with all context - overview, file paths, constraints (read-only, git rules). Run independent tasks concurrently; use `steer` to continue a single coder's thread.
|
|
28
28
|
- Delegation is a hard gate for anything the engine can do itself: do not read source files, investigate, or write code first - no matter how simple the task. Fold into the task text whatever only you have - conversation context, results from tools the engine lacks. The coder worker runs with plugins disabled (no skills, MCP, or connectors), so include any context only a plugin or MCP tool of yours produced.
|
|
29
|
-
- Compose one self-contained task text (goal, relevant paths, constraints) and dispatch it
|
|
29
|
+
- Compose one self-contained task text (goal, relevant paths, constraints) and dispatch it - it backgrounds by default and prints a task id:
|
|
30
30
|
|
|
31
31
|
```bash
|
|
32
32
|
coder task run --system "<standing instructions>" "<task text>"
|
|
33
33
|
```
|
|
34
34
|
|
|
35
|
-
Fetch the answer with `coder task result <task-id> --wait` -
|
|
35
|
+
Fetch the answer with `coder task result <task-id> --wait` - blocks until done, prints only the final result. Run it in a background shell so it does not block you; without one, poll without `--wait`, or put `--wait` on the run itself.
|
|
36
36
|
|
|
37
37
|
- A `--wait` (on `run` or `result`) exits **4** when the task is waiting on a permission approval: relay the approval to the user, apply their decision with `coder approve <task-id> <approval-id> [--deny]`, then re-fetch with `coder task result <task-id> --wait`. (Unanswered approvals auto-deny after 120s and the task moves on.)
|
|
38
38
|
|
|
39
39
|
- `coder task run` exits after its startup check. Exit 0: the task started - relay the task id and fetch its result (above). Exit 1: it failed to start or the turn failed - report it, do not retry or fall back yourself. Exit 3: no engine in the chain could start and stdout carries a `run-native-subagent` payload - see below.
|
|
40
40
|
- When the first engine can't start (auth, quota, rate limit), the runtime automatically falls back to the next engine in the chain, runs the same task on it, and still exits 0 - so just fetch the result. If the failure mentions a usage-limit reset time, relay that to the user.
|
|
41
|
-
- Model choice: config holds
|
|
42
|
-
- `spark` is only for the very lightest tasks (formatting, renames, quick lookups) - very fast and very cheap. It runs on a separate quota, so reach for it when the others hit a usage limit; it may still run once they are exhausted.
|
|
41
|
+
- Model choice: config holds the defaults; matching the dispatch to the task is on you - pick `--agent` / `--model` / `--effort` by the task's weight and the user's ask (light -> cheap/fast model, hard -> stronger model or higher effort). `coder task run --help` lists agents, models, and efforts; `coder model list` shows custom models.
|
|
43
42
|
- Permissions default to auto mode (workspace-write + policy-answered escalations). Pass `--permissions read-only` when the task is read-only; `--permissions workspace-write` to forbid any escalation beyond the project.
|
|
44
|
-
|
|
43
|
+
|
|
44
|
+
## Flows (multi-task workflows)
|
|
45
|
+
|
|
46
|
+
When the user asks for a workflow - a repeatable multi-task wave with verification gates and crash/resume - author a Coder flow instead of hand-fanning tasks: a TypeScript file the runtime executes, written to `.coder/flows/<name>.ts` for the user to review. Before writing or editing one, always read the full reference first:
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
coder docs flows # authoring conventions, primitives, resume rules
|
|
50
|
+
coder flow --help # command reference
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Preview with `--dry-run` before spending tokens - and note flow tasks are normal coder tasks, so steer/stop/list work on them.
|
|
54
|
+
|
|
55
|
+
Once a run is going, tell the user to run `coder flow stream <run-id>` to see live progress and overview of its tasks as the wave goes. Give them the actual run id, not a placeholder.
|
|
56
|
+
|
|
57
|
+
For programmatic use - embedding coder in the user's own code or scripts - the SDK mirrors the CLI one-to-one; run `coder docs sdk` for the details.
|
|
45
58
|
|
|
46
59
|
## Last resort: run-native-subagent payload (exit 3)
|
|
47
60
|
|
|
@@ -1,52 +1,58 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
3
|
-
description: Use Coder
|
|
2
|
+
name: dispatch
|
|
3
|
+
description: Use Coder to dispatch any coding, implementation, or investigation task - features, fixes, refactors, debugging, tests, code questions - one coder per focused goal, fanned out in parallel. Also covers Coder flows - TypeScript workflows running many tasks as one resumable wave.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Coder dispatch (Claude host)
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
(If `CODER_WORKER` is set in your environment, you _are_ a coder worker: stop reading, skip this skill, and do your assigned work directly - nested dispatch is disabled.)
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
You dispatch coding tasks through the `coder` runtime instead of implementing them yourself.
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
## Overview
|
|
13
13
|
|
|
14
|
-
-
|
|
15
|
-
- **Clean context, fast dispatch.** Implementation details live in the subagents, your conversation stays about intent; handoffs are instant and light enough to fan out many subagents at once.
|
|
16
|
-
- **Steerable, supervised tasks.** Full visibility from live progress to mid-run course corrections; each task runs in a sandboxed worker under unified permissions (read-only · workspace-write · auto), falling back down the configured chain when an agent can't start.
|
|
14
|
+
Coder delegates coding to supervised subagents of any model - Codex, Claude, or any OpenAI-compatible/local endpoint - from one runtime on every host. Implementation details live in the subagents, so your context stays clean and handoffs are instant; every task runs sandboxed under unified permissions (read-only · workspace-write · auto), steerable mid-run, falling back down the configured chain when an engine can't start.
|
|
17
15
|
|
|
18
|
-
|
|
16
|
+
`coder --help` is the cmd reference: every command and subcommand takes `--help` - reach for it instead of guessing flags.
|
|
17
|
+
Deeper guides ship with the CLI: `coder docs` lists them, `coder docs <topic>` prints one.
|
|
19
18
|
|
|
20
19
|
## Setup
|
|
21
20
|
|
|
22
|
-
If `coder` is not on PATH, install it yourself without asking (`npm install -g @wular/coder`).
|
|
21
|
+
If `coder` is not on PATH, install it yourself without asking (`npm install -g @wular/coder`). When a dispatch fails because engines are missing or logged out, run `coder setup-host claude` and follow its output - it checks engines and auth, fixes what it can, and prints the exact fix for the rest (safe to re-run anytime). Ask the user before installing an engine CLI or changing auth; if it updated codex, tell the user to restart their codex session. For a guided setup, suggest `/coder:setup`.
|
|
23
22
|
|
|
24
23
|
## Dispatching a task
|
|
25
24
|
|
|
26
25
|
- One coder per focused goal. When the work splits into independent parts, decompose it and dispatch each part as its own `coder task run` call - fan out a wide web of coders running in parallel, not one giant dispatch. Give each coder a self-contained goal with all context - overview, file paths, constraints (read-only, git rules). Run independent tasks concurrently; use `steer` to continue a single coder's thread.
|
|
27
26
|
- Delegation is a hard gate for anything the engine can do itself: do not read source files, investigate, or write code first - no matter how simple the task. Fold into the task text whatever only you have - conversation context, results from tools the engine lacks. The coder worker runs with plugins disabled (no skills, MCP, or connectors), so include any context only a plugin or MCP tool of yours produced.
|
|
28
|
-
- Compose one self-contained task text (goal, relevant paths, constraints) and dispatch it
|
|
27
|
+
- Compose one self-contained task text (goal, relevant paths, constraints) and dispatch it - it backgrounds by default and prints a task id:
|
|
29
28
|
|
|
30
29
|
```bash
|
|
31
30
|
coder task run --system "<standing instructions>" "<task text>"
|
|
32
31
|
```
|
|
33
32
|
|
|
34
|
-
Fetch the answer with `coder task result <task-id> --wait` -
|
|
35
|
-
|
|
36
|
-
```bash
|
|
37
|
-
coder task result <task-id> --wait # Bash run_in_background: true
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
Only use `--wait` when you can run it in a background shell like that; without one, poll `coder task result <task-id>` (no `--wait`) until it is done. Or skip the two steps and block on the run itself with `--wait` on `coder task run`.
|
|
33
|
+
Fetch the answer with `coder task result <task-id> --wait` - blocks until done, prints only the final result. Run it as a background Bash call (run_in_background: true) so it does not block you and you are re-invoked on completion; without one, poll without `--wait`, or put `--wait` on the run itself.
|
|
41
34
|
|
|
42
35
|
- A `--wait` (on `run` or `result`) exits **4** when the task is waiting on a permission approval: relay the approval to the user, apply their decision with `coder approve <task-id> <approval-id> [--deny]`, then re-fetch with `coder task result <task-id> --wait`. (Unanswered approvals auto-deny after 120s and the task moves on.)
|
|
43
36
|
|
|
44
37
|
- `coder task run` exits after its startup check. Exit 0: the task started - relay the task id and fetch its result (above). Exit 1: it failed to start or the turn failed - report it, do not retry or fall back yourself. Exit 3: no engine in the chain could start and stdout carries a `run-native-subagent` payload - see below.
|
|
45
38
|
- When the first engine can't start (auth, quota, rate limit), the runtime automatically falls back to the next engine in the chain, runs the same task on it, and still exits 0 - so just fetch the result. If the failure mentions a usage-limit reset time, relay that to the user.
|
|
46
|
-
- Model choice: config holds
|
|
47
|
-
- `spark` is only for the very lightest tasks (formatting, renames, quick lookups) - very fast and very cheap. It runs on a separate quota, so reach for it when the others hit a usage limit; it may still run once they are exhausted.
|
|
39
|
+
- Model choice: config holds the defaults; matching the dispatch to the task is on you - pick `--agent` / `--model` / `--effort` by the task's weight and the user's ask (light -> cheap/fast model, hard -> stronger model or higher effort). `coder task run --help` lists agents, models, and efforts; `coder model list` shows custom models.
|
|
48
40
|
- Permissions default to auto mode (workspace-write + policy-answered escalations). Pass `--permissions read-only` when the task is read-only; `--permissions workspace-write` to forbid any escalation beyond the project.
|
|
49
|
-
|
|
41
|
+
|
|
42
|
+
## Flows (multi-task workflows)
|
|
43
|
+
|
|
44
|
+
When the user asks for a workflow - a repeatable multi-task wave with verification gates and crash/resume - author a Coder flow instead of hand-fanning tasks: a TypeScript file the runtime executes, written to `.coder/flows/<name>.ts` for the user to review. Before writing or editing one, always read the full reference first:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
coder docs flows # authoring conventions, primitives, resume rules
|
|
48
|
+
coder flow --help # command reference
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Preview with `--dry-run` before spending tokens - and note flow tasks are normal coder tasks, so steer/stop/list work on them.
|
|
52
|
+
|
|
53
|
+
Once a run is going, tell the user to run `coder flow stream <run-id>` to see live progress and overview of its tasks as the wave goes. Give them the actual run id, not a placeholder.
|
|
54
|
+
|
|
55
|
+
For programmatic use - embedding coder in the user's own code or scripts - the SDK mirrors the CLI one-to-one; run `coder docs sdk` for the details.
|
|
50
56
|
|
|
51
57
|
## Last resort: run-native-subagent payload (exit 3)
|
|
52
58
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "coder",
|
|
3
3
|
"displayName": "Coder",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.3.1",
|
|
5
5
|
"description": "Delegate coding tasks to supervised Coder subagents running on Codex, Claude, or any OpenAI-compatible model. Your main context stays clean.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "muzam1l"
|
package/plugins/cursor/README.md
CHANGED
|
@@ -38,7 +38,7 @@ npm install -g @openai/codex && codex login
|
|
|
38
38
|
npm install -g @anthropic-ai/claude-code && claude auth login
|
|
39
39
|
```
|
|
40
40
|
|
|
41
|
-
Or a local/provider model of your own (see [
|
|
41
|
+
Or a local/provider model of your own (see [Models](docs/models.md)). `coder setup-host` checks what's ready.
|
|
42
42
|
|
|
43
43
|
**3. Ask your host to use it:**
|
|
44
44
|
|
|
@@ -1,47 +1,59 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: coder
|
|
3
|
-
description: Use Coder
|
|
3
|
+
description: Use Coder to dispatch any coding, implementation, or investigation task - features, fixes, refactors, debugging, tests, code questions - one coder per focused goal, fanned out in parallel. Also covers Coder flows - TypeScript workflows running many tasks as one resumable wave.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Coder dispatch (Cursor host)
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
(If `CODER_WORKER` is set in your environment, you _are_ a coder worker: stop reading, skip this skill, and do your assigned work directly - nested dispatch is disabled.)
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
You dispatch coding tasks through the `coder` runtime instead of implementing them yourself.
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
## Overview
|
|
13
13
|
|
|
14
|
-
-
|
|
15
|
-
- **Clean context, fast dispatch.** Implementation details live in the subagents, your conversation stays about intent; handoffs are instant and light enough to fan out many subagents at once.
|
|
16
|
-
- **Steerable, supervised tasks.** Full visibility from live progress to mid-run course corrections; each task runs in a sandboxed worker under unified permissions (read-only · workspace-write · auto), falling back down the configured chain when an agent can't start.
|
|
14
|
+
Coder delegates coding to supervised subagents of any model - Codex, Claude, or any OpenAI-compatible/local endpoint - from one runtime on every host. Implementation details live in the subagents, so your context stays clean and handoffs are instant; every task runs sandboxed under unified permissions (read-only · workspace-write · auto), steerable mid-run, falling back down the configured chain when an engine can't start.
|
|
17
15
|
|
|
18
|
-
|
|
16
|
+
`coder --help` is the cmd reference: every command and subcommand takes `--help` - reach for it instead of guessing flags.
|
|
17
|
+
Deeper guides ship with the CLI: `coder docs` lists them, `coder docs <topic>` prints one.
|
|
19
18
|
|
|
20
19
|
## Setup
|
|
21
20
|
|
|
22
|
-
If `coder` is not on PATH, install it yourself without asking (`npm install -g @wular/coder`).
|
|
21
|
+
If `coder` is not on PATH, install it yourself without asking (`npm install -g @wular/coder`). When a dispatch fails because engines are missing or logged out, run `coder setup-host` and follow its output - it checks engines and auth, fixes what it can, and prints the exact fix for the rest (safe to re-run anytime). Ask the user before installing an engine CLI or changing auth; if it updated codex, tell the user to restart their codex session.
|
|
23
22
|
|
|
24
23
|
## Dispatching a task
|
|
25
24
|
|
|
26
|
-
- `coder` commands are safe to run in the terminal - the runtime is a supervisor
|
|
25
|
+
- `coder` commands are safe to run in the terminal - the runtime is a supervisor and enforces its own OS sandbox and approval policy on the task. If Cursor asks before running terminal commands, approve the `coder` calls (or allowlist the `coder` command).
|
|
27
26
|
- One coder per focused goal. When the work splits into independent parts, decompose it and dispatch each part as its own `coder task run` call - fan out a wide web of coders running in parallel, not one giant dispatch. Give each coder a self-contained goal with all context - overview, file paths, constraints (read-only, git rules). Run independent tasks concurrently; use `steer` to continue a single coder's thread.
|
|
28
27
|
- Delegation is a hard gate for anything the engine can do itself: do not read source files, investigate, or write code first - no matter how simple the task. Fold into the task text whatever only you have - conversation context, results from tools the engine lacks. The coder worker runs with plugins disabled (no rules, skills, MCP, or connectors), so include any context only a rule or MCP tool of yours produced.
|
|
29
|
-
- Compose one self-contained task text (goal, relevant paths, constraints) and dispatch it
|
|
28
|
+
- Compose one self-contained task text (goal, relevant paths, constraints) and dispatch it - it backgrounds by default and prints a task id:
|
|
30
29
|
|
|
31
30
|
```bash
|
|
32
31
|
coder task run --system "<standing instructions>" "<task text>"
|
|
33
32
|
```
|
|
34
33
|
|
|
35
|
-
Fetch the answer with `coder task result <task-id> --wait` -
|
|
34
|
+
Fetch the answer with `coder task result <task-id> --wait` - blocks until done, prints only the final result. Run it in a background shell so it does not block you; without one, poll without `--wait`, or put `--wait` on the run itself.
|
|
36
35
|
|
|
37
36
|
- A `--wait` (on `run` or `result`) exits **4** when the task is waiting on a permission approval: relay the approval to the user, apply their decision with `coder approve <task-id> <approval-id> [--deny]`, then re-fetch with `coder task result <task-id> --wait`. (Unanswered approvals auto-deny after 120s and the task moves on.)
|
|
38
37
|
|
|
39
38
|
- `coder task run` exits after its startup check. Exit 0: the task started - relay the task id and fetch its result (above). Exit 1: it failed to start or the turn failed - report it, do not retry or fall back yourself. Exit 3: no engine in the chain could start and stdout carries a `run-native-subagent` payload - see below.
|
|
40
39
|
- When the first engine can't start (auth, quota, rate limit), the runtime automatically falls back to the next engine in the chain, runs the same task on it, and still exits 0 - so just fetch the result. If the failure mentions a usage-limit reset time, relay that to the user.
|
|
41
|
-
- Model choice: config holds
|
|
42
|
-
- `spark` is only for the very lightest tasks (formatting, renames, quick lookups) - very fast and very cheap. It runs on a separate quota, so reach for it when the others hit a usage limit; it may still run once they are exhausted.
|
|
40
|
+
- Model choice: config holds the defaults; matching the dispatch to the task is on you - pick `--agent` / `--model` / `--effort` by the task's weight and the user's ask (light -> cheap/fast model, hard -> stronger model or higher effort). `coder task run --help` lists agents, models, and efforts; `coder model list` shows custom models.
|
|
43
41
|
- Permissions default to auto mode (workspace-write + policy-answered escalations). Pass `--permissions read-only` when the task is read-only; `--permissions workspace-write` to forbid any escalation beyond the project.
|
|
44
|
-
|
|
42
|
+
|
|
43
|
+
## Flows (multi-task workflows)
|
|
44
|
+
|
|
45
|
+
When the user asks for a workflow - a repeatable multi-task wave with verification gates and crash/resume - author a Coder flow instead of hand-fanning tasks: a TypeScript file the runtime executes, written to `.coder/flows/<name>.ts` for the user to review. Before writing or editing one, always read the full reference first:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
coder docs flows # authoring conventions, primitives, resume rules
|
|
49
|
+
coder flow --help # command reference
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Preview with `--dry-run` before spending tokens - and note flow tasks are normal coder tasks, so steer/stop/list work on them.
|
|
53
|
+
|
|
54
|
+
Once a run is going, tell the user to run `coder flow stream <run-id>` to see live progress and overview of its tasks as the wave goes. Give them the actual run id, not a placeholder.
|
|
55
|
+
|
|
56
|
+
For programmatic use - embedding coder in the user's own code or scripts - the SDK mirrors the CLI one-to-one; run `coder docs sdk` for the details.
|
|
45
57
|
|
|
46
58
|
## Last resort: run-native-subagent payload (exit 3)
|
|
47
59
|
|