@viraatdas/rudder 3.3.1 → 3.4.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 +48 -10
- package/dist/auth.js +5 -0
- package/dist/auth.js.map +1 -1
- package/dist/cloud.d.ts +3 -0
- package/dist/cloud.js +93 -17
- package/dist/cloud.js.map +1 -1
- package/dist/feedback.js +1 -1
- package/dist/feedback.js.map +1 -1
- package/dist/improve/index.js +2 -2
- package/dist/improve/index.js.map +1 -1
- package/dist/improve/propose.js +1 -1
- package/dist/improve/propose.js.map +1 -1
- package/dist/improve/state.js +1 -1
- package/dist/improve/state.js.map +1 -1
- package/dist/main.js +1 -1
- package/dist/main.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/onboarding.d.ts +11 -0
- package/dist/onboarding.js +111 -0
- package/dist/onboarding.js.map +1 -0
- package/dist/qr.d.ts +13 -0
- package/dist/qr.js +377 -0
- package/dist/qr.js.map +1 -0
- package/dist/usage.js +1 -1
- package/dist/usage.js.map +1 -1
- package/dist/version-check.d.ts +2 -0
- package/dist/version-check.js +34 -5
- package/dist/version-check.js.map +1 -1
- package/package.json +3 -3
- package/scripts/postinstall.mjs +1 -1
package/README.md
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
# rudder
|
|
2
2
|
|
|
3
3
|
<p>
|
|
4
|
-
<a href="https://rudder.
|
|
5
|
-
<img src="https://rudder.
|
|
4
|
+
<a href="https://rudder.exla.ai">
|
|
5
|
+
<img src="https://rudder.exla.ai/favicon.svg" width="36" height="36" alt="Rudder logo" />
|
|
6
6
|
</a>
|
|
7
7
|
</p>
|
|
8
8
|
|
|
9
|
-
[](https://github.com/exla-ai/rudder/actions/workflows/tui.yml)
|
|
10
|
+
[](https://www.npmjs.com/package/@exla/rudder)
|
|
11
|
+
[](https://nodejs.org/)
|
|
12
|
+
[](https://rudder.exla.ai)
|
|
13
13
|
|
|
14
14
|
Rudder is a TUI for managing coding agents. Run Claude Code, Codex and opencode
|
|
15
15
|
side by side in one native dashboard: every task you type gets its own isolated
|
|
@@ -26,26 +26,30 @@ key. `/main` puts an agent in the main checkout when you want one there, and
|
|
|
26
26
|
## Install
|
|
27
27
|
|
|
28
28
|
```bash
|
|
29
|
-
npm install -g @
|
|
29
|
+
npm install -g @exla/rudder@latest
|
|
30
30
|
rudder
|
|
31
31
|
```
|
|
32
32
|
|
|
33
33
|
After the global install, every user-facing `rudder` launch checks npm and
|
|
34
34
|
auto-updates itself before running when a newer version is available. Set
|
|
35
35
|
`RUDDER_DISABLE_AUTO_UPDATE=1` to opt out. Run without a global install using
|
|
36
|
-
`npx @
|
|
36
|
+
`npx @exla/rudder@latest`.
|
|
37
|
+
|
|
38
|
+
Rudder used to be published as `@viraatdas/rudder`. Existing installs move
|
|
39
|
+
themselves to `@exla/rudder` on their next update; nothing to do by hand.
|
|
37
40
|
|
|
38
41
|
## Requirements
|
|
39
42
|
|
|
40
43
|
- Node.js 22 or newer
|
|
41
44
|
- Git
|
|
42
45
|
- Claude Code and/or Codex installed and logged in
|
|
46
|
+
- macOS (Apple Silicon or Intel) or Linux x64; the dashboard binary for each
|
|
47
|
+
ships in the package
|
|
43
48
|
|
|
44
49
|
Rudder runs agents in isolated [jj (Jujutsu)](https://jj-vcs.github.io)
|
|
45
50
|
workspaces; your repo stays plain git. You do not need to install jj: if it is
|
|
46
51
|
not already on your PATH, Rudder sets up its own copy in `~/.rudder/bin` during
|
|
47
52
|
install (or on first run). A jj you installed yourself is always used instead.
|
|
48
|
-
- macOS, Linux, or another Unix-like terminal
|
|
49
53
|
|
|
50
54
|
Check your setup at any time:
|
|
51
55
|
|
|
@@ -145,6 +149,16 @@ between files, `r` refreshes, `Esc` or `⌥d` closes it, and `⌥h` solos it lik
|
|
|
145
149
|
any other pane. On a narrow terminal it takes the worker's place instead of
|
|
146
150
|
squeezing both. `v` opens the same panel.
|
|
147
151
|
|
|
152
|
+
### God's view
|
|
153
|
+
|
|
154
|
+
Press `⌥g` (also `^W g`) to see every running agent at once: the screen turns
|
|
155
|
+
into a grid with one tile per agent showing the bottom of its terminal, titled
|
|
156
|
+
with its id, task, model and whether it is working, needs you, or is done.
|
|
157
|
+
Arrows or `h`/`j`/`k`/`l` move the highlight, `Enter` or a click opens that
|
|
158
|
+
agent in the worker pane, and `⌥g` or `Esc` closes the grid. Agents are never
|
|
159
|
+
resized for it, so their scrollback is untouched. With more agents than fit,
|
|
160
|
+
the grid pages.
|
|
161
|
+
|
|
148
162
|
### Web board
|
|
149
163
|
|
|
150
164
|
Press `o` in the agents pane (or type `/web`) to open the live project board in
|
|
@@ -168,6 +182,9 @@ through Review before it can merge.
|
|
|
168
182
|
| `Option-1` / `Option-2` / `Option-3` | Focus the agents, worker, or task pane |
|
|
169
183
|
| `Option-[` / `Option-]` | Step to the previous / next agent, staying in the pane you are in |
|
|
170
184
|
| `Option-h` | Full screen: the focused pane takes the whole terminal; press again to bring the panes back |
|
|
185
|
+
| `Option-g` | God's view: every agent tiled on one screen; press again to close |
|
|
186
|
+
| `Option-d` | Diff panel for the selected agent |
|
|
187
|
+
| `Ctrl-V` | Paste a screenshot or copied files into an agent (works in `rudder cloud` too) |
|
|
171
188
|
| `Option-v` / `Option-b` | Previous question in the selected worker / back to its latest message (Claude Code and Codex) |
|
|
172
189
|
| `Cmd-C` | Copy the active Rudder selection |
|
|
173
190
|
| `Ctrl-C` | Quit (asks to confirm if agents are still running) |
|
|
@@ -483,6 +500,7 @@ rudder login # sign in with Google (opens straight to the accoun
|
|
|
483
500
|
rudder cloud # open this repo on your home machine and attach to it
|
|
484
501
|
rudder cloud home # home machine status: projects, agents, previews
|
|
485
502
|
rudder cloud move # move this repo's running agents to the home machine
|
|
503
|
+
rudder cloud sync [repo] # bring this checkout and the cloud's clone level (/sync)
|
|
486
504
|
rudder cloud app # the phone app link
|
|
487
505
|
rudder cloud list # list cloud workers
|
|
488
506
|
rudder cloud logs <id> # worker status
|
|
@@ -505,6 +523,26 @@ agent state live on its disk, so agents resume where they were.
|
|
|
505
523
|
`rudder cloud --snapshot` keeps the old behavior: upload this folder to a
|
|
506
524
|
machine of its own.
|
|
507
525
|
|
|
526
|
+
**Same repo on the laptop and the cloud (`/sync`).** `/sync` in the dashboard
|
|
527
|
+
(or `rudder cloud sync`) brings this checkout and the cloud machine's clone of
|
|
528
|
+
it up to the newest default branch, and carries the work GitHub does not have
|
|
529
|
+
yet, uncommitted edits included, from one side to the other directly. Nothing is
|
|
530
|
+
pushed to your repo, and gitignored files such as `.env` never travel. The side
|
|
531
|
+
receiving work only takes it when nothing of its own would be lost; when both
|
|
532
|
+
sides changed, both versions are kept and the other one waits as the jj bookmark
|
|
533
|
+
`rudder-sync/cloud` (or `rudder-sync/laptop`). `rudder cloud sync <repo>` with a
|
|
534
|
+
name clones a repo that so far exists only on the cloud into `~/code/<repo>`.
|
|
535
|
+
`/sync all` covers every repo, and `/sync move` hands this laptop's running
|
|
536
|
+
agents to the cloud.
|
|
537
|
+
|
|
538
|
+
**Screenshots and files.** In `rudder cloud`, `Ctrl-V` with a screenshot or
|
|
539
|
+
files copied in Finder, or dragging a file into the terminal, uploads it to the
|
|
540
|
+
cloud machine and gives the agent its path there: Claude Code attaches an image
|
|
541
|
+
as `[Image #1]` exactly as it does locally. Up to 25 MB per file.
|
|
542
|
+
|
|
543
|
+
**Updates.** After a release the cloud machine updates itself once its agents
|
|
544
|
+
have been idle for five minutes, so you never restart it by hand.
|
|
545
|
+
|
|
508
546
|
**Phone.** Open `rudder cloud app` on your phone and sign in with the same
|
|
509
547
|
Google account. You see every project and agent, read conversations as they
|
|
510
548
|
happen, text any agent, start tasks (`/model` picks Claude or Codex for new ones),
|
|
@@ -678,7 +716,7 @@ usage event, and a GitHub issue when `gh` is installed and authenticated. Add
|
|
|
678
716
|
## Building from source
|
|
679
717
|
|
|
680
718
|
```bash
|
|
681
|
-
git clone https://github.com/
|
|
719
|
+
git clone https://github.com/exla-ai/rudder.git
|
|
682
720
|
cd rudder
|
|
683
721
|
./setup.sh
|
|
684
722
|
```
|
package/dist/auth.js
CHANGED
|
@@ -109,6 +109,11 @@ export async function runDoctor(options) {
|
|
|
109
109
|
if (!detection.acpxCommand) {
|
|
110
110
|
console.log(" fix: run `npm install -g acpx@latest` or `rudder onboard`");
|
|
111
111
|
}
|
|
112
|
+
// On a terminal: offer Claude Code / Codex when missing, and list the repos
|
|
113
|
+
// already on the cloud machine when this computer is signed in.
|
|
114
|
+
const { runLaptopOnboarding } = await import("./onboarding.js");
|
|
115
|
+
const { cloudRepoSummaries } = await import("./cloud.js");
|
|
116
|
+
await runLaptopOnboarding({ json: options?.json, cloudRepos: cloudRepoSummaries });
|
|
112
117
|
if (!detection.jjCommand) {
|
|
113
118
|
const reason = managedJjInstallError();
|
|
114
119
|
console.log(` fix: ${reason ? `Rudder could not set jj up (${reason}). ` : ""}${formatMissingToolMessage("jj")}`);
|
package/dist/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/cloud.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type MigrationCandidate, type MigrationPlan } from "./migration.js";
|
|
2
2
|
import { type MoveCandidate } from "./move-home.js";
|
|
3
|
+
import { type CloudRepoSummary } from "./onboarding.js";
|
|
3
4
|
import type { JsonValue } from "./types.js";
|
|
4
5
|
type CloudCommandOptions = {
|
|
5
6
|
json?: boolean;
|
|
@@ -22,6 +23,8 @@ type CloudClient = {
|
|
|
22
23
|
download(pathname: string): Promise<Buffer>;
|
|
23
24
|
};
|
|
24
25
|
export declare function runCloudCommand(command: string, args: string[], options?: CloudCommandOptions): Promise<void>;
|
|
26
|
+
/** The repos open on this account's cloud machine, for onboarding; null when signed out or unreachable. */
|
|
27
|
+
export declare function cloudRepoSummaries(): Promise<CloudRepoSummary[] | null>;
|
|
25
28
|
/**
|
|
26
29
|
* Scope a fleet migration plan down to one run: only `runId` moves, every
|
|
27
30
|
* other candidate stays local. Fleet migration classifies EVERY non-terminal
|
package/dist/cloud.js
CHANGED
|
@@ -10,6 +10,8 @@ import { currentBranch, currentCommit, findRepoRoot } from "./git.js";
|
|
|
10
10
|
import { applyDefaultDecisions, buildFreshHandoffPrompt, cloudWorkspaceAbsolutePath, findMigrationCandidates, formatCandidateReason, migrationSummary, summaryAsJson, } from "./migration.js";
|
|
11
11
|
import { buildMoveBundle, findMoveCandidates, markRunsMovedHome } from "./move-home.js";
|
|
12
12
|
import { cloudAuthPath } from "./state.js";
|
|
13
|
+
import { runLaptopOnboarding } from "./onboarding.js";
|
|
14
|
+
import { renderQrForTerminal } from "./qr.js";
|
|
13
15
|
import { describeSync, exportWork, importWork, syncCheckout } from "./checkout-sync.js";
|
|
14
16
|
import { ensureDir, commandExists, expandHome, isTty, newRunId, nowIso, pathExists, promptConfirm, promptText, promptSelect, promptSecret, readJson, runCommand, shortenHome, shellQuote, writeJson, } from "./util.js";
|
|
15
17
|
const DEFAULT_LOGIN_INTERVAL_MS = 2000;
|
|
@@ -258,6 +260,10 @@ async function login(options, args = []) {
|
|
|
258
260
|
// account picker instead of a page of buttons. `--github` picks GitHub.
|
|
259
261
|
const provider = args.includes("--github") ? "github" : "google";
|
|
260
262
|
const browserLogin = await tryBrowserLogin(client, options, provider).catch((error) => {
|
|
263
|
+
// A no on the phone is an answer: never sign in some other way behind it.
|
|
264
|
+
if (error instanceof LoginDeniedError) {
|
|
265
|
+
throw error;
|
|
266
|
+
}
|
|
261
267
|
if (!options.json) {
|
|
262
268
|
console.warn(`Browser login unavailable: ${error instanceof Error ? error.message : String(error)}`);
|
|
263
269
|
console.warn("Trying local GitHub auth fallback...");
|
|
@@ -267,7 +273,7 @@ async function login(options, args = []) {
|
|
|
267
273
|
if (browserLogin?.token || browserLogin?.accessToken) {
|
|
268
274
|
const token = browserLogin.token ?? browserLogin.accessToken;
|
|
269
275
|
if (token) {
|
|
270
|
-
await saveCloudLogin(client, browserLogin, token, options, "browser");
|
|
276
|
+
await saveCloudLogin(client, browserLogin, token, options, browserLogin.via ?? "browser");
|
|
271
277
|
return;
|
|
272
278
|
}
|
|
273
279
|
}
|
|
@@ -303,24 +309,79 @@ async function tryBrowserLogin(client, options, provider = "google") {
|
|
|
303
309
|
const pollPath = response.pollUrl ?? "/api/cli/login/poll";
|
|
304
310
|
const intervalMs = Math.max(1000, (response.interval ?? DEFAULT_LOGIN_INTERVAL_MS / 1000) * 1000);
|
|
305
311
|
const timeoutMs = Math.max(intervalMs, (response.expiresIn ?? DEFAULT_LOGIN_TIMEOUT_MS / 1000) * 1000);
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
const
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
312
|
+
// A phone already signed in to Rudder can approve this computer: show the
|
|
313
|
+
// code and a QR of the approve page, and open the browser only on Enter.
|
|
314
|
+
// Without a terminal to press Enter in, the browser opens as before.
|
|
315
|
+
const interactive = !options.json && Boolean(process.stdin.isTTY && process.stdout.isTTY);
|
|
316
|
+
let browserOpened = false;
|
|
317
|
+
const openLoginBrowser = () => {
|
|
318
|
+
if (browserOpened) {
|
|
319
|
+
return;
|
|
320
|
+
}
|
|
321
|
+
browserOpened = true;
|
|
322
|
+
console.log(`Opening ${loginUrl}`);
|
|
323
|
+
if (!options.json) {
|
|
324
|
+
openBrowser(loginUrl);
|
|
325
|
+
}
|
|
326
|
+
console.log("Waiting for browser login to complete...");
|
|
327
|
+
};
|
|
328
|
+
let enterListener = null;
|
|
329
|
+
if (response.userCode && response.approveUrl && !options.json) {
|
|
330
|
+
console.log("");
|
|
331
|
+
console.log("Sign this computer in from your phone: open Rudder, tap \"Sign in a computer\" and enter");
|
|
332
|
+
console.log("");
|
|
333
|
+
console.log(` ${response.userCode}`);
|
|
334
|
+
console.log("");
|
|
335
|
+
if (process.stdout.isTTY) {
|
|
336
|
+
try {
|
|
337
|
+
console.log("or scan this with the phone's camera:");
|
|
338
|
+
console.log(renderQrForTerminal(response.approveUrl, { indent: " " }));
|
|
339
|
+
}
|
|
340
|
+
catch {
|
|
341
|
+
// A url too long for the encoder: the code above still works.
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
console.log(`(${response.approveUrl})`);
|
|
345
|
+
console.log("");
|
|
346
|
+
if (interactive) {
|
|
347
|
+
console.log("Press Enter to sign in in the browser instead.");
|
|
348
|
+
const readline = await import("node:readline");
|
|
349
|
+
enterListener = readline.createInterface({ input: process.stdin });
|
|
350
|
+
enterListener.on("line", openLoginBrowser);
|
|
351
|
+
}
|
|
352
|
+
else {
|
|
353
|
+
openLoginBrowser();
|
|
318
354
|
}
|
|
319
|
-
|
|
320
|
-
|
|
355
|
+
}
|
|
356
|
+
else {
|
|
357
|
+
openLoginBrowser();
|
|
358
|
+
}
|
|
359
|
+
try {
|
|
360
|
+
const startedAt = Date.now();
|
|
361
|
+
while (Date.now() - startedAt < timeoutMs) {
|
|
362
|
+
await sleep(intervalMs);
|
|
363
|
+
const poll = await pollLogin(client, pollPath, deviceCode);
|
|
364
|
+
const token = poll.token ?? poll.accessToken;
|
|
365
|
+
if (token) {
|
|
366
|
+
return { ...poll, via: poll.via === "phone" ? "your phone" : "browser" };
|
|
367
|
+
}
|
|
368
|
+
if (poll.denied) {
|
|
369
|
+
throw new LoginDeniedError();
|
|
370
|
+
}
|
|
371
|
+
if (poll.pending === false) {
|
|
372
|
+
throw new Error("Cloud login was not approved.");
|
|
373
|
+
}
|
|
321
374
|
}
|
|
375
|
+
throw new Error("Timed out waiting for cloud login.");
|
|
376
|
+
}
|
|
377
|
+
finally {
|
|
378
|
+
enterListener?.close();
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
class LoginDeniedError extends Error {
|
|
382
|
+
constructor() {
|
|
383
|
+
super("The sign-in was denied on your phone. Run `rudder login` again to retry.");
|
|
322
384
|
}
|
|
323
|
-
throw new Error("Timed out waiting for cloud login.");
|
|
324
385
|
}
|
|
325
386
|
async function tryGithubCliLogin(client) {
|
|
326
387
|
if (process.env.RUDDER_SKIP_GH_CLI === "1") {
|
|
@@ -420,6 +481,21 @@ async function saveCloudLogin(client, login, token, options, source) {
|
|
|
420
481
|
}
|
|
421
482
|
else {
|
|
422
483
|
console.log(`Logged in to ${client.baseUrl}${login.email ? ` as ${login.email}` : ""} via ${source}.`);
|
|
484
|
+
// First run on this computer: agent CLIs, then what is in the cloud.
|
|
485
|
+
await runLaptopOnboarding({ json: options.json, cloudRepos: cloudRepoSummaries });
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
/** The repos open on this account's cloud machine, for onboarding; null when signed out or unreachable. */
|
|
489
|
+
export async function cloudRepoSummaries() {
|
|
490
|
+
try {
|
|
491
|
+
const client = await cloudClient({ requireToken: true });
|
|
492
|
+
const view = await client.request("/api/rudder/home", { method: "GET" });
|
|
493
|
+
return (view.projects ?? [])
|
|
494
|
+
.filter((project) => typeof project.repo === "string" && project.repo)
|
|
495
|
+
.map((project) => ({ repo: String(project.repo), agents: Array.isArray(project.agents) ? project.agents.length : 0 }));
|
|
496
|
+
}
|
|
497
|
+
catch {
|
|
498
|
+
return null;
|
|
423
499
|
}
|
|
424
500
|
}
|
|
425
501
|
async function launch(args, options, mode = "name", explicitRuntime) {
|
|
@@ -750,7 +826,7 @@ async function quickstart(options) {
|
|
|
750
826
|
"Rudder Cloud — copy/paste quickstart",
|
|
751
827
|
"",
|
|
752
828
|
"1. Install Rudder:",
|
|
753
|
-
" npm install -g @
|
|
829
|
+
" npm install -g @exla/rudder@latest",
|
|
754
830
|
"",
|
|
755
831
|
"2. Log in to the cloud control plane:",
|
|
756
832
|
" rudder login",
|