@h-rig/cli 0.0.6-alpha.93 → 0.0.6-alpha.95

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.
Files changed (108) hide show
  1. package/README.md +6 -27
  2. package/bin/rig.js +16 -0
  3. package/package.json +14 -40
  4. package/dist/bin/build-rig-binaries.d.ts +0 -2
  5. package/dist/bin/build-rig-binaries.js +0 -119
  6. package/dist/bin/rig.d.ts +0 -72
  7. package/dist/bin/rig.js +0 -17845
  8. package/dist/config/rig-default-config.yml +0 -5
  9. package/dist/src/app/drone-ui.d.ts +0 -34
  10. package/dist/src/app/drone-ui.js +0 -278
  11. package/dist/src/commands/_async-ui.d.ts +0 -10
  12. package/dist/src/commands/_async-ui.js +0 -121
  13. package/dist/src/commands/_cli-format.d.ts +0 -56
  14. package/dist/src/commands/_cli-format.js +0 -319
  15. package/dist/src/commands/_connection-state.d.ts +0 -54
  16. package/dist/src/commands/_connection-state.js +0 -187
  17. package/dist/src/commands/_doctor-checks.d.ts +0 -46
  18. package/dist/src/commands/_doctor-checks.js +0 -352
  19. package/dist/src/commands/_help-catalog.d.ts +0 -51
  20. package/dist/src/commands/_help-catalog.js +0 -502
  21. package/dist/src/commands/_inprocess-services.d.ts +0 -33
  22. package/dist/src/commands/_inprocess-services.js +0 -102
  23. package/dist/src/commands/_json-output.d.ts +0 -11
  24. package/dist/src/commands/_json-output.js +0 -60
  25. package/dist/src/commands/_lazy-reconcile.d.ts +0 -34
  26. package/dist/src/commands/_lazy-reconcile.js +0 -102
  27. package/dist/src/commands/_parsers.d.ts +0 -15
  28. package/dist/src/commands/_parsers.js +0 -114
  29. package/dist/src/commands/_paths.d.ts +0 -11
  30. package/dist/src/commands/_paths.js +0 -50
  31. package/dist/src/commands/_pi-frontend.d.ts +0 -35
  32. package/dist/src/commands/_pi-frontend.js +0 -64
  33. package/dist/src/commands/_pi-install.d.ts +0 -42
  34. package/dist/src/commands/_pi-install.js +0 -167
  35. package/dist/src/commands/_policy.d.ts +0 -8
  36. package/dist/src/commands/_policy.js +0 -127
  37. package/dist/src/commands/_probes.d.ts +0 -1
  38. package/dist/src/commands/_probes.js +0 -13
  39. package/dist/src/commands/_run-bridge.d.ts +0 -114
  40. package/dist/src/commands/_run-bridge.js +0 -387
  41. package/dist/src/commands/_run-diagnostics.d.ts +0 -9
  42. package/dist/src/commands/_run-diagnostics.js +0 -51
  43. package/dist/src/commands/_run-driver-helpers.d.ts +0 -26
  44. package/dist/src/commands/_run-driver-helpers.js +0 -138
  45. package/dist/src/commands/_run-projection.d.ts +0 -50
  46. package/dist/src/commands/_run-projection.js +0 -349
  47. package/dist/src/commands/_run-subcommands.d.ts +0 -3
  48. package/dist/src/commands/_run-subcommands.js +0 -31
  49. package/dist/src/commands/_spinner.d.ts +0 -25
  50. package/dist/src/commands/_spinner.js +0 -65
  51. package/dist/src/commands/agent.d.ts +0 -3
  52. package/dist/src/commands/agent.js +0 -8837
  53. package/dist/src/commands/dist.d.ts +0 -28
  54. package/dist/src/commands/dist.js +0 -417
  55. package/dist/src/commands/doctor.d.ts +0 -3
  56. package/dist/src/commands/doctor.js +0 -480
  57. package/dist/src/commands/github.d.ts +0 -3
  58. package/dist/src/commands/github.js +0 -342
  59. package/dist/src/commands/inbox.d.ts +0 -28
  60. package/dist/src/commands/inbox.js +0 -579
  61. package/dist/src/commands/init.d.ts +0 -64
  62. package/dist/src/commands/init.js +0 -1541
  63. package/dist/src/commands/inspect.d.ts +0 -20
  64. package/dist/src/commands/inspect.js +0 -764
  65. package/dist/src/commands/pi.d.ts +0 -3
  66. package/dist/src/commands/pi.js +0 -177
  67. package/dist/src/commands/plugin.d.ts +0 -16
  68. package/dist/src/commands/plugin.js +0 -714
  69. package/dist/src/commands/profile-and-review.d.ts +0 -4
  70. package/dist/src/commands/profile-and-review.js +0 -223
  71. package/dist/src/commands/queue.d.ts +0 -3
  72. package/dist/src/commands/queue.js +0 -197
  73. package/dist/src/commands/remote.d.ts +0 -3
  74. package/dist/src/commands/remote.js +0 -1337
  75. package/dist/src/commands/repo-git-harness.d.ts +0 -5
  76. package/dist/src/commands/repo-git-harness.js +0 -271
  77. package/dist/src/commands/run.d.ts +0 -21
  78. package/dist/src/commands/run.js +0 -17837
  79. package/dist/src/commands/server.d.ts +0 -3
  80. package/dist/src/commands/server.js +0 -249
  81. package/dist/src/commands/setup.d.ts +0 -16
  82. package/dist/src/commands/setup.js +0 -644
  83. package/dist/src/commands/stats.d.ts +0 -15
  84. package/dist/src/commands/stats.js +0 -979
  85. package/dist/src/commands/task-run-driver.d.ts +0 -94
  86. package/dist/src/commands/task-run-driver.js +0 -203
  87. package/dist/src/commands/task.d.ts +0 -35
  88. package/dist/src/commands/task.js +0 -818
  89. package/dist/src/commands/test.d.ts +0 -3
  90. package/dist/src/commands/test.js +0 -46
  91. package/dist/src/commands/triage.d.ts +0 -11
  92. package/dist/src/commands/triage.js +0 -227
  93. package/dist/src/commands/workspace.d.ts +0 -3
  94. package/dist/src/commands/workspace.js +0 -130
  95. package/dist/src/commands.d.ts +0 -13
  96. package/dist/src/commands.js +0 -17969
  97. package/dist/src/index.d.ts +0 -4
  98. package/dist/src/index.js +0 -17981
  99. package/dist/src/launcher.d.ts +0 -61
  100. package/dist/src/launcher.js +0 -199
  101. package/dist/src/operator-cli.d.ts +0 -2
  102. package/dist/src/operator-cli.js +0 -17837
  103. package/dist/src/operator-entry.d.ts +0 -1
  104. package/dist/src/operator-entry.js +0 -3
  105. package/dist/src/runner.d.ts +0 -47
  106. package/dist/src/runner.js +0 -267
  107. package/dist/src/withMutedConsole.d.ts +0 -2
  108. package/dist/src/withMutedConsole.js +0 -42
