p-spore 0.1.4 → 0.1.42
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 +110 -15
- package/dist/agents/agent-manager.d.ts +3 -3
- package/dist/agents/agent-manager.d.ts.map +1 -1
- package/dist/agents/agent-manager.js +3 -2
- package/dist/agents/agent-manager.js.map +1 -1
- package/dist/application/agent-application.d.ts +29 -5
- package/dist/application/agent-application.d.ts.map +1 -1
- package/dist/application/agent-application.js +444 -14
- package/dist/application/agent-application.js.map +1 -1
- package/dist/articles/diff.d.ts +70 -0
- package/dist/articles/diff.d.ts.map +1 -0
- package/dist/articles/diff.js +330 -0
- package/dist/articles/diff.js.map +1 -0
- package/dist/articles/docx.d.ts +10 -0
- package/dist/articles/docx.d.ts.map +1 -0
- package/dist/articles/docx.js +219 -0
- package/dist/articles/docx.js.map +1 -0
- package/dist/articles/draft.d.ts +18 -0
- package/dist/articles/draft.d.ts.map +1 -0
- package/dist/articles/draft.js +88 -0
- package/dist/articles/draft.js.map +1 -0
- package/dist/articles/edits.d.ts +24 -0
- package/dist/articles/edits.d.ts.map +1 -0
- package/dist/articles/edits.js +54 -0
- package/dist/articles/edits.js.map +1 -0
- package/dist/articles/html.d.ts +10 -0
- package/dist/articles/html.d.ts.map +1 -0
- package/dist/articles/html.js +122 -0
- package/dist/articles/html.js.map +1 -0
- package/dist/articles/plain.d.ts +8 -0
- package/dist/articles/plain.d.ts.map +1 -0
- package/dist/articles/plain.js +69 -0
- package/dist/articles/plain.js.map +1 -0
- package/dist/articles/preview.d.ts +43 -0
- package/dist/articles/preview.d.ts.map +1 -0
- package/dist/articles/preview.js +90 -0
- package/dist/articles/preview.js.map +1 -0
- package/dist/articles/publish.d.ts +10 -0
- package/dist/articles/publish.d.ts.map +1 -0
- package/dist/articles/publish.js +54 -0
- package/dist/articles/publish.js.map +1 -0
- package/dist/articles/receipt.d.ts +16 -0
- package/dist/articles/receipt.d.ts.map +1 -0
- package/dist/articles/receipt.js +27 -0
- package/dist/articles/receipt.js.map +1 -0
- package/dist/articles/store.d.ts +78 -0
- package/dist/articles/store.d.ts.map +1 -0
- package/dist/articles/store.js +308 -0
- package/dist/articles/store.js.map +1 -0
- package/dist/articles/tool.d.ts +14 -0
- package/dist/articles/tool.d.ts.map +1 -0
- package/dist/articles/tool.js +175 -0
- package/dist/articles/tool.js.map +1 -0
- package/dist/articles/writer-context.d.ts +5 -0
- package/dist/articles/writer-context.d.ts.map +1 -0
- package/dist/articles/writer-context.js +56 -0
- package/dist/articles/writer-context.js.map +1 -0
- package/dist/articles/writer.d.ts +18 -0
- package/dist/articles/writer.d.ts.map +1 -0
- package/dist/articles/writer.js +79 -0
- package/dist/articles/writer.js.map +1 -0
- package/dist/articles/zip-write.d.ts +11 -0
- package/dist/articles/zip-write.d.ts.map +1 -0
- package/dist/articles/zip-write.js +63 -0
- package/dist/articles/zip-write.js.map +1 -0
- package/dist/bundled-skills/README.md +17 -0
- package/dist/bundled-skills/aegis-search/SKILL.md +59 -0
- package/dist/bundled-skills/aegis-search/bin/.gitkeep +0 -0
- package/dist/bundled-skills/article-canvas/SKILL.md +28 -0
- package/dist/bundled-skills/binaries.json +23 -0
- package/dist/bundled-skills/doc-extract/SKILL.md +56 -0
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/main.js +407 -54
- package/dist/cli/main.js.map +1 -1
- package/dist/config/config.d.ts +43 -0
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js +150 -6
- package/dist/config/config.js.map +1 -1
- package/dist/daemon/daemon.d.ts.map +1 -1
- package/dist/daemon/daemon.js +80 -11
- package/dist/daemon/daemon.js.map +1 -1
- package/dist/desktop/application.d.ts +4 -0
- package/dist/desktop/application.d.ts.map +1 -0
- package/dist/desktop/application.js +1688 -0
- package/dist/desktop/application.js.map +1 -0
- package/dist/desktop/article-export.d.ts +12 -0
- package/dist/desktop/article-export.d.ts.map +1 -0
- package/dist/desktop/article-export.js +87 -0
- package/dist/desktop/article-export.js.map +1 -0
- package/dist/desktop/assets/pspore.png +0 -0
- package/dist/desktop/assets/pspore.svg +24 -0
- package/dist/desktop/conversation-smoke.d.ts +5 -0
- package/dist/desktop/conversation-smoke.d.ts.map +1 -0
- package/dist/desktop/conversation-smoke.js +93 -0
- package/dist/desktop/conversation-smoke.js.map +1 -0
- package/dist/desktop/daemon-bridge.d.ts.map +1 -1
- package/dist/desktop/daemon-bridge.js +62 -17
- package/dist/desktop/daemon-bridge.js.map +1 -1
- package/dist/desktop/ipc-contract.d.ts +124 -0
- package/dist/desktop/ipc-contract.d.ts.map +1 -1
- package/dist/desktop/ipc-contract.js +191 -12
- package/dist/desktop/ipc-contract.js.map +1 -1
- package/dist/desktop/local-path.d.ts +15 -0
- package/dist/desktop/local-path.d.ts.map +1 -0
- package/dist/desktop/local-path.js +59 -0
- package/dist/desktop/local-path.js.map +1 -0
- package/dist/desktop/main.d.ts +10 -1
- package/dist/desktop/main.d.ts.map +1 -1
- package/dist/desktop/main.js +122 -530
- package/dist/desktop/main.js.map +1 -1
- package/dist/desktop/native-startup.d.ts +4 -0
- package/dist/desktop/native-startup.d.ts.map +1 -0
- package/dist/desktop/native-startup.js +57 -0
- package/dist/desktop/native-startup.js.map +1 -0
- package/dist/desktop/preload.cjs +28 -1
- package/dist/desktop/renderer/article-panel.d.ts +45 -0
- package/dist/desktop/renderer/article-panel.d.ts.map +1 -0
- package/dist/desktop/renderer/article-panel.js +1126 -0
- package/dist/desktop/renderer/article-panel.js.map +1 -0
- package/dist/desktop/renderer/article-split.d.ts +32 -0
- package/dist/desktop/renderer/article-split.d.ts.map +1 -0
- package/dist/desktop/renderer/article-split.js +48 -0
- package/dist/desktop/renderer/article-split.js.map +1 -0
- package/dist/desktop/renderer/composer-file-references.d.ts +23 -0
- package/dist/desktop/renderer/composer-file-references.d.ts.map +1 -0
- package/dist/desktop/renderer/composer-file-references.js +51 -0
- package/dist/desktop/renderer/composer-file-references.js.map +1 -0
- package/dist/desktop/renderer/conversation.d.ts +23 -0
- package/dist/desktop/renderer/conversation.d.ts.map +1 -0
- package/dist/desktop/renderer/conversation.js +66 -0
- package/dist/desktop/renderer/conversation.js.map +1 -0
- package/dist/desktop/renderer/dom-reconcile.d.ts +15 -0
- package/dist/desktop/renderer/dom-reconcile.d.ts.map +1 -0
- package/dist/desktop/renderer/dom-reconcile.js +33 -0
- package/dist/desktop/renderer/dom-reconcile.js.map +1 -0
- package/dist/desktop/renderer/index.html +211 -34
- package/dist/desktop/renderer/indexing-view.d.ts +22 -0
- package/dist/desktop/renderer/indexing-view.d.ts.map +1 -0
- package/dist/desktop/renderer/indexing-view.js +115 -0
- package/dist/desktop/renderer/indexing-view.js.map +1 -0
- package/dist/desktop/renderer/markdown-view.d.ts +23 -0
- package/dist/desktop/renderer/markdown-view.d.ts.map +1 -0
- package/dist/desktop/renderer/markdown-view.js +436 -0
- package/dist/desktop/renderer/markdown-view.js.map +1 -0
- package/dist/desktop/renderer/motion.d.ts +67 -0
- package/dist/desktop/renderer/motion.d.ts.map +1 -0
- package/dist/desktop/renderer/motion.js +296 -0
- package/dist/desktop/renderer/motion.js.map +1 -0
- package/dist/desktop/renderer/renderer.js +1788 -151
- package/dist/desktop/renderer/renderer.js.map +1 -1
- package/dist/desktop/renderer/session-find.d.ts +18 -0
- package/dist/desktop/renderer/session-find.d.ts.map +1 -0
- package/dist/desktop/renderer/session-find.js +29 -0
- package/dist/desktop/renderer/session-find.js.map +1 -0
- package/dist/desktop/renderer/session-search.d.ts +30 -0
- package/dist/desktop/renderer/session-search.d.ts.map +1 -0
- package/dist/desktop/renderer/session-search.js +296 -0
- package/dist/desktop/renderer/session-search.js.map +1 -0
- package/dist/desktop/renderer/store.d.ts +33 -0
- package/dist/desktop/renderer/store.d.ts.map +1 -1
- package/dist/desktop/renderer/store.js +92 -19
- package/dist/desktop/renderer/store.js.map +1 -1
- package/dist/desktop/renderer/styles.css +910 -268
- package/dist/desktop/renderer/vendor/gsap.min.js +11 -0
- package/dist/desktop/renderer-diagnostics.d.ts +5 -0
- package/dist/desktop/renderer-diagnostics.d.ts.map +1 -0
- package/dist/desktop/renderer-diagnostics.js +47 -0
- package/dist/desktop/renderer-diagnostics.js.map +1 -0
- package/dist/desktop/security.d.ts +26 -1
- package/dist/desktop/security.d.ts.map +1 -1
- package/dist/desktop/security.js +26 -6
- package/dist/desktop/security.js.map +1 -1
- package/dist/desktop/smoke-fixture.d.ts.map +1 -1
- package/dist/desktop/smoke-fixture.js +77 -3
- package/dist/desktop/smoke-fixture.js.map +1 -1
- package/dist/desktop/splash/index.html +25 -0
- package/dist/desktop/splash/splash.d.ts +2 -0
- package/dist/desktop/splash/splash.d.ts.map +1 -0
- package/dist/desktop/splash/splash.js +8 -0
- package/dist/desktop/splash/splash.js.map +1 -0
- package/dist/desktop/splash/styles.css +24 -0
- package/dist/desktop/system-open.d.ts +16 -0
- package/dist/desktop/system-open.d.ts.map +1 -0
- package/dist/desktop/system-open.js +90 -0
- package/dist/desktop/system-open.js.map +1 -0
- package/dist/desktop/validation.d.ts.map +1 -1
- package/dist/desktop/validation.js +99 -21
- package/dist/desktop/validation.js.map +1 -1
- package/dist/desktop/window-security.d.ts +4 -0
- package/dist/desktop/window-security.d.ts.map +1 -0
- package/dist/desktop/window-security.js +26 -0
- package/dist/desktop/window-security.js.map +1 -0
- package/dist/documents/errors.d.ts +12 -0
- package/dist/documents/errors.d.ts.map +1 -0
- package/dist/documents/errors.js +12 -0
- package/dist/documents/errors.js.map +1 -0
- package/dist/documents/extract.d.ts +37 -0
- package/dist/documents/extract.d.ts.map +1 -0
- package/dist/documents/extract.js +90 -0
- package/dist/documents/extract.js.map +1 -0
- package/dist/documents/legacy-office.d.ts +23 -0
- package/dist/documents/legacy-office.d.ts.map +1 -0
- package/dist/documents/legacy-office.js +439 -0
- package/dist/documents/legacy-office.js.map +1 -0
- package/dist/documents/ole.d.ts +20 -0
- package/dist/documents/ole.d.ts.map +1 -0
- package/dist/documents/ole.js +189 -0
- package/dist/documents/ole.js.map +1 -0
- package/dist/documents/ooxml.d.ts +23 -0
- package/dist/documents/ooxml.d.ts.map +1 -0
- package/dist/documents/ooxml.js +197 -0
- package/dist/documents/ooxml.js.map +1 -0
- package/dist/documents/pdf.d.ts +20 -0
- package/dist/documents/pdf.d.ts.map +1 -0
- package/dist/documents/pdf.js +95 -0
- package/dist/documents/pdf.js.map +1 -0
- package/dist/documents/plain-text.d.ts +22 -0
- package/dist/documents/plain-text.d.ts.map +1 -0
- package/dist/documents/plain-text.js +57 -0
- package/dist/documents/plain-text.js.map +1 -0
- package/dist/documents/zip.d.ts +15 -0
- package/dist/documents/zip.d.ts.map +1 -0
- package/dist/documents/zip.js +137 -0
- package/dist/documents/zip.js.map +1 -0
- package/dist/domain/indexing.d.ts +60 -0
- package/dist/domain/indexing.d.ts.map +1 -0
- package/dist/domain/indexing.js +13 -0
- package/dist/domain/indexing.js.map +1 -0
- package/dist/domain/runtime.d.ts +133 -5
- package/dist/domain/runtime.d.ts.map +1 -1
- package/dist/gateway/local-gateway.d.ts +8 -0
- package/dist/gateway/local-gateway.d.ts.map +1 -1
- package/dist/gateway/local-gateway.js +105 -21
- package/dist/gateway/local-gateway.js.map +1 -1
- package/dist/indexing/index-service.d.ts +56 -0
- package/dist/indexing/index-service.d.ts.map +1 -0
- package/dist/indexing/index-service.js +262 -0
- package/dist/indexing/index-service.js.map +1 -0
- package/dist/kernel/loop.d.ts +10 -0
- package/dist/kernel/loop.d.ts.map +1 -1
- package/dist/kernel/loop.js +6 -2
- package/dist/kernel/loop.js.map +1 -1
- package/dist/kernel/reducer.d.ts.map +1 -1
- package/dist/kernel/reducer.js +17 -1
- package/dist/kernel/reducer.js.map +1 -1
- package/dist/kernel/state.d.ts +17 -4
- package/dist/kernel/state.d.ts.map +1 -1
- package/dist/kernel/state.js +2 -0
- package/dist/kernel/state.js.map +1 -1
- package/dist/pi/context-budget.d.ts +8 -0
- package/dist/pi/context-budget.d.ts.map +1 -0
- package/dist/pi/context-budget.js +62 -0
- package/dist/pi/context-budget.js.map +1 -0
- package/dist/pi/pi-runtime-adapter.d.ts +38 -3
- package/dist/pi/pi-runtime-adapter.d.ts.map +1 -1
- package/dist/pi/pi-runtime-adapter.js +551 -56
- package/dist/pi/pi-runtime-adapter.js.map +1 -1
- package/dist/plugins/bundled-skills.d.ts +56 -0
- package/dist/plugins/bundled-skills.d.ts.map +1 -0
- package/dist/plugins/bundled-skills.js +243 -0
- package/dist/plugins/bundled-skills.js.map +1 -0
- package/dist/plugins/extension-manager.d.ts +23 -1
- package/dist/plugins/extension-manager.d.ts.map +1 -1
- package/dist/plugins/extension-manager.js +117 -0
- package/dist/plugins/extension-manager.js.map +1 -1
- package/dist/plugins/types.d.ts +29 -0
- package/dist/plugins/types.d.ts.map +1 -1
- package/dist/plugins/workspace-skills.d.ts +36 -0
- package/dist/plugins/workspace-skills.d.ts.map +1 -0
- package/dist/plugins/workspace-skills.js +309 -0
- package/dist/plugins/workspace-skills.js.map +1 -0
- package/dist/policy/policy.d.ts.map +1 -1
- package/dist/policy/policy.js +22 -3
- package/dist/policy/policy.js.map +1 -1
- package/dist/protocol/client.d.ts +1 -0
- package/dist/protocol/client.d.ts.map +1 -1
- package/dist/protocol/client.js +49 -24
- package/dist/protocol/client.js.map +1 -1
- package/dist/protocol/limits.d.ts +69 -0
- package/dist/protocol/limits.d.ts.map +1 -0
- package/dist/protocol/limits.js +166 -0
- package/dist/protocol/limits.js.map +1 -0
- package/dist/protocol/schema.d.ts +6 -0
- package/dist/protocol/schema.d.ts.map +1 -1
- package/dist/protocol/schema.js.map +1 -1
- package/dist/protocol/server-frame-codec.d.ts +18 -0
- package/dist/protocol/server-frame-codec.d.ts.map +1 -0
- package/dist/protocol/server-frame-codec.js +211 -0
- package/dist/protocol/server-frame-codec.js.map +1 -0
- package/dist/service/legacy-daemon.d.ts +6 -0
- package/dist/service/legacy-daemon.d.ts.map +1 -0
- package/dist/service/legacy-daemon.js +42 -0
- package/dist/service/legacy-daemon.js.map +1 -0
- package/dist/service/service-launch.d.ts +10 -0
- package/dist/service/service-launch.d.ts.map +1 -0
- package/dist/service/service-launch.js +56 -0
- package/dist/service/service-launch.js.map +1 -0
- package/dist/service/system-service.d.ts +57 -0
- package/dist/service/system-service.d.ts.map +1 -0
- package/dist/service/system-service.js +263 -0
- package/dist/service/system-service.js.map +1 -0
- package/dist/sessions/session-catalog.d.ts +45 -0
- package/dist/sessions/session-catalog.d.ts.map +1 -0
- package/dist/sessions/session-catalog.js +270 -0
- package/dist/sessions/session-catalog.js.map +1 -0
- package/dist/sessions/session-file.d.ts +12 -0
- package/dist/sessions/session-file.d.ts.map +1 -0
- package/dist/sessions/session-file.js +47 -0
- package/dist/sessions/session-file.js.map +1 -0
- package/dist/settings/compaction-settings.d.ts +10 -0
- package/dist/settings/compaction-settings.d.ts.map +1 -0
- package/dist/settings/compaction-settings.js +8 -0
- package/dist/settings/compaction-settings.js.map +1 -0
- package/dist/settings/indexing-settings-service.d.ts +16 -0
- package/dist/settings/indexing-settings-service.d.ts.map +1 -0
- package/dist/settings/indexing-settings-service.js +57 -0
- package/dist/settings/indexing-settings-service.js.map +1 -0
- package/dist/settings/indexing-settings.d.ts +30 -0
- package/dist/settings/indexing-settings.d.ts.map +1 -0
- package/dist/settings/indexing-settings.js +58 -0
- package/dist/settings/indexing-settings.js.map +1 -0
- package/dist/settings/llm-settings-service.d.ts +6 -0
- package/dist/settings/llm-settings-service.d.ts.map +1 -1
- package/dist/settings/llm-settings-service.js +137 -12
- package/dist/settings/llm-settings-service.js.map +1 -1
- package/dist/settings/llm-settings.d.ts +68 -2
- package/dist/settings/llm-settings.d.ts.map +1 -1
- package/dist/settings/llm-settings.js +119 -17
- package/dist/settings/llm-settings.js.map +1 -1
- package/dist/settings/model-api.d.ts +10 -0
- package/dist/settings/model-api.d.ts.map +1 -0
- package/dist/settings/model-api.js +10 -0
- package/dist/settings/model-api.js.map +1 -0
- package/dist/storage/home.d.ts +1 -0
- package/dist/storage/home.d.ts.map +1 -1
- package/dist/storage/home.js +37 -2
- package/dist/storage/home.js.map +1 -1
- package/dist/tools/core-tools.d.ts +2 -0
- package/dist/tools/core-tools.d.ts.map +1 -1
- package/dist/tools/core-tools.js +91 -1
- package/dist/tools/core-tools.js.map +1 -1
- package/dist/ui/shared/activity.d.ts +2 -0
- package/dist/ui/shared/activity.d.ts.map +1 -1
- package/dist/ui/shared/activity.js +18 -4
- package/dist/ui/shared/activity.js.map +1 -1
- package/dist/ui/shared/full-message.d.ts +22 -0
- package/dist/ui/shared/full-message.d.ts.map +1 -0
- package/dist/ui/shared/full-message.js +40 -0
- package/dist/ui/shared/full-message.js.map +1 -0
- package/dist/ui/shared/local-links.d.ts +7 -0
- package/dist/ui/shared/local-links.d.ts.map +1 -0
- package/dist/ui/shared/local-links.js +24 -0
- package/dist/ui/shared/local-links.js.map +1 -0
- package/dist/ui/shared/markdown-stream.d.ts +25 -0
- package/dist/ui/shared/markdown-stream.d.ts.map +1 -0
- package/dist/ui/shared/markdown-stream.js +35 -0
- package/dist/ui/shared/markdown-stream.js.map +1 -0
- package/dist/ui/shared/markdown.d.ts +70 -0
- package/dist/ui/shared/markdown.d.ts.map +1 -0
- package/dist/ui/shared/markdown.js +434 -0
- package/dist/ui/shared/markdown.js.map +1 -0
- package/dist/ui/shared/presentation.d.ts +10 -2
- package/dist/ui/shared/presentation.d.ts.map +1 -1
- package/dist/ui/shared/presentation.js +83 -22
- package/dist/ui/shared/presentation.js.map +1 -1
- package/dist/ui/shared/protocol-state.d.ts +19 -0
- package/dist/ui/shared/protocol-state.d.ts.map +1 -1
- package/dist/ui/shared/protocol-state.js +188 -26
- package/dist/ui/shared/protocol-state.js.map +1 -1
- package/dist/ui/shared/virtual-list.d.ts +34 -0
- package/dist/ui/shared/virtual-list.d.ts.map +1 -0
- package/dist/ui/shared/virtual-list.js +143 -0
- package/dist/ui/shared/virtual-list.js.map +1 -0
- package/dist/ui/tui/commands.d.ts +1 -1
- package/dist/ui/tui/commands.d.ts.map +1 -1
- package/dist/ui/tui/commands.js +8 -3
- package/dist/ui/tui/commands.js.map +1 -1
- package/dist/ui/tui/store.d.ts +22 -1
- package/dist/ui/tui/store.d.ts.map +1 -1
- package/dist/ui/tui/store.js +50 -3
- package/dist/ui/tui/store.js.map +1 -1
- package/dist/ui/tui/tui-app.d.ts.map +1 -1
- package/dist/ui/tui/tui-app.js +231 -31
- package/dist/ui/tui/tui-app.js.map +1 -1
- package/dist/ui/tui/view.d.ts +7 -0
- package/dist/ui/tui/view.d.ts.map +1 -1
- package/dist/ui/tui/view.js +161 -57
- package/dist/ui/tui/view.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +13 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plain-text.js","sourceRoot":"","sources":["../../src/documents/plain-text.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH,gEAAgE;AAChE,MAAM,gBAAgB,GAAG,SAAS,CAAC;AAEnC,MAAM,UAAU,UAAU,CAAC,MAAc;IACvC,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,4EAA4E;IAC5E,8EAA8E;IAC9E,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IACjE,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACtD,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC9E,2EAA2E;IAC3E,+DAA+D;IAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;AACzE,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc;IACzC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACzF,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAC1E,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACnE,OAAO,EAAE,IAAI,EAAE,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;IAChG,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACnE,OAAO,EAAE,IAAI,EAAE,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;IAChG,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,iFAAiF;AACjF,SAAS,YAAY,CAAC,MAAc,EAAE,QAAgB;IACpD,IAAI,CAAC;QACH,OAAO,IAAI,WAAW,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC7B,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare class ZipArchive {
|
|
2
|
+
#private;
|
|
3
|
+
private constructor();
|
|
4
|
+
static open(buffer: Buffer): ZipArchive;
|
|
5
|
+
has(name: string): boolean;
|
|
6
|
+
/** Part names in the archive, in central-directory order. */
|
|
7
|
+
names(): string[];
|
|
8
|
+
/** Names matching `pattern`, sorted so `slide2` precedes `slide10`. */
|
|
9
|
+
matching(pattern: RegExp): string[];
|
|
10
|
+
/** Reads one part as UTF-8, or undefined when the package does not carry it. */
|
|
11
|
+
readText(name: string): string | undefined;
|
|
12
|
+
}
|
|
13
|
+
/** True when the buffer starts with a local file header, so it is worth opening. */
|
|
14
|
+
export declare function looksLikeZip(buffer: Buffer): boolean;
|
|
15
|
+
//# sourceMappingURL=zip.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zip.d.ts","sourceRoot":"","sources":["../../src/documents/zip.ts"],"names":[],"mappings":"AAqCA,qBAAa,UAAU;;IAIrB,OAAO;IAKP,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU;IAIvC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B,6DAA6D;IAC7D,KAAK,IAAI,MAAM,EAAE;IAIjB,uEAAuE;IACvE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAInC,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;CAuB3C;AAED,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEpD"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { inflateRawSync } from "node:zlib";
|
|
2
|
+
/**
|
|
3
|
+
* Just enough ZIP to read an Office Open XML package.
|
|
4
|
+
*
|
|
5
|
+
* Every modern Office format — and everything WPS saves in one — is a ZIP whose
|
|
6
|
+
* parts are deflated, which `node:zlib` already decompresses. A dependency for
|
|
7
|
+
* this would buy nothing and would have to be trusted with user documents, so
|
|
8
|
+
* the central directory is walked here instead.
|
|
9
|
+
*/
|
|
10
|
+
const END_OF_CENTRAL_DIRECTORY = 0x06054b50;
|
|
11
|
+
const CENTRAL_FILE_HEADER = 0x02014b50;
|
|
12
|
+
const LOCAL_FILE_HEADER = 0x04034b50;
|
|
13
|
+
const ZIP64_END_LOCATOR = 0x07064b50;
|
|
14
|
+
const ZIP64_END_OF_CENTRAL_DIRECTORY = 0x06064b50;
|
|
15
|
+
/** The comment that may follow the end-of-central-directory record is 16 bits long. */
|
|
16
|
+
const MAX_TRAILING_COMMENT = 0xffff;
|
|
17
|
+
const END_RECORD_LENGTH = 22;
|
|
18
|
+
const STORED = 0;
|
|
19
|
+
const DEFLATED = 8;
|
|
20
|
+
/**
|
|
21
|
+
* Ceiling for one inflated part. A crafted archive can claim a small compressed
|
|
22
|
+
* size and expand without bound, and these documents are read on behalf of
|
|
23
|
+
* whoever asked the agent to open them.
|
|
24
|
+
*/
|
|
25
|
+
const MAX_PART_BYTES = 64 * 1024 * 1024;
|
|
26
|
+
export class ZipArchive {
|
|
27
|
+
#buffer;
|
|
28
|
+
#entries;
|
|
29
|
+
constructor(buffer, entries) {
|
|
30
|
+
this.#buffer = buffer;
|
|
31
|
+
this.#entries = entries;
|
|
32
|
+
}
|
|
33
|
+
static open(buffer) {
|
|
34
|
+
return new ZipArchive(buffer, readCentralDirectory(buffer));
|
|
35
|
+
}
|
|
36
|
+
has(name) {
|
|
37
|
+
return this.#entries.has(name);
|
|
38
|
+
}
|
|
39
|
+
/** Part names in the archive, in central-directory order. */
|
|
40
|
+
names() {
|
|
41
|
+
return [...this.#entries.keys()];
|
|
42
|
+
}
|
|
43
|
+
/** Names matching `pattern`, sorted so `slide2` precedes `slide10`. */
|
|
44
|
+
matching(pattern) {
|
|
45
|
+
return this.names().filter((name) => pattern.test(name)).sort(compareNumbered);
|
|
46
|
+
}
|
|
47
|
+
/** Reads one part as UTF-8, or undefined when the package does not carry it. */
|
|
48
|
+
readText(name) {
|
|
49
|
+
const entry = this.#entries.get(name);
|
|
50
|
+
return entry ? this.#read(entry).toString("utf8") : undefined;
|
|
51
|
+
}
|
|
52
|
+
#read(entry) {
|
|
53
|
+
const header = entry.localHeaderOffset;
|
|
54
|
+
if (header + 30 > this.#buffer.length || this.#buffer.readUInt32LE(header) !== LOCAL_FILE_HEADER) {
|
|
55
|
+
throw new Error("Zip entry does not start with a local file header");
|
|
56
|
+
}
|
|
57
|
+
// The local header repeats the name and extra fields with its own lengths;
|
|
58
|
+
// the central directory's copies may differ in size, so these are the ones
|
|
59
|
+
// that locate the data.
|
|
60
|
+
const nameLength = this.#buffer.readUInt16LE(header + 26);
|
|
61
|
+
const extraLength = this.#buffer.readUInt16LE(header + 28);
|
|
62
|
+
const start = header + 30 + nameLength + extraLength;
|
|
63
|
+
const end = start + entry.compressedSize;
|
|
64
|
+
if (end > this.#buffer.length)
|
|
65
|
+
throw new Error("Zip entry runs past the end of the archive");
|
|
66
|
+
const raw = this.#buffer.subarray(start, end);
|
|
67
|
+
if (entry.compressionMethod === STORED)
|
|
68
|
+
return raw;
|
|
69
|
+
if (entry.compressionMethod === DEFLATED)
|
|
70
|
+
return inflateRawSync(raw, { maxOutputLength: MAX_PART_BYTES });
|
|
71
|
+
throw new Error(`Unsupported zip compression method ${entry.compressionMethod}`);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/** True when the buffer starts with a local file header, so it is worth opening. */
|
|
75
|
+
export function looksLikeZip(buffer) {
|
|
76
|
+
return buffer.length >= 4 && buffer.readUInt32LE(0) === LOCAL_FILE_HEADER;
|
|
77
|
+
}
|
|
78
|
+
function readCentralDirectory(buffer) {
|
|
79
|
+
const end = findEndRecord(buffer);
|
|
80
|
+
let count = buffer.readUInt16LE(end + 10);
|
|
81
|
+
let offset = buffer.readUInt32LE(end + 16);
|
|
82
|
+
// A package that needed ZIP64 records the real count and offset in its own
|
|
83
|
+
// trailer, and leaves the 16- and 32-bit fields saturated.
|
|
84
|
+
if (count === 0xffff || offset === 0xffffffff) {
|
|
85
|
+
const zip64 = findZip64Record(buffer, end);
|
|
86
|
+
count = Number(buffer.readBigUInt64LE(zip64 + 32));
|
|
87
|
+
offset = Number(buffer.readBigUInt64LE(zip64 + 48));
|
|
88
|
+
}
|
|
89
|
+
const entries = new Map();
|
|
90
|
+
for (let index = 0; index < count; index += 1) {
|
|
91
|
+
if (offset + 46 > buffer.length || buffer.readUInt32LE(offset) !== CENTRAL_FILE_HEADER) {
|
|
92
|
+
throw new Error("Zip central directory is malformed");
|
|
93
|
+
}
|
|
94
|
+
const compressionMethod = buffer.readUInt16LE(offset + 10);
|
|
95
|
+
const compressedSize = buffer.readUInt32LE(offset + 20);
|
|
96
|
+
const nameLength = buffer.readUInt16LE(offset + 28);
|
|
97
|
+
const extraLength = buffer.readUInt16LE(offset + 30);
|
|
98
|
+
const commentLength = buffer.readUInt16LE(offset + 32);
|
|
99
|
+
const localHeaderOffset = buffer.readUInt32LE(offset + 42);
|
|
100
|
+
const name = buffer.subarray(offset + 46, offset + 46 + nameLength).toString("utf8");
|
|
101
|
+
// A duplicate name is the classic way to hide a part from one reader and
|
|
102
|
+
// show it to another, so the first one wins and the rest are ignored.
|
|
103
|
+
if (!entries.has(name))
|
|
104
|
+
entries.set(name, { compressionMethod, compressedSize, localHeaderOffset });
|
|
105
|
+
offset += 46 + nameLength + extraLength + commentLength;
|
|
106
|
+
}
|
|
107
|
+
return entries;
|
|
108
|
+
}
|
|
109
|
+
function findEndRecord(buffer) {
|
|
110
|
+
const earliest = Math.max(0, buffer.length - END_RECORD_LENGTH - MAX_TRAILING_COMMENT);
|
|
111
|
+
for (let offset = buffer.length - END_RECORD_LENGTH; offset >= earliest; offset -= 1) {
|
|
112
|
+
if (buffer.readUInt32LE(offset) === END_OF_CENTRAL_DIRECTORY)
|
|
113
|
+
return offset;
|
|
114
|
+
}
|
|
115
|
+
throw new Error("Not a zip archive: no end-of-central-directory record");
|
|
116
|
+
}
|
|
117
|
+
function findZip64Record(buffer, endRecord) {
|
|
118
|
+
const locator = endRecord - 20;
|
|
119
|
+
if (locator < 0 || buffer.readUInt32LE(locator) !== ZIP64_END_LOCATOR) {
|
|
120
|
+
throw new Error("Zip claims ZIP64 sizes without a ZIP64 locator");
|
|
121
|
+
}
|
|
122
|
+
const offset = Number(buffer.readBigUInt64LE(locator + 8));
|
|
123
|
+
if (offset + 56 > buffer.length || buffer.readUInt32LE(offset) !== ZIP64_END_OF_CENTRAL_DIRECTORY) {
|
|
124
|
+
throw new Error("Zip ZIP64 end-of-central-directory record is malformed");
|
|
125
|
+
}
|
|
126
|
+
return offset;
|
|
127
|
+
}
|
|
128
|
+
/** Orders `sheet2.xml` before `sheet10.xml`, which a plain sort gets backwards. */
|
|
129
|
+
function compareNumbered(left, right) {
|
|
130
|
+
const leftNumber = Number(/(\d+)/.exec(left)?.[1] ?? Number.NaN);
|
|
131
|
+
const rightNumber = Number(/(\d+)/.exec(right)?.[1] ?? Number.NaN);
|
|
132
|
+
if (Number.isFinite(leftNumber) && Number.isFinite(rightNumber) && leftNumber !== rightNumber) {
|
|
133
|
+
return leftNumber - rightNumber;
|
|
134
|
+
}
|
|
135
|
+
return left.localeCompare(right);
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=zip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zip.js","sourceRoot":"","sources":["../../src/documents/zip.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Continuous local document indexing, as seen by every client.
|
|
3
|
+
*
|
|
4
|
+
* This lives in `domain/` rather than beside the service that produces it
|
|
5
|
+
* because `KernelState` embeds it, and `KernelState` is imported by the Electron
|
|
6
|
+
* renderer. The renderer runs sandboxed with Node integration disabled, so any
|
|
7
|
+
* module it can reach must stay free of Node built-ins; the service itself
|
|
8
|
+
* (which spawns a process and touches the filesystem) is deliberately kept in a
|
|
9
|
+
* separate module the renderer never imports.
|
|
10
|
+
*/
|
|
11
|
+
export type IndexingPhase =
|
|
12
|
+
/** Switched off in `config.indexing.enabled`. */
|
|
13
|
+
"disabled"
|
|
14
|
+
/** Switched on, but no directory has been chosen, so no pass can run. */
|
|
15
|
+
| "unconfigured"
|
|
16
|
+
/** Switched on and configured, but the release shipped no indexer binary. */
|
|
17
|
+
| "unavailable" | "idle"
|
|
18
|
+
/** Walking the directories. The CLI reports no counts here, however long it takes. */
|
|
19
|
+
| "scanning"
|
|
20
|
+
/** Checking what was found against the fingerprints of the last pass, also without counts. */
|
|
21
|
+
| "comparing" | "indexing" | "failed";
|
|
22
|
+
/**
|
|
23
|
+
* The outcome of the last pass that ran to completion. It survives the next
|
|
24
|
+
* pass starting, so a rescan — which zeroes the live counters and can spend
|
|
25
|
+
* minutes walking a large tree without reporting anything — does not make an
|
|
26
|
+
* index that is already usable look as if it never ran.
|
|
27
|
+
*/
|
|
28
|
+
export interface IndexingPassSummary {
|
|
29
|
+
finishedAt: string;
|
|
30
|
+
durationMs: number;
|
|
31
|
+
/** Files that were new or changed and so were (re)indexed. */
|
|
32
|
+
processed: number;
|
|
33
|
+
/** Files unchanged since the previous pass. */
|
|
34
|
+
skipped: number;
|
|
35
|
+
failed: number;
|
|
36
|
+
}
|
|
37
|
+
export interface IndexingStatus {
|
|
38
|
+
version: 1;
|
|
39
|
+
/**
|
|
40
|
+
* What `config.indexing.enabled` says, independent of whether a pass can
|
|
41
|
+
* actually run. Without it a client cannot tell the settings panel's "on"
|
|
42
|
+
* apart from the several reasons a switched-on indexer stays idle, which is
|
|
43
|
+
* how a configured indexer came to be reported as unconfigured.
|
|
44
|
+
*/
|
|
45
|
+
enabled: boolean;
|
|
46
|
+
phase: IndexingPhase;
|
|
47
|
+
directories: readonly string[];
|
|
48
|
+
total: number;
|
|
49
|
+
processed: number;
|
|
50
|
+
failed: number;
|
|
51
|
+
skipped: number;
|
|
52
|
+
currentFile?: string;
|
|
53
|
+
startedAt?: string;
|
|
54
|
+
finishedAt?: string;
|
|
55
|
+
nextRunAt?: string;
|
|
56
|
+
message?: string;
|
|
57
|
+
lastPass?: IndexingPassSummary;
|
|
58
|
+
}
|
|
59
|
+
export declare function initialIndexingStatus(): IndexingStatus;
|
|
60
|
+
//# sourceMappingURL=indexing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indexing.d.ts","sourceRoot":"","sources":["../../src/domain/indexing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,MAAM,aAAa;AACvB,iDAAiD;AAC/C,UAAU;AACZ,yEAAyE;GACvE,cAAc;AAChB,6EAA6E;GAC3E,aAAa,GACb,MAAM;AACR,sFAAsF;GACpF,UAAU;AACZ,8FAA8F;GAC5F,WAAW,GACX,UAAU,GACV,QAAQ,CAAC;AAEb;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,8DAA8D;IAC9D,SAAS,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,CAAC,CAAC;IACX;;;;;OAKG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,aAAa,CAAC;IACrB,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;CAChC;AAED,wBAAgB,qBAAqB,IAAI,cAAc,CAWtD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indexing.js","sourceRoot":"","sources":["../../src/domain/indexing.ts"],"names":[],"mappings":"AAgEA,MAAM,UAAU,qBAAqB;IACnC,OAAO;QACL,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,UAAU;QACjB,WAAW,EAAE,EAAE;QACf,KAAK,EAAE,CAAC;QACR,SAAS,EAAE,CAAC;QACZ,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;KACX,CAAC;AACJ,CAAC"}
|
package/dist/domain/runtime.d.ts
CHANGED
|
@@ -50,12 +50,35 @@ export interface RuntimeMessage {
|
|
|
50
50
|
id?: string;
|
|
51
51
|
role: string;
|
|
52
52
|
text: string;
|
|
53
|
+
/** Model-provided reasoning kept separate from the final answer. */
|
|
54
|
+
thinking?: string;
|
|
55
|
+
toolCalls?: readonly RuntimeToolCall[];
|
|
56
|
+
toolCallId?: string;
|
|
57
|
+
toolName?: string;
|
|
58
|
+
isError?: boolean;
|
|
59
|
+
}
|
|
60
|
+
export interface RuntimeToolCall {
|
|
61
|
+
id: string;
|
|
62
|
+
name: string;
|
|
63
|
+
/** Display-only JSON; article bodies retain their existing publication policy. */
|
|
64
|
+
input: string;
|
|
53
65
|
}
|
|
54
66
|
export interface RuntimeQueueSnapshot {
|
|
55
67
|
steering: readonly string[];
|
|
56
68
|
followUp: readonly string[];
|
|
57
69
|
}
|
|
58
|
-
export interface
|
|
70
|
+
export interface RootSessionMetadata {
|
|
71
|
+
title: string;
|
|
72
|
+
createdAt: string;
|
|
73
|
+
updatedAt: string;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Everything about a session except its transcript. Clients need this for every
|
|
77
|
+
* session they know about, so it must not grow with the length of a
|
|
78
|
+
* conversation — a snapshot that carries every session's full history is the
|
|
79
|
+
* one frame a reconnect cannot avoid.
|
|
80
|
+
*/
|
|
81
|
+
export interface SessionMetadata {
|
|
59
82
|
sessionId: SessionId;
|
|
60
83
|
upstreamSessionId: string;
|
|
61
84
|
sessionFile?: string;
|
|
@@ -63,13 +86,72 @@ export interface AgentSnapshot {
|
|
|
63
86
|
status: "idle" | "running" | "failed";
|
|
64
87
|
model?: ModelRef;
|
|
65
88
|
thinking: ThinkingLevel;
|
|
66
|
-
|
|
67
|
-
|
|
89
|
+
/** Active model context, distinct from cumulative billing/usage totals. */
|
|
90
|
+
context?: {
|
|
91
|
+
tokens: number;
|
|
92
|
+
window: number;
|
|
93
|
+
estimated: boolean;
|
|
94
|
+
triggerTokens?: number;
|
|
95
|
+
};
|
|
96
|
+
/** Total transcript messages the daemon holds, independent of what is sent. */
|
|
97
|
+
messageCount: number;
|
|
98
|
+
/** First user text, so a session can be titled without its transcript. */
|
|
99
|
+
firstUserText?: string;
|
|
68
100
|
queue: RuntimeQueueSnapshot;
|
|
69
101
|
usage: RuntimeUsage;
|
|
102
|
+
rootSession?: RootSessionMetadata;
|
|
70
103
|
lastError?: string;
|
|
71
104
|
}
|
|
72
|
-
|
|
105
|
+
/**
|
|
106
|
+
* What the daemon broadcasts: session metadata plus a bounded tail of the
|
|
107
|
+
* transcript, enough for a client to render immediately. Older history is
|
|
108
|
+
* fetched on demand with the `session.transcript` command.
|
|
109
|
+
*/
|
|
110
|
+
export interface SessionView extends SessionMetadata {
|
|
111
|
+
/** Index of `messages[0]` within the full transcript. */
|
|
112
|
+
messageOffset: number;
|
|
113
|
+
messages: readonly RuntimeMessage[];
|
|
114
|
+
}
|
|
115
|
+
/** One requested slice of a session's persisted transcript. */
|
|
116
|
+
export interface TranscriptPage {
|
|
117
|
+
/** Index of `messages[0]` within the full transcript. */
|
|
118
|
+
from: number;
|
|
119
|
+
/** Total transcript messages available. */
|
|
120
|
+
count: number;
|
|
121
|
+
messages: readonly RuntimeMessage[];
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* One message's text, sliced. A message can be far longer than the daemon will
|
|
125
|
+
* publish in a single string, so reading one in full is a paged request rather
|
|
126
|
+
* than one oversized frame.
|
|
127
|
+
*/
|
|
128
|
+
export interface TranscriptMessageSlice {
|
|
129
|
+
/** Persisted branch entry id, when the message has one. */
|
|
130
|
+
id?: string;
|
|
131
|
+
/** Index of the message within the full transcript. */
|
|
132
|
+
index: number;
|
|
133
|
+
role: string;
|
|
134
|
+
/** Character offset of `text` within the whole message. */
|
|
135
|
+
offset: number;
|
|
136
|
+
/** Total characters the message holds. */
|
|
137
|
+
length: number;
|
|
138
|
+
text: string;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* One addressable entry of a conversation. Streaming updates name the item they
|
|
142
|
+
* belong to, so a delta never has to be described by re-sending the transcript
|
|
143
|
+
* around it. Pi's own client/server protocol, Codex and OpenClaw all address
|
|
144
|
+
* conversation state this way.
|
|
145
|
+
*/
|
|
146
|
+
export interface TranscriptItem extends RuntimeMessage {
|
|
147
|
+
id: string;
|
|
148
|
+
role: string;
|
|
149
|
+
text: string;
|
|
150
|
+
status: "streaming" | "complete" | "error" | "aborted";
|
|
151
|
+
ts: string;
|
|
152
|
+
}
|
|
153
|
+
export type TranscriptDeltaKind = "text" | "thinking";
|
|
154
|
+
export type RuntimeEventType = "session.replaced" | "run.started" | "run.settled" | "transcript.item.started" | "transcript.delta" | "transcript.item.finished" | "tool.started" | "tool.updated" | "tool.completed" | "article.preview" | "queue.updated" | "compaction.started" | "compaction.completed" | "retry.started" | "retry.completed" | "runtime.error";
|
|
73
155
|
export interface RuntimeEvent {
|
|
74
156
|
id: string;
|
|
75
157
|
sessionId: SessionId;
|
|
@@ -106,11 +188,57 @@ export interface AgentRuntimePort {
|
|
|
106
188
|
prompt(sessionId: SessionId, input: string): Promise<Accepted>;
|
|
107
189
|
steer(sessionId: SessionId, input: string): Promise<Accepted>;
|
|
108
190
|
followUp(sessionId: SessionId, input: string): Promise<Accepted>;
|
|
191
|
+
promoteFollowUp(sessionId: SessionId, index: number): Promise<Accepted>;
|
|
109
192
|
abort(sessionId: SessionId, reason: string): Promise<void>;
|
|
110
193
|
compact(sessionId: SessionId, instructions?: string): Promise<void>;
|
|
111
|
-
|
|
194
|
+
/** Session state without its transcript: never grows with the conversation. */
|
|
195
|
+
snapshot(sessionId: SessionId): SessionMetadata;
|
|
196
|
+
/**
|
|
197
|
+
* A slice of the persisted transcript, newest-first by default. Reading from
|
|
198
|
+
* the persisted branch rather than the model's context means history stays
|
|
199
|
+
* visible after a compaction rewrites what the model sees.
|
|
200
|
+
*/
|
|
201
|
+
transcript(sessionId: SessionId, options: {
|
|
202
|
+
from?: number;
|
|
203
|
+
limit: number;
|
|
204
|
+
}): TranscriptPage;
|
|
205
|
+
/**
|
|
206
|
+
* One transcript message's untruncated text, in slices. Addressed by branch
|
|
207
|
+
* entry id when the caller has one, because an index shifts as a run appends
|
|
208
|
+
* to the transcript underneath it.
|
|
209
|
+
*/
|
|
210
|
+
transcriptMessage(sessionId: SessionId, options: {
|
|
211
|
+
id?: string;
|
|
212
|
+
index?: number;
|
|
213
|
+
offset?: number;
|
|
214
|
+
limit: number;
|
|
215
|
+
}): TranscriptMessageSlice;
|
|
112
216
|
subscribe(sessionId: SessionId, sink: (event: RuntimeEvent) => void): () => void;
|
|
113
217
|
waitForIdle(sessionId: SessionId): Promise<void>;
|
|
114
218
|
dispose(sessionId: SessionId): Promise<void>;
|
|
219
|
+
/**
|
|
220
|
+
* Markdown the model is still streaming into an `article` tool call.
|
|
221
|
+
* Absent on runtimes that do not host that tool.
|
|
222
|
+
*/
|
|
223
|
+
articlePreview?(toolCallId: string): ArticleDraftView | undefined;
|
|
224
|
+
}
|
|
225
|
+
/**
|
|
226
|
+
* A not-yet-saved article, addressed by the tool call that is writing it: a
|
|
227
|
+
* full draft from the top, edits to the saved version, or — at the very start
|
|
228
|
+
* of the call — neither yet.
|
|
229
|
+
*/
|
|
230
|
+
export interface ArticleDraftView {
|
|
231
|
+
toolCallId: string;
|
|
232
|
+
sessionId: string;
|
|
233
|
+
action: "create" | "update";
|
|
234
|
+
title?: string;
|
|
235
|
+
articleId?: string;
|
|
236
|
+
content?: string;
|
|
237
|
+
edits?: readonly {
|
|
238
|
+
find: string;
|
|
239
|
+
replace: string;
|
|
240
|
+
}[];
|
|
241
|
+
/** The last edit's replacement is still arriving. */
|
|
242
|
+
editOpen?: boolean;
|
|
115
243
|
}
|
|
116
244
|
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/domain/runtime.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAE5F,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC5C,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,aAAa,CAAC,EAAE;QACd,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;QAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,qBAAqB,EAAE,SAAS,CAAC,MAAM,GAAG,SAAS,GAAG,KAAK,CAAC,EAAE,CAAC;QAC/D,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;KACxC,CAAC;CACH;AAED,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IACzD,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,SAAS,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,IAAI,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/domain/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,8 +9,16 @@ export interface LocalGatewayOptions {
|
|
|
9
9
|
replayCapacity?: number;
|
|
10
10
|
commandCacheCapacity?: number;
|
|
11
11
|
maxFrameBytes?: number;
|
|
12
|
+
/** Ceiling for a single connection's undecoded *incoming* buffer. */
|
|
12
13
|
maxPendingBytes?: number;
|
|
14
|
+
/** Ceiling for a single connection's queued *outgoing* bytes. */
|
|
15
|
+
maxOutgoingBytes?: number;
|
|
16
|
+
maxServerMessageBytes?: number;
|
|
17
|
+
/** Ceiling for the retained replay window, measured in payload characters. */
|
|
18
|
+
maxReplayBytes?: number;
|
|
13
19
|
idFactory?: () => string;
|
|
20
|
+
/** Reports a dropped connection or an undeliverable frame to the daemon log. */
|
|
21
|
+
onWarning?: (message: string) => void;
|
|
14
22
|
}
|
|
15
23
|
export declare class LocalGateway {
|
|
16
24
|
#private;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-gateway.d.ts","sourceRoot":"","sources":["../../src/gateway/local-gateway.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"local-gateway.d.ts","sourceRoot":"","sources":["../../src/gateway/local-gateway.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAQzE,OAAO,EAQL,KAAK,eAAe,EACpB,KAAK,aAAa,EAGnB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,WAAW,CAAC;IAC5B,aAAa,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qEAAqE;IACrE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iEAAiE;IACjE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,8EAA8E;IAC9E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,MAAM,CAAC;IACzB,gFAAgF;IAChF,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC;AAuCD,qBAAa,YAAY;;gBAsBX,OAAO,EAAE,mBAAmB;IAiBxC,IAAI,SAAS,IAAI,MAAM,CAEtB;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA2B5B,OAAO,CAAC,KAAK,EAAE,iBAAiB,GAAG,aAAa;IAoB1C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAyN5B"}
|