@lore-co/cli 0.1.24 → 0.1.26

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 (48) hide show
  1. package/README.md +76 -5
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +50 -4
  4. package/dist/cli.js.map +1 -1
  5. package/dist/codex-hook-approval.d.ts +13 -0
  6. package/dist/codex-hook-approval.d.ts.map +1 -0
  7. package/dist/codex-hook-approval.js +96 -0
  8. package/dist/codex-hook-approval.js.map +1 -0
  9. package/dist/devin-capture.d.ts +25 -0
  10. package/dist/devin-capture.d.ts.map +1 -0
  11. package/dist/devin-capture.js +177 -0
  12. package/dist/devin-capture.js.map +1 -0
  13. package/dist/devin-cli.d.ts +21 -0
  14. package/dist/devin-cli.d.ts.map +1 -0
  15. package/dist/devin-cli.js +432 -0
  16. package/dist/devin-cli.js.map +1 -0
  17. package/dist/devin.d.ts.map +1 -1
  18. package/dist/devin.js +15 -8
  19. package/dist/devin.js.map +1 -1
  20. package/dist/generated-assets.d.ts +4 -4
  21. package/dist/generated-assets.js +4 -4
  22. package/dist/image-capture.d.ts +62 -0
  23. package/dist/image-capture.d.ts.map +1 -0
  24. package/dist/image-capture.js +266 -0
  25. package/dist/image-capture.js.map +1 -0
  26. package/dist/invocation-health-writer.d.ts.map +1 -1
  27. package/dist/invocation-health-writer.js +5 -1
  28. package/dist/invocation-health-writer.js.map +1 -1
  29. package/dist/recovery-state.d.ts +1 -1
  30. package/dist/recovery.d.ts +2 -2
  31. package/dist/recovery.d.ts.map +1 -1
  32. package/dist/recovery.js +37 -22
  33. package/dist/recovery.js.map +1 -1
  34. package/dist/reliability-store.d.ts.map +1 -1
  35. package/dist/reliability-store.js +2 -1
  36. package/dist/reliability-store.js.map +1 -1
  37. package/dist/runtime.d.ts +4 -0
  38. package/dist/runtime.d.ts.map +1 -1
  39. package/dist/runtime.js +34 -0
  40. package/dist/runtime.js.map +1 -1
  41. package/dist/self-host.d.ts +1 -1
  42. package/dist/self-host.js +2 -2
  43. package/dist/share.d.ts +3 -0
  44. package/dist/share.d.ts.map +1 -0
  45. package/dist/share.js +51 -0
  46. package/dist/share.js.map +1 -0
  47. package/dist/update.js +3 -3
  48. package/package.json +7 -3