@@ -1,3 +0,0 @@
1
- import { type RunnerContext } from "../runner";
2
- import type { CommandOutcome } from "@rig/runtime";
3
- export declare function executeTest(context: RunnerContext, args: string[]): Promise<CommandOutcome>;
@@ -1,46 +0,0 @@
1
- // @bun
2
- // packages/cli/src/runner.ts
3
- import { EventBus } from "@rig/runtime/control-plane/runtime/events";
4
- import { CliError as RuntimeCliError } from "@rig/runtime/control-plane/errors";
5
- import { evaluate, loadPolicy, resolveAction } from "@rig/runtime/control-plane/runtime/guard";
6
- import { buildBinary } from "@rig/runtime/control-plane/runtime/isolation";
7
-
8
- class CliError extends RuntimeCliError {
9
- hint;
10
- constructor(message, exitCode = 1, options = {}) {
11
- super(message, exitCode);
12
- if (options.hint?.trim()) {
13
- this.hint = options.hint.trim();
14
- }
15
- }
16
- }
17
- function requireNoExtraArgs(args, usage) {
18
- if (args.length > 0) {
19
- throw new CliError(`Unexpected arguments: ${args.join(" ")}
20
- Usage: ${usage}`);
21
- }
22
- }
23
-
24
- // packages/cli/src/commands/test.ts
25
- async function executeTest(context, args) {
26
- const [command = "unit", ...rest] = args;
27
- switch (command) {
28
- case "unit":
29
- requireNoExtraArgs(rest, "rig test unit");
30
- await context.runCommand(["bun", "test", "tests/harness/", "--ignore", "tests/harness/e2e/**"]);
31
- return { ok: true, group: "test", command };
32
- case "e2e":
33
- requireNoExtraArgs(rest, "rig test e2e");
34
- await context.runCommand(["bun", "test", "tests/harness/e2e/"]);
35
- return { ok: true, group: "test", command };
36
- case "all":
37
- requireNoExtraArgs(rest, "rig test all");
38
- await context.runCommand(["bun", "test", "tests/harness/"]);
39
- return { ok: true, group: "test", command };
40
- default:
41
- throw new CliError(`Unknown test command: ${command}`, 1, { hint: "Run `rig test --help` \u2014 commands are unit|e2e|all." });
42
- }
43
- }
44
- export {
45
- executeTest
46
- };
@@ -1,11 +0,0 @@
1
- import { type IssueAnalysisTriageRunResult, type RunIssueAnalysisTriageOptions } from "@rig/runtime/control-plane/github";
2
- import type { CommandOutcome } from "@rig/runtime/control-plane/runtime/types";
3
- import { type RunnerContext } from "../runner";
4
- type TriageCommandDeps = {
5
- runTriage?: (options: RunIssueAnalysisTriageOptions) => Promise<IssueAnalysisTriageRunResult>;
6
- spinner?: <T>(label: string, work: (update: (label: string) => void) => Promise<T>, options: {
7
- outputMode: RunnerContext["outputMode"];
8
- }) => Promise<T>;
9
- };
10
- export declare function executeTriage(context: RunnerContext, args: string[], deps?: TriageCommandDeps): Promise<CommandOutcome>;
11
- export {};
@@ -1,227 +0,0 @@
1
- // @bun
2
- // packages/cli/src/commands/triage.ts
3
- import { runIssueAnalysisTriage } from "@rig/runtime/control-plane/github";
4
-
5
- // packages/cli/src/runner.ts
6
- import { EventBus } from "@rig/runtime/control-plane/runtime/events";
7
- import { CliError as RuntimeCliError } from "@rig/runtime/control-plane/errors";
8
- import { evaluate, loadPolicy, resolveAction } from "@rig/runtime/control-plane/runtime/guard";
9
- import { buildBinary } from "@rig/runtime/control-plane/runtime/isolation";
10
-
11
- class CliError extends RuntimeCliError {
12
- hint;
13
- constructor(message, exitCode = 1, options = {}) {
14
- super(message, exitCode);
15
- if (options.hint?.trim()) {
16
- this.hint = options.hint.trim();
17
- }
18
- }
19
- }
20
- function takeOption(args, option) {
21
- const rest = [];
22
- let value;
23
- for (let index = 0;index < args.length; index += 1) {
24
- const current = args[index];
25
- if (current === option) {
26
- const next = args[index + 1];
27
- if (!next || next.startsWith("-")) {
28
- throw new CliError(`Missing value for ${option}`, 1, { hint: `Provide a value after ${option}, e.g. \`${option} <value>\`.` });
29
- }
30
- value = next;
31
- index += 1;
32
- continue;
33
- }
34
- if (current !== undefined) {
35
- rest.push(current);
36
- }
37
- }
38
- return { value, rest };
39
- }
40
- function requireNoExtraArgs(args, usage) {
41
- if (args.length > 0) {
42
- throw new CliError(`Unexpected arguments: ${args.join(" ")}
43
- Usage: ${usage}`);
44
- }
45
- }
46
-
47
- // packages/cli/src/commands/_async-ui.ts
48
- import pc from "picocolors";
49
-
50
- // packages/cli/src/commands/_spinner.ts
51
- var SPINNER_FRAMES = ["\u280B", "\u2819", "\u2839", "\u2838", "\u283C", "\u2834", "\u2826", "\u2827", "\u2807", "\u280F"];
52
- function createTtySpinner(input) {
53
- const output = input.output ?? process.stdout;
54
- const isTty = output.isTTY === true;
55
- const frames = input.frames && input.frames.length > 0 ? input.frames : SPINNER_FRAMES;
56
- let label = input.label;
57
- let frame = 0;
58
- let paused = false;
59
- let stopped = false;
60
- let lastPrintedLabel = "";
61
- const render = () => {
62
- if (stopped || paused)
63
- return;
64
- if (!isTty) {
65
- if (label !== lastPrintedLabel) {
66
- output.write(`${label}
67
- `);
68
- lastPrintedLabel = label;
69
- }
70
- return;
71
- }
72
- frame = (frame + 1) % frames.length;
73
- const glyph = frames[frame] ?? frames[0] ?? "";
74
- output.write(`\r\x1B[2K${input.styleFrame ? input.styleFrame(glyph) : glyph} ${label}`);
75
- };
76
- const clearLine = () => {
77
- if (isTty)
78
- output.write("\r\x1B[2K");
79
- };
80
- render();
81
- const timer = isTty ? setInterval(render, input.intervalMs ?? 16) : null;
82
- return {
83
- setLabel(next) {
84
- label = next;
85
- render();
86
- },
87
- pause() {
88
- paused = true;
89
- clearLine();
90
- },
91
- resume() {
92
- if (stopped)
93
- return;
94
- paused = false;
95
- render();
96
- },
97
- stop(finalLine) {
98
- if (stopped)
99
- return;
100
- stopped = true;
101
- if (timer)
102
- clearInterval(timer);
103
- clearLine();
104
- if (finalLine)
105
- output.write(`${finalLine}
106
- `);
107
- }
108
- };
109
- }
110
-
111
- // packages/cli/src/commands/_async-ui.ts
112
- var FRAMES = ["\u25D0", "\u25D3", "\u25D1", "\u25D2"];
113
- var DONE_SYMBOL = pc.green("\u25C7");
114
- var FAIL_SYMBOL = pc.red("\u25A0");
115
- var activeUpdate = null;
116
- async function withSpinner(label, work, options = {}) {
117
- if (options.outputMode === "json") {
118
- return work(() => {
119
- return;
120
- });
121
- }
122
- if (activeUpdate) {
123
- activeUpdate(label);
124
- return work(activeUpdate);
125
- }
126
- const output = options.output ?? process.stderr;
127
- const isTty = output.isTTY === true;
128
- let lastLabel = label;
129
- if (!isTty) {
130
- output.write(`${label}
131
- `);
132
- const update2 = (next) => {
133
- lastLabel = next;
134
- };
135
- activeUpdate = update2;
136
- try {
137
- return await work(update2);
138
- } finally {
139
- activeUpdate = null;
140
- }
141
- }
142
- const spinner = createTtySpinner({
143
- label,
144
- output,
145
- frames: FRAMES,
146
- styleFrame: (frame) => pc.cyan(frame)
147
- });
148
- const update = (next) => {
149
- lastLabel = next;
150
- spinner.setLabel(next);
151
- };
152
- activeUpdate = update;
153
- try {
154
- const result = await work(update);
155
- spinner.stop(options.doneLabel ? `${DONE_SYMBOL} ${options.doneLabel}` : undefined);
156
- return result;
157
- } catch (error) {
158
- spinner.stop(`${FAIL_SYMBOL} ${lastLabel}`);
159
- throw error;
160
- } finally {
161
- activeUpdate = null;
162
- }
163
- }
164
-
165
- // packages/cli/src/commands/triage.ts
166
- function printTriageResult(context, result) {
167
- if (context.outputMode === "json") {
168
- console.log(JSON.stringify(result, null, 2));
169
- return;
170
- }
171
- if (!result.enabled) {
172
- const suffix = result.skippedReason === "no-config" ? "no rig.config task source was found" : "config.issueAnalysis is not enabled for continuous Pi analysis";
173
- console.log(`Rig triage skipped: ${suffix}.`);
174
- return;
175
- }
176
- console.log([
177
- `Rig triage analyzed ${result.analyzedIssues} issue${result.analyzedIssues === 1 ? "" : "s"}.`,
178
- `metadata patches: ${result.metadataPatches}`,
179
- `labels added: ${result.labelsAdded}`,
180
- `labels removed: ${result.labelsRemoved}`,
181
- `generated issues: ${result.generatedIssues}`,
182
- `snapshot refreshes: ${result.writeBackRefreshes}`
183
- ].join(`
184
- `));
185
- }
186
- async function executeTriage(context, args, deps = {}) {
187
- if (args[0] === "--help" || args[0] === "-h" || args[0] === "help") {
188
- console.log(`Usage: rig triage [--reason <text>]
189
-
190
- Runs the configured issueAnalysis pass once. Schedule this command externally for continuous triage.`);
191
- return { ok: true, group: "triage", command: "help" };
192
- }
193
- const parsedReason = takeOption(args, "--reason");
194
- requireNoExtraArgs(parsedReason.rest, "rig triage [--reason <text>]");
195
- if (context.dryRun) {
196
- const result2 = {
197
- ok: true,
198
- enabled: false,
199
- reason: parsedReason.value?.trim() || "triage",
200
- sourceId: null,
201
- sourceKind: null,
202
- analyzedIssues: 0,
203
- metadataPatches: 0,
204
- labelsAdded: 0,
205
- labelsRemoved: 0,
206
- generatedIssues: 0,
207
- writeBackRefreshes: 0,
208
- refreshedIssueCount: null,
209
- skippedReason: "disabled",
210
- dryRun: true
211
- };
212
- if (context.outputMode === "json")
213
- console.log(JSON.stringify(result2, null, 2));
214
- else
215
- console.log("[dry-run] rig triage would run the configured issueAnalysis pass once.");
216
- return { ok: true, group: "triage", command: "run", details: result2 };
217
- }
218
- const result = await (deps.spinner ?? withSpinner)("Running Rig issue-analysis triage\u2026", () => (deps.runTriage ?? runIssueAnalysisTriage)({
219
- projectRoot: context.projectRoot,
220
- reason: parsedReason.value?.trim() || "triage"
221
- }), { outputMode: context.outputMode });
222
- printTriageResult(context, result);
223
- return { ok: true, group: "triage", command: "run", details: result };
224
- }
225
- export {
226
- executeTriage
227
- };
@@ -1,3 +0,0 @@
1
- import { type RunnerContext } from "../runner";
2
- import type { CommandOutcome } from "@rig/runtime";
3
- export declare function executeWorkspace(context: RunnerContext, args: string[]): Promise<CommandOutcome>;
@@ -1,130 +0,0 @@
1
- // @bun
2
- // packages/cli/src/runner.ts
3
- import { EventBus } from "@rig/runtime/control-plane/runtime/events";
4
- import { CliError as RuntimeCliError } from "@rig/runtime/control-plane/errors";
5
- import { evaluate, loadPolicy, resolveAction } from "@rig/runtime/control-plane/runtime/guard";
6
- import { buildBinary } from "@rig/runtime/control-plane/runtime/isolation";
7
-
8
- class CliError extends RuntimeCliError {
9
- hint;
10
- constructor(message, exitCode = 1, options = {}) {
11
- super(message, exitCode);
12
- if (options.hint?.trim()) {
13
- this.hint = options.hint.trim();
14
- }
15
- }
16
- }
17
- function takeOption(args, option) {
18
- const rest = [];
19
- let value;
20
- for (let index = 0;index < args.length; index += 1) {
21
- const current = args[index];
22
- if (current === option) {
23
- const next = args[index + 1];
24
- if (!next || next.startsWith("-")) {
25
- throw new CliError(`Missing value for ${option}`, 1, { hint: `Provide a value after ${option}, e.g. \`${option} <value>\`.` });
26
- }
27
- value = next;
28
- index += 1;
29
- continue;
30
- }
31
- if (current !== undefined) {
32
- rest.push(current);
33
- }
34
- }
35
- return { value, rest };
36
- }
37
- function requireNoExtraArgs(args, usage) {
38
- if (args.length > 0) {
39
- throw new CliError(`Unexpected arguments: ${args.join(" ")}
40
- Usage: ${usage}`);
41
- }
42
- }
43
-
44
- // packages/cli/src/commands/workspace.ts
45
- import {
46
- mutateWorkspaceServiceFabric,
47
- readWorkspaceRemoteFleet,
48
- readWorkspaceSummary,
49
- readWorkspaceTopology
50
- } from "@rig/runtime/control-plane/native/workspace-ops";
51
- async function executeWorkspace(context, args) {
52
- const [command = "summary", ...rest] = args;
53
- switch (command) {
54
- case "summary": {
55
- requireNoExtraArgs(rest, "rig workspace summary");
56
- const summary = await readWorkspaceSummary(context.projectRoot);
57
- if (context.outputMode === "text") {
58
- console.log("Workspace Summary");
59
- console.log(` root: ${summary.rootPath}`);
60
- console.log(` tasks: ${summary.taskCounts.total} total \xB7 ${summary.taskCounts.ready} ready \xB7 ${summary.taskCounts.running} running \xB7 ${summary.taskCounts.blocked} blocked \xB7 ${summary.taskCounts.completed} completed \xB7 ${summary.taskCounts.unknown} unknown`);
61
- console.log(` runtimes: ${summary.runtimeCount}`);
62
- console.log(` artifact tasks: ${summary.artifactTaskCount}`);
63
- console.log(` topology: ${summary.topology.status} \xB7 ${summary.topology.serviceCount} services from ${summary.topology.manifestCount} manifests`);
64
- console.log(` remote hosts: ${summary.remoteFleet.status} \xB7 ${summary.remoteFleet.onlineHostCount} online of ${summary.remoteFleet.hostCount}`);
65
- if (summary.serviceFabric) {
66
- console.log(` service fabric: ${String(summary.serviceFabric.status ?? "unknown")} \xB7 ${String(summary.serviceFabric.healthyServiceCount ?? 0)} healthy of ${String(summary.serviceFabric.serviceCount ?? 0)}`);
67
- }
68
- console.log(` failures log: ${summary.failedApproachesPresent ? "present" : "missing"}`);
69
- if (summary.warnings.length > 0) {
70
- console.log(`
71
- Warnings:`);
72
- for (const warning of summary.warnings) {
73
- console.log(` - ${warning}`);
74
- }
75
- }
76
- }
77
- return { ok: true, group: "workspace", command, details: summary };
78
- }
79
- case "topology": {
80
- requireNoExtraArgs(rest, "rig workspace topology");
81
- const topology = readWorkspaceTopology(context.projectRoot);
82
- if (context.outputMode === "text") {
83
- console.log(`Topology: ${topology.status}`);
84
- for (const service of topology.services) {
85
- const suffix = [service.runtime, service.port != null ? `:${service.port}` : null, service.healthcheck].filter(Boolean).join(" \xB7 ");
86
- console.log(`- ${service.name}${suffix ? ` (${suffix})` : ""}`);
87
- console.log(` ${service.relativeRootPath}`);
88
- }
89
- }
90
- return { ok: true, group: "workspace", command, details: topology };
91
- }
92
- case "remote-hosts": {
93
- requireNoExtraArgs(rest, "rig workspace remote-hosts");
94
- const fleet = readWorkspaceRemoteFleet(context.projectRoot);
95
- if (context.outputMode === "text") {
96
- console.log(`Remote Hosts: ${fleet.status}`);
97
- for (const host of fleet.hosts) {
98
- console.log(`- ${host.name} \xB7 ${host.status} \xB7 ${host.baseUrl}${host.workspacePath ? ` \xB7 ${host.workspacePath}` : ""}`);
99
- }
100
- }
101
- return { ok: true, group: "workspace", command, details: fleet };
102
- }
103
- case "service-fabric": {
104
- const [action = "status", ...serviceRest] = rest;
105
- let pending = serviceRest;
106
- const services = takeOption(pending, "--service");
107
- pending = services.rest;
108
- requireNoExtraArgs(pending, "rig workspace service-fabric <status|up|verify|down> [--service <name>]");
109
- if (action !== "status" && action !== "up" && action !== "verify" && action !== "down") {
110
- throw new CliError(`Unknown workspace service-fabric action: ${action}`, 1, { hint: "Use one of: `rig workspace service-fabric status|up|verify|down`." });
111
- }
112
- const selectedServices = services.value ? services.value.split(",").map((entry) => entry.trim()).filter(Boolean) : [];
113
- const summary = action === "status" ? await mutateWorkspaceServiceFabric(context.projectRoot, "verify", selectedServices) : await mutateWorkspaceServiceFabric(context.projectRoot, action, selectedServices);
114
- if (context.outputMode === "text") {
115
- console.log(JSON.stringify(summary, null, 2));
116
- }
117
- return {
118
- ok: true,
119
- group: "workspace",
120
- command: `service-fabric:${action}`,
121
- details: summary
122
- };
123
- }
124
- default:
125
- throw new CliError(`Unknown workspace command: ${command}`, 1, { hint: "Run `rig workspace --help` \u2014 commands are summary|topology|remote-hosts|service-fabric." });
126
- }
127
- }
128
- export {
129
- executeWorkspace
130
- };
@@ -1,13 +0,0 @@
1
- import { type RunnerContext } from "./runner";
2
- import type { CommandOutcome } from "@rig/runtime/control-plane/runtime/types";
3
- import { buildRunPrompt } from "./commands/_run-driver-helpers";
4
- export declare function printGroupHelp(group: string): void;
5
- /** Returns true if args[0] requests group help (--help, -h, or "help"). */
6
- export declare function isHelpArg(arg: string | undefined): boolean;
7
- export declare function helpText(): string;
8
- export declare function execute(context: RunnerContext, args: string[]): Promise<CommandOutcome>;
9
- export { buildRigInitConfigSource } from "./commands/init";
10
- export type { RigInitConfigInput } from "./commands/init";
11
- export declare const __testOnly: {
12
- buildRunPrompt: typeof buildRunPrompt;
13
- };