@doriandev/devcc 0.1.2 → 0.2.0

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 (136) hide show
  1. package/README.md +556 -386
  2. package/bin/devcc.mjs +50 -23
  3. package/dist/devcc/agents/agents.d.ts +112 -0
  4. package/dist/devcc/agents/agents.d.ts.map +1 -0
  5. package/dist/devcc/agents/agents.js +179 -0
  6. package/dist/devcc/agents/agents.js.map +1 -0
  7. package/dist/devcc/app/App.d.ts +15 -0
  8. package/dist/devcc/app/App.d.ts.map +1 -1
  9. package/dist/devcc/app/App.js +326 -17
  10. package/dist/devcc/app/App.js.map +1 -1
  11. package/dist/devcc/app/controlPlaneCommands.d.ts +14 -0
  12. package/dist/devcc/app/controlPlaneCommands.d.ts.map +1 -0
  13. package/dist/devcc/app/controlPlaneCommands.js +179 -0
  14. package/dist/devcc/app/controlPlaneCommands.js.map +1 -0
  15. package/dist/devcc/app/keymap.d.ts.map +1 -1
  16. package/dist/devcc/app/keymap.js +24 -3
  17. package/dist/devcc/app/keymap.js.map +1 -1
  18. package/dist/devcc/automation.d.ts +31 -0
  19. package/dist/devcc/automation.d.ts.map +1 -0
  20. package/dist/devcc/automation.js +202 -0
  21. package/dist/devcc/automation.js.map +1 -0
  22. package/dist/devcc/cli.d.ts.map +1 -1
  23. package/dist/devcc/cli.js +46 -3
  24. package/dist/devcc/cli.js.map +1 -1
  25. package/dist/devcc/components/Sidebar.d.ts.map +1 -1
  26. package/dist/devcc/components/Sidebar.js +1 -0
  27. package/dist/devcc/components/Sidebar.js.map +1 -1
  28. package/dist/devcc/components/primitives.d.ts.map +1 -1
  29. package/dist/devcc/components/primitives.js +3 -0
  30. package/dist/devcc/components/primitives.js.map +1 -1
  31. package/dist/devcc/core/commands.d.ts +25 -0
  32. package/dist/devcc/core/commands.d.ts.map +1 -1
  33. package/dist/devcc/core/commands.js.map +1 -1
  34. package/dist/devcc/core/config.d.ts +69 -3
  35. package/dist/devcc/core/config.d.ts.map +1 -1
  36. package/dist/devcc/core/config.js +185 -5
  37. package/dist/devcc/core/config.js.map +1 -1
  38. package/dist/devcc/core/state.d.ts +19 -1
  39. package/dist/devcc/core/state.d.ts.map +1 -1
  40. package/dist/devcc/core/state.js +6 -0
  41. package/dist/devcc/core/state.js.map +1 -1
  42. package/dist/devcc/environment/EnvironmentService.d.ts +58 -0
  43. package/dist/devcc/environment/EnvironmentService.d.ts.map +1 -0
  44. package/dist/devcc/environment/EnvironmentService.js +159 -0
  45. package/dist/devcc/environment/EnvironmentService.js.map +1 -0
  46. package/dist/devcc/environment/integrations.d.ts +52 -0
  47. package/dist/devcc/environment/integrations.d.ts.map +1 -0
  48. package/dist/devcc/environment/integrations.js +94 -0
  49. package/dist/devcc/environment/integrations.js.map +1 -0
  50. package/dist/devcc/environment/tools.d.ts +51 -0
  51. package/dist/devcc/environment/tools.d.ts.map +1 -0
  52. package/dist/devcc/environment/tools.js +99 -0
  53. package/dist/devcc/environment/tools.js.map +1 -0
  54. package/dist/devcc/git/GitService.d.ts +26 -0
  55. package/dist/devcc/git/GitService.d.ts.map +1 -1
  56. package/dist/devcc/git/GitService.js +71 -2
  57. package/dist/devcc/git/GitService.js.map +1 -1
  58. package/dist/devcc/git/worktrees.d.ts +88 -0
  59. package/dist/devcc/git/worktrees.d.ts.map +1 -0
  60. package/dist/devcc/git/worktrees.js +226 -0
  61. package/dist/devcc/git/worktrees.js.map +1 -0
  62. package/dist/devcc/index.d.ts +13 -3
  63. package/dist/devcc/index.d.ts.map +1 -1
  64. package/dist/devcc/index.js +11 -1
  65. package/dist/devcc/index.js.map +1 -1
  66. package/dist/devcc/platform/launch.d.ts +30 -0
  67. package/dist/devcc/platform/launch.d.ts.map +1 -0
  68. package/dist/devcc/platform/launch.js +93 -0
  69. package/dist/devcc/platform/launch.js.map +1 -0
  70. package/dist/devcc/services/ServiceManager.d.ts +10 -2
  71. package/dist/devcc/services/ServiceManager.d.ts.map +1 -1
  72. package/dist/devcc/services/ServiceManager.js +18 -4
  73. package/dist/devcc/services/ServiceManager.js.map +1 -1
  74. package/dist/devcc/services/ollama.d.ts +64 -5
  75. package/dist/devcc/services/ollama.d.ts.map +1 -1
  76. package/dist/devcc/services/ollama.js +118 -17
  77. package/dist/devcc/services/ollama.js.map +1 -1
  78. package/dist/devcc/services/remote.d.ts +90 -0
  79. package/dist/devcc/services/remote.d.ts.map +1 -0
  80. package/dist/devcc/services/remote.js +233 -0
  81. package/dist/devcc/services/remote.js.map +1 -0
  82. package/dist/devcc/services/types.d.ts +8 -1
  83. package/dist/devcc/services/types.d.ts.map +1 -1
  84. package/dist/devcc/services/types.js.map +1 -1
  85. package/dist/devcc/utils/exec.d.ts +6 -0
  86. package/dist/devcc/utils/exec.d.ts.map +1 -1
  87. package/dist/devcc/utils/exec.js +12 -2
  88. package/dist/devcc/utils/exec.js.map +1 -1
  89. package/dist/devcc/verify/verify.d.ts +107 -0
  90. package/dist/devcc/verify/verify.d.ts.map +1 -0
  91. package/dist/devcc/verify/verify.js +203 -0
  92. package/dist/devcc/verify/verify.js.map +1 -0
  93. package/dist/devcc/views/OverviewView.d.ts.map +1 -1
  94. package/dist/devcc/views/OverviewView.js +55 -1
  95. package/dist/devcc/views/OverviewView.js.map +1 -1
  96. package/dist/devcc/views/ServicesView.d.ts +2 -0
  97. package/dist/devcc/views/ServicesView.d.ts.map +1 -1
  98. package/dist/devcc/views/ServicesView.js +15 -0
  99. package/dist/devcc/views/ServicesView.js.map +1 -1
  100. package/dist/devcc/views/SystemView.d.ts +10 -1
  101. package/dist/devcc/views/SystemView.d.ts.map +1 -1
  102. package/dist/devcc/views/SystemView.js +127 -19
  103. package/dist/devcc/views/SystemView.js.map +1 -1
  104. package/dist/devcc/views/WorktreesView.d.ts +48 -0
  105. package/dist/devcc/views/WorktreesView.d.ts.map +1 -0
  106. package/dist/devcc/views/WorktreesView.js +235 -0
  107. package/dist/devcc/views/WorktreesView.js.map +1 -0
  108. package/package.json +1 -1
  109. package/src/devcc/agents/agents.ts +282 -0
  110. package/src/devcc/app/App.ts +376 -20
  111. package/src/devcc/app/controlPlaneCommands.ts +197 -0
  112. package/src/devcc/app/keymap.ts +24 -3
  113. package/src/devcc/automation.ts +242 -0
  114. package/src/devcc/cli.ts +45 -3
  115. package/src/devcc/components/Sidebar.ts +1 -0
  116. package/src/devcc/components/primitives.ts +3 -0
  117. package/src/devcc/core/commands.ts +26 -0
  118. package/src/devcc/core/config.ts +271 -11
  119. package/src/devcc/core/state.ts +25 -0
  120. package/src/devcc/environment/EnvironmentService.ts +215 -0
  121. package/src/devcc/environment/integrations.ts +133 -0
  122. package/src/devcc/environment/tools.ts +151 -0
  123. package/src/devcc/git/GitService.ts +104 -2
  124. package/src/devcc/git/worktrees.ts +256 -0
  125. package/src/devcc/index.ts +57 -2
  126. package/src/devcc/platform/launch.ts +125 -0
  127. package/src/devcc/services/ServiceManager.ts +15 -3
  128. package/src/devcc/services/ollama.ts +162 -19
  129. package/src/devcc/services/remote.ts +306 -0
  130. package/src/devcc/services/types.ts +9 -1
  131. package/src/devcc/utils/exec.ts +26 -2
  132. package/src/devcc/verify/verify.ts +316 -0
  133. package/src/devcc/views/OverviewView.ts +76 -1
  134. package/src/devcc/views/ServicesView.ts +17 -0
  135. package/src/devcc/views/SystemView.ts +144 -22
  136. package/src/devcc/views/WorktreesView.ts +270 -0