@@ -0,0 +1,432 @@
1
+ import { execFile } from "node:child_process";
2
+ import { constants } from "node:fs";
3
+ import { chmod, mkdir, open, readdir, rename, rm, stat } from "node:fs/promises";
4
+ import { randomUUID } from "node:crypto";
5
+ import { basename, dirname, resolve } from "node:path";
6
+ import { promisify } from "node:util";
7
+ import { setTimeout as delay } from "node:timers/promises";
8
+ import { z } from "zod";
9
+ import { redactSensitiveText, stripLoreInjectedContext, WorkspaceIdentityResponseSchema } from "@lore-co/core";
10
+ import { readHostConnection } from "./host.js";
11
+ import { canonicalRepositoryScope, repositoryScopeFromGitRoot } from "./repository.js";
12
+ import { atomicWriteJson } from "./reliability-store.js";
13
+ import { DevinCapture, devinCaptureKey, devinHash, readDevinJson } from "./devin-capture.js";
14
+ import { cliInvocation, removeRecoveryShell } from "./recovery.js";
15
+ import { findAgentExecutable } from "./agents.js";
16
+ const exec = promisify(execFile);
17
+ const quote = (value) => `'${value.replaceAll("'", "'\\''")}'`;
18
+ const START = "# >>> Lore Devin capture >>>";
19
+ const END = "# <<< Lore Devin capture <<<";
20
+ const OWNER = "--owner lore-devin-cli";
21
+ const HOOK_EVENTS = ["UserPromptSubmit", "Stop", "SessionEnd"];
22
+ const RecordObject = z.record(z.string(), z.unknown());
23
+ const Run = z.object({
24
+ version: z.literal(1), exportPath: z.string(), managed: z.boolean(),
25
+ cwd: z.string(), repo: z.string().optional(), key: z.string(),
26
+ startedAt: z.string(), initialMtime: z.number().nullable(),
27
+ closed: z.boolean().optional(),
28
+ closedMtime: z.number().nullable().optional(),
29
+ });
30
+ const directory = (home) => resolve(home, ".lore", "devin-cli");
31
+ const runsDirectory = (home, key) => resolve(directory(home), "runs", key);
32
+ export const devinCaptureEnabled = (home) => stat(resolve(directory(home), "installation.json")).then(() => true, () => false);
33
+ export const DEVIN_CLI_HELP = `lore devin cli
34
+ Record local Devin conversations in Lore with automatic ATIF exports.
35
+
36
+ Usage:
37
+ lore devin cli setup Enable capture for the devin command in bash/zsh
38
+ lore devin cli -- [args] Run Devin with automatic capture immediately
39
+ lore devin cli status Show the last capture and pending uploads
40
+ lore devin cli sync Retry retained exports and queued uploads
41
+ lore devin cli off Remove the shell integration and Lore's Devin hooks
42
+
43
+ Sign in with devin auth login and approve the repository in interactive Devin.
44
+ Workspace trust and Devin permissions remain in effect. Cloud sessions continue
45
+ to use lore devin start. Setup uses your existing Lore connection.
46
+ `;
47
+ export function removeDevinShell(text) {
48
+ const start = text.indexOf(START);
49
+ if (start < 0)
50
+ return text;
51
+ const end = text.indexOf(END, start);
52
+ if (end < 0)
53
+ throw new Error("Lore Devin shell block is incomplete");
54
+ return text.slice(0, start) + text.slice(end + END.length).replace(/^\r?\n/u, "");
55
+ }
56
+ export function mergeDevinHooks(value, command) {
57
+ const config = RecordObject.parse(structuredClone(value));
58
+ const hooks = RecordObject.parse(config.hooks ?? {});
59
+ for (const event of HOOK_EVENTS) {
60
+ const groups = z.array(RecordObject).parse(hooks[event] ?? []).flatMap(group => {
61
+ const handlers = z.array(RecordObject).parse(group.hooks);
62
+ const remaining = handlers.filter(handler => typeof handler.command !== "string" || !handler.command.includes(OWNER));
63
+ return remaining.length ? [{ ...group, hooks: remaining }] : [];
64
+ });
65
+ if (command)
66
+ groups.push({ hooks: [{ type: "command", command, timeout: event === "UserPromptSubmit" ? 15 : 3 }] });
67
+ if (groups.length)
68
+ hooks[event] = groups;
69
+ else
70
+ delete hooks[event];
71
+ }
72
+ if (Object.keys(hooks).length)
73
+ config.hooks = hooks;
74
+ else
75
+ delete config.hooks;
76
+ return config;
77
+ }
78
+ /** Devin reads Claude hooks too. Gate only Lore's commands, retaining user hooks. */
79
+ export function claudeOnlyCommand(command) {
80
+ return command.includes('DEVIN_PROJECT_DIR') ? command : `if [ -z "\${DEVIN_PROJECT_DIR:-}" ]; then ${command} ; fi`;
81
+ }
82
+ async function textFile(path) {
83
+ let file;
84
+ try {
85
+ file = await open(path, constants.O_RDONLY | constants.O_NOFOLLOW);
86
+ }
87
+ catch (error) {
88
+ if (error.code === "ENOENT")
89
+ return "";
90
+ throw error;
91
+ }
92
+ try {
93
+ const info = await file.stat();
94
+ if (!info.isFile() || info.size > 4 * 1024 * 1024 || (process.getuid && info.uid !== process.getuid()))
95
+ throw new Error(`Cannot safely update ${path}`);
96
+ return await file.readFile("utf8");
97
+ }
98
+ finally {
99
+ await file.close();
100
+ }
101
+ }
102
+ async function replaceText(path, previous, value) {
103
+ if (previous === value)
104
+ return;
105
+ if (await textFile(path) !== previous)
106
+ throw new Error(`Configuration changed during setup: ${path}`);
107
+ await mkdir(dirname(path), { recursive: true, mode: 0o700 });
108
+ if (previous) {
109
+ const backup = await open(`${path}.lore-devin-backup-${randomUUID()}`, "wx", 0o600);
110
+ try {
111
+ await backup.writeFile(previous);
112
+ }
113
+ finally {
114
+ await backup.close();
115
+ }
116
+ }
117
+ const temporary = `${path}.lore-${randomUUID()}`;
118
+ const file = await open(temporary, "wx", 0o600);
119
+ try {
120
+ await file.writeFile(value);
121
+ await file.sync();
122
+ }
123
+ finally {
124
+ await file.close();
125
+ }
126
+ try {
127
+ await rename(temporary, path);
128
+ }
129
+ finally {
130
+ await rm(temporary, { force: true });
131
+ }
132
+ }
133
+ export async function setupDevinCli(home, env = process.env) {
134
+ const connection = await readHostConnection(env, home);
135
+ const response = await fetch(`${connection.apiUrl}/v1/workspace/identity`, {
136
+ headers: { authorization: `Bearer ${connection.token}` }, signal: AbortSignal.timeout(connection.timeoutMs),
137
+ });
138
+ if (!response.ok)
139
+ throw new Error("Reconnect Lore before enabling Devin capture");
140
+ WorkspaceIdentityResponseSchema.parse(await response.json());
141
+ await findAgentExecutable("devin", env);
142
+ const shell = basename(env.SHELL ?? "");
143
+ if (shell !== "zsh" && shell !== "bash")
144
+ throw new Error("Automatic setup supports bash and zsh. Use lore devin cli -- [args] in other shells.");
145
+ const shellPaths = [resolve(shell === "zsh" ? env.ZDOTDIR || home : home, shell === "zsh" ? ".zshrc" : ".bashrc")];
146
+ if (shell === "bash") {
147
+ let login = resolve(home, ".bash_profile");
148
+ for (const name of [".bash_profile", ".bash_login", ".profile"]) {
149
+ const candidate = resolve(home, name);
150
+ if (await stat(candidate).then(() => true, () => false)) {
151
+ login = candidate;
152
+ break;
153
+ }
154
+ }
155
+ shellPaths.push(login);
156
+ }
157
+ const invocation = `env -u BUN_OPTIONS -u BUN_BE_BUN LORE_HOME=${quote(home)} ${cliInvocation().map(quote).join(" ")}`;
158
+ const edits = [];
159
+ for (const path of shellPaths) {
160
+ const previous = await textFile(path);
161
+ const base = removeDevinShell(previous);
162
+ if (/(?:^|\n)\s*(?:function\s+devin\b|devin\s*\(\s*\)|alias\s+devin=)/u.test(removeRecoveryShell(base))) {
163
+ throw new Error("An existing devin alias or function needs to be retained. Use lore devin cli -- [args] or remove that override before setup.");
164
+ }
165
+ edits.push({ path, previous, value: `${base}${base && !base.endsWith("\n") ? "\n" : ""}${START}\ndevin() { ${invocation} run devin -- "$@"; }\n${END}\n` });
166
+ }
167
+ const configPath = resolve(env.XDG_CONFIG_HOME || resolve(home, ".config"), "devin", "config.json");
168
+ const previous = await textFile(configPath);
169
+ const config = mergeDevinHooks(previous ? JSON.parse(previous) : { version: 1 }, `${invocation} devin-cli-hook ${OWNER}`);
170
+ edits.push({ path: configPath, previous, value: `${JSON.stringify(config, null, 2)}\n` });
171
+ for (const name of [".claude.json", ".claude/settings.json", ".claude/settings.local.json"]) {
172
+ const path = resolve(home, name);
173
+ const prior = await textFile(path);
174
+ if (!prior)
175
+ continue;
176
+ const value = RecordObject.parse(JSON.parse(prior));
177
+ const hooks = RecordObject.safeParse(value.hooks);
178
+ if (!hooks.success)
179
+ continue;
180
+ for (const groups of Object.values(hooks.data)) {
181
+ if (!Array.isArray(groups))
182
+ continue;
183
+ for (const group of groups) {
184
+ if (!Array.isArray(group?.hooks))
185
+ continue;
186
+ for (const handler of group.hooks) {
187
+ if (typeof handler?.command === "string" && /--agent\s+claude\b/u.test(handler.command) && /--owner\s+lore(?:\s|$)/u.test(handler.command))
188
+ handler.command = claudeOnlyCommand(handler.command);
189
+ }
190
+ }
191
+ }
192
+ value.hooks = hooks.data;
193
+ edits.push({ path, previous: prior, value: `${JSON.stringify(value, null, 2)}\n` });
194
+ }
195
+ for (const edit of edits)
196
+ await replaceText(edit.path, edit.previous, edit.value);
197
+ await mkdir(directory(home), { recursive: true, mode: 0o700 });
198
+ await atomicWriteJson(resolve(directory(home), "installation.json"), { shellPaths, configPath });
199
+ return `Devin capture enabled. Open a new terminal or run: source ${quote(shellPaths[0])}\nUse devin as usual. Lore exports and records completed turns automatically.\n`;
200
+ }
201
+ export async function disableDevinCli(home) {
202
+ const path = resolve(directory(home), "installation.json");
203
+ let installation;
204
+ try {
205
+ installation = z.object({ shellPaths: z.array(z.string()), configPath: z.string() }).parse(await readDevinJson(path));
206
+ }
207
+ catch (error) {
208
+ if (error.code === "ENOENT")
209
+ return;
210
+ throw error;
211
+ }
212
+ for (const shellPath of installation.shellPaths) {
213
+ const previous = await textFile(shellPath);
214
+ await replaceText(shellPath, previous, removeDevinShell(previous));
215
+ }
216
+ const previous = await textFile(installation.configPath);
217
+ if (previous)
218
+ await replaceText(installation.configPath, previous, `${JSON.stringify(mergeDevinHooks(JSON.parse(previous)), null, 2)}\n`);
219
+ await rm(path);
220
+ }
221
+ export function devinLaunchArguments(args, managedExport) {
222
+ const end = args.indexOf("--") < 0 ? args.length : args.indexOf("--");
223
+ const options = args.slice(0, end);
224
+ if (["auth", "mcp", "models", "rules", "skills", "plugins", "cloud", "list", "ls", "update", "version", "migrate", "sandbox", "setup", "uninstall", "acp", "desktop", "help"].includes(args[0] ?? "") || options.some(arg => ["--help", "-h", "--version", "-v", "-V"].includes(arg)))
225
+ return null;
226
+ const next = [...args];
227
+ const index = options.findIndex(arg => arg === "--export" || arg.startsWith("--export="));
228
+ if (index >= 0) {
229
+ const equal = options[index].startsWith("--export=") ? options[index].slice(9) : undefined;
230
+ const explicit = equal ?? (index + 1 < end && !options[index + 1].startsWith("-") ? options[index + 1] : undefined);
231
+ if (explicit)
232
+ return { args: next, exportPath: resolve(explicit), managed: false };
233
+ next.splice(index, 1);
234
+ }
235
+ return { args: ["--export", managedExport, ...next], exportPath: managedExport, managed: true };
236
+ }
237
+ async function repoFor(cwd) {
238
+ try {
239
+ const root = (await exec("git", ["-C", cwd, "rev-parse", "--show-toplevel"], { timeout: 2000 })).stdout.trim();
240
+ try {
241
+ return canonicalRepositoryScope((await exec("git", ["-C", root, "remote", "get-url", "origin"], { timeout: 2000 })).stdout.trim());
242
+ }
243
+ catch {
244
+ return repositoryScopeFromGitRoot(root);
245
+ }
246
+ }
247
+ catch {
248
+ return undefined;
249
+ }
250
+ }
251
+ async function syncRun(capture, runPath) {
252
+ const run = Run.parse(await readDevinJson(resolve(runPath, "run.json")));
253
+ if (run.key !== devinCaptureKey(capture.connection))
254
+ throw new Error("Devin capture belongs to another Lore connection");
255
+ let info;
256
+ try {
257
+ info = await stat(run.exportPath);
258
+ }
259
+ catch (error) {
260
+ if (error.code === "ENOENT") {
261
+ if (run.closed)
262
+ await rm(runPath, { recursive: true, force: true });
263
+ return false;
264
+ }
265
+ throw error;
266
+ }
267
+ if (run.closed && run.closedMtime !== undefined && info.mtimeMs !== run.closedMtime) {
268
+ throw new Error("The Devin export changed after this run closed; refusing to import it with an old repository scope");
269
+ }
270
+ if (info.mtimeMs === run.initialMtime) {
271
+ if (run.closed)
272
+ await rm(runPath, { recursive: true, force: true });
273
+ return false;
274
+ }
275
+ const syncedPath = resolve(runPath, "synced.json");
276
+ const synced = z.object({ mtime: z.number(), size: z.number() }).safeParse(await readDevinJson(syncedPath).catch(() => null));
277
+ if (synced.success && synced.data.mtime === info.mtimeMs && synced.data.size === info.size) {
278
+ if (run.closed)
279
+ await rm(runPath, { recursive: true, force: true });
280
+ return true;
281
+ }
282
+ const value = await readDevinJson(run.exportPath);
283
+ const after = await stat(run.exportPath);
284
+ if (after.mtimeMs !== info.mtimeMs || after.size !== info.size)
285
+ return false;
286
+ await capture.ingest(value, run.repo, dirname(run.exportPath));
287
+ await atomicWriteJson(syncedPath, { mtime: info.mtimeMs, size: info.size });
288
+ // The outbox now owns the redacted capture. Keep user-requested exports;
289
+ // managed raw exports are removed when the session closes.
290
+ if (run.closed)
291
+ await rm(runPath, { recursive: true, force: true });
292
+ return true;
293
+ }
294
+ export async function syncDevinCaptures(capture, home) {
295
+ const root = runsDirectory(home, devinCaptureKey(capture.connection));
296
+ const runs = await readdir(root).catch((error) => { if (error.code === "ENOENT")
297
+ return []; throw error; });
298
+ for (const name of runs) {
299
+ if (!/^[0-9a-f-]{36}$/u.test(name))
300
+ continue;
301
+ try {
302
+ await syncRun(capture, resolve(root, name));
303
+ }
304
+ catch (error) {
305
+ if (error.code === "ENOENT")
306
+ continue;
307
+ process.stderr.write("Lore retained an unreadable Devin export. Other pending captures will still be uploaded.\n");
308
+ }
309
+ }
310
+ await capture.flush();
311
+ }
312
+ export async function captureDevinSession(command, args, home, launch) {
313
+ const runId = randomUUID();
314
+ // Commands such as auth and model listing do not require a Lore connection.
315
+ if (!devinLaunchArguments(args, "unused"))
316
+ return launch(command, [...args], process.env);
317
+ const connection = await readHostConnection(process.env, home);
318
+ const capture = new DevinCapture(connection, home);
319
+ const runPath = resolve(runsDirectory(home, devinCaptureKey(connection)), runId);
320
+ const prepared = devinLaunchArguments(args, resolve(runPath, "conversation.atif.json"));
321
+ await mkdir(runPath, { recursive: true, mode: 0o700 });
322
+ await chmod(runPath, 0o700);
323
+ const run = Run.parse({ version: 1, ...prepared, args: undefined, cwd: process.cwd(), repo: await repoFor(process.cwd()), key: devinCaptureKey(connection), startedAt: new Date().toISOString(), initialMtime: await stat(prepared.exportPath).then(info => info.mtimeMs, () => null) });
324
+ await atomicWriteJson(resolve(runPath, "run.json"), run);
325
+ let warned = false;
326
+ const sync = async (final = false) => {
327
+ try {
328
+ await syncRun(capture, runPath);
329
+ await capture.flush();
330
+ }
331
+ catch (error) {
332
+ if (error instanceof SyntaxError && !final)
333
+ return; // Export is still being replaced.
334
+ if (!warned) {
335
+ process.stderr.write("Lore could not finish Devin capture. The export is retained; run lore devin cli sync to retry.\n");
336
+ warned = true;
337
+ }
338
+ }
339
+ };
340
+ await syncDevinCaptures(capture, home).catch(() => { });
341
+ let stopped = false;
342
+ const watcher = (async () => { while (!stopped) {
343
+ await delay(750);
344
+ if (!stopped)
345
+ await sync();
346
+ } })();
347
+ try {
348
+ await launch(command, prepared.args, { ...process.env, LORE_HOME: home, LORE_DEVIN_CAPTURE_DIR: runPath });
349
+ }
350
+ finally {
351
+ stopped = true;
352
+ await watcher;
353
+ await atomicWriteJson(resolve(runPath, "run.json"), { ...run, closed: true, closedMtime: await stat(run.exportPath).then(info => info.mtimeMs, () => null) });
354
+ await sync(true);
355
+ const state = await capture.status();
356
+ if (state.pending || state.authBlocked || state.failed)
357
+ process.stderr.write(`Lore: ${state.pending + state.authBlocked + state.failed} Devin capture(s) await upload. Run lore devin cli sync to retry.\n`);
358
+ }
359
+ }
360
+ export async function runDevinCliHook(home, input, env = process.env) {
361
+ const runPath = env.LORE_DEVIN_CAPTURE_DIR;
362
+ if (!runPath)
363
+ return;
364
+ const connection = await readHostConnection(env, home);
365
+ const root = runsDirectory(home, devinCaptureKey(connection));
366
+ if (dirname(resolve(runPath)) !== root || !/^[0-9a-f-]{36}$/u.test(basename(runPath)))
367
+ return;
368
+ if (input === undefined) {
369
+ let bytes = 0;
370
+ let body = "";
371
+ for await (const chunk of process.stdin) {
372
+ bytes += Buffer.byteLength(chunk);
373
+ if (bytes > 1024 * 1024)
374
+ throw new Error("Devin hook payload is too large");
375
+ body += String(chunk);
376
+ }
377
+ input = JSON.parse(body);
378
+ }
379
+ const event = z.object({ hook_event_name: z.enum(["UserPromptSubmit", "Stop", "SessionEnd"]), session_id: z.string().min(1), prompt_id: z.string().optional(), prompt: z.string().optional(), last_assistant_message: z.string().optional() }).parse(input);
380
+ // Stop is valid even without assistant text. The wrapper reads the next export
381
+ // after Stop returns, including Devin versions that export after their hooks.
382
+ if (event.hook_event_name !== "UserPromptSubmit")
383
+ return;
384
+ if (!event.prompt?.trim() || !event.prompt_id)
385
+ return;
386
+ const run = Run.parse(await readDevinJson(resolve(runPath, "run.json")));
387
+ const capture = new DevinCapture(connection, home);
388
+ const prompt = redactSensitiveText(stripLoreInjectedContext(event.prompt)).text;
389
+ const delivered = await capture.client.deliverContext({
390
+ connector: "devin-cli", eventId: `devin-cli:prompt:${devinHash(`${event.session_id}:${event.prompt_id}`)}`,
391
+ sessionId: event.session_id,
392
+ task: { agent: "devin", task: prompt, ...(run.repo ? { scope: { repo: run.repo } } : {}) },
393
+ });
394
+ if (!delivered.context.trim())
395
+ return;
396
+ return { hookSpecificOutput: { hookEventName: "UserPromptSubmit", additionalContext: delivered.context } };
397
+ }
398
+ export async function runDevinCli(args, home) {
399
+ if (args[0] === "--") {
400
+ const { runWrappedAgent } = await import("./recovery.js");
401
+ const { getLorePaths } = await import("./cli.js");
402
+ return runWrappedAgent(["devin", "--", ...args.slice(1)], getLorePaths(home), true);
403
+ }
404
+ if (args.some(arg => arg === "--help" || arg === "-h")) {
405
+ process.stdout.write(DEVIN_CLI_HELP);
406
+ return;
407
+ }
408
+ if (args.length > 1)
409
+ throw new Error("Unexpected Devin CLI option. Use lore devin cli --help.");
410
+ if (args[0] === "setup") {
411
+ process.stdout.write(await setupDevinCli(home));
412
+ return;
413
+ }
414
+ if (args[0] === "off") {
415
+ await disableDevinCli(home);
416
+ process.stdout.write("Devin capture disabled. Open a new terminal to remove the shell wrapper.\n");
417
+ return;
418
+ }
419
+ if (args[0] === "status" || args[0] === "sync") {
420
+ const capture = new DevinCapture(await readHostConnection(process.env, home), home);
421
+ if (args[0] === "sync") {
422
+ await capture.store.releaseAuthBlocked();
423
+ await syncDevinCaptures(capture, home);
424
+ }
425
+ process.stdout.write(`${JSON.stringify(await capture.status(), null, 2)}\n`);
426
+ return;
427
+ }
428
+ if (args.length && !["--help", "-h"].includes(args[0]))
429
+ throw new Error("Use lore devin cli -- [Devin arguments], or lore devin cli --help");
430
+ process.stdout.write(DEVIN_CLI_HELP);
431
+ }
432
+ //# sourceMappingURL=devin-cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devin-cli.js","sourceRoot":"","sources":["../src/devin-cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"devin.d.ts","sourceRoot":"","sources":["../src/devin.ts"],"names":[],"mappings":"AAuoBA,wBAAsB,eAAe,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA8B5E"}
1
+ {"version":3,"file":"devin.d.ts","sourceRoot":"","sources":["../src/devin.ts"],"names":[],"mappings":"AA2oBA,wBAAsB,eAAe,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAiC5E"}
package/dist/devin.js CHANGED
@@ -2,6 +2,7 @@ import { createHash } from "node:crypto";
2
2
  import { readFile, writeFile } from "node:fs/promises";
