@viraatdas/rudder 2.12.9 → 2.12.11
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 +103 -23
- package/dist/backends.js +56 -6
- package/dist/backends.js.map +1 -1
- package/dist/board/board.js +2 -2
- package/dist/board/daemon.d.ts +5 -1
- package/dist/board/daemon.js +26 -2
- package/dist/board/daemon.js.map +1 -1
- package/dist/brain.d.ts +1 -0
- package/dist/brain.js +49 -7
- package/dist/brain.js.map +1 -1
- package/dist/codex-binary.d.ts +4 -1
- package/dist/codex-binary.js +25 -6
- package/dist/codex-binary.js.map +1 -1
- package/dist/effort.js +5 -0
- package/dist/effort.js.map +1 -1
- package/dist/graph.js +6 -1
- package/dist/graph.js.map +1 -1
- package/dist/handoff.d.ts +83 -0
- package/dist/handoff.js +466 -0
- package/dist/handoff.js.map +1 -0
- package/dist/main.js +15 -2
- package/dist/main.js.map +1 -1
- package/dist/migration.js +1 -1
- package/dist/migration.js.map +1 -1
- package/dist/native/darwin-arm64/rudder-native +0 -0
- package/dist/native/darwin-x64/rudder-native +0 -0
- package/dist/native/linux-x64/rudder-native +0 -0
- package/dist/native-agents.js +21 -4
- package/dist/native-agents.js.map +1 -1
- package/dist/planner.js +9 -2
- package/dist/planner.js.map +1 -1
- package/dist/run-manager.js +13 -1
- package/dist/run-manager.js.map +1 -1
- package/dist/scheduler.js +10 -2
- package/dist/scheduler.js.map +1 -1
- package/dist/state.js +0 -1
- package/dist/state.js.map +1 -1
- package/dist/surfaces.d.ts +15 -0
- package/dist/surfaces.js +8 -0
- package/dist/surfaces.js.map +1 -1
- package/dist/types.d.ts +22 -4
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -13,8 +13,10 @@
|
|
|
13
13
|
|
|
14
14
|
Rudder runs coding agents the way they should be used: several at once,
|
|
15
15
|
isolated, reviewable, and easy to merge. It opens a native three-pane dashboard,
|
|
16
|
-
gives
|
|
17
|
-
processes in the worker pane.
|
|
16
|
+
gives isolated tasks their own jj workspace, and runs real Claude Code or Codex
|
|
17
|
+
processes in the worker pane. Plain requests instead get one end-to-end owner in
|
|
18
|
+
the main checkout, so implementation, release, and deployment do not fall between
|
|
19
|
+
separate agents unless you explicitly ask for a DAG.
|
|
18
20
|
|
|
19
21
|
> **AI agents and contributors:** this README is for using Rudder. If you are
|
|
20
22
|
> an AI agent (or a human) working on the Rudder codebase itself, read
|
|
@@ -53,10 +55,11 @@ rudder
|
|
|
53
55
|
```
|
|
54
56
|
|
|
55
57
|
With no arguments, `rudder` opens the dashboard. Type in the bottom input and
|
|
56
|
-
press `Enter` to
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
58
|
+
press `Enter` to give the request to a single end-to-end main-checkout agent.
|
|
59
|
+
That agent owns implementation, relevant tests, and any push/deploy/install work
|
|
60
|
+
the request explicitly authorizes. Use `/plan <task>` when you want a reviewed
|
|
61
|
+
multi-agent DAG, `/run <task>` for exactly one isolated mergeable worker with no
|
|
62
|
+
DAG, or `/ask <text>` for a separate one-off main-checkout conversation.
|
|
60
63
|
|
|
61
64
|
If a task needs shared local context like API tokens, private URLs, account ids,
|
|
62
65
|
or environment values, save it with `/share <text>` in the task input. Rudder
|
|
@@ -96,7 +99,7 @@ to `~/.rudder/config.json`.
|
|
|
96
99
|
│ task list │ live Claude Code or Codex terminal │
|
|
97
100
|
│ status/model │ DAG-over-orchestrator, scrollback, review │
|
|
98
101
|
├───────────────┴────────────────────────────────────────────┤
|
|
99
|
-
│ task input:
|
|
102
|
+
│ task input: main owner by default, /plan DAG, /run isolated │
|
|
100
103
|
└──────────────────────────────────────────────────────────────┘
|
|
101
104
|
```
|
|
102
105
|
|
|
@@ -120,7 +123,8 @@ your browser. The board is a second control surface, not just a monitor: open a
|
|
|
120
123
|
task to send an update while it runs, or request changes from Review to resume
|
|
121
124
|
the same agent in the same workspace. The task's update thread records your
|
|
122
125
|
directions alongside the latest worker activity. `+ Task` follows the same
|
|
123
|
-
|
|
126
|
+
end-to-end main-owner path as typing in the dashboard task pane; use `/plan` in
|
|
127
|
+
the native dashboard for an explicit DAG.
|
|
124
128
|
|
|
125
129
|
The board also works on its own with `rudder board`: in that mode updates
|
|
126
130
|
redirect or resume the detached worker directly and move revised work back
|
|
@@ -207,31 +211,48 @@ the picker labels context windows such as Opus's 1M context without inventing a
|
|
|
207
211
|
different model name. Codex offers `gpt-5.5`, `gpt-5.4-codex`, and other
|
|
208
212
|
discovered models. `auto` effort means Rudder passes no override.
|
|
209
213
|
|
|
214
|
+
`opencode` is available as a third backend: `/model opencode <provider/model>`
|
|
215
|
+
(its ids are provider-qualified, e.g. `anthropic/claude-sonnet-4-5`), and the
|
|
216
|
+
picker lists whatever `opencode models` reports for your authenticated providers.
|
|
217
|
+
opencode has no reasoning-effort flag, so Rudder offers no effort choice for it
|
|
218
|
+
rather than a dead control, and `/fast` says so instead of pretending. Turn-end is
|
|
219
|
+
reported by a small plugin Rudder generates per run (loaded through
|
|
220
|
+
`OPENCODE_CONFIG`, never written into your workspace), so opencode rows reach
|
|
221
|
+
Review deterministically like the other two. Token/cost accounting for opencode
|
|
222
|
+
rows is not wired up yet and reports zero.
|
|
223
|
+
|
|
210
224
|
Your last provider, model, and effort are saved in `~/.rudder/config.json` and
|
|
211
225
|
reused next time. Rudder refreshes model metadata from
|
|
212
226
|
`https://models.dev/api.json` and falls back to local caches when offline.
|
|
213
227
|
The native Codex picker also reads `~/.codex/models_cache.json`, so account-specific
|
|
214
228
|
models such as the GPT-5.6 Sol/Terra/Luna family appear as soon as Codex exposes them.
|
|
229
|
+
Implementation, review, resume, and shipping Codex sessions keep Codex plugins and
|
|
230
|
+
Computer Use enabled, matching a direct Codex session. Read-only planner sessions
|
|
231
|
+
disable both capabilities so planning cannot cause external side effects.
|
|
215
232
|
|
|
216
233
|
## One-Off and Planning
|
|
217
234
|
|
|
218
235
|
Type a fresh request in the bottom task input. When no plan is active, Rudder
|
|
219
|
-
starts
|
|
220
|
-
|
|
236
|
+
starts or continues one main-checkout agent as the end-to-end owner. It can inspect,
|
|
237
|
+
edit, test, commit, release, and deploy according to the request and the repository's
|
|
238
|
+
instructions. Rudder does not silently split a plain request across a planner and
|
|
239
|
+
workers, which keeps final delivery ownership unambiguous.
|
|
221
240
|
|
|
222
241
|
Use `/ask <text>` for a one-off conversational agent in the main checkout, with
|
|
223
242
|
no DAG and no merge step. Use `/run <task>` for exactly one isolated worker that
|
|
224
243
|
lands in Review and merges back with `m` or `/merge-all`. Use `/plan <text>` when
|
|
225
|
-
you want
|
|
226
|
-
|
|
244
|
+
you want the orchestrator / DAG path: the read-only planner decomposes the task,
|
|
245
|
+
then separate isolated workers implement its nodes.
|
|
227
246
|
|
|
228
247
|
For planned work, Rudder runs a dedicated Claude Code orchestrator PTY with a DAG
|
|
229
248
|
pane above it. The flow stays inside Rudder: the orchestrator researches
|
|
230
249
|
read-only, writes the DAG to `RUDDER.md`, and separate workers do the
|
|
231
250
|
implementation.
|
|
232
251
|
|
|
233
|
-
1. **It asks
|
|
234
|
-
|
|
252
|
+
1. **It asks when it needs to.** The planner inspects the repo first. If something
|
|
253
|
+
material is missing (scope, approach, a key decision), it asks before the first
|
|
254
|
+
DAG, shown as a numbered prompt; a clear request goes straight to a DAG with the
|
|
255
|
+
planner's assumptions listed under it:
|
|
235
256
|
|
|
236
257
|
```
|
|
237
258
|
❓ The planner needs your input
|
|
@@ -254,8 +275,9 @@ After launch, typing a new task folds it into the running DAG as a new node. Whe
|
|
|
254
275
|
finishes, Rudder reads back what it did and what work it found remaining (reconstructing it
|
|
255
276
|
from the diff if the agent did not say), so the plan keeps growing on its own. Type a
|
|
256
277
|
sweeping change ("rewrite this in Rust instead") and the plan re-plans around the work
|
|
257
|
-
already done. The queued plan
|
|
258
|
-
|
|
278
|
+
already done. The queued plan and workspaces survive a restart. Closing the dashboard
|
|
279
|
+
marks owned live PTYs `paused` and removes their dead process ids; select a paused row
|
|
280
|
+
and press `Enter` to resume it (reusing its backend session when available).
|
|
259
281
|
|
|
260
282
|
The orchestrator also handles worker operations in natural language. For example, tell it
|
|
261
283
|
"pause the current tasks and resume them on Codex gpt-5.6 at max effort." It resolves the
|
|
@@ -264,17 +286,57 @@ workspace, and resumes it on the requested provider/model. A same-provider switc
|
|
|
264
286
|
the agent conversation; a provider switch keeps the workspace and starts a fresh session
|
|
265
287
|
with a handoff to inspect and continue the existing diff.
|
|
266
288
|
|
|
289
|
+
## Continuing a conversation you already started
|
|
290
|
+
|
|
291
|
+
The chat you are already having in a terminal — a plain `claude`, `codex`, or
|
|
292
|
+
`opencode` session — holds the context you would otherwise retype: the files you
|
|
293
|
+
looked at, the decisions you made, the plan you agreed on. Rudder can pick that
|
|
294
|
+
conversation up and keep it going as an agent.
|
|
295
|
+
|
|
296
|
+
Two directions, same result:
|
|
297
|
+
|
|
298
|
+
- **From the dashboard:** type `/resume`. The palette lists this repository's
|
|
299
|
+
recent conversations — Claude, Codex, and opencode in one list, newest first —
|
|
300
|
+
showing what each was about, which model it was running, how long ago, and its
|
|
301
|
+
session id. Pick one, optionally type the next step after it, and press Enter. It
|
|
302
|
+
opens as an isolated worker that merges with `m` like any other.
|
|
303
|
+
- **From inside the chat:** run `rudder handoff "<next step>"`. That queues the
|
|
304
|
+
conversation you are in; the dashboard picks it up within a second (start it with
|
|
305
|
+
`rudder` if it is not open). `--here` continues in the main checkout instead of an
|
|
306
|
+
isolated workspace, `--list` shows the conversations Rudder can see, and
|
|
307
|
+
`--codex` / `--opencode` pick a different source CLI.
|
|
308
|
+
|
|
309
|
+
Handoffs always FORK the conversation. The chat in your terminal is untouched and
|
|
310
|
+
keeps working; the Rudder agent continues from a copy. The fork is told it is now
|
|
311
|
+
running in a different workspace, so it re-reads files instead of trusting its
|
|
312
|
+
memory of the checkout it came from.
|
|
313
|
+
|
|
314
|
+
`/handoff` still works as an alias for `/resume` (it is what the CLI half is
|
|
315
|
+
called). `b` on a worker row does the same thing for a conversation already inside
|
|
316
|
+
Rudder, and `/restore <claude|codex> <id>` continues a session IN PLACE (same
|
|
317
|
+
session, main checkout) instead of forking it into a worker.
|
|
318
|
+
|
|
267
319
|
## Worktrees and merging
|
|
268
320
|
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
321
|
+
**Who merges what:** planned `/plan` DAG nodes integrate into your checkout
|
|
322
|
+
**automatically** as soon as they finish — no per-node confirmation — so
|
|
323
|
+
dependent nodes unblock and the chain keeps flowing (their row shows
|
|
324
|
+
`done · auto-merging`, then `merged locally`; the final gate runs the repo's
|
|
325
|
+
checks after the last node lands). Manually started `/run` workers never
|
|
326
|
+
auto-merge: they wait in Review (`done · press m to merge`) until you merge
|
|
327
|
+
them yourself. There is no `/automerge` command or config flag — this split is
|
|
328
|
+
the behavior.
|
|
329
|
+
|
|
330
|
+
Planned and `/run` worker tasks run in their own jj workspaces under a sibling
|
|
331
|
+
`.rudder-worktrees` area, so parallel agents never edit the same checkout. Plain
|
|
332
|
+
main-owner and `/ask` agents intentionally run in the main checkout. Run records
|
|
333
|
+
live under `.rudder/runs/`. If you quit Rudder, live workers become `paused`, keep
|
|
334
|
+
their workspace/session metadata, and stay listed when you reopen the repo.
|
|
275
335
|
|
|
276
336
|
- Press `m` to merge the selected completed agent back into its branch.
|
|
277
|
-
- Press `M` to merge all completed agents.
|
|
337
|
+
- Press `M` (or `/merge-all`) to merge all completed agents.
|
|
338
|
+
- Both ask for a `y`/`n` confirmation first, and the prompt warns when your own
|
|
339
|
+
uncommitted changes in the main checkout would ride along in the merge.
|
|
278
340
|
|
|
279
341
|
Clean merges become merge commits. If git reports conflicts, Rudder leaves the
|
|
280
342
|
conflicted state in place and can open an agent in the main checkout to help
|
|
@@ -300,6 +362,21 @@ rudder cleanup
|
|
|
300
362
|
`rudder stop` records a durable cancellation request and terminates the native PTY process
|
|
301
363
|
group. Cancellation is terminal: a resulting signal exit cannot be relabeled as a failure.
|
|
302
364
|
|
|
365
|
+
## Shipping and delivery evidence
|
|
366
|
+
|
|
367
|
+
Rudder treats these as different facts: an agent finished, changes merged locally,
|
|
368
|
+
a revision was pushed, and a product was deployed. A task that explicitly asks to
|
|
369
|
+
deploy, publish, release, install, or launch remains `delivery proof needed` until
|
|
370
|
+
its completion report records the target, delivery kind, verification time, and at
|
|
371
|
+
least one real smoke check. Verified web URLs, installed macOS app paths, provider
|
|
372
|
+
deployment ids, revisions, and versions are persisted in `.rudder/runs/<id>/run.json`
|
|
373
|
+
and shown in the native dashboard, web board, and generated `RUDDER.md`.
|
|
374
|
+
|
|
375
|
+
Pushing a commit is never presented as proof that a host deployed it. Likewise,
|
|
376
|
+
building a macOS app is not the same as replacing and launching the installed app.
|
|
377
|
+
If delivery fails or needs credentials/user input, the row says `delivery blocked`
|
|
378
|
+
instead of incorrectly moving to deployed.
|
|
379
|
+
|
|
303
380
|
## Review
|
|
304
381
|
|
|
305
382
|
Press `v` on an agent to toggle a review of its worktree, showing the run's diff.
|
|
@@ -376,6 +453,9 @@ rudder cleanup
|
|
|
376
453
|
- Stale behavior after an upgrade: restart any already-running Rudder dashboards
|
|
377
454
|
so no old `rudder-native` process lingers. New `rudder` launches auto-update
|
|
378
455
|
unless `RUDDER_DISABLE_AUTO_UPDATE=1` is set.
|
|
456
|
+
- Sustained CPU/redraw load: version 2.12.9 and newer cache Codex plan-output scans,
|
|
457
|
+
avoid reparsing unchanged planner JSON, throttle background PTY drains, and redraw
|
|
458
|
+
only dirty frames. Upgrade and restart any dashboard launched by 2.12.8 or older.
|
|
379
459
|
- Trackpad scrolling: confirm your terminal sends scroll events with
|
|
380
460
|
`rudder mouse-test parsed`. Set `RUDDER_WHEEL_SCROLL_ROWS=<n>` to change the
|
|
381
461
|
scroll step, or `RUDDER_MOUSE_DEBUG=1` to inspect routing.
|
package/dist/backends.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
2
|
import { spawn } from "node:child_process";
|
|
3
|
-
import {
|
|
3
|
+
import { CODEX_RUDDER_WORKER_CONFIG_ARGS, codexLaunchEnv, ensureRudderCodexBinary } from "./codex-binary.js";
|
|
4
4
|
import { loadAuthStore, loadConfig, saveRunRecord } from "./state.js";
|
|
5
5
|
import { normalizeEffortForBackend } from "./effort.js";
|
|
6
6
|
import { commandExists, formatMissingToolMessage, isMissingToolSpawnError, isRecord, lineSplitBuffer, MissingToolError, nowIso, parseJsonLine, runCommand, stripRudderPromptWrappers, textFromAssistantMessage, } from "./util.js";
|
|
@@ -19,6 +19,9 @@ export function getBackend(id) {
|
|
|
19
19
|
if (id === "codex") {
|
|
20
20
|
return codexBackend();
|
|
21
21
|
}
|
|
22
|
+
if (id === "opencode") {
|
|
23
|
+
return opencodeBackend();
|
|
24
|
+
}
|
|
22
25
|
return acpxBackend();
|
|
23
26
|
}
|
|
24
27
|
/**
|
|
@@ -168,7 +171,7 @@ function codexBackend() {
|
|
|
168
171
|
"--dangerously-bypass-approvals-and-sandbox",
|
|
169
172
|
"--enable",
|
|
170
173
|
"goals",
|
|
171
|
-
...
|
|
174
|
+
...CODEX_RUDDER_WORKER_CONFIG_ARGS,
|
|
172
175
|
effort ? "-c" : undefined,
|
|
173
176
|
effort ? `model_reasoning_effort="${effort}"` : undefined,
|
|
174
177
|
sessionId,
|
|
@@ -184,7 +187,7 @@ function codexBackend() {
|
|
|
184
187
|
"--dangerously-bypass-approvals-and-sandbox",
|
|
185
188
|
"--enable",
|
|
186
189
|
"goals",
|
|
187
|
-
...
|
|
190
|
+
...CODEX_RUDDER_WORKER_CONFIG_ARGS,
|
|
188
191
|
effort ? "-c" : undefined,
|
|
189
192
|
effort ? `model_reasoning_effort="${effort}"` : undefined,
|
|
190
193
|
`${request.contract}\n\n${prompt}`,
|
|
@@ -200,6 +203,47 @@ function codexBackend() {
|
|
|
200
203
|
},
|
|
201
204
|
};
|
|
202
205
|
}
|
|
206
|
+
/**
|
|
207
|
+
* opencode (https://opencode.ai). `opencode run --format json` streams JSONL parts
|
|
208
|
+
* and reports the session id on every one, so a follow-up turn resumes the same
|
|
209
|
+
* conversation with `--session`. Models are named `provider/model`; an empty model
|
|
210
|
+
* means "whatever opencode is configured with", which is a legitimate choice here.
|
|
211
|
+
*
|
|
212
|
+
* No effort flag exists, so `run.effort` is deliberately not translated.
|
|
213
|
+
*/
|
|
214
|
+
function opencodeBackend() {
|
|
215
|
+
return {
|
|
216
|
+
id: "opencode",
|
|
217
|
+
async verify() {
|
|
218
|
+
return commandExists("opencode")
|
|
219
|
+
? { ok: true, message: "opencode found" }
|
|
220
|
+
: { ok: false, message: formatMissingToolMessage("opencode") };
|
|
221
|
+
},
|
|
222
|
+
async run(request, emit) {
|
|
223
|
+
const prompt = stripRudderPromptWrappers(request.prompt);
|
|
224
|
+
const sessionId = request.run.session?.nativeSessionId;
|
|
225
|
+
const isFollowUp = (request.run.turns?.length ?? 0) > 1 && Boolean(sessionId);
|
|
226
|
+
const args = compact([
|
|
227
|
+
"run",
|
|
228
|
+
"--format",
|
|
229
|
+
"json",
|
|
230
|
+
request.run.model ? "-m" : undefined,
|
|
231
|
+
request.run.model || undefined,
|
|
232
|
+
isFollowUp ? "--session" : undefined,
|
|
233
|
+
isFollowUp ? sessionId : undefined,
|
|
234
|
+
`${request.contract}\n\n${prompt}`,
|
|
235
|
+
]);
|
|
236
|
+
return await spawnAndStream({
|
|
237
|
+
command: "opencode",
|
|
238
|
+
args,
|
|
239
|
+
cwd: request.run.worktree.path,
|
|
240
|
+
env: process.env,
|
|
241
|
+
request,
|
|
242
|
+
emit,
|
|
243
|
+
});
|
|
244
|
+
},
|
|
245
|
+
};
|
|
246
|
+
}
|
|
203
247
|
function compact(values) {
|
|
204
248
|
return values.filter((value) => Boolean(value));
|
|
205
249
|
}
|
|
@@ -449,9 +493,11 @@ function sessionIdFromBackendData(data) {
|
|
|
449
493
|
// `codex exec --json` announces the resumable conversation with a
|
|
450
494
|
// thread.started event. Persist it so a web steer resumes model context rather
|
|
451
495
|
// than merely re-running in the same workspace.
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
496
|
+
if (data.type === "thread.started" && typeof data.thread_id === "string") {
|
|
497
|
+
return data.thread_id;
|
|
498
|
+
}
|
|
499
|
+
// `opencode run --format json` stamps every part with its session id.
|
|
500
|
+
return typeof data.sessionID === "string" ? data.sessionID : undefined;
|
|
455
501
|
}
|
|
456
502
|
function saveBackendRun(run) {
|
|
457
503
|
const expectedAttemptId = run.process?.attemptId;
|
|
@@ -555,6 +601,10 @@ function textFromBackendData(data, sawStreamingText) {
|
|
|
555
601
|
if (isRecord(record.error) && typeof record.error.message === "string") {
|
|
556
602
|
return record.error.message;
|
|
557
603
|
}
|
|
604
|
+
// opencode: text parts carry the assistant prose; step_start/step_finish do not.
|
|
605
|
+
if (record.type === "text" && isRecord(record.part) && typeof record.part.text === "string") {
|
|
606
|
+
return record.part.text;
|
|
607
|
+
}
|
|
558
608
|
if (record.type === "assistant") {
|
|
559
609
|
if (sawStreamingText) {
|
|
560
610
|
return "";
|
package/dist/backends.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backends.js","sourceRoot":"","sources":["../src/backends.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"backends.js","sourceRoot":"","sources":["../src/backends.ts"],"names":[],"mappings":"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"}
|