@lore-co/cli 0.2.22 → 0.2.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +109 -13
- package/dist/approach-guidance.js +2 -2
- package/dist/approach-guidance.js.map +1 -1
- package/dist/approach.d.ts +1 -1
- package/dist/approach.d.ts.map +1 -1
- package/dist/approach.js +7 -0
- package/dist/approach.js.map +1 -1
- package/dist/ask.d.ts +2 -6
- package/dist/ask.d.ts.map +1 -1
- package/dist/ask.js +4 -21
- package/dist/ask.js.map +1 -1
- package/dist/chat.d.ts +15 -0
- package/dist/chat.d.ts.map +1 -0
- package/dist/chat.js +286 -0
- package/dist/chat.js.map +1 -0
- package/dist/cli.d.ts +80 -7
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +626 -142
- package/dist/cli.js.map +1 -1
- package/dist/command-help.d.ts +4 -1
- package/dist/command-help.d.ts.map +1 -1
- package/dist/command-help.js +9 -0
- package/dist/command-help.js.map +1 -1
- package/dist/devin-capture.d.ts +6 -0
- package/dist/devin-capture.d.ts.map +1 -1
- package/dist/devin-capture.js +34 -3
- package/dist/devin-capture.js.map +1 -1
- package/dist/devin-cli.d.ts +7 -2
- package/dist/devin-cli.d.ts.map +1 -1
- package/dist/devin-cli.js +81 -8
- package/dist/devin-cli.js.map +1 -1
- package/dist/generated-assets.d.ts +8 -6
- package/dist/generated-assets.d.ts.map +1 -1
- package/dist/generated-assets.js +8 -6
- package/dist/generated-assets.js.map +1 -1
- package/dist/generic-mcp.d.ts +35 -0
- package/dist/generic-mcp.d.ts.map +1 -0
- package/dist/generic-mcp.js +83 -0
- package/dist/generic-mcp.js.map +1 -0
- package/dist/learnings.d.ts +20 -0
- package/dist/learnings.d.ts.map +1 -1
- package/dist/learnings.js +25 -16
- package/dist/learnings.js.map +1 -1
- package/dist/lore-agent.d.ts +50 -0
- package/dist/lore-agent.d.ts.map +1 -0
- package/dist/lore-agent.js +299 -0
- package/dist/lore-agent.js.map +1 -0
- package/dist/mcp-config.d.ts +46 -0
- package/dist/mcp-config.d.ts.map +1 -0
- package/dist/mcp-config.js +196 -0
- package/dist/mcp-config.js.map +1 -0
- package/dist/owned-files.d.ts +21 -0
- package/dist/owned-files.d.ts.map +1 -0
- package/dist/owned-files.js +88 -0
- package/dist/owned-files.js.map +1 -0
- package/dist/recovery-cloud.d.ts +1 -1
- package/dist/review.d.ts +30 -0
- package/dist/review.d.ts.map +1 -0
- package/dist/review.js +276 -0
- package/dist/review.js.map +1 -0
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +50 -19
- package/dist/runtime.js.map +1 -1
- package/dist/self-host.d.ts +1 -1
- package/dist/self-host.js +2 -2
- package/dist/skills.d.ts +2 -0
- package/dist/skills.d.ts.map +1 -1
- package/dist/skills.js +46 -97
- package/dist/skills.js.map +1 -1
- package/dist/update.d.ts.map +1 -1
- package/dist/update.js +39 -4
- package/dist/update.js.map +1 -1
- package/package.json +7 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review.js","sourceRoot":"","sources":["../src/review.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAkEvD,eAAO,MAAM,wBAAwB,sFAO3B,CAAC;AACX,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC7E,iFAAiF;AACjF,MAAM,MAAM,SAAS,GAAG,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime.js
CHANGED
|
@@ -367,6 +367,7 @@ async function readRuntimeConfig(home, cwd) {
|
|
|
367
367
|
token: parsed.token,
|
|
368
368
|
agents,
|
|
369
369
|
...(timeoutMs === undefined ? {} : { timeoutMs }),
|
|
370
|
+
capture: saved?.capture !== "off",
|
|
370
371
|
};
|
|
371
372
|
}
|
|
372
373
|
catch {
|
|
@@ -1305,13 +1306,17 @@ async function postPromptObservation(config, request, fetchImplementation, _stor
|
|
|
1305
1306
|
throw new IncompatibleReliabilityError("Lore observation response has no matching durable acknowledgement");
|
|
1306
1307
|
}
|
|
1307
1308
|
}
|
|
1308
|
-
async function getPromptContext(config, agent, sessionId, sourceEventId, prompt, gitContext, fetchImplementation, store, retained = []) {
|
|
1309
|
+
async function getPromptContext(config, agent, sessionId, sourceEventId, prompt, gitContext, fetchImplementation, store, retained = [], capture = true) {
|
|
1309
1310
|
const deliveryEventId = deterministicUuid(`lore-context\0${sourceEventId}`);
|
|
1310
1311
|
const deliveryRequest = redactRequestValues({
|
|
1311
1312
|
connector: "lore-cli",
|
|
1312
1313
|
eventId: deliveryEventId,
|
|
1313
1314
|
sessionId,
|
|
1314
1315
|
...(retained.length ? { retainedReceiptIds: retained } : {}),
|
|
1316
|
+
// Capture off: the server returns context and stores nothing from the
|
|
1317
|
+
// prompt. Older servers reject the field, and this runtime does not retry
|
|
1318
|
+
// without it, so they never receive a prompt they would keep.
|
|
1319
|
+
...(capture ? {} : { capture: false }),
|
|
1315
1320
|
task: {
|
|
1316
1321
|
agent,
|
|
1317
1322
|
...(gitContext.scope === undefined
|
|
@@ -1338,7 +1343,7 @@ async function getPromptContext(config, agent, sessionId, sourceEventId, prompt,
|
|
|
1338
1343
|
signal: AbortSignal.timeout(config.timeoutMs ?? 2_500),
|
|
1339
1344
|
});
|
|
1340
1345
|
if (response.status === 400 && retained.length) {
|
|
1341
|
-
return getPromptContext(config, agent, sessionId, sourceEventId, prompt, gitContext, fetchImplementation, store);
|
|
1346
|
+
return getPromptContext(config, agent, sessionId, sourceEventId, prompt, gitContext, fetchImplementation, store, [], capture);
|
|
1342
1347
|
}
|
|
1343
1348
|
if (!response.ok) {
|
|
1344
1349
|
throw new RuntimeHttpError(`Lore context request failed with HTTP ${response.status}`, response.status);
|
|
@@ -1472,9 +1477,9 @@ async function getCachedPromptContext(config, prompt, gitContext, store, now, re
|
|
|
1472
1477
|
},
|
|
1473
1478
|
};
|
|
1474
1479
|
}
|
|
1475
|
-
async function getPromptContextWithFallback(config, agent, sessionId, sourceEventId, prompt, gitContext, fetchImplementation, store, now, retained = [], failures) {
|
|
1480
|
+
async function getPromptContextWithFallback(config, agent, sessionId, sourceEventId, prompt, gitContext, fetchImplementation, store, now, retained = [], failures, capture = true) {
|
|
1476
1481
|
try {
|
|
1477
|
-
return await getPromptContext(config, agent, sessionId, sourceEventId, prompt, gitContext, fetchImplementation, store, retained);
|
|
1482
|
+
return await getPromptContext(config, agent, sessionId, sourceEventId, prompt, gitContext, fetchImplementation, store, retained, capture);
|
|
1478
1483
|
}
|
|
1479
1484
|
catch (error) {
|
|
1480
1485
|
failures?.push({
|
|
@@ -1934,6 +1939,12 @@ async function postGuardCheck(config, request, fetchImplementation, store) {
|
|
|
1934
1939
|
body: JSON.stringify(request),
|
|
1935
1940
|
signal: AbortSignal.timeout(Math.min(config.timeoutMs ?? GUARD_TIMEOUT_MS, GUARD_TIMEOUT_MS)),
|
|
1936
1941
|
});
|
|
1942
|
+
if (response.status === 400 && request.capture === false) {
|
|
1943
|
+
// Older servers reject the field. Guard is a safety check and its request
|
|
1944
|
+
// carries no prompt, so it still runs there.
|
|
1945
|
+
const { capture: _capture, ...compatible } = request;
|
|
1946
|
+
return postGuardCheck(config, compatible, fetchImplementation, store);
|
|
1947
|
+
}
|
|
1937
1948
|
if (!response.ok) {
|
|
1938
1949
|
throw new RuntimeHttpError(`Lore guard check failed with HTTP ${response.status}`, response.status);
|
|
1939
1950
|
}
|
|
@@ -2013,7 +2024,7 @@ async function offlineGuard(config, store, request, now, previouslyEnforced, all
|
|
|
2013
2024
|
};
|
|
2014
2025
|
}
|
|
2015
2026
|
}
|
|
2016
|
-
async function handleGuardEvent(input, agent, config, sessionId, options, now) {
|
|
2027
|
+
async function handleGuardEvent(input, agent, config, sessionId, options, now, capture = true) {
|
|
2017
2028
|
const toolName = stringField(input.tool_name);
|
|
2018
2029
|
if (toolName === undefined) {
|
|
2019
2030
|
return undefined;
|
|
@@ -2084,6 +2095,8 @@ async function handleGuardEvent(input, agent, config, sessionId, options, now) {
|
|
|
2084
2095
|
...(trigger.command === undefined
|
|
2085
2096
|
? {}
|
|
2086
2097
|
: { command: redactSecrets(trigger.command) }),
|
|
2098
|
+
// Capture off: the audit record keeps the decision, not the command or files.
|
|
2099
|
+
...(capture ? {} : { capture: false }),
|
|
2087
2100
|
};
|
|
2088
2101
|
try {
|
|
2089
2102
|
result = await postGuardCheck(config, guardRequest, options.fetch ?? globalThis.fetch, store);
|
|
@@ -2223,6 +2236,11 @@ export async function handleHookEvent(value, agent, options = {}) {
|
|
|
2223
2236
|
return agent === "cursor" && eventName === "UserPromptSubmit" ? { continue: true } : undefined;
|
|
2224
2237
|
}
|
|
2225
2238
|
const now = (options.now ?? (() => new Date()))();
|
|
2239
|
+
// One definition of "capture off": the machine's retrieval-only mode, or a
|
|
2240
|
+
// workspace or personal switch paused in the dashboard. The switches arrive
|
|
2241
|
+
// with the repository policy fetched above, so a pause reaches every
|
|
2242
|
+
// connected machine on its next hook event without re-running lore connect.
|
|
2243
|
+
const capture = config.capture && access.capturePausedBy === undefined;
|
|
2226
2244
|
if (agent === "cursor" && eventName === "SessionStart") {
|
|
2227
2245
|
const cwd = stringField(input.cwd);
|
|
2228
2246
|
if (!cwd)
|
|
@@ -2232,12 +2250,21 @@ export async function handleHookEvent(value, agent, options = {}) {
|
|
|
2232
2250
|
return { additional_context: [
|
|
2233
2251
|
"Lore shared context is connected through the lore-native MCP server.",
|
|
2234
2252
|
`For this conversation use sessionId ${JSON.stringify(sessionId)}.`,
|
|
2235
|
-
|
|
2253
|
+
capture
|
|
2254
|
+
? "Before answering each user request or using other tools, call lore_context with that sessionId and the full user message as prompt. This retrieves relevant shared knowledge and records durable teachings through Lore's normal capture pipeline."
|
|
2255
|
+
: "Before answering each user request or using other tools, call lore_context with that sessionId and the full user message as prompt. This retrieves relevant shared knowledge; automatic capture is paused, so nothing is recorded.",
|
|
2236
2256
|
"Use the returned context when relevant. If retrieval fails, report that limitation; do not invent shared knowledge.",
|
|
2237
|
-
"After completing each response, call lore_complete with the same sessionId and a concise response summary so the next user correction retains the prior attempt. These Lore calls are available through MCP and require no shell commands.",
|
|
2257
|
+
...(capture ? ["After completing each response, call lore_complete with the same sessionId and a concise response summary so the next user correction retains the prior attempt. These Lore calls are available through MCP and require no shell commands."] : ["These Lore calls are available through MCP and require no shell commands."]),
|
|
2238
2258
|
].join("\n") };
|
|
2239
2259
|
}
|
|
2240
2260
|
if (eventName === "Stop" || eventName === "AssistantResponse") {
|
|
2261
|
+
if (!capture) {
|
|
2262
|
+
// Retrieval-only mode or a paused switch: a capture hook left behind by
|
|
2263
|
+
// an older install still records nothing, and no turn from before the
|
|
2264
|
+
// switch is kept.
|
|
2265
|
+
await clearPending(agent, sessionId, options.home, config.connectionId);
|
|
2266
|
+
return undefined;
|
|
2267
|
+
}
|
|
2241
2268
|
await savePending(input, agent, sessionId, now, options.home, config.connectionId);
|
|
2242
2269
|
{
|
|
2243
2270
|
const store = await runtimeStore(config, options.home);
|
|
@@ -2261,7 +2288,7 @@ export async function handleHookEvent(value, agent, options = {}) {
|
|
|
2261
2288
|
}
|
|
2262
2289
|
if (eventName === "PreToolUse") {
|
|
2263
2290
|
try {
|
|
2264
|
-
return await handleGuardEvent(input, agent, config, sessionId, options, now);
|
|
2291
|
+
return await handleGuardEvent(input, agent, config, sessionId, options, now, capture);
|
|
2265
2292
|
}
|
|
2266
2293
|
catch {
|
|
2267
2294
|
const prior = await readGuardState(agent, sessionId, options.home, config.connectionId).catch(() => null);
|
|
@@ -2310,10 +2337,10 @@ export async function handleHookEvent(value, agent, options = {}) {
|
|
|
2310
2337
|
// delivers the context; capture here retains native editor event identity.
|
|
2311
2338
|
// Retrieve is skipped so the notice cooldown is not primed by a discarded
|
|
2312
2339
|
// result: the MCP `lore_context` call surfaces the reliability notice.
|
|
2313
|
-
await handlePromptEvent(input, agent, sessionId, config, options, now,
|
|
2340
|
+
await handlePromptEvent(input, agent, sessionId, config, options, now, capture, false);
|
|
2314
2341
|
return { continue: true };
|
|
2315
2342
|
}
|
|
2316
|
-
return handlePromptEvent(input, agent, sessionId, config, options, now);
|
|
2343
|
+
return handlePromptEvent(input, agent, sessionId, config, options, now, capture);
|
|
2317
2344
|
}
|
|
2318
2345
|
function cursorSessionKey(sessionId) {
|
|
2319
2346
|
return `cursor-session-${sha256(sessionId)}`;
|
|
@@ -2328,7 +2355,7 @@ async function cursorSession(sessionId, options) {
|
|
|
2328
2355
|
const saved = connections.find(value => value.connectionId === binding.connectionId);
|
|
2329
2356
|
if (!saved)
|
|
2330
2357
|
throw new Error("This Cursor connection is no longer available. Start a new conversation.");
|
|
2331
|
-
config = { ...saved, version: 2, agents: Array.isArray(saved.agents) ? saved.agents.filter(isCommandHookAgent) : [] };
|
|
2358
|
+
config = { ...saved, version: 2, agents: Array.isArray(saved.agents) ? saved.agents.filter(isCommandHookAgent) : [], capture: saved.capture !== "off" };
|
|
2332
2359
|
}
|
|
2333
2360
|
if (!config?.agents.includes("cursor"))
|
|
2334
2361
|
throw new Error("Reconnect Cursor to Lore before requesting context.");
|
|
@@ -2342,21 +2369,24 @@ async function cursorSession(sessionId, options) {
|
|
|
2342
2369
|
await clearRetrievalTask(store, { agent: "cursor", sessionId, connectionKey: credentialReliabilityWorkspaceKey(config) }).catch(() => undefined);
|
|
2343
2370
|
throw new Error(`Lore is off: ${access.reason}.`);
|
|
2344
2371
|
}
|
|
2345
|
-
|
|
2372
|
+
// Same definition as the native hooks: local mode and the dashboard switches.
|
|
2373
|
+
const capture = config.capture && access.capturePausedBy === undefined;
|
|
2374
|
+
return { config, store, state, cwd: stringField(state.cwd), capture };
|
|
2346
2375
|
}
|
|
2347
2376
|
export async function getCursorContext(sessionId, prompt, options = {}) {
|
|
2348
|
-
const { config, state, cwd } = await cursorSession(sessionId, options);
|
|
2377
|
+
const { config, state, cwd, capture } = await cursorSession(sessionId, options);
|
|
2349
2378
|
const now = (options.now ?? (() => new Date()))();
|
|
2350
2379
|
const result = await handlePromptEvent({ session_id: sessionId, cwd,
|
|
2351
2380
|
prompt: stringField(state.prompt) ?? prompt,
|
|
2352
2381
|
...(stringField(state.promptId) ? { prompt_id: state.promptId } : {}),
|
|
2353
|
-
}, "cursor", sessionId, config, options, now, stringField(state.prompt) === undefined);
|
|
2382
|
+
}, "cursor", sessionId, config, options, now, capture && stringField(state.prompt) === undefined);
|
|
2354
2383
|
return result?.additional_context || "No relevant shared knowledge was found for this request.";
|
|
2355
2384
|
}
|
|
2356
2385
|
export async function completeCursorResponse(sessionId, response, options = {}) {
|
|
2357
|
-
const { config, store, state, cwd } = await cursorSession(sessionId, options);
|
|
2386
|
+
const { config, store, state, cwd, capture } = await cursorSession(sessionId, options);
|
|
2358
2387
|
const now = (options.now ?? (() => new Date()))();
|
|
2359
|
-
|
|
2388
|
+
if (capture)
|
|
2389
|
+
await savePending({ cwd, last_assistant_message: response }, "cursor", sessionId, now, options.home, config.connectionId);
|
|
2360
2390
|
const { prompt: _prompt, promptId: _promptId, ...rest } = state;
|
|
2361
2391
|
await store.writeState(cursorSessionKey(sessionId), { ...rest, updatedAt: now.toISOString() });
|
|
2362
2392
|
}
|
|
@@ -2417,7 +2447,8 @@ async function handlePromptEvent(input, agent, sessionId, config, options, now,
|
|
|
2417
2447
|
}
|
|
2418
2448
|
const codexHome = (options.environment ?? process.env).CODEX_HOME ?? resolve(homeDirectory(options.home), ".codex");
|
|
2419
2449
|
const claudeHome = (options.environment ?? process.env).CLAUDE_CONFIG_DIR ?? resolve(homeDirectory(options.home), ".claude");
|
|
2420
|
-
|
|
2450
|
+
if (capture)
|
|
2451
|
+
await capturePendingImages(store, sessionId, codexHome, claudeHome).catch(() => undefined);
|
|
2421
2452
|
const contextSession = { agent, sessionId, cwd: stringField(input.cwd), transcriptPath: stringField(input.transcript_path), codexHome, claudeHome };
|
|
2422
2453
|
const retainedContext = await retainedContextTexts(contextSession);
|
|
2423
2454
|
const retained = retrieve ? await retainedReceiptIds(store, contextSession, retainedContext) : [];
|
|
@@ -2502,7 +2533,7 @@ async function handlePromptEvent(input, agent, sessionId, config, options, now,
|
|
|
2502
2533
|
learningScope: request.learningScope,
|
|
2503
2534
|
...(request.diff === undefined ? {} : { diff: request.diff }),
|
|
2504
2535
|
...(request.files === undefined ? {} : { files: request.files }),
|
|
2505
|
-
}, fetchImplementation, store, now, retained, retrievalFailures);
|
|
2536
|
+
}, fetchImplementation, store, now, retained, retrievalFailures, capture);
|
|
2506
2537
|
}
|
|
2507
2538
|
catch (error) {
|
|
2508
2539
|
retrievalFailures.push({ reason: classifyRetrievalFailure(error), agent, path: "context" });
|
|
@@ -2565,7 +2596,7 @@ async function handlePromptEvent(input, agent, sessionId, config, options, now,
|
|
|
2565
2596
|
}
|
|
2566
2597
|
if (retrieve) {
|
|
2567
2598
|
try {
|
|
2568
|
-
delivery = await getPromptContextWithFallback(config, agent, sessionId, observation.eventId, task, gitContext, fetchImplementation, store, now, retained, retrievalFailures);
|
|
2599
|
+
delivery = await getPromptContextWithFallback(config, agent, sessionId, observation.eventId, task, gitContext, fetchImplementation, store, now, retained, retrievalFailures, capture);
|
|
2569
2600
|
}
|
|
2570
2601
|
catch (error) {
|
|
2571
2602
|
retrievalFailures.push({ reason: classifyRetrievalFailure(error), agent, path: "context" });
|