3
3
  import { resolve } from "node:path";
4
4
  import { redactSensitiveText, redactUnknown } from "@lore-co/core";
5
+ import { SharedMemoryClient } from "@lore-co/sdk";
5
6
  import { z } from "zod";
6
7
  import { getLorePaths } from "./cli.js";
7
8
  import { DevinApiClient, } from "./devin-client.js";
@@ -60,6 +61,8 @@ const DEVIN_HELP = `lore devin
60
61
  Start and manage Lore-enabled Devin sessions.
61
62
 
62
63
  Usage:
64
+ lore devin cli setup
65
+ lore devin cli -- [Devin CLI arguments]
63
66
  lore devin setup
64
67
  lore devin start --repo <owner/repo> --prompt <text> [options]
65
68
  lore devin prompt --session <devin-id> --repo <owner/repo> --prompt <text> [options]
@@ -393,15 +396,16 @@ async function setup() {
393
396
  const client = devinClient();
394
397
  await client.checkAccess();
395
398
  const connection = await loreConnection();
396
- const health = await fetch(`${connection.apiUrl}/health`, {
397
- signal: AbortSignal.timeout(10_000),
398
- });
399
- if (!health.ok) {
400
- throw new Error(`Lore health check failed with HTTP ${health.status}`);
401
- }
399
+ await new SharedMemoryClient({
400
+ baseUrl: connection.apiUrl,
401
+ headers: { authorization: `Bearer ${connection.token}` },
402
+ timeoutMs: 10_000,
403
+ }).getWorkspaceIdentity();
402
404
  process.stdout.write(`${JSON.stringify({
403
- devin: "connected",
404
- lore: "connected",
405
+ devin: "api_access_verified",
406
+ lore: "workspace_access_verified",
407
+ recording: "not_verified",
408
+ nextStep: "Verify polling and the repository allowlist on the Lore API, then start or register a Devin session and confirm captured activity. API access alone does not verify recording.",
405
409
  organizationId: client.organizationId,
406
410
  }, null, 2)}\n`);
407
411
  }
@@ -450,6 +454,9 @@ async function terminate(args) {
450
454
  }
451
455
  export async function runDevinCommand(args) {
452
456
  switch (args[0]) {
457
+ case "cli":
458
+ await (await import("./devin-cli.js")).runDevinCli(args.slice(1), getLorePaths(process.env.LORE_HOME).home);
459
+ return;
453
460
  case "--help":
454
461
  case "-h":
455
462
  case undefined:
package/dist/devin.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"devin.js","sourceRoot":"","sources":["../src/devin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"devin.js","sourceRoot":"","sources":["../src/devin.ts"],"names":[],"mappings":"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"}