@@ -0,0 +1,202 @@
1
+ import { loadConfig } from "./core/config.js";
2
+ import { EnvironmentService } from "./environment/EnvironmentService.js";
3
+ import { GitService } from "./git/GitService.js";
4
+ import { worktreeLabel } from "./git/worktrees.js";
5
+ import { errorMessage } from "./utils/errors.js";
6
+ import { createLogger } from "./utils/logger.js";
7
+ import { detectPackageManager, readPackageJson, readScripts } from "./utils/packageManager.js";
8
+ import { tildify } from "./utils/paths.js";
9
+ import { createSpawnExecutor, isVerifyIssue, resolveVerifySteps, runVerification, summariseVerify, } from "./verify/verify.js";
10
+ export const EXIT_OK = 0;
11
+ export const EXIT_FAILED = 1;
12
+ /** Misconfiguration or misuse: nothing was verified. */
13
+ export const EXIT_USAGE = 2;
14
+ const processIo = {
15
+ stdout: (text) => process.stdout.write(text),
16
+ stderr: (text) => process.stderr.write(text),
17
+ };
18
+ function printJson(io, value) {
19
+ io.stdout(`${JSON.stringify(value, null, 2)}\n`);
20
+ }
21
+ // ---------------------------------------------------------------------------
22
+ // devcc verify
23
+ // ---------------------------------------------------------------------------
24
+ export async function verifyCommand(options) {
25
+ const io = options.io ?? processIo;
26
+ const { rootDir, json } = options;
27
+ const packageJson = readPackageJson(rootDir);
28
+ const packageManager = detectPackageManager({ rootDir, packageJson, userAgent: undefined }).manager;
29
+ const loaded = await loadConfig(rootDir);
30
+ const { steps, issues } = resolveVerifySteps(loaded.config.verify, {
31
+ commands: loaded.config.commands,
32
+ scripts: readScripts(packageJson),
33
+ packageManager,
34
+ });
35
+ // A dropped or unresolvable verify entry must fail the gate: silently running
36
+ // fewer checks than configured would let a broken project pass.
37
+ const blocking = [
38
+ ...loaded.issues.filter((issue) => issue.startsWith("Failed to load") || isVerifyIssue(issue)),
39
+ ...issues,
40
+ ];
41
+ if (steps.length === 0 && blocking.length === 0) {
42
+ blocking.push(loaded.filePath
43
+ ? `No verification steps: add verify: ["lint", "test"] to ${tildify(loaded.filePath)}`
44
+ : 'No verification steps: create .devcc.ts with verify: ["lint", "test"]');
45
+ }
46
+ if (blocking.length > 0) {
47
+ if (json)
48
+ printJson(io, { ok: false, error: "configuration", issues: blocking });
49
+ else
50
+ for (const issue of blocking)
51
+ io.stderr(`devcc verify: ${issue}\n`);
52
+ return EXIT_USAGE;
53
+ }
54
+ if (!json)
55
+ io.stdout(`devcc verify · ${tildify(rootDir)} · ${steps.length} step(s)\n\n`);
56
+ const executor = options.executor ?? createSpawnExecutor({ rootDir });
57
+ let printed = 0;
58
+ const report = await runVerification(steps, executor, {
59
+ signal: options.signal,
60
+ onProgress: (progress) => {
61
+ if (json)
62
+ return;
63
+ for (; printed < progress.length; printed += 1) {
64
+ const step = progress[printed];
65
+ if (!step || step.status === "pending")
66
+ break;
67
+ if (step.status === "running") {
68
+ io.stdout(`→ ${step.name}: ${[step.command, ...step.args].join(" ")}\n`);
69
+ break;
70
+ }
71
+ io.stdout(stepLine(step));
72
+ if (step.status === "failed")
73
+ io.stdout(failureOutput(step));
74
+ }
75
+ },
76
+ });
77
+ if (json) {
78
+ printJson(io, { ...report, rootDir, summary: summariseVerify(report) });
79
+ }
80
+ else {
81
+ for (const step of report.steps.slice(printed))
82
+ if (step.status === "skipped")
83
+ io.stdout(stepLine(step));
84
+ io.stdout(`\n${report.ok ? "✓" : "✗"} ${summariseVerify(report)} in ${seconds(report.durationMs)}\n`);
85
+ }
86
+ return report.ok ? EXIT_OK : EXIT_FAILED;
87
+ }
88
+ function stepLine(step) {
89
+ const mark = step.status === "passed" ? "✓" : step.status === "skipped" ? "-" : "✗";
90
+ const detail = step.status === "skipped"
91
+ ? "skipped"
92
+ : [
93
+ seconds(step.durationMs),
94
+ step.exitCode !== null && step.exitCode !== 0 ? `exit ${step.exitCode}` : undefined,
95
+ step.error,
96
+ ]
97
+ .filter(Boolean)
98
+ .join(" · ");
99
+ return `${mark} ${step.name} (${detail})\n`;
100
+ }
101
+ /** The tail of a failed step's output, indented under it. */
102
+ function failureOutput(step, maxLines = 60) {
103
+ const text = [step.stdout, step.stderr]
104
+ .filter((part) => part.trim() !== "")
105
+ .join("\n")
106
+ .trimEnd();
107
+ if (text === "")
108
+ return "";
109
+ const lines = text.split("\n");
110
+ const shown = lines.slice(-maxLines);
111
+ const header = lines.length > maxLines ? [`… ${lines.length - maxLines} earlier line(s) omitted`] : [];
112
+ return `${[...header, ...shown].map((line) => ` ${line}`).join("\n")}\n`;
113
+ }
114
+ function seconds(ms) {
115
+ return `${(ms / 1000).toFixed(1)}s`;
116
+ }
117
+ // ---------------------------------------------------------------------------
118
+ // devcc worktree list
119
+ // ---------------------------------------------------------------------------
120
+ export async function worktreeListCommand(options) {
121
+ const io = options.io ?? processIo;
122
+ const git = new GitService({ rootDir: options.rootDir, logger: createLogger(options.rootDir).child("git") });
123
+ try {
124
+ const worktrees = await git.listWorktrees();
125
+ if (options.json) {
126
+ printJson(io, { rootDir: options.rootDir, worktrees });
127
+ return EXIT_OK;
128
+ }
129
+ const width = Math.max(...worktrees.map((worktree) => worktreeLabel(worktree).length), 6);
130
+ for (const worktree of worktrees) {
131
+ const flags = [
132
+ worktree.isMain ? "main" : undefined,
133
+ worktree.locked ? "locked" : undefined,
134
+ worktree.prunable ? "prunable" : undefined,
135
+ ].filter(Boolean);
136
+ io.stdout(`${worktree.isCurrent ? "*" : " "} ${worktreeLabel(worktree).padEnd(width)} ${tildify(worktree.path)}${flags.length > 0 ? ` [${flags.join(", ")}]` : ""}\n`);
137
+ }
138
+ return EXIT_OK;
139
+ }
140
+ catch (error) {
141
+ const message = errorMessage(error);
142
+ if (options.json)
143
+ printJson(io, { error: message, rootDir: options.rootDir, worktrees: [] });
144
+ else
145
+ io.stderr(`devcc worktree list: ${message}\n`);
146
+ return EXIT_FAILED;
147
+ }
148
+ }
149
+ // ---------------------------------------------------------------------------
150
+ // devcc env
151
+ // ---------------------------------------------------------------------------
152
+ export async function envCommand(options) {
153
+ const io = options.io ?? processIo;
154
+ const environment = options.environment ?? new EnvironmentService({ rootDir: options.rootDir });
155
+ const snapshot = await environment.refresh();
156
+ if (options.json) {
157
+ const { checking: _checking, ...rest } = snapshot;
158
+ printJson(io, { rootDir: options.rootDir, ...rest });
159
+ }
160
+ else {
161
+ io.stdout(formatEnvironment(snapshot));
162
+ }
163
+ return EXIT_OK;
164
+ }
165
+ export function formatEnvironment(snapshot) {
166
+ const lines = ["TOOLS"];
167
+ const nameWidth = Math.max(...snapshot.tools.map((tool) => tool.name.length), 4) + 2;
168
+ for (const tool of snapshot.tools) {
169
+ const mark = !tool.installed ? "·" : tool.status === "ready" ? "✓" : tool.status === "warning" ? "⚠" : "✗";
170
+ const value = tool.installed ? (tool.version ?? "installed") : "not installed";
171
+ const note = tool.installed && tool.message ? ` ${tool.message}` : "";
172
+ lines.push(` ${mark} ${tool.name.padEnd(nameWidth)}${value}${note}`);
173
+ }
174
+ if (snapshot.mise.installed) {
175
+ lines.push("", "RUNTIMES (mise)");
176
+ if (snapshot.mise.error)
177
+ lines.push(` ⚠ ${snapshot.mise.error}`);
178
+ else if (snapshot.mise.runtimes.length === 0)
179
+ lines.push(" no tools pinned for this project");
180
+ for (const runtime of snapshot.mise.runtimes) {
181
+ lines.push(` ${runtime.tool.padEnd(nameWidth + 2)}${runtime.version}${runtime.installed ? "" : " (not installed)"}`);
182
+ }
183
+ }
184
+ const { direnv } = snapshot;
185
+ if (direnv.installed || direnv.rcPath) {
186
+ lines.push("", "DIRENV");
187
+ if (direnv.error)
188
+ lines.push(` ⚠ ${direnv.error}`);
189
+ if (direnv.rcPath) {
190
+ lines.push(` .envrc ${tildify(direnv.rcPath)}`);
191
+ if (direnv.installed) {
192
+ lines.push(` approval ${direnv.approval}`);
193
+ lines.push(` loaded ${direnv.loaded ? "yes" : "no"}`);
194
+ }
195
+ }
196
+ else {
197
+ lines.push(" no .envrc for this project");
198
+ }
199
+ }
200
+ return `${lines.join("\n")}\n`;
201
+ }
202
+ //# sourceMappingURL=automation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"automation.js","sourceRoot":"","sources":["../../src/devcc/automation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/devcc/cli.ts"],"names":[],"mappings":";AA0EA,wBAAsB,IAAI,CAAC,IAAI,GAAE,SAAS,MAAM,EAA0B,GAAG,OAAO,CAAC,MAAM,CAAC,CAiC3F"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/devcc/cli.ts"],"names":[],"mappings":";AAwFA,wBAAsB,IAAI,CAAC,IAAI,GAAE,SAAS,MAAM,EAA0B,GAAG,OAAO,CAAC,MAAM,CAAC,CA8C3F"}
package/dist/devcc/cli.js CHANGED
@@ -8,8 +8,9 @@
8
8
  * bypassed it.
