@xrkseek/harness 0.4.8 → 0.4.9
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/node_modules/@xrkseek/cordis/LICENSE +21 -0
- package/node_modules/@xrkseek/cordis/README.md +14 -0
- package/node_modules/@xrkseek/cordis/bin.js +16 -0
- package/node_modules/@xrkseek/cordis/lib/index.js +1828 -0
- package/node_modules/@xrkseek/cordis/lib/types/context.d.ts +101 -0
- package/node_modules/@xrkseek/cordis/lib/types/context.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/lib/types/events.d.ts +240 -0
- package/node_modules/@xrkseek/cordis/lib/types/events.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/lib/types/fiber.d.ts +202 -0
- package/node_modules/@xrkseek/cordis/lib/types/fiber.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/lib/types/index.d.ts +15 -0
- package/node_modules/@xrkseek/cordis/lib/types/index.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/lib/types/logger.d.ts +105 -0
- package/node_modules/@xrkseek/cordis/lib/types/logger.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/lib/types/reflect.d.ts +186 -0
- package/node_modules/@xrkseek/cordis/lib/types/reflect.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/lib/types/registry.d.ts +201 -0
- package/node_modules/@xrkseek/cordis/lib/types/registry.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/lib/types/service.d.ts +55 -0
- package/node_modules/@xrkseek/cordis/lib/types/service.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/lib/types/utils.d.ts +62 -0
- package/node_modules/@xrkseek/cordis/lib/types/utils.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/package.json +49 -0
- package/node_modules/@xrkseek/cordis/src/context.d.ts +101 -0
- package/node_modules/@xrkseek/cordis/src/context.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/src/context.js +99 -0
- package/node_modules/@xrkseek/cordis/src/context.js.map +1 -0
- package/node_modules/@xrkseek/cordis/src/context.ts +146 -0
- package/node_modules/@xrkseek/cordis/src/events.d.ts +240 -0
- package/node_modules/@xrkseek/cordis/src/events.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/src/events.js +199 -0
- package/node_modules/@xrkseek/cordis/src/events.js.map +1 -0
- package/node_modules/@xrkseek/cordis/src/events.ts +352 -0
- package/node_modules/@xrkseek/cordis/src/fiber.d.ts +202 -0
- package/node_modules/@xrkseek/cordis/src/fiber.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/src/fiber.js +677 -0
- package/node_modules/@xrkseek/cordis/src/fiber.js.map +1 -0
- package/node_modules/@xrkseek/cordis/src/fiber.ts +754 -0
- package/node_modules/@xrkseek/cordis/src/index.d.ts +15 -0
- package/node_modules/@xrkseek/cordis/src/index.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/src/index.js +15 -0
- package/node_modules/@xrkseek/cordis/src/index.js.map +1 -0
- package/node_modules/@xrkseek/cordis/src/index.ts +14 -0
- package/node_modules/@xrkseek/cordis/src/logger.d.ts +105 -0
- package/node_modules/@xrkseek/cordis/src/logger.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/src/logger.js +193 -0
- package/node_modules/@xrkseek/cordis/src/logger.js.map +1 -0
- package/node_modules/@xrkseek/cordis/src/logger.ts +270 -0
- package/node_modules/@xrkseek/cordis/src/reflect.d.ts +186 -0
- package/node_modules/@xrkseek/cordis/src/reflect.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/src/reflect.js +311 -0
- package/node_modules/@xrkseek/cordis/src/reflect.js.map +1 -0
- package/node_modules/@xrkseek/cordis/src/reflect.ts +418 -0
- package/node_modules/@xrkseek/cordis/src/registry.d.ts +201 -0
- package/node_modules/@xrkseek/cordis/src/registry.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/src/registry.js +218 -0
- package/node_modules/@xrkseek/cordis/src/registry.js.map +1 -0
- package/node_modules/@xrkseek/cordis/src/registry.ts +337 -0
- package/node_modules/@xrkseek/cordis/src/service.d.ts +55 -0
- package/node_modules/@xrkseek/cordis/src/service.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/src/service.js +113 -0
- package/node_modules/@xrkseek/cordis/src/service.js.map +1 -0
- package/node_modules/@xrkseek/cordis/src/service.ts +115 -0
- package/node_modules/@xrkseek/cordis/src/utils.d.ts +62 -0
- package/node_modules/@xrkseek/cordis/src/utils.d.ts.map +1 -0
- package/node_modules/@xrkseek/cordis/src/utils.js +271 -0
- package/node_modules/@xrkseek/cordis/src/utils.js.map +1 -0
- package/node_modules/@xrkseek/cordis/src/utils.ts +287 -0
- package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts.map +1 -1
- package/node_modules/@xrkseek/core-agent-loop/dist/index.js +39 -68
- package/node_modules/@xrkseek/core-agent-loop/dist/index.js.map +1 -1
- package/node_modules/@xrkseek/core-session/dist/compaction.d.ts +4 -3
- package/node_modules/@xrkseek/core-session/dist/compaction.d.ts.map +1 -1
- package/node_modules/@xrkseek/core-session/dist/compaction.js.map +1 -1
- package/node_modules/@xrkseek/core-tools/dist/subagent-prompt.d.ts.map +1 -1
- package/node_modules/@xrkseek/core-tools/dist/subagent-prompt.js +2 -1
- package/node_modules/@xrkseek/core-tools/dist/subagent-prompt.js.map +1 -1
- package/node_modules/@xrkseek/exec-image-gen/README.md +1 -1
- package/node_modules/@xrkseek/exec-image-gen/dist/catalog.d.ts +16 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/catalog.d.ts.map +1 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/catalog.js +152 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/catalog.js.map +1 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/deepinfra-http.d.ts +9 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/deepinfra-http.d.ts.map +1 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/deepinfra-http.js +21 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/deepinfra-http.js.map +1 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/fal-http.d.ts +16 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/fal-http.d.ts.map +1 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/fal-http.js +189 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/fal-http.js.map +1 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/index.d.ts +10 -5
- package/node_modules/@xrkseek/exec-image-gen/dist/index.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-image-gen/dist/index.js +174 -18
- package/node_modules/@xrkseek/exec-image-gen/dist/index.js.map +1 -1
- package/node_modules/@xrkseek/exec-image-gen/dist/krea-http.d.ts +16 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/krea-http.d.ts.map +1 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/krea-http.js +144 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/krea-http.js.map +1 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/meta-ai-http.d.ts +9 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/meta-ai-http.d.ts.map +1 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/meta-ai-http.js +21 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/meta-ai-http.js.map +1 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/openai-http.d.ts +4 -1
- package/node_modules/@xrkseek/exec-image-gen/dist/openai-http.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-image-gen/dist/openai-http.js +7 -5
- package/node_modules/@xrkseek/exec-image-gen/dist/openai-http.js.map +1 -1
- package/node_modules/@xrkseek/exec-image-gen/dist/openrouter-http.d.ts +14 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/openrouter-http.d.ts.map +1 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/openrouter-http.js +117 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/openrouter-http.js.map +1 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/tools.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-image-gen/dist/tools.js +43 -6
- package/node_modules/@xrkseek/exec-image-gen/dist/tools.js.map +1 -1
- package/node_modules/@xrkseek/exec-image-gen/dist/types.d.ts +1 -1
- package/node_modules/@xrkseek/exec-image-gen/dist/types.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-image-gen/dist/types.js.map +1 -1
- package/node_modules/@xrkseek/exec-image-gen/dist/xai-http.d.ts +16 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/xai-http.d.ts.map +1 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/xai-http.js +137 -0
- package/node_modules/@xrkseek/exec-image-gen/dist/xai-http.js.map +1 -0
- package/node_modules/@xrkseek/exec-memory/dist/consolidate-pipeline.d.ts +52 -0
- package/node_modules/@xrkseek/exec-memory/dist/consolidate-pipeline.d.ts.map +1 -0
- package/node_modules/@xrkseek/exec-memory/dist/consolidate-pipeline.js +216 -0
- package/node_modules/@xrkseek/exec-memory/dist/consolidate-pipeline.js.map +1 -0
- package/node_modules/@xrkseek/exec-memory/dist/index.d.ts +1 -0
- package/node_modules/@xrkseek/exec-memory/dist/index.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-memory/dist/index.js +1 -0
- package/node_modules/@xrkseek/exec-memory/dist/index.js.map +1 -1
- package/node_modules/@xrkseek/exec-memory/dist/tools.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-memory/dist/tools.js +20 -7
- package/node_modules/@xrkseek/exec-memory/dist/tools.js.map +1 -1
- package/node_modules/@xrkseek/exec-video-gen/README.md +1 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/catalog.d.ts +14 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/catalog.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/catalog.js +99 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/catalog.js.map +1 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/deepinfra-http.d.ts +9 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/deepinfra-http.d.ts.map +1 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/deepinfra-http.js +17 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/deepinfra-http.js.map +1 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/fal-http.d.ts +14 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/fal-http.d.ts.map +1 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/fal-http.js +342 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/fal-http.js.map +1 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/index.d.ts +8 -6
- package/node_modules/@xrkseek/exec-video-gen/dist/index.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/index.js +122 -19
- package/node_modules/@xrkseek/exec-video-gen/dist/index.js.map +1 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/openai-http.d.ts +4 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/openai-http.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/openai-http.js +21 -15
- package/node_modules/@xrkseek/exec-video-gen/dist/openai-http.js.map +1 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/openrouter-http.d.ts +9 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/openrouter-http.d.ts.map +1 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/openrouter-http.js +18 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/openrouter-http.js.map +1 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/tools.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/tools.js +26 -6
- package/node_modules/@xrkseek/exec-video-gen/dist/tools.js.map +1 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/types.d.ts +1 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/types.d.ts.map +1 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/types.js.map +1 -1
- package/node_modules/@xrkseek/exec-video-gen/dist/xai-http.d.ts +18 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/xai-http.d.ts.map +1 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/xai-http.js +263 -0
- package/node_modules/@xrkseek/exec-video-gen/dist/xai-http.js.map +1 -0
- package/node_modules/@xrkseek/preset-harness/dist/preset.d.ts.map +1 -1
- package/node_modules/@xrkseek/preset-harness/dist/preset.js +12 -3
- package/node_modules/@xrkseek/preset-harness/dist/preset.js.map +1 -1
- package/node_modules/@xrkseek/preset-harness/dist/tsconfig.tsbuildinfo +1 -1
- package/node_modules/@xrkseek/preset-minimal/dist/tsconfig.tsbuildinfo +1 -1
- package/node_modules/@xrkseek/preset-server/dist/tsconfig.tsbuildinfo +1 -1
- package/node_modules/@xrkseek/server-face/dist/agent-team-graph.d.ts +31 -0
- package/node_modules/@xrkseek/server-face/dist/agent-team-graph.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/agent-team-graph.js +125 -1
- package/node_modules/@xrkseek/server-face/dist/agent-team-graph.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/context.d.ts +19 -1
- package/node_modules/@xrkseek/server-face/dist/context.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/index.d.ts +3 -3
- package/node_modules/@xrkseek/server-face/dist/index.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/index.js +1 -1
- package/node_modules/@xrkseek/server-face/dist/index.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/mcp-oauth.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/mcp-oauth.js +25 -3
- package/node_modules/@xrkseek/server-face/dist/mcp-oauth.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/ralph-tool.d.ts +2 -0
- package/node_modules/@xrkseek/server-face/dist/ralph-tool.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/ralph-tool.js +11 -5
- package/node_modules/@xrkseek/server-face/dist/ralph-tool.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/runtime.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/runtime.js +1 -0
- package/node_modules/@xrkseek/server-face/dist/runtime.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/session-status.d.ts +16 -0
- package/node_modules/@xrkseek/server-face/dist/session-status.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/session-status.js +44 -5
- package/node_modules/@xrkseek/server-face/dist/session-status.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/settings-credentials.d.ts +9 -0
- package/node_modules/@xrkseek/server-face/dist/settings-credentials.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/settings-credentials.js +50 -0
- package/node_modules/@xrkseek/server-face/dist/settings-credentials.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/settings-document.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/settings-document.js +40 -0
- package/node_modules/@xrkseek/server-face/dist/settings-document.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/settings-schemas.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/settings-schemas.js +20 -4
- package/node_modules/@xrkseek/server-face/dist/settings-schemas.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/subagent-tools.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/subagent-tools.js +191 -0
- package/node_modules/@xrkseek/server-face/dist/subagent-tools.js.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/wire/rpc-error.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-face/dist/wire/rpc-error.js +8 -0
- package/node_modules/@xrkseek/server-face/dist/wire/rpc-error.js.map +1 -1
- package/node_modules/@xrkseek/server-host/dist/index.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-host/dist/index.js +135 -24
- package/node_modules/@xrkseek/server-host/dist/index.js.map +1 -1
- package/node_modules/@xrkseek/server-host/dist/sidebar-face-bridge.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-host/dist/sidebar-face-bridge.js +6 -0
- package/node_modules/@xrkseek/server-host/dist/sidebar-face-bridge.js.map +1 -1
- package/node_modules/@xrkseek/server-host/dist/workflow-engine-mount.d.ts +32 -0
- package/node_modules/@xrkseek/server-host/dist/workflow-engine-mount.d.ts.map +1 -0
- package/node_modules/@xrkseek/server-host/dist/workflow-engine-mount.js +134 -0
- package/node_modules/@xrkseek/server-host/dist/workflow-engine-mount.js.map +1 -0
- package/node_modules/@xrkseek/server-host/package.json +2 -0
- package/node_modules/@xrkseek/server-http/dist/sidebar/sidebar-adapter.d.ts.map +1 -1
- package/node_modules/@xrkseek/server-http/dist/sidebar/sidebar-adapter.js +20 -0
- package/node_modules/@xrkseek/server-http/dist/sidebar/sidebar-adapter.js.map +1 -1
- package/node_modules/@xrkseek/server-http/dist/sidebar/sidebar-face-bridge.d.ts +10 -2
- package/node_modules/@xrkseek/server-http/dist/sidebar/sidebar-face-bridge.d.ts.map +1 -1
- package/node_modules/@xrkseek/xrk-workflow/README.i18n.yaml +6 -0
- package/node_modules/@xrkseek/xrk-workflow/README.md +73 -0
- package/node_modules/@xrkseek/xrk-workflow/README.zh.md +72 -0
- package/node_modules/@xrkseek/xrk-workflow/lib/types/index.d.ts +177 -0
- package/node_modules/@xrkseek/xrk-workflow/lib/types/index.js +730 -0
- package/node_modules/@xrkseek/xrk-workflow/lib/types/invariant.d.ts +13 -0
- package/node_modules/@xrkseek/xrk-workflow/lib/types/invariant.js +118 -0
- package/node_modules/@xrkseek/xrk-workflow/lib/types/runtime-types.d.ts +45 -0
- package/node_modules/@xrkseek/xrk-workflow/lib/types/runtime-types.js +9 -0
- package/node_modules/@xrkseek/xrk-workflow/lib/types/types.d.ts +118 -0
- package/node_modules/@xrkseek/xrk-workflow/lib/types/types.js +16 -0
- package/node_modules/@xrkseek/xrk-workflow/package.json +53 -0
- package/node_modules/@xrkseek/xrk-workflow/src/index.ts +947 -0
- package/package.json +5 -1
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session-end curated-memory consolidate pipeline (Codex-style lease + Hermes status).
|
|
3
|
+
* Single-flight per session: archive/stop/dispose share one claim so Phase1 cannot double-write.
|
|
4
|
+
*/
|
|
5
|
+
import { mkdirSync, readFileSync, renameSync, unlinkSync, writeFileSync } from "node:fs";
|
|
6
|
+
import path from "node:path";
|
|
7
|
+
import { consolidateCuratedMemoryPhase1, consolidateCuratedMemoryPhase2, } from "./write-path.js";
|
|
8
|
+
export const CONSOLIDATE_LEASE_FILE = ".consolidate-lease.json";
|
|
9
|
+
export const CONSOLIDATE_REPORT_FILE = ".last-consolidate.json";
|
|
10
|
+
const DEFAULT_TTL_MS = 120_000;
|
|
11
|
+
/** In-process claims keyed by session id (cross-call within one Host). */
|
|
12
|
+
const processClaims = new Map();
|
|
13
|
+
function leasePath(dir) {
|
|
14
|
+
return path.join(dir, CONSOLIDATE_LEASE_FILE);
|
|
15
|
+
}
|
|
16
|
+
function reportPath(dir) {
|
|
17
|
+
return path.join(dir, CONSOLIDATE_REPORT_FILE);
|
|
18
|
+
}
|
|
19
|
+
function newHolder() {
|
|
20
|
+
return `${process.pid}-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 8)}`;
|
|
21
|
+
}
|
|
22
|
+
function leaseAlive(claim, now) {
|
|
23
|
+
return now - claim.at < claim.ttlMs;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Claim a consolidate slot for `sessionId`. Returns a release fn on success.
|
|
27
|
+
* Failures (busy / I/O) return `{ ok: false }`.
|
|
28
|
+
*/
|
|
29
|
+
export function tryClaimConsolidateLease(sessionId, options) {
|
|
30
|
+
const id = sessionId.trim();
|
|
31
|
+
if (!id)
|
|
32
|
+
return { ok: false };
|
|
33
|
+
const now = options?.now ?? Date.now();
|
|
34
|
+
const ttlMs = Math.max(5_000, options?.ttlMs ?? DEFAULT_TTL_MS);
|
|
35
|
+
const existing = processClaims.get(id);
|
|
36
|
+
if (existing && leaseAlive(existing, now))
|
|
37
|
+
return { ok: false };
|
|
38
|
+
const holder = newHolder();
|
|
39
|
+
processClaims.set(id, { holder, at: now, ttlMs });
|
|
40
|
+
const dir = options?.dir?.trim();
|
|
41
|
+
if (dir) {
|
|
42
|
+
try {
|
|
43
|
+
mkdirSync(dir, { recursive: true });
|
|
44
|
+
const file = leasePath(dir);
|
|
45
|
+
try {
|
|
46
|
+
const raw = JSON.parse(readFileSync(file, "utf8"));
|
|
47
|
+
if (raw &&
|
|
48
|
+
typeof raw.sessionId === "string" &&
|
|
49
|
+
raw.sessionId === id &&
|
|
50
|
+
typeof raw.at === "number" &&
|
|
51
|
+
typeof raw.ttlMs === "number" &&
|
|
52
|
+
leaseAlive(raw, now) &&
|
|
53
|
+
raw.holder !== holder) {
|
|
54
|
+
processClaims.delete(id);
|
|
55
|
+
return { ok: false };
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
/* missing / corrupt → take */
|
|
60
|
+
}
|
|
61
|
+
const payload = { sessionId: id, holder, at: now, ttlMs };
|
|
62
|
+
const tmp = `${file}.${holder}.tmp`;
|
|
63
|
+
writeFileSync(tmp, JSON.stringify(payload), "utf8");
|
|
64
|
+
try {
|
|
65
|
+
renameSync(tmp, file);
|
|
66
|
+
}
|
|
67
|
+
catch {
|
|
68
|
+
try {
|
|
69
|
+
unlinkSync(tmp);
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
/* ignore */
|
|
73
|
+
}
|
|
74
|
+
try {
|
|
75
|
+
writeFileSync(file, JSON.stringify(payload), "utf8");
|
|
76
|
+
}
|
|
77
|
+
catch {
|
|
78
|
+
processClaims.delete(id);
|
|
79
|
+
return { ok: false };
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
catch {
|
|
84
|
+
processClaims.delete(id);
|
|
85
|
+
return { ok: false };
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
const release = () => {
|
|
89
|
+
const cur = processClaims.get(id);
|
|
90
|
+
if (cur?.holder === holder)
|
|
91
|
+
processClaims.delete(id);
|
|
92
|
+
if (!dir)
|
|
93
|
+
return;
|
|
94
|
+
try {
|
|
95
|
+
const raw = JSON.parse(readFileSync(leasePath(dir), "utf8"));
|
|
96
|
+
if (raw?.holder === holder)
|
|
97
|
+
unlinkSync(leasePath(dir));
|
|
98
|
+
}
|
|
99
|
+
catch {
|
|
100
|
+
/* ignore */
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
return { ok: true, release };
|
|
104
|
+
}
|
|
105
|
+
/** Read the last consolidate report sidecar (if any). */
|
|
106
|
+
export function readConsolidateReport(dir) {
|
|
107
|
+
try {
|
|
108
|
+
const raw = JSON.parse(readFileSync(reportPath(dir), "utf8"));
|
|
109
|
+
if (!raw || typeof raw.sessionId !== "string" || typeof raw.at !== "number") {
|
|
110
|
+
return undefined;
|
|
111
|
+
}
|
|
112
|
+
return raw;
|
|
113
|
+
}
|
|
114
|
+
catch {
|
|
115
|
+
return undefined;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
export function writeConsolidateReport(dir, report) {
|
|
119
|
+
try {
|
|
120
|
+
mkdirSync(dir, { recursive: true });
|
|
121
|
+
const file = reportPath(dir);
|
|
122
|
+
const tmp = `${file}.${process.pid}.tmp`;
|
|
123
|
+
writeFileSync(tmp, JSON.stringify(report), "utf8");
|
|
124
|
+
try {
|
|
125
|
+
renameSync(tmp, file);
|
|
126
|
+
}
|
|
127
|
+
catch {
|
|
128
|
+
writeFileSync(file, JSON.stringify(report), "utf8");
|
|
129
|
+
try {
|
|
130
|
+
unlinkSync(tmp);
|
|
131
|
+
}
|
|
132
|
+
catch {
|
|
133
|
+
/* ignore */
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
catch {
|
|
138
|
+
/* best-effort observability */
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Lease → Phase1 → optional Phase2. Writes `.last-consolidate.json` beside the store.
|
|
143
|
+
*/
|
|
144
|
+
export async function runCuratedMemoryConsolidate(input) {
|
|
145
|
+
const now = input.now ?? Date.now();
|
|
146
|
+
const sessionId = input.sessionId.trim() || "unknown";
|
|
147
|
+
const base = {
|
|
148
|
+
sessionId,
|
|
149
|
+
at: now,
|
|
150
|
+
phase1Written: 0,
|
|
151
|
+
phase2: "skipped",
|
|
152
|
+
phase2Written: 0,
|
|
153
|
+
...(input.providerKind ? { providerKind: input.providerKind } : {}),
|
|
154
|
+
};
|
|
155
|
+
if (input.userTexts.length === 0) {
|
|
156
|
+
const report = {
|
|
157
|
+
...base,
|
|
158
|
+
skipped: "no-user-text",
|
|
159
|
+
};
|
|
160
|
+
writeConsolidateReport(input.store.dir, report);
|
|
161
|
+
return report;
|
|
162
|
+
}
|
|
163
|
+
const claim = tryClaimConsolidateLease(sessionId, {
|
|
164
|
+
dir: input.store.dir,
|
|
165
|
+
...(input.ttlMs !== undefined ? { ttlMs: input.ttlMs } : {}),
|
|
166
|
+
now,
|
|
167
|
+
});
|
|
168
|
+
if (!claim.ok) {
|
|
169
|
+
const report = {
|
|
170
|
+
...base,
|
|
171
|
+
skipped: "busy",
|
|
172
|
+
};
|
|
173
|
+
writeConsolidateReport(input.store.dir, report);
|
|
174
|
+
return report;
|
|
175
|
+
}
|
|
176
|
+
try {
|
|
177
|
+
const phase1 = await consolidateCuratedMemoryPhase1(input.store, {
|
|
178
|
+
userTexts: input.userTexts,
|
|
179
|
+
});
|
|
180
|
+
let phase2 = "skipped";
|
|
181
|
+
let phase2Written = 0;
|
|
182
|
+
if (input.phase2Complete) {
|
|
183
|
+
try {
|
|
184
|
+
const phase2Result = await consolidateCuratedMemoryPhase2(input.store, {
|
|
185
|
+
userTexts: input.userTexts,
|
|
186
|
+
...(input.assistantTexts
|
|
187
|
+
? { assistantTexts: input.assistantTexts }
|
|
188
|
+
: {}),
|
|
189
|
+
complete: input.phase2Complete,
|
|
190
|
+
});
|
|
191
|
+
phase2Written = phase2Result.written.length;
|
|
192
|
+
phase2 = phase2Written > 0 ? "written" : "skipped";
|
|
193
|
+
}
|
|
194
|
+
catch {
|
|
195
|
+
phase2 = "failed";
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
else if (input.phase2Requested) {
|
|
199
|
+
phase2 = "no-llm";
|
|
200
|
+
}
|
|
201
|
+
const report = {
|
|
202
|
+
sessionId,
|
|
203
|
+
at: Date.now(),
|
|
204
|
+
phase1Written: phase1.written.length,
|
|
205
|
+
phase2,
|
|
206
|
+
phase2Written,
|
|
207
|
+
...(input.providerKind ? { providerKind: input.providerKind } : {}),
|
|
208
|
+
};
|
|
209
|
+
writeConsolidateReport(input.store.dir, report);
|
|
210
|
+
return report;
|
|
211
|
+
}
|
|
212
|
+
finally {
|
|
213
|
+
claim.release();
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
//# sourceMappingURL=consolidate-pipeline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consolidate-pipeline.js","sourceRoot":"","sources":["../src/consolidate-pipeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,5 +4,6 @@ export { createHttpMemoryProvider, HttpMemoryProviderError, probeHttpMemoryProvi
|
|
|
4
4
|
export { createFileMemoryProvider, resolveMemoryProvider, type ResolveMemoryProviderOptions, } from "./resolve.js";
|
|
5
5
|
export { createSqliteMemoryProvider, type SqliteMemoryProvider, type SqliteMemoryProviderOptions, } from "./sqlite.js";
|
|
6
6
|
export { CURATED_MEMORY_PROMPT_TEXT, createCuratedMemoryTools, } from "./tools.js";
|
|
7
|
+
export { CONSOLIDATE_LEASE_FILE, CONSOLIDATE_REPORT_FILE, tryClaimConsolidateLease, readConsolidateReport, writeConsolidateReport, runCuratedMemoryConsolidate, type CuratedMemoryConsolidateReport, type CuratedMemoryPhase2Status, type RunCuratedMemoryConsolidateInput, } from "./consolidate-pipeline.js";
|
|
7
8
|
export { extractReusableNotes, writeReusableNotesAfterTurn, consolidateCuratedMemoryPhase1, consolidateCuratedMemoryPhase2, buildPhase2ExtractPrompt, parsePhase2Notes, noteCoveredByEntries, type TurnNoteInput, type TurnNoteWriteResult, type SessionEndConsolidateInput, type SessionEndPhase2Input, type Phase2CompleteFn, } from "./write-path.js";
|
|
8
9
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,KAAK,+BAA+B,EACpC,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,UAAU,GAChB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,cAAc,EACd,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,EACvB,KAAK,yBAAyB,GAC/B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,4BAA4B,GAClC,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,0BAA0B,EAC1B,KAAK,oBAAoB,EACzB,KAAK,2BAA2B,GACjC,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EAC9B,wBAAwB,EACxB,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAC/B,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,GACtB,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,KAAK,+BAA+B,EACpC,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,UAAU,GAChB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,cAAc,EACd,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,EACvB,KAAK,yBAAyB,GAC/B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,4BAA4B,GAClC,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,0BAA0B,EAC1B,KAAK,oBAAoB,EACzB,KAAK,2BAA2B,GACjC,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,EAC3B,KAAK,8BAA8B,EACnC,KAAK,yBAAyB,EAC9B,KAAK,gCAAgC,GACtC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EAC9B,wBAAwB,EACxB,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,EAC/B,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,GACtB,MAAM,iBAAiB,CAAC"}
|
|
@@ -3,5 +3,6 @@ export { createHttpMemoryProvider, HttpMemoryProviderError, probeHttpMemoryProvi
|
|
|
3
3
|
export { createFileMemoryProvider, resolveMemoryProvider, } from "./resolve.js";
|
|
4
4
|
export { createSqliteMemoryProvider, } from "./sqlite.js";
|
|
5
5
|
export { CURATED_MEMORY_PROMPT_TEXT, createCuratedMemoryTools, } from "./tools.js";
|
|
6
|
+
export { CONSOLIDATE_LEASE_FILE, CONSOLIDATE_REPORT_FILE, tryClaimConsolidateLease, readConsolidateReport, writeConsolidateReport, runCuratedMemoryConsolidate, } from "./consolidate-pipeline.js";
|
|
6
7
|
export { extractReusableNotes, writeReusableNotesAfterTurn, consolidateCuratedMemoryPhase1, consolidateCuratedMemoryPhase2, buildPhase2ExtractPrompt, parsePhase2Notes, noteCoveredByEntries, } from "./write-path.js";
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,eAAe,GAQhB,MAAM,YAAY,CAAC;AAKpB,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,GAExB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,wBAAwB,EACxB,qBAAqB,GAEtB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,0BAA0B,GAG3B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EAC9B,wBAAwB,EACxB,gBAAgB,EAChB,oBAAoB,GAMrB,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,eAAe,GAQhB,MAAM,YAAY,CAAC;AAKpB,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,GAExB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,wBAAwB,EACxB,qBAAqB,GAEtB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,0BAA0B,GAG3B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,GAI5B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EAC9B,wBAAwB,EACxB,gBAAgB,EAChB,oBAAoB,GAMrB,MAAM,iBAAiB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAqB,MAAM,qBAAqB,CAAC;AAC7E,OAAO,KAAK,EAEV,kBAAkB,EAEnB,MAAM,YAAY,CAAC;AAEpB;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAqB,MAAM,qBAAqB,CAAC;AAC7E,OAAO,KAAK,EAEV,kBAAkB,EAEnB,MAAM,YAAY,CAAC;AAEpB;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,QAcO,CAAC;AAmB/C;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,kBAAkB,GAAG,cAAc,EAAE,CAkJpF"}
|
|
@@ -13,10 +13,11 @@ export const CURATED_MEMORY_PROMPT_TEXT = "Curated memory is two files under {XR
|
|
|
13
13
|
+ "and does not follow the user into a new session. Do not write session-local WIP, "
|
|
14
14
|
+ "numbered task checklists, or 'we were doing X' handoff notes into memory. Do "
|
|
15
15
|
+ "not volunteer to resume work that appears only in MEMORY unless the user asks. "
|
|
16
|
-
+ "The `memory` tool
|
|
16
|
+
+ "The `memory` tool supports add / replace / remove / list (or one atomic "
|
|
17
|
+
+ "`operations` batch). list returns live disk entries for the chosen target. "
|
|
17
18
|
+ "Writes hit disk immediately and do not change this session's system prompt. "
|
|
18
19
|
+ "This is not the Mnemon document library.";
|
|
19
|
-
const ACTIONS = ["add", "replace", "remove"];
|
|
20
|
+
const ACTIONS = ["add", "replace", "remove", "list"];
|
|
20
21
|
function asTarget(raw) {
|
|
21
22
|
const target = String(raw ?? "memory");
|
|
22
23
|
if (target === "memory" || target === "user")
|
|
@@ -43,7 +44,8 @@ export function createCuratedMemoryTools(store) {
|
|
|
43
44
|
+ "(preferences, lasting conventions, who the user is). "
|
|
44
45
|
+ "Do NOT store session WIP, standing plans, todo checklists, or handoff notes "
|
|
45
46
|
+ "for unfinished work — use `todo_write` for those (they stay in this session only). "
|
|
46
|
-
+ "Actions: add, replace, remove. Prefer one `operations` batch when several entries change. "
|
|
47
|
+
+ "Actions: add, replace, remove, list. Prefer one `operations` batch when several entries change. "
|
|
48
|
+
+ "Use list before replace/remove when you need the exact on-disk wording. "
|
|
47
49
|
+ "target `memory` is agent notes (MEMORY.md under {XRK_HOME}/memories); "
|
|
48
50
|
+ "target `user` is the curated user profile (memories/USER.md — not standing "
|
|
49
51
|
+ "~/.xrk/USER.md or IDENTITY.md). "
|
|
@@ -56,7 +58,7 @@ export function createCuratedMemoryTools(store) {
|
|
|
56
58
|
action: {
|
|
57
59
|
type: "string",
|
|
58
60
|
enum: [...ACTIONS],
|
|
59
|
-
description: "Single change. Omit when using operations.",
|
|
61
|
+
description: "Single change or list. Omit when using operations.",
|
|
60
62
|
},
|
|
61
63
|
target: {
|
|
62
64
|
type: "string",
|
|
@@ -81,7 +83,7 @@ export function createCuratedMemoryTools(store) {
|
|
|
81
83
|
items: {
|
|
82
84
|
type: "object",
|
|
83
85
|
properties: {
|
|
84
|
-
action: { type: "string", enum: [
|
|
86
|
+
action: { type: "string", enum: ["add", "replace", "remove"] },
|
|
85
87
|
content: { type: "string" },
|
|
86
88
|
new_text: { type: "string" },
|
|
87
89
|
old_text: { type: "string" },
|
|
@@ -106,6 +108,18 @@ export function createCuratedMemoryTools(store) {
|
|
|
106
108
|
}),
|
|
107
109
|
};
|
|
108
110
|
}
|
|
111
|
+
const action = String(args.action ?? "");
|
|
112
|
+
if (action === "list") {
|
|
113
|
+
const entries = await Promise.resolve(store.listEntries(target));
|
|
114
|
+
return {
|
|
115
|
+
content: JSON.stringify({
|
|
116
|
+
success: true,
|
|
117
|
+
target,
|
|
118
|
+
entry_count: entries.length,
|
|
119
|
+
current_entries: entries,
|
|
120
|
+
}),
|
|
121
|
+
};
|
|
122
|
+
}
|
|
109
123
|
const ops = asOps(args.operations);
|
|
110
124
|
if (Array.isArray(args.operations) && args.operations.length > 0 && ops && ops.length > 0) {
|
|
111
125
|
const result = await Promise.resolve(store.applyBatch(target, ops));
|
|
@@ -120,7 +134,6 @@ export function createCuratedMemoryTools(store) {
|
|
|
120
134
|
}),
|
|
121
135
|
};
|
|
122
136
|
}
|
|
123
|
-
const action = String(args.action ?? "");
|
|
124
137
|
const content = String(args.content ?? args.new_text ?? "");
|
|
125
138
|
const oldText = String(args.old_text ?? "");
|
|
126
139
|
if (!ACTIONS.includes(action)) {
|
|
@@ -128,7 +141,7 @@ export function createCuratedMemoryTools(store) {
|
|
|
128
141
|
isError: true,
|
|
129
142
|
content: JSON.stringify({
|
|
130
143
|
success: false,
|
|
131
|
-
error: `Unknown action '${action}'. Use: add, replace, remove`,
|
|
144
|
+
error: `Unknown action '${action}'. Use: add, replace, remove, list`,
|
|
132
145
|
}),
|
|
133
146
|
};
|
|
134
147
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GACrC,iFAAiF;MAC/E,gFAAgF;MAChF,mFAAmF;MACnF,mFAAmF;MACnF,iFAAiF;MACjF,oFAAoF;MACpF,qFAAqF;MACrF,mFAAmF;MACnF,+EAA+E;MAC/E,iFAAiF;MACjF,
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Text-to-video / image-to-video Provider seam for the model tool surface.
|
|
4
4
|
|
|
5
|
-
**Product path**: Settings → Plugins → Video generation (Face ns `video-gen`). Credentials hold `XRK_VIDEO_GEN_OPENAI_KEY
|
|
5
|
+
**Product path**: Settings → Plugins → Video generation (Face ns `video-gen`). Modes: `off` · `openai` · `fal` · `xai`. Credentials hold `XRK_VIDEO_GEN_OPENAI_KEY` / `XRK_VIDEO_GEN_FAL_KEY` / `XRK_VIDEO_GEN_XAI_KEY` (runtime also accepts `OPENAI_API_KEY` · `FAL_KEY` · `XAI_API_KEY`). Env (`XRK_VIDEO_GEN=memory` / `=1` / `fal` / `xai`) is CI / headless bypass only — see [docs/video-gen.md](../../../docs/video-gen.md).
|
|
6
6
|
|
|
7
7
|
- **Definition**: `VideoGenService` — `create` · `get` · `content` (+ optional `capabilities`)
|
|
8
8
|
- **Provider**: `createMemoryVideoGenProvider` · `createOpenAiVideoGenProvider` · Host-injected
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* OpenAI Videos family catalog
|
|
2
|
+
* OpenAI Videos family catalog + Hermes-scale FAL / OpenRouter / DeepInfra catalogs.
|
|
3
3
|
* Provider `capabilities().families` surfaces this for `action=catalog`.
|
|
4
4
|
*/
|
|
5
5
|
import type { VideoGenCapabilities, VideoGenFamilyEntry, VideoGenSeconds, VideoGenSize } from "./types.js";
|
|
@@ -11,6 +11,19 @@ export declare const OPENAI_VIDEO_GEN_FAMILIES: readonly VideoGenFamilyEntry[];
|
|
|
11
11
|
export declare const OPENAI_VIDEO_GEN_CAPABILITIES: VideoGenCapabilities;
|
|
12
12
|
/** Memory Provider mirrors OpenAI surface so CI exercises the full schema. */
|
|
13
13
|
export declare const MEMORY_VIDEO_GEN_CAPABILITIES: VideoGenCapabilities;
|
|
14
|
+
/**
|
|
15
|
+
* Hermes `FAL_FAMILIES` main-path catalog (tool seconds clamped to 4|8|12).
|
|
16
|
+
* Host Settings `model` selects a family id.
|
|
17
|
+
*/
|
|
18
|
+
export declare const FAL_VIDEO_GEN_FAMILIES: readonly VideoGenFamilyEntry[];
|
|
19
|
+
export declare const FAL_VIDEO_GEN_CAPABILITIES: VideoGenCapabilities;
|
|
20
|
+
/** xAI Grok Imagine video caps (Hermes video_gen/xai). */
|
|
21
|
+
export declare const XAI_VIDEO_GEN_CAPABILITIES: VideoGenCapabilities;
|
|
22
|
+
/** OpenRouter Videos offline seed (live `/videos/models` when reachable). */
|
|
23
|
+
export declare const OPENROUTER_VIDEO_GEN_FAMILIES: readonly VideoGenFamilyEntry[];
|
|
24
|
+
export declare const OPENROUTER_VIDEO_GEN_CAPABILITIES: VideoGenCapabilities;
|
|
25
|
+
/** DeepInfra OpenAI-compatible Videos (Hermes: live catalog; offline seed). */
|
|
26
|
+
export declare const DEEPINFRA_VIDEO_GEN_CAPABILITIES: VideoGenCapabilities;
|
|
14
27
|
/** Format family rows for `action=catalog` tool text. */
|
|
15
28
|
export declare function formatVideoGenCatalog(families: readonly VideoGenFamilyEntry[]): string;
|
|
16
29
|
//# sourceMappingURL=catalog.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,iBAAiB,EAAE,SAAS,eAAe,EAAe,CAAC;AAExE,eAAO,MAAM,eAAe,EAAE,SAAS,YAAY,EAKlD,CAAC;
|
|
1
|
+
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,iBAAiB,EAAE,SAAS,eAAe,EAAe,CAAC;AAExE,eAAO,MAAM,eAAe,EAAE,SAAS,YAAY,EAKlD,CAAC;AAqBF,4DAA4D;AAC5D,eAAO,MAAM,yBAAyB,EAAE,SAAS,mBAAmB,EAqBnE,CAAC;AAEF,qDAAqD;AACrD,eAAO,MAAM,6BAA6B,EAAE,oBAM3C,CAAC;AAEF,8EAA8E;AAC9E,eAAO,MAAM,6BAA6B,EAAE,oBAiB3C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,mBAAmB,EAmChE,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,oBAMxC,CAAC;AAEF,0DAA0D;AAC1D,eAAO,MAAM,0BAA0B,EAAE,oBA2BxC,CAAC;AAEF,6EAA6E;AAC7E,eAAO,MAAM,6BAA6B,EAAE,SAAS,mBAAmB,EAqBvE,CAAC;AAEF,eAAO,MAAM,iCAAiC,EAAE,oBAM/C,CAAC;AAEF,+EAA+E;AAC/E,eAAO,MAAM,gCAAgC,EAAE,oBAY9C,CAAC;AAEF,yDAAyD;AACzD,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,SAAS,mBAAmB,EAAE,GACvC,MAAM,CA4BR"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* OpenAI Videos family catalog
|
|
2
|
+
* OpenAI Videos family catalog + Hermes-scale FAL / OpenRouter / DeepInfra catalogs.
|
|
3
3
|
* Provider `capabilities().families` surfaces this for `action=catalog`.
|
|
4
4
|
*/
|
|
5
5
|
export const VIDEO_GEN_SECONDS = [4, 8, 12];
|
|
@@ -9,6 +9,18 @@ export const VIDEO_GEN_SIZES = [
|
|
|
9
9
|
"1024x1792",
|
|
10
10
|
"1792x1024",
|
|
11
11
|
];
|
|
12
|
+
function falFamily(id, displayName, note, modalities = ["text", "image"], seconds = VIDEO_GEN_SECONDS) {
|
|
13
|
+
return {
|
|
14
|
+
id,
|
|
15
|
+
displayName,
|
|
16
|
+
modalities,
|
|
17
|
+
seconds,
|
|
18
|
+
sizes: VIDEO_GEN_SIZES,
|
|
19
|
+
supportsEdit: false,
|
|
20
|
+
supportsExtend: false,
|
|
21
|
+
note,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
12
24
|
/** Sora-2 family: t2v + first-frame i2v + edit + extend. */
|
|
13
25
|
export const OPENAI_VIDEO_GEN_FAMILIES = [
|
|
14
26
|
{
|
|
@@ -59,6 +71,92 @@ export const MEMORY_VIDEO_GEN_CAPABILITIES = {
|
|
|
59
71
|
},
|
|
60
72
|
],
|
|
61
73
|
};
|
|
74
|
+
/**
|
|
75
|
+
* Hermes `FAL_FAMILIES` main-path catalog (tool seconds clamped to 4|8|12).
|
|
76
|
+
* Host Settings `model` selects a family id.
|
|
77
|
+
*/
|
|
78
|
+
export const FAL_VIDEO_GEN_FAMILIES = [
|
|
79
|
+
falFamily("ltx-2.3", "LTX 2.3 (22B)", "FAL cheap — native audio."),
|
|
80
|
+
falFamily("ltx-2.5", "LTX 2.5", "FAL cheap — Lightricks audio-video."),
|
|
81
|
+
falFamily("pixverse-v6", "Pixverse v6", "FAL cheap default — t2v + i2v."),
|
|
82
|
+
falFamily("seedance-2.0-mini", "Seedance 2.0 Mini", "FAL cheap — ByteDance mini."),
|
|
83
|
+
falFamily("veo3.1", "Veo 3.1", "FAL premium — Google Veo via queue.", ["text", "image"], [4, 8]),
|
|
84
|
+
falFamily("seedance-2.0", "Seedance 2.0", "FAL premium — ByteDance cinematic."),
|
|
85
|
+
falFamily("seedance-2.5", "Seedance 2.5", "FAL premium — ByteDance flagship."),
|
|
86
|
+
falFamily("minimax-h3", "MiniMax H3", "FAL premium — MiniMax frontier."),
|
|
87
|
+
falFamily("minimax-h3-max", "MiniMax H3 Max", "FAL premium — fal post-train Max."),
|
|
88
|
+
falFamily("minimax-h3-max-turbo", "MiniMax H3 Max Turbo", "FAL premium — throughput-tuned Max."),
|
|
89
|
+
falFamily("flux-3", "FLUX 3", "FAL premium — Black Forest Labs video."),
|
|
90
|
+
falFamily("grok-imagine-1.5", "Grok Imagine 1.5", "FAL premium — xAI via FAL."),
|
|
91
|
+
falFamily("gemini-omni-flash", "Gemini Omni Flash 1.1", "FAL premium — Google Omni Flash."),
|
|
92
|
+
falFamily("kling-v3", "Kling 3.0", "FAL premium — Kling standard; start_image_url."),
|
|
93
|
+
falFamily("kling-v3-pro", "Kling 3.0 Pro", "FAL premium — Kling Pro."),
|
|
94
|
+
falFamily("kling-v3-4k", "Kling v3 4K", "FAL premium — Kling 4K."),
|
|
95
|
+
falFamily("kling-o3", "Kling O3", "FAL premium — multi-shot storytelling."),
|
|
96
|
+
falFamily("wan-3.0", "Wan 3.0", "FAL premium — Alibaba Wan."),
|
|
97
|
+
falFamily("wan-3.0-prime", "Wan 3.0 Prime", "FAL premium — Alibaba Wan Prime."),
|
|
98
|
+
falFamily("happy-horse", "Happy Horse 1.1", "FAL premium — Alibaba Happy Horse."),
|
|
99
|
+
];
|
|
100
|
+
export const FAL_VIDEO_GEN_CAPABILITIES = {
|
|
101
|
+
modalities: ["text", "image"],
|
|
102
|
+
maxReferenceImages: 1,
|
|
103
|
+
supportsEdit: false,
|
|
104
|
+
supportsExtend: false,
|
|
105
|
+
families: FAL_VIDEO_GEN_FAMILIES,
|
|
106
|
+
};
|
|
107
|
+
/** xAI Grok Imagine video caps (Hermes video_gen/xai). */
|
|
108
|
+
export const XAI_VIDEO_GEN_CAPABILITIES = {
|
|
109
|
+
modalities: ["text", "image"],
|
|
110
|
+
maxReferenceImages: 7,
|
|
111
|
+
supportsEdit: true,
|
|
112
|
+
supportsExtend: true,
|
|
113
|
+
families: [
|
|
114
|
+
{
|
|
115
|
+
id: "grok-imagine-video",
|
|
116
|
+
displayName: "Grok Imagine Video",
|
|
117
|
+
modalities: ["text", "image"],
|
|
118
|
+
seconds: VIDEO_GEN_SECONDS,
|
|
119
|
+
sizes: VIDEO_GEN_SIZES,
|
|
120
|
+
supportsEdit: true,
|
|
121
|
+
supportsExtend: true,
|
|
122
|
+
note: "xAI t2v / reference-to-video; edit/extend via public MP4 URL.",
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
id: "grok-imagine-video-1.5",
|
|
126
|
+
displayName: "Grok Imagine Video 1.5",
|
|
127
|
+
modalities: ["image"],
|
|
128
|
+
seconds: VIDEO_GEN_SECONDS,
|
|
129
|
+
sizes: VIDEO_GEN_SIZES,
|
|
130
|
+
supportsEdit: false,
|
|
131
|
+
supportsExtend: false,
|
|
132
|
+
note: "xAI image-to-video tier.",
|
|
133
|
+
},
|
|
134
|
+
],
|
|
135
|
+
};
|
|
136
|
+
/** OpenRouter Videos offline seed (live `/videos/models` when reachable). */
|
|
137
|
+
export const OPENROUTER_VIDEO_GEN_FAMILIES = [
|
|
138
|
+
falFamily("minimax/hailuo-3-max", "MiniMax Hailuo 3 Max", "OpenRouter default — first-frame i2v when catalog allows."),
|
|
139
|
+
falFamily("google/veo-3.1", "Google Veo 3.1", "OpenRouter — Veo via unified videos API."),
|
|
140
|
+
falFamily("openai/sora-2", "OpenAI Sora 2", "OpenRouter — Sora when billed on the account."),
|
|
141
|
+
falFamily("x-ai/grok-imagine-video", "Grok Imagine Video", "OpenRouter — xAI video."),
|
|
142
|
+
];
|
|
143
|
+
export const OPENROUTER_VIDEO_GEN_CAPABILITIES = {
|
|
144
|
+
modalities: ["text", "image"],
|
|
145
|
+
maxReferenceImages: 3,
|
|
146
|
+
supportsEdit: false,
|
|
147
|
+
supportsExtend: false,
|
|
148
|
+
families: OPENROUTER_VIDEO_GEN_FAMILIES,
|
|
149
|
+
};
|
|
150
|
+
/** DeepInfra OpenAI-compatible Videos (Hermes: live catalog; offline seed). */
|
|
151
|
+
export const DEEPINFRA_VIDEO_GEN_CAPABILITIES = {
|
|
152
|
+
modalities: ["text", "image"],
|
|
153
|
+
maxReferenceImages: 1,
|
|
154
|
+
supportsEdit: false,
|
|
155
|
+
supportsExtend: false,
|
|
156
|
+
families: [
|
|
157
|
+
falFamily("Wan-AI/Wan2.1-T2V-14B", "Wan 2.1 T2V 14B", "DeepInfra OpenAI-compatible videos; pin model via Settings when catalog differs."),
|
|
158
|
+
],
|
|
159
|
+
};
|
|
62
160
|
/** Format family rows for `action=catalog` tool text. */
|
|
63
161
|
export function formatVideoGenCatalog(families) {
|
|
64
162
|
if (families.length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { VideoGenService } from "./types.js";
|
|
2
|
+
export interface DeepInfraVideoGenOptions {
|
|
3
|
+
readonly apiKey: string;
|
|
4
|
+
readonly baseUrl?: string;
|
|
5
|
+
readonly fetchImpl?: typeof fetch;
|
|
6
|
+
readonly model?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function createDeepInfraVideoGenProvider(options: DeepInfraVideoGenOptions): VideoGenService;
|
|
9
|
+
//# sourceMappingURL=deepinfra-http.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deepinfra-http.d.ts","sourceRoot":"","sources":["../src/deepinfra-http.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,wBAAwB,GAChC,eAAe,CAUjB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DeepInfra OpenAI-compatible Videos (Hermes video_gen/deepinfra).
|
|
3
|
+
*/
|
|
4
|
+
import { createOpenAiVideoGenProvider } from "./openai-http.js";
|
|
5
|
+
import { DEEPINFRA_VIDEO_GEN_CAPABILITIES } from "./catalog.js";
|
|
6
|
+
export function createDeepInfraVideoGenProvider(options) {
|
|
7
|
+
return createOpenAiVideoGenProvider({
|
|
8
|
+
apiKey: options.apiKey,
|
|
9
|
+
baseUrl: options.baseUrl ?? "https://api.deepinfra.com/v1/openai",
|
|
10
|
+
model: options.model ?? "Wan-AI/Wan2.1-T2V-14B",
|
|
11
|
+
capabilities: DEEPINFRA_VIDEO_GEN_CAPABILITIES,
|
|
12
|
+
delivery: "deepinfra",
|
|
13
|
+
providerName: "deepinfra",
|
|
14
|
+
...(options.fetchImpl ? { fetchImpl: options.fetchImpl } : {}),
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=deepinfra-http.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deepinfra-http.js","sourceRoot":"","sources":["../src/deepinfra-http.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,gCAAgC,EAAE,MAAM,cAAc,CAAC;AAUhE,MAAM,UAAU,+BAA+B,CAC7C,OAAiC;IAEjC,OAAO,4BAA4B,CAAC;QAClC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,qCAAqC;QACjE,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,uBAAuB;QAC/C,YAAY,EAAE,gCAAgC;QAC9C,QAAQ,EAAE,WAAW;QACrB,YAAY,EAAE,WAAW;QACzB,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/D,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { VideoGenCapabilities, VideoGenService } from "./types.js";
|
|
2
|
+
export interface FalVideoGenOptions {
|
|
3
|
+
readonly apiKey: string;
|
|
4
|
+
readonly baseUrl?: string;
|
|
5
|
+
readonly fetchImpl?: typeof fetch;
|
|
6
|
+
/** Default family id (Hermes DEFAULT_MODEL = pixverse-v6). */
|
|
7
|
+
readonly model?: string;
|
|
8
|
+
readonly pollIntervalMs?: number;
|
|
9
|
+
readonly capabilities?: VideoGenCapabilities;
|
|
10
|
+
}
|
|
11
|
+
export declare function createFalVideoGenProvider(options: FalVideoGenOptions): VideoGenService;
|
|
12
|
+
/** Exported for tests / catalog sanity. */
|
|
13
|
+
export declare const FAL_VIDEO_FAMILY_IDS: string[];
|
|
14
|
+
//# sourceMappingURL=fal-http.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fal-http.d.ts","sourceRoot":"","sources":["../src/fal-http.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,oBAAoB,EAKpB,eAAe,EAIhB,MAAM,YAAY,CAAC;AAGpB,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IAClC,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,YAAY,CAAC,EAAE,oBAAoB,CAAC;CAC9C;AAsLD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,kBAAkB,GAC1B,eAAe,CA0NjB;AAED,2CAA2C;AAC3C,eAAO,MAAM,oBAAoB,UAA2B,CAAC"}
|