9
9
  */
10
10
  import { createRequire } from "node:module";
11
+ import { resolve } from "node:path";
11
12
  import { pathToFileURL } from "node:url";
12
- import { App } from "./app/App.js";
13
+ import { envCommand, EXIT_USAGE, verifyCommand, worktreeListCommand } from "./automation.js";
13
14
  import { errorMessage } from "./utils/errors.js";
14
15
  import { findProjectRoot } from "./utils/paths.js";
15
16
  /**
@@ -29,13 +30,15 @@ function readVersion() {
29
30
  }
30
31
  const VERSION = readVersion();
31
32
  function parseArgs(argv) {
32
- const args = { help: false, version: false };
33
+ const args = { help: false, version: false, json: false, positionals: [] };
33
34
  for (let index = 0; index < argv.length; index += 1) {
34
35
  const arg = argv[index];
35
36
  if (arg === "--help" || arg === "-h")
36
37
  args.help = true;
37
38
  else if (arg === "--version" || arg === "-v")
38
39
  args.version = true;
40
+ else if (arg === "--json")
41
+ args.json = true;
39
42
  else if (arg === "--cwd" || arg === "-C") {
40
43
  const value = argv[index + 1];
41
44
  if (value) {
@@ -46,19 +49,29 @@ function parseArgs(argv) {
46
49
  else if (arg?.startsWith("--cwd=")) {
47
50
  args.cwd = arg.slice("--cwd=".length);
48
51
  }
52
+ else if (arg !== undefined && !arg.startsWith("-")) {
53
+ args.positionals.push(arg);
54
+ }
49
55
  }
50
56
  return args;
51
57
  }
52
58
  const USAGE = `dev command center ${VERSION}
53
59
 
54
60
  Usage:
55
- devcc [options]
61
+ devcc [options] Open the dashboard
62
+ devcc verify [--json] Run the project's verify steps; exit 0 only if all pass
63
+ devcc worktree list [--json] List git worktrees
64
+ devcc env [--json] Report tools, mise runtimes and direnv status
56
65
 
57
66
  Options:
58
67
  -C, --cwd <dir> Project directory (default: nearest project root)
68
+ --json Machine-readable output (verify, worktree list, env)
59
69
  -h, --help Show this help
60
70
  -v, --version Show the version
61
71
 
72
+ Exit codes (verify):
73
+ 0 every step passed 1 a step failed 2 nothing to verify / bad config
74
+
62
75
  Environment:
63
76
  DEVCC_LOG_LEVEL debug | info | warn | error | silent (default: info)
64
77
 
@@ -75,10 +88,25 @@ export async function main(argv = process.argv.slice(2)) {
75
88
  process.stdout.write(`${VERSION}\n`);
76
89
  return 0;
77
90
  }
91
+ const [command, ...rest] = args.positionals;
92
+ if (command !== undefined) {
93
+ const rootDir = args.cwd ? resolve(args.cwd) : findProjectRoot();
94
+ const options = { rootDir, json: args.json };
95
+ if (command === "verify" && rest.length === 0)
96
+ return runVerifyCli(options);
97
+ if (command === "worktree" && rest.length === 1 && rest[0] === "list")
98
+ return worktreeListCommand(options);
99
+ if (command === "env" && rest.length === 0)
100
+ return envCommand(options);
101
+ process.stderr.write(`devcc: unknown command "${args.positionals.join(" ")}"\n\n${USAGE}`);
102
+ return EXIT_USAGE;
103
+ }
78
104
  if (!process.stdout.isTTY) {
79
105
  process.stderr.write("devcc needs an interactive terminal (stdout is not a TTY).\n");
80
106
  return 1;
81
107
  }
108
+ // Loaded lazily: OpenTUI needs FFI, which the automation commands above do not.
109
+ const { App } = await import("./app/App.js");
82
110
  const app = new App({ cwd: args.cwd ? args.cwd : findProjectRoot() });
83
111
  try {
84
112
  await app.run();
@@ -98,6 +126,21 @@ export async function main(argv = process.argv.slice(2)) {
98
126
  return 1;
99
127
  }
100
128
  }
129
+ /** Ctrl+C stops the running step instead of leaving it orphaned. */
130
+ async function runVerifyCli(options) {
131
+ const controller = new AbortController();
132
+ const onSignal = () => controller.abort();
133
+ process.once("SIGINT", onSignal);
134
+ process.once("SIGTERM", onSignal);
135
+ try {
136
+ const code = await verifyCommand({ ...options, signal: controller.signal });
137
+ return controller.signal.aborted ? 130 : code;
138
+ }
139
+ finally {
140
+ process.off("SIGINT", onSignal);
141
+ process.off("SIGTERM", onSignal);
142
+ }
143
+ }
101
144
  const entry = process.argv[1];
102
145
  const isDirectRun = entry !== undefined && import.meta.url === pathToFileURL(entry).href;
103
146
  if (isDirectRun) {
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/devcc/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/devcc/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Sidebar.d.ts","sourceRoot":"","sources":["../../../src/devcc/components/Sidebar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAkB,KAAK,aAAa,EAAE,MAAM,eAAe,CAAA;AAGjF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAI9C,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;CACd;AAED,eAAO,MAAM,aAAa,EAAE,SAAS,WAAW,EAU/C,CAAA;AAED,yDAAyD;AACzD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAA;IACf,sEAAsE;IACtE,SAAS,EAAE,OAAO,CAAA;CACnB;AAED,eAAO,MAAM,aAAa,KAAK,CAAA;AAS/B;;;;;;GAMG;AACH,qBAAa,OAAO;IAQN,OAAO,CAAC,QAAQ,CAAC,GAAG;IAPhC,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAA;IAC3B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAuB;IACnD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoC;IACzD,OAAO,CAAC,UAAU,CAAqB;gBAEV,GAAG,EAAE,aAAa;IA0C/C,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAiB7B;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,SAAS,cAAc,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAsC1E,IAAI,MAAM,IAAI,MAAM,CAEnB;CACF"}
1
+ {"version":3,"file":"Sidebar.d.ts","sourceRoot":"","sources":["../../../src/devcc/components/Sidebar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAkB,KAAK,aAAa,EAAE,MAAM,eAAe,CAAA;AAGjF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAI9C,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;CACd;AAED,eAAO,MAAM,aAAa,EAAE,SAAS,WAAW,EAW/C,CAAA;AAED,yDAAyD;AACzD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAA;IACf,sEAAsE;IACtE,SAAS,EAAE,OAAO,CAAA;CACnB;AAED,eAAO,MAAM,aAAa,KAAK,CAAA;AAS/B;;;;;;GAMG;AACH,qBAAa,OAAO;IAQN,OAAO,CAAC,QAAQ,CAAC,GAAG;IAPhC,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAA;IAC3B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAuB;IACnD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoC;IACzD,OAAO,CAAC,UAAU,CAAqB;gBAEV,GAAG,EAAE,aAAa;IA0C/C,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAiB7B;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,SAAS,cAAc,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAsC1E,IAAI,MAAM,IAAI,MAAM,CAEnB;CACF"}
@@ -9,6 +9,7 @@ export const SIDEBAR_ITEMS = [
9
9
  { id: "services", label: "Services" },
10
10
  { id: "scripts", label: "Scripts" },
11
11
  { id: "git", label: "Git" },
12
+ { id: "worktrees", label: "Worktrees" },
12
13
  { id: "logs", label: "Logs" },
13
14
  { id: "dependencies", label: "Dependencies" },
14
15
  { id: "system", label: "System" },
@@ -1 +1 @@
1
- {"version":3,"file":"Sidebar.js","sourceRoot":"","sources":["../../../src/devcc/components/Sidebar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Sidebar.js","sourceRoot":"","sources":["../../../src/devcc/components/Sidebar.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../../src/devcc/components/primitives.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,cAAc,EACd,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,eAAe,CAAA;AAGtB,sCAAsC;AACtC,wBAAgB,UAAU,CACxB,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE,UAAU,GAAG,MAAM,EAC5B,OAAO,GAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAC1D,cAAc,CAShB;AAED,wCAAwC;AACxC,wBAAgB,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,cAAc,CAQ/E;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,GAAE,UAAe,GAAG,aAAa,CAKrF;AAED,yBAAyB;AACzB,wBAAgB,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,SAAI,GAAG,aAAa,CAE1E;AAED,MAAM,WAAW,OAAO;IACtB,oEAAoE;IACpE,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,UAAU,GAAG,MAAM,CAAA;IAC5B,uEAAuE;IACvE,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAA;CAC9B;AAED;;;;;;GAMG;AACH,qBAAa,OAAO;IAYhB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAXtB,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAA;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAuB;IACtD,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,aAAa,CAAI;IACzB,OAAO,CAAC,YAAY,CAAI;IACxB,OAAO,CAAC,OAAO,CAAO;IACtB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA0B;IAC3D,OAAO,CAAC,gBAAgB,CAAI;gBAGT,GAAG,EAAE,aAAa,EACnC,OAAO,GAAE,cAAmB;IAsB9B,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAMlC,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI;IAOrD,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQrC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM7B,WAAW,IAAI,IAAI;IAKnB,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,KAAK;IAkBb,OAAO,CAAC,UAAU;IAqBlB,OAAO,IAAI,IAAI;CAGhB;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAGrE"}
1
+ {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../../src/devcc/components/primitives.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,cAAc,EACd,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,eAAe,CAAA;AAGtB,sCAAsC;AACtC,wBAAgB,UAAU,CACxB,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE,UAAU,GAAG,MAAM,EAC5B,OAAO,GAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAC1D,cAAc,CAShB;AAED,wCAAwC;AACxC,wBAAgB,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,cAAc,CAQ/E;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,GAAE,UAAe,GAAG,aAAa,CAKrF;AAED,yBAAyB;AACzB,wBAAgB,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,SAAI,GAAG,aAAa,CAE1E;AAED,MAAM,WAAW,OAAO;IACtB,oEAAoE;IACpE,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,UAAU,GAAG,MAAM,CAAA;IAC5B,uEAAuE;IACvE,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAA;CAC9B;AAED;;;;;;GAMG;AACH,qBAAa,OAAO;IAYhB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAXtB,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAA;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAuB;IACtD,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,aAAa,CAAI;IACzB,OAAO,CAAC,YAAY,CAAI;IACxB,OAAO,CAAC,OAAO,CAAO;IACtB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA0B;IAC3D,OAAO,CAAC,gBAAgB,CAAI;gBAGT,GAAG,EAAE,aAAa,EACnC,OAAO,GAAE,cAAmB;IAyB9B,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAMlC,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI;IAOrD,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQrC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM7B,WAAW,IAAI,IAAI;IAKnB,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,KAAK;IAkBb,OAAO,CAAC,UAAU;IAqBlB,OAAO,IAAI,IAAI;CAGhB;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAGrE"}
@@ -63,6 +63,9 @@ export class RowList {
63
63
  });
64
64
  this.box.onSizeChange = () => {
65
65
  const visible = this.visibleCount;
66
+ // The first setRows can happen before layout, when the viewport is one
67
+ // row tall; re-derive the scroll position now that the real height is known.
68
+ this.ensureVisible();
66
69
  this.paint();
67
70
  if (visible !== this.lastVisibleCount) {
68
71
  this.lastVisibleCount = visible;
@@ -1 +1 @@
1
- {"version":3,"file":"primitives.js","sourceRoot":"","sources":["../../../src/devcc/components/primitives.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"primitives.js","sourceRoot":"","sources":["../../../src/devcc/components/primitives.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,cAAc,GAIf,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAEvC,sCAAsC;AACtC,MAAM,UAAU,UAAU,CACxB,GAAkB,EAClB,OAA4B,EAC5B,UAAyD,EAAE;IAE3D,OAAO,IAAI,cAAc,CAAC,GAAG,EAAE;QAC7B,OAAO;QACP,EAAE,EAAE,OAAO,CAAC,EAAE,IAAI,KAAK,CAAC,IAAI;QAC5B,EAAE,EAAE,OAAO,CAAC,EAAE,IAAI,aAAa;QAC/B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC;QAC3B,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,KAAK;KAClB,CAAC,CAAA;AACJ,CAAC;AAED,wCAAwC;AACxC,MAAM,UAAU,aAAa,CAAC,GAAkB,EAAE,KAAa;IAC7D,OAAO,IAAI,cAAc,CAAC,GAAG,EAAE;QAC7B,OAAO,EAAE,KAAK,CAAC,WAAW,EAAE;QAC5B,EAAE,EAAE,KAAK,CAAC,MAAM;QAChB,MAAM,EAAE,CAAC;QACT,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,IAAI;KACf,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAkB,EAAE,UAAsB,EAAE;IACpE,OAAO,IAAI,aAAa,CAAC,GAAG,EAAE;QAC5B,eAAe,EAAE,aAAa;QAC9B,GAAG,OAAO;KACX,CAAC,CAAA;AACJ,CAAC;AAED,yBAAyB;AACzB,MAAM,UAAU,YAAY,CAAC,GAAkB,EAAE,MAAM,GAAG,CAAC;IACzD,OAAO,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC,CAAA;AAC3E,CAAC;AAoBD;;;;;;GAMG;AACH,MAAM,OAAO,OAAO;IAYC;IAXV,GAAG,CAAe;IACV,cAAc,GAAqB,EAAE,CAAA;IAC9C,IAAI,GAAc,EAAE,CAAA;IACpB,aAAa,GAAG,CAAC,CAAA;IACjB,YAAY,GAAG,CAAC,CAAA;IAChB,OAAO,GAAG,IAAI,CAAA;IACL,aAAa,CAAQ;IACrB,gBAAgB,CAA0B;IACnD,gBAAgB,GAAG,CAAC,CAAA;IAE5B,YACmB,GAAkB,EACnC,UAA0B,EAAE;QADX,QAAG,GAAH,GAAG,CAAe;QAGnC,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,GAAG,UAAU,EAAE,GAAG,OAAO,CAAA;QAClE,IAAI,CAAC,aAAa,GAAG,aAAa,IAAI,CAAC,CAAA;QACvC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,GAAG,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE;YAChC,aAAa,EAAE,QAAQ;YACvB,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,QAAQ;YAClB,eAAe,EAAE,aAAa;YAC9B,GAAG,UAAU;SACd,CAAC,CAAA;QACF,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,GAAG,EAAE;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAA;YACjC,uEAAuE;YACvE,6EAA6E;YAC7E,IAAI,CAAC,aAAa,EAAE,CAAA;YACpB,IAAI,CAAC,KAAK,EAAE,CAAA;YACZ,IAAI,OAAO,KAAK,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAA;gBAC/B,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAA;YAC3B,CAAC;QACH,CAAC,CAAA;IACH,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA;IACzB,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACrC,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;IAED,UAAU,CAAC,OAAgB;QACzB,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO;YAAE,OAAM;QACpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,KAAK,EAAE,CAAA;IACd,CAAC;IAED,OAAO,CAAC,IAAe,EAAE,aAAqB;QAC5C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAA;QAC1E,IAAI,CAAC,aAAa,EAAE,CAAA;QACpB,IAAI,CAAC,KAAK,EAAE,CAAA;IACd,CAAC;IAED,gBAAgB,CAAC,KAAa;QAC5B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAA;QAC/D,IAAI,IAAI,KAAK,IAAI,CAAC,aAAa;YAAE,OAAM;QACvC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;QACzB,IAAI,CAAC,aAAa,EAAE,CAAA;QACpB,IAAI,CAAC,KAAK,EAAE,CAAA;IACd,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAA;QACnE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,GAAG,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;QAClE,IAAI,CAAC,KAAK,EAAE,CAAA;IACd,CAAC;IAED,WAAW;QACT,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAA;QACrE,IAAI,CAAC,KAAK,EAAE,CAAA;IACd,CAAC;IAEO,aAAa;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAA;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAC3E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,CAAA;QAEzD,IAAI,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,GAAG,OAAO,EAAE,CAAC;YACrD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,GAAG,OAAO,CAAA;QAClD,CAAC;aAAM,IAAI,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,GAAG,OAAO,GAAG,CAAC,GAAG,OAAO,EAAE,CAAC;YAC1E,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,GAAG,OAAO,GAAG,CAAC,GAAG,OAAO,CAAA;QAChE,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;IAC5D,CAAC;IAEO,KAAK;QACX,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAA;QACjC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAEjE,KAAK,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,CAAC;YAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;YAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC/B,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,UAAU,CAAC,OAAO,GAAG,KAAK,CAAA;gBAC1B,SAAQ;YACV,CAAC;YACD,UAAU,CAAC,OAAO,GAAG,IAAI,CAAA;YACzB,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;YAChC,MAAM,QAAQ,GAAG,QAAQ,KAAK,IAAI,CAAC,aAAa,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAA;YACjE,UAAU,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,CAAA;QACxG,CAAC;IACH,CAAC;IAEO,UAAU,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;YACzC,MAAM,UAAU,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC9C,OAAO,EAAE,EAAE;gBACX,EAAE,EAAE,KAAK,CAAC,IAAI;gBACd,MAAM,EAAE,CAAC;gBACT,UAAU,EAAE,CAAC;gBACb,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE,KAAK;aAClB,CAAC,CAAA;YACF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACpC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAC1B,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;YACzC,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAA;YAC5C,IAAI,CAAC,UAAU;gBAAE,MAAK;YACtB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;YAC3B,UAAU,CAAC,OAAO,EAAE,CAAA;QACtB,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAA;IAC/B,CAAC;CACF;AAED,MAAM,UAAU,KAAK,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;IAC3D,IAAI,GAAG,GAAG,GAAG;QAAE,OAAO,GAAG,CAAA;IACzB,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAA;AAC5C,CAAC"}
@@ -1,5 +1,9 @@
1
+ import type { AgentManager } from "../agents/agents.js";
2
+ import type { RemoteMachineConfig } from "./config.js";
1
3
  import type { DependencyService } from "../deps/DependencyService.js";
4
+ import type { EnvironmentService } from "../environment/EnvironmentService.js";
2
5
  import type { GitService } from "../git/GitService.js";
6
+ import type { GitWorktree } from "../git/worktrees.js";
3
7
  import type { LogStore } from "../logs/LogBuffer.js";
4
8
  import type { ProcessManager } from "../processes/ProcessManager.js";
5
9
  import type { ServiceManager } from "../services/ServiceManager.js";
@@ -21,6 +25,8 @@ export interface CommandContext {
21
25
  logs: LogStore;
22
26
  system: SystemMonitor;
23
27
  deps: DependencyService;
28
+ agents: AgentManager;
29
+ environment: EnvironmentService;
24
30
  navigate: (view: ViewId) => void;
25
31
  notify: (level: NotificationLevel, message: string, detail?: string) => void;
26
32
  /** Modal yes/no. Resolves false when dismissed. */
@@ -40,6 +46,25 @@ export interface CommandContext {
40
46
  switchProject: (path: string) => Promise<void>;
41
47
  /** Close an open project, stopping what devcc started there. Defaults to the current one. */
42
48
  closeProject: (path?: string) => Promise<void>;
49
+ /**
50
+ * The worktree commands act on: the one selected in the Worktrees view, or
51
+ * the worktree devcc is running in. Undefined outside a git repository.
52
+ */
53
+ selectedWorktree: () => GitWorktree | undefined;
54
+ /** Prompt for branch, base and path, then `git worktree add`. */
55
+ createWorktree: () => Promise<void>;
56
+ /** Confirmed, never forced `git worktree remove`. */
57
+ removeWorktree: (worktree: GitWorktree) => Promise<void>;
58
+ /** Prompt for a task and start the agent in the worktree (default: the selected one). */
59
+ launchAgent: (agentId: string, worktree?: GitWorktree) => Promise<void>;
60
+ openInEditor: (path: string) => Promise<void>;
61
+ openInTerminal: (path: string) => Promise<void>;
62
+ /** Run the project's verification steps; output lands in Logs. */
63
+ runVerify: () => Promise<void>;
64
+ /** Remote machines declared in config. */
65
+ remoteMachines: () => RemoteMachineConfig[];
66
+ /** Open an interactive SSH session in a terminal. */
67
+ sshTo: (machineId: string) => Promise<void>;
43
68
  quit: () => void;
44
69
  }
45
70
  export interface CommandDefinition {
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/devcc/core/commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE/D,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAErE;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,QAAQ,CAAA;IACf,SAAS,EAAE,cAAc,CAAA;IACzB,QAAQ,EAAE,cAAc,CAAA;IACxB,GAAG,EAAE,UAAU,CAAA;IACf,IAAI,EAAE,QAAQ,CAAA;IACd,MAAM,EAAE,aAAa,CAAA;IACrB,IAAI,EAAE,iBAAiB,CAAA;IAEvB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAChC,MAAM,EAAE,CAAC,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5E,mDAAmD;IACnD,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAC7D,8DAA8D;IAC9D,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IACvE,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1C,8DAA8D;IAC9D,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAClE,0DAA0D;IAC1D,YAAY,EAAE,MAAM,YAAY,EAAE,CAAA;IAClC,8DAA8D;IAC9D,YAAY,EAAE,MAAM,YAAY,EAAE,CAAA;IAClC,iFAAiF;IACjF,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9C,6FAA6F;IAC7F,YAAY,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9C,IAAI,EAAE,MAAM,IAAI,CAAA;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,uDAAuD;IACvD,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAA;IAC3C,4EAA4E;IAC5E,OAAO,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5C,OAAO,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAC3D;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,EAAE,CAAA;CACZ;AAED;;;GAGG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuC;IAEhE,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAI1C,WAAW,CAAC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,GAAG,IAAI;IAIzD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAI/B,iFAAiF;IACjF,KAAK,IAAI,IAAI;IAIb,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIxB,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAI9C,IAAI,IAAI,iBAAiB,EAAE;IAI3B,oDAAoD;IACpD,SAAS,CAAC,OAAO,EAAE,cAAc,GAAG,iBAAiB,EAAE;IAIvD,mDAAmD;IACnD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,SAAK,GAAG,iBAAiB,EAAE;IAK/E;;;OAGG;IACG,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;CAUjE;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAE7D"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/devcc/core/commands.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/devcc/core/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/devcc/core/commands.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
+ import type { AgentConfig } from "../agents/agents.js";
1
2
  import type { ProcessDefinition } from "../processes/ManagedProcess.js";
3
+ import type { ServiceCategory } from "../services/types.js";
2
4
  import type { LogLevel } from "../utils/logger.js";
5
+ import type { VerifyEntry } from "../verify/verify.js";
3
6
  /** A command declared in project config: runs an executable and streams its logs. */
4
7
  export interface CommandConfigEntry {
5
8
  id: string;
@@ -15,14 +18,66 @@ export interface CommandConfigEntry {
15
18
  message: string;
16
19
  } | boolean;
17
20
  }
18
- /** An extra port/HTTP endpoint to watch in the Services view. */
21
+ /**
22
+ * An extra endpoint to watch in the Services view.
23
+ *
24
+ * The default `type: "port"` is a TCP (or HTTP, with `healthPath`) probe.
25
+ * `type: "ollama"` watches an Ollama server at `baseUrl` - localhost, a LAN
26
+ * hostname or a Tailscale name - including its models.
27
+ */
19
28
  export interface ServiceConfigEntry {
20
29
  id: string;
21
30
  name: string;
31
+ /** Required for port services; derived from `baseUrl` for Ollama. */
22
32
  port: number;
23
33
  host?: string;
24
34
  healthPath?: string;
25
- category?: "container" | "database" | "runtime" | "ai" | "web";
35
+ category?: ServiceCategory;
36
+ type?: "port" | "ollama";
37
+ /** Ollama only, e.g. `http://gpu-server:11434`. */
38
+ baseUrl?: string;
39
+ }
40
+ /** How to open a directory in an editor. `command` wins over `application`. */
41
+ export interface EditorConfig {
42
+ /** CLI launcher on PATH: `code`, `zed`, `cursor`, `webstorm`. */
43
+ command?: string;
44
+ /** Extra arguments placed before the path. */
45
+ args?: string[];
46
+ /** macOS application name for `open -a`, e.g. `WebStorm`. */
47
+ application?: string;
48
+ }
49
+ /**
50
+ * How to open a terminal. By default devcc uses Terminal on macOS.
51
+ * `application` names another macOS app; `command` + `args` launches anything
52
+ * else, with `{path}` in an argument replaced by the directory.
53
+ */
54
+ export interface TerminalConfig {
55
+ application?: string;
56
+ command?: string;
57
+ /** Arguments to open a directory (default `["{path}"]`). */
58
+ args?: string[];
59
+ /** Arguments that make `command` run a program, e.g. `["start", "--"]` for WezTerm; used for SSH. */
60
+ execArgs?: string[];
61
+ }
62
+ export interface WorktreesConfig {
63
+ /** Where new worktrees go, relative to the main worktree (default `..`). */
64
+ directory?: string;
65
+ }
66
+ /**
67
+ * A development machine reached over SSH. `host` may be an alias from
68
+ * `~/.ssh/config`; devcc resolves it with `ssh -G` and never stores credentials.
69
+ */
70
+ export interface RemoteMachineConfig {
71
+ id: string;
72
+ name: string;
73
+ host: string;
74
+ transport: "ssh";
75
+ /** Overrides the port from SSH config. */
76
+ port?: number;
77
+ /** Overrides the user from SSH config. */
78
+ user?: string;
79
+ /** Ids of `services` entries that run on this machine. */
80
+ services?: string[];
26
81
  }
27
82
  export interface RefreshIntervals {
28
83
  system?: number;
@@ -47,8 +102,18 @@ export interface DevccConfig {
47
102
  /** Cap for each log source's ring buffer. */
48
103
  maxLogLines?: number;
49
104
  logLevel?: LogLevel;
105
+ /** Editor for "open in editor" (default: `$VISUAL`/`$EDITOR` is not used; see README). */
106
+ editor?: EditorConfig;
107
+ terminal?: TerminalConfig;
108
+ /** Override or add AI agents, keyed by id (`claude`, `codex`, or your own). */
109
+ agents?: Record<string, AgentConfig>;
110
+ worktrees?: WorktreesConfig;
111
+ /** Steps for `devcc verify`: command ids, package.json scripts, or inline steps. */
112
+ verify?: VerifyEntry[];
113
+ remoteMachines?: RemoteMachineConfig[];
50
114
  }
51
- export type ResolvedConfig = Required<Pick<DevccConfig, "processes" | "commands" | "services" | "projects" | "projectSearchDirs">> & Omit<DevccConfig, "processes" | "commands" | "services" | "projects" | "projectSearchDirs"> & {
115
+ type ListFields = "processes" | "commands" | "services" | "projects" | "projectSearchDirs" | "verify" | "remoteMachines" | "agents";
116
+ export type ResolvedConfig = Required<Pick<DevccConfig, ListFields>> & Omit<DevccConfig, ListFields> & {
52
117
  refresh: Required<RefreshIntervals>;
53
118
  };
54
119
  export declare const DEFAULT_REFRESH: Required<RefreshIntervals>;
@@ -78,4 +143,5 @@ export interface LoadedConfig extends ValidationResult {
78
143
  * works identically under Bun and Node.
79
144
  */
80
145
  export declare function loadConfig(rootDir: string): Promise<LoadedConfig>;
146
+ export {};
81
147
  //# sourceMappingURL=config.d.ts.map