@qvac/harness 1.0.0-rc.1 → 1.0.0-rc.2
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/CHANGELOG.md +1168 -1
- package/NOTICE.md +16 -0
- package/README.md +278 -471
- package/dist-lib/index.d.ts +101 -169
- package/dist-lib/index.js +423 -1506
- package/dist-lib/lib/addon-seal.bare.d.ts +1 -0
- package/dist-lib/lib/addon-seal.bare.js +3 -0
- package/dist-lib/lib/addon-seal.node.d.ts +1 -0
- package/dist-lib/lib/addon-seal.node.js +1 -0
- package/dist-lib/lib/agent/delegate.d.ts +83 -0
- package/dist-lib/lib/agent/delegate.js +261 -0
- package/dist-lib/lib/agent/follow.d.ts +32 -0
- package/dist-lib/lib/agent/follow.js +162 -0
- package/dist-lib/lib/agent/index.d.ts +37 -0
- package/dist-lib/lib/agent/index.js +42 -0
- package/dist-lib/lib/agent/plan.d.ts +6 -0
- package/dist-lib/lib/agent/plan.js +74 -0
- package/dist-lib/lib/agent/resolve.d.ts +3 -0
- package/dist-lib/lib/agent/resolve.js +78 -0
- package/dist-lib/lib/{capabilities → agent}/tool-names.d.ts +0 -1
- package/dist-lib/lib/{capabilities → agent}/tool-names.js +0 -1
- package/dist-lib/lib/{capabilities → agent}/tool-selection.d.ts +3 -6
- package/dist-lib/lib/{capabilities → agent}/tool-selection.js +9 -1
- package/dist-lib/lib/agent/tools.d.ts +14 -0
- package/dist-lib/lib/agent/tools.js +16 -0
- package/dist-lib/lib/agent/transfer.d.ts +7 -0
- package/dist-lib/lib/agent/transfer.js +26 -0
- package/dist-lib/lib/capabilities/agent-ports.d.ts +3 -0
- package/dist-lib/lib/capabilities/agent-ports.js +9 -0
- package/dist-lib/lib/capabilities/completion-engine/actors/answering.d.ts +1 -1
- package/dist-lib/lib/capabilities/completion-engine/actors/answering.js +25 -9
- package/dist-lib/lib/capabilities/completion-engine/actors/batching.d.ts +3 -0
- package/dist-lib/lib/capabilities/completion-engine/actors/batching.js +90 -0
- package/dist-lib/lib/capabilities/completion-engine/actors/direct-search.d.ts +2 -1
- package/dist-lib/lib/capabilities/completion-engine/actors/direct-search.js +14 -5
- package/dist-lib/lib/capabilities/completion-engine/actors/execute.d.ts +5 -3
- package/dist-lib/lib/capabilities/completion-engine/actors/execute.js +8 -3
- package/dist-lib/lib/capabilities/completion-engine/actors/executing.d.ts +29 -2
- package/dist-lib/lib/capabilities/completion-engine/actors/executing.js +100 -40
- package/dist-lib/lib/capabilities/completion-engine/actors/execution-plan.d.ts +11 -10
- package/dist-lib/lib/capabilities/completion-engine/actors/execution-plan.js +28 -21
- package/dist-lib/lib/capabilities/completion-engine/actors/finishing.js +2 -2
- package/dist-lib/lib/capabilities/completion-engine/actors/inspect-prepare.d.ts +4 -0
- package/dist-lib/lib/capabilities/completion-engine/actors/inspect-prepare.js +67 -0
- package/dist-lib/lib/capabilities/completion-engine/actors/inspecting.d.ts +10 -3
- package/dist-lib/lib/capabilities/completion-engine/actors/inspecting.js +14 -11
- package/dist-lib/lib/capabilities/completion-engine/actors/loading-skill.d.ts +7 -3
- package/dist-lib/lib/capabilities/completion-engine/actors/loading-skill.js +30 -31
- package/dist-lib/lib/capabilities/completion-engine/actors/preparing.d.ts +3 -2
- package/dist-lib/lib/capabilities/completion-engine/actors/preparing.js +86 -102
- package/dist-lib/lib/capabilities/completion-engine/actors/rejecting.d.ts +1 -1
- package/dist-lib/lib/capabilities/completion-engine/actors/rejecting.js +24 -7
- package/dist-lib/lib/capabilities/completion-engine/actors/rejection.d.ts +4 -2
- package/dist-lib/lib/capabilities/completion-engine/actors/rejection.js +8 -8
- package/dist-lib/lib/capabilities/completion-engine/actors/resolving.d.ts +1 -1
- package/dist-lib/lib/capabilities/completion-engine/actors/resolving.js +73 -15
- package/dist-lib/lib/capabilities/completion-engine/actors/retrieving.d.ts +10 -0
- package/dist-lib/lib/capabilities/completion-engine/actors/retrieving.js +56 -0
- package/dist-lib/lib/capabilities/completion-engine/actors/run-prepare.d.ts +4 -0
- package/dist-lib/lib/capabilities/completion-engine/actors/run-prepare.js +74 -0
- package/dist-lib/lib/capabilities/completion-engine/actors/skill-step.d.ts +2 -0
- package/dist-lib/lib/capabilities/completion-engine/actors/skill-step.js +76 -0
- package/dist-lib/lib/capabilities/completion-engine/actors/stream.d.ts +2 -2
- package/dist-lib/lib/capabilities/completion-engine/actors/stream.js +2 -1
- package/dist-lib/lib/capabilities/completion-engine/actors/streaming.d.ts +1 -1
- package/dist-lib/lib/capabilities/completion-engine/actors/streaming.js +84 -26
- package/dist-lib/lib/capabilities/completion-engine/actors/wrap-up.d.ts +1 -1
- package/dist-lib/lib/capabilities/completion-engine/actors/wrap-up.js +16 -6
- package/dist-lib/lib/capabilities/completion-engine/actors.d.ts +11 -0
- package/dist-lib/lib/capabilities/completion-engine/actors.js +216 -0
- package/dist-lib/lib/capabilities/completion-engine/driver.d.ts +12 -5
- package/dist-lib/lib/capabilities/completion-engine/driver.js +118 -33
- package/dist-lib/lib/capabilities/completion-engine/durable.d.ts +2 -1
- package/dist-lib/lib/capabilities/completion-engine/durable.js +6 -4
- package/dist-lib/lib/capabilities/completion-engine/engine.d.ts +65 -0
- package/dist-lib/lib/{machine → capabilities/completion-engine}/engine.js +67 -130
- package/dist-lib/lib/capabilities/completion-engine/index.d.ts +30 -0
- package/dist-lib/lib/capabilities/completion-engine/index.js +44 -0
- package/dist-lib/lib/capabilities/completion-engine/loop.d.ts +58 -0
- package/dist-lib/lib/capabilities/completion-engine/loop.js +62 -0
- package/dist-lib/lib/capabilities/completion-engine/metrics.d.ts +4 -0
- package/dist-lib/lib/capabilities/completion-engine/metrics.js +46 -0
- package/dist-lib/lib/capabilities/completion-engine/operations.d.ts +5 -2
- package/dist-lib/lib/capabilities/completion-engine/operations.js +84 -15
- package/dist-lib/lib/capabilities/completion-engine/ports.d.ts +25 -2
- package/dist-lib/lib/capabilities/completion-engine/ports.js +25 -16
- package/dist-lib/lib/capabilities/completion-engine/prepare-step.d.ts +26 -0
- package/dist-lib/lib/{machine → capabilities/completion-engine}/replay-output.d.ts +1 -1
- package/dist-lib/lib/{machine → capabilities/completion-engine}/replay-output.js +1 -1
- package/dist-lib/lib/capabilities/{completion-loop → completion-engine}/round.d.ts +24 -4
- package/dist-lib/lib/capabilities/{completion-loop → completion-engine}/round.js +242 -27
- package/dist-lib/lib/capabilities/completion-engine/session.d.ts +19 -12
- package/dist-lib/lib/capabilities/completion-engine/session.js +12 -6
- package/dist-lib/lib/capabilities/completion-engine/splice.d.ts +2 -0
- package/dist-lib/lib/capabilities/completion-engine/splice.js +7 -0
- package/dist-lib/lib/capabilities/completion-engine/stages.d.ts +23 -0
- package/dist-lib/lib/capabilities/completion-engine/tool-caller.d.ts +10 -0
- package/dist-lib/lib/capabilities/completion-engine/tool-caller.js +151 -0
- package/dist-lib/lib/capabilities/completion-engine/tool-execution.d.ts +77 -0
- package/dist-lib/lib/capabilities/{completion-loop → completion-engine}/tool-execution.js +74 -25
- package/dist-lib/lib/capabilities/{completion-loop → completion-engine}/turns.d.ts +8 -4
- package/dist-lib/lib/capabilities/completion-engine/turns.js +225 -0
- package/dist-lib/lib/capabilities/enhance.d.ts +1 -1
- package/dist-lib/lib/capabilities/enhance.js +3 -2
- package/dist-lib/lib/capabilities/invoke.d.ts +1 -1
- package/dist-lib/lib/capabilities/preview-model-source.d.ts +1 -10
- package/dist-lib/lib/capabilities/preview-model-source.js +3 -1
- package/dist-lib/lib/capabilities/sdk-tool.d.ts +10 -0
- package/dist-lib/lib/capabilities/sdk-tool.js +130 -0
- package/dist-lib/lib/capabilities/skill-entry.d.ts +8 -0
- package/dist-lib/lib/capabilities/skill-entry.js +14 -0
- package/dist-lib/lib/capabilities/tool-plan.d.ts +6 -5
- package/dist-lib/lib/capabilities/tool-plan.js +16 -10
- package/dist-lib/lib/capabilities/tool-turns.d.ts +29 -4
- package/dist-lib/lib/capabilities/tool-turns.js +120 -10
- package/dist-lib/lib/capabilities/usage-breakdown.d.ts +1 -1
- package/dist-lib/lib/capabilities/usage-breakdown.js +4 -1
- package/dist-lib/lib/connect.d.ts +6 -0
- package/dist-lib/lib/connect.js +153 -65
- package/dist-lib/lib/context-window.d.ts +4 -2
- package/dist-lib/lib/context-window.js +27 -16
- package/dist-lib/lib/contract/agent.d.ts +65 -0
- package/dist-lib/lib/{capabilities/types.d.ts → contract/completion.d.ts} +140 -26
- package/dist-lib/lib/contract/exec.d.ts +134 -0
- package/dist-lib/lib/{hooks/types.d.ts → contract/hooks.d.ts} +62 -10
- package/dist-lib/lib/contract/index.d.ts +5 -0
- package/dist-lib/lib/contract/knowledge.d.ts +60 -0
- package/dist-lib/lib/contract/knowledge.js +1 -0
- package/dist-lib/lib/contract/models.d.ts +56 -0
- package/dist-lib/lib/contract/models.js +1 -0
- package/dist-lib/lib/contract/run.d.ts +142 -0
- package/dist-lib/lib/contract/run.js +1 -0
- package/dist-lib/lib/contract/sandbox.d.ts +29 -0
- package/dist-lib/lib/contract/sandbox.js +1 -0
- package/dist-lib/lib/contract/skill-readiness.d.ts +14 -0
- package/dist-lib/lib/contract/skill-readiness.js +1 -0
- package/dist-lib/lib/{capabilities/voice.d.ts → contract/speech.d.ts} +11 -16
- package/dist-lib/lib/contract/speech.js +1 -0
- package/dist-lib/lib/contract-types.d.ts +43 -16
- package/dist-lib/lib/docx/index.d.ts +0 -1
- package/dist-lib/lib/docx/index.js +15 -24
- package/dist-lib/lib/embeddings/index.d.ts +63 -0
- package/dist-lib/lib/embeddings/index.js +267 -0
- package/dist-lib/lib/fold/index.d.ts +50 -0
- package/dist-lib/lib/fold/index.js +123 -0
- package/dist-lib/lib/{tools/exec/adapters/python/guarded-fetch.d.ts → guarded-fetch.d.ts} +5 -12
- package/dist-lib/lib/{tools/exec/adapters/python/guarded-fetch.js → guarded-fetch.js} +12 -34
- package/dist-lib/lib/helpers/completion-params.d.ts +3 -0
- package/dist-lib/lib/helpers/completion-params.js +12 -0
- package/dist-lib/lib/helpers/copy.d.ts +1 -0
- package/dist-lib/lib/helpers/copy.js +5 -0
- package/dist-lib/lib/helpers/drain.d.ts +5 -0
- package/dist-lib/lib/helpers/drain.js +19 -0
- package/dist-lib/lib/{machine/errors.d.ts → helpers/engine-error.d.ts} +6 -9
- package/dist-lib/lib/{machine/errors.js → helpers/engine-error.js} +9 -25
- package/dist-lib/lib/helpers/failure-result.d.ts +21 -0
- package/dist-lib/lib/helpers/failure-result.js +39 -0
- package/dist-lib/lib/helpers/head-tail.d.ts +7 -0
- package/dist-lib/lib/helpers/head-tail.js +19 -0
- package/dist-lib/lib/helpers/image-settings.d.ts +2 -0
- package/dist-lib/lib/helpers/image-settings.js +19 -0
- package/dist-lib/lib/helpers/mcp-methods.d.ts +2 -0
- package/dist-lib/lib/helpers/mcp-methods.js +14 -0
- package/dist-lib/lib/helpers/race-abort.d.ts +1 -1
- package/dist-lib/lib/helpers/race-abort.js +1 -1
- package/dist-lib/lib/helpers/repeated-reply.d.ts +2 -0
- package/dist-lib/lib/helpers/repeated-reply.js +63 -0
- package/dist-lib/lib/helpers/run-outcome.d.ts +5 -4
- package/dist-lib/lib/helpers/run-outcome.js +11 -9
- package/dist-lib/lib/{machine → helpers}/stable-stringify.js +1 -1
- package/dist-lib/lib/helpers/tool-call-markup.d.ts +1 -0
- package/dist-lib/lib/helpers/tool-call-markup.js +9 -5
- package/dist-lib/lib/helpers/tool-label.d.ts +2 -2
- package/dist-lib/lib/helpers/tool-label.js +3 -3
- package/dist-lib/lib/hooks/built-in/arg-repair.d.ts +1 -1
- package/dist-lib/lib/hooks/built-in/arg-repair.js +109 -19
- package/dist-lib/lib/hooks/built-in/egress.d.ts +1 -1
- package/dist-lib/lib/hooks/built-in/egress.js +13 -21
- package/dist-lib/lib/hooks/built-in/sandbox.d.ts +1 -1
- package/dist-lib/lib/hooks/built-in/skill-catalog.d.ts +1 -1
- package/dist-lib/lib/hooks/index.d.ts +48 -0
- package/dist-lib/lib/hooks/index.js +130 -0
- package/dist-lib/lib/hooks/run.d.ts +9 -6
- package/dist-lib/lib/hooks/run.js +113 -48
- package/dist-lib/lib/{completion-lifecycle.d.ts → lifecycle/completion-run.d.ts} +1 -1
- package/dist-lib/lib/{completion-lifecycle.js → lifecycle/completion-run.js} +1 -1
- package/dist-lib/lib/lifecycle/index.d.ts +83 -0
- package/dist-lib/lib/lifecycle/index.js +335 -0
- package/dist-lib/lib/{harness-lifecycle.js → lifecycle/machine.js} +2 -2
- package/dist-lib/lib/machine/completion/actions/completion.d.ts +11 -2
- package/dist-lib/lib/machine/completion/actions/completion.js +98 -14
- package/dist-lib/lib/machine/completion/actions/prepare.d.ts +9 -0
- package/dist-lib/lib/machine/completion/actions/prepare.js +30 -0
- package/dist-lib/lib/machine/completion/actions/tools.d.ts +10 -1
- package/dist-lib/lib/machine/completion/actions/tools.js +79 -7
- package/dist-lib/lib/machine/completion/context.d.ts +7 -2
- package/dist-lib/lib/machine/completion/context.js +29 -5
- package/dist-lib/lib/machine/completion/guards/retry.d.ts +1 -0
- package/dist-lib/lib/machine/completion/guards/retry.js +6 -3
- package/dist-lib/lib/machine/completion/implementations.d.ts +38 -12
- package/dist-lib/lib/machine/completion/implementations.js +81 -31
- package/dist-lib/lib/machine/completion/machine.d.ts +140 -63
- package/dist-lib/lib/machine/completion/machine.js +194 -58
- package/dist-lib/lib/machine/completion/ports.d.ts +7 -55
- package/dist-lib/lib/machine/completion/ports.js +1 -224
- package/dist-lib/lib/machine/completion/rules.d.ts +20 -19
- package/dist-lib/lib/machine/completion/rules.js +73 -52
- package/dist-lib/lib/machine/completion/types.d.ts +110 -187
- package/dist-lib/lib/machine/completion/version.d.ts +1 -0
- package/dist-lib/lib/machine/completion/version.js +1 -0
- package/dist-lib/lib/machine/definition.d.ts +23 -0
- package/dist-lib/lib/machine/definition.js +76 -0
- package/dist-lib/lib/machine/index.d.ts +463 -20
- package/dist-lib/lib/machine/index.js +15 -11
- package/dist-lib/lib/models/llm-presets.d.ts +1 -0
- package/dist-lib/lib/models/model-catalog-constants.d.ts +3 -1
- package/dist-lib/lib/models/model-catalog-constants.js +9 -1
- package/dist-lib/lib/models/model-catalog.d.ts +31 -4
- package/dist-lib/lib/models/model-catalog.js +89 -8
- package/dist-lib/lib/models/model-fit.d.ts +55 -0
- package/dist-lib/lib/models/model-fit.js +102 -0
- package/dist-lib/lib/models/model-handle.d.ts +4 -0
- package/dist-lib/lib/models/model-handle.js +8 -1
- package/dist-lib/lib/models/model-list.d.ts +4 -0
- package/dist-lib/lib/models/model-pool.d.ts +35 -10
- package/dist-lib/lib/models/model-pool.js +63 -14
- package/dist-lib/lib/models/music-catalog.d.ts +1 -1
- package/dist-lib/lib/models/music-catalog.js +8 -1
- package/dist-lib/lib/models/sdk-faults.d.ts +2 -0
- package/dist-lib/lib/models/sdk-faults.js +18 -0
- package/dist-lib/lib/models/tts-model-default.js +3 -3
- package/dist-lib/lib/office/engine/codes.d.ts +62 -0
- package/dist-lib/lib/office/engine/codes.js +61 -0
- package/dist-lib/lib/office/engine/docx/document.d.ts +216 -0
- package/dist-lib/lib/office/engine/docx/document.js +1152 -0
- package/dist-lib/lib/office/engine/docx/index.d.ts +7 -0
- package/dist-lib/lib/office/engine/docx/index.js +8 -0
- package/dist-lib/lib/office/engine/docx/styles.d.ts +31 -0
- package/dist-lib/lib/office/engine/docx/styles.js +173 -0
- package/dist-lib/lib/office/engine/docx/template.d.ts +18 -0
- package/dist-lib/lib/office/engine/docx/template.js +133 -0
- package/dist-lib/lib/office/engine/docx/text.d.ts +55 -0
- package/dist-lib/lib/office/engine/docx/text.js +538 -0
- package/dist-lib/lib/office/engine/drawingml/chart.d.ts +63 -0
- package/dist-lib/lib/office/engine/drawingml/chart.js +539 -0
- package/dist-lib/lib/office/engine/drawingml/text.d.ts +35 -0
- package/dist-lib/lib/office/engine/drawingml/text.js +352 -0
- package/dist-lib/lib/office/engine/errors.d.ts +6 -0
- package/dist-lib/lib/office/engine/errors.js +12 -0
- package/dist-lib/lib/office/engine/image.d.ts +8 -0
- package/dist-lib/lib/office/engine/image.js +48 -0
- package/dist-lib/lib/office/engine/index.d.ts +12 -0
- package/dist-lib/lib/office/engine/index.js +7 -0
- package/dist-lib/lib/office/engine/opc/content-types.d.ts +17 -0
- package/dist-lib/lib/office/engine/opc/content-types.js +74 -0
- package/dist-lib/lib/office/engine/opc/media.d.ts +13 -0
- package/dist-lib/lib/office/engine/opc/media.js +11 -0
- package/dist-lib/lib/office/engine/opc/package.d.ts +51 -0
- package/dist-lib/lib/office/engine/opc/package.js +324 -0
- package/dist-lib/lib/office/engine/opc/paths.d.ts +7 -0
- package/dist-lib/lib/office/engine/opc/paths.js +46 -0
- package/dist-lib/lib/office/engine/opc/properties.d.ts +7 -0
- package/dist-lib/lib/office/engine/opc/properties.js +75 -0
- package/dist-lib/lib/office/engine/opc/relationships.d.ts +23 -0
- package/dist-lib/lib/office/engine/opc/relationships.js +65 -0
- package/dist-lib/lib/office/engine/opc/zip.d.ts +15 -0
- package/dist-lib/lib/office/engine/opc/zip.js +264 -0
- package/dist-lib/lib/office/engine/pptx/fit.d.ts +12 -0
- package/dist-lib/lib/office/engine/pptx/fit.js +37 -0
- package/dist-lib/lib/office/engine/pptx/index.d.ts +8 -0
- package/dist-lib/lib/office/engine/pptx/index.js +8 -0
- package/dist-lib/lib/office/engine/pptx/inherit.d.ts +29 -0
- package/dist-lib/lib/office/engine/pptx/inherit.js +155 -0
- package/dist-lib/lib/office/engine/pptx/notes.d.ts +5 -0
- package/dist-lib/lib/office/engine/pptx/notes.js +85 -0
- package/dist-lib/lib/office/engine/pptx/presentation.d.ts +54 -0
- package/dist-lib/lib/office/engine/pptx/presentation.js +749 -0
- package/dist-lib/lib/office/engine/pptx/read.d.ts +9 -0
- package/dist-lib/lib/office/engine/pptx/read.js +66 -0
- package/dist-lib/lib/office/engine/pptx/shapes.d.ts +52 -0
- package/dist-lib/lib/office/engine/pptx/shapes.js +276 -0
- package/dist-lib/lib/office/engine/pptx/slides.d.ts +27 -0
- package/dist-lib/lib/office/engine/pptx/slides.js +123 -0
- package/dist-lib/lib/office/engine/pptx/template.d.ts +20 -0
- package/dist-lib/lib/office/engine/pptx/template.js +391 -0
- package/dist-lib/lib/office/engine/pptx/types.d.ts +120 -0
- package/dist-lib/lib/office/engine/pptx/types.js +1 -0
- package/dist-lib/lib/office/engine/units.d.ts +3 -0
- package/dist-lib/lib/office/engine/units.js +12 -0
- package/dist-lib/lib/office/engine/utf8.d.ts +2 -0
- package/dist-lib/lib/office/engine/utf8.js +103 -0
- package/dist-lib/lib/office/engine/xlsx/formula.d.ts +49 -0
- package/dist-lib/lib/office/engine/xlsx/formula.js +381 -0
- package/dist-lib/lib/office/engine/xlsx/index.d.ts +8 -0
- package/dist-lib/lib/office/engine/xlsx/index.js +8 -0
- package/dist-lib/lib/office/engine/xlsx/refs.d.ts +22 -0
- package/dist-lib/lib/office/engine/xlsx/refs.js +82 -0
- package/dist-lib/lib/office/engine/xlsx/reshape.d.ts +21 -0
- package/dist-lib/lib/office/engine/xlsx/reshape.js +424 -0
- package/dist-lib/lib/office/engine/xlsx/sheet.d.ts +108 -0
- package/dist-lib/lib/office/engine/xlsx/sheet.js +662 -0
- package/dist-lib/lib/office/engine/xlsx/strings.d.ts +15 -0
- package/dist-lib/lib/office/engine/xlsx/strings.js +93 -0
- package/dist-lib/lib/office/engine/xlsx/styles.d.ts +38 -0
- package/dist-lib/lib/office/engine/xlsx/styles.js +369 -0
- package/dist-lib/lib/office/engine/xlsx/template.d.ts +7 -0
- package/dist-lib/lib/office/engine/xlsx/template.js +54 -0
- package/dist-lib/lib/office/engine/xlsx/workbook.d.ts +161 -0
- package/dist-lib/lib/office/engine/xlsx/workbook.js +850 -0
- package/dist-lib/lib/office/engine/xlsx/write.d.ts +2 -0
- package/dist-lib/lib/office/engine/xlsx/write.js +42 -0
- package/dist-lib/lib/office/engine/xml.d.ts +45 -0
- package/dist-lib/lib/office/engine/xml.js +258 -0
- package/dist-lib/lib/office/extract.d.ts +9 -0
- package/dist-lib/lib/office/extract.js +19 -0
- package/dist-lib/lib/office/index.d.ts +1 -1
- package/dist-lib/lib/office/index.js +74 -19
- package/dist-lib/lib/plugins/addons.d.ts +2 -0
- package/dist-lib/lib/plugins/addons.js +12 -0
- package/dist-lib/lib/plugins/context.d.ts +16 -0
- package/dist-lib/lib/plugins/context.js +48 -0
- package/dist-lib/lib/plugins/index.d.ts +3 -0
- package/dist-lib/lib/plugins/index.js +1 -0
- package/dist-lib/lib/plugins/registry.d.ts +116 -0
- package/dist-lib/lib/plugins/registry.js +505 -0
- package/dist-lib/lib/plugins/runtime.d.ts +27 -0
- package/dist-lib/lib/plugins/runtime.js +143 -0
- package/dist-lib/lib/plugins/scope.d.ts +17 -0
- package/dist-lib/lib/plugins/scope.js +55 -0
- package/dist-lib/lib/prompt.d.ts +2 -5
- package/dist-lib/lib/prompt.js +9 -0
- package/dist-lib/lib/residency/completion-runtime.d.ts +52 -0
- package/dist-lib/lib/{capabilities → residency}/completion-runtime.js +22 -15
- package/dist-lib/lib/residency/index.d.ts +148 -0
- package/dist-lib/lib/residency/index.js +539 -0
- package/dist-lib/lib/run-log/boundary.d.ts +17 -0
- package/dist-lib/lib/run-log/boundary.js +58 -0
- package/dist-lib/lib/run-log/history-codec.d.ts +7 -6
- package/dist-lib/lib/run-log/history-codec.js +175 -46
- package/dist-lib/lib/run-log/index.d.ts +46 -0
- package/dist-lib/lib/run-log/index.js +40 -0
- package/dist-lib/lib/run-log/inspect.d.ts +53 -0
- package/dist-lib/lib/{run-log-inspect.js → run-log/inspect.js} +196 -139
- package/dist-lib/lib/run-log/live.d.ts +37 -0
- package/dist-lib/lib/run-log/live.js +195 -0
- package/dist-lib/lib/run-log/persisted-actor.d.ts +1 -6
- package/dist-lib/lib/run-log/persisted-actor.js +4 -3
- package/dist-lib/lib/run-log/protocol-types.d.ts +37 -14
- package/dist-lib/lib/run-log/protocol.d.ts +1 -2
- package/dist-lib/lib/run-log/protocol.js +45 -40
- package/dist-lib/lib/{run-log-redact.d.ts → run-log/redact.d.ts} +3 -2
- package/dist-lib/lib/{run-log-redact.js → run-log/redact.js} +101 -16
- package/dist-lib/lib/run-log/replay.d.ts +3 -2
- package/dist-lib/lib/run-log/replay.js +7 -6
- package/dist-lib/lib/run-log/request-codec.d.ts +17 -0
- package/dist-lib/lib/run-log/request-codec.js +87 -0
- package/dist-lib/lib/run-log/run-journal.d.ts +14 -8
- package/dist-lib/lib/run-log/run-journal.js +100 -75
- package/dist-lib/lib/sdk-loader.d.ts +2 -7
- package/dist-lib/lib/sdk-loader.js +8 -15
- package/dist-lib/lib/sdk-storage.js +3 -1
- package/dist-lib/lib/serve.js +139 -38
- package/dist-lib/lib/skills-host/index.d.ts +59 -0
- package/dist-lib/lib/skills-host/index.js +268 -0
- package/dist-lib/lib/spawn.d.ts +37 -3
- package/dist-lib/lib/spawn.js +7 -3
- package/dist-lib/lib/spill.d.ts +11 -0
- package/dist-lib/lib/spill.js +82 -0
- package/dist-lib/lib/tools/{exec/adapters/python → attachments}/output-policy.d.ts +2 -3
- package/dist-lib/lib/tools/{exec/adapters/python/attachments.d.ts → attachments/staging.d.ts} +2 -2
- package/dist-lib/lib/tools/{exec/adapters/python/attachments.js → attachments/staging.js} +3 -3
- package/dist-lib/lib/tools/catalog.d.ts +1 -1
- package/dist-lib/lib/tools/catalog.js +1 -1
- package/dist-lib/lib/tools/create-documents.d.ts +1 -1
- package/dist-lib/lib/tools/edit-documents.d.ts +1 -1
- package/dist-lib/lib/tools/exec/adapters/shell/shell-adapter.d.ts +5 -7
- package/dist-lib/lib/tools/exec/adapters/shell/shell-adapter.js +3 -2
- package/dist-lib/lib/tools/exec/bare-runtime.js +2 -4
- package/dist-lib/lib/tools/exec/python-source.d.ts +6 -0
- package/dist-lib/lib/tools/exec/python-source.js +243 -0
- package/dist-lib/lib/tools/exec/runner.d.ts +24 -45
- package/dist-lib/lib/tools/exec/runner.js +68 -34
- package/dist-lib/lib/tools/exec/scope.d.ts +2 -0
- package/dist-lib/lib/tools/exec/scope.js +33 -2
- package/dist-lib/lib/tools/exec/shell-guidance.d.ts +11 -9
- package/dist-lib/lib/tools/exec/shell-guidance.js +28 -57
- package/dist-lib/lib/tools/exec/video-tools.d.ts +0 -1
- package/dist-lib/lib/tools/exec/video-tools.js +0 -5
- package/dist-lib/lib/tools/exec.d.ts +7 -14
- package/dist-lib/lib/tools/exec.js +181 -457
- package/dist-lib/lib/tools/file-glob.d.ts +1 -1
- package/dist-lib/lib/tools/file-glob.js +1 -0
- package/dist-lib/lib/tools/fs/scope.d.ts +1 -0
- package/dist-lib/lib/tools/fs/scope.js +8 -3
- package/dist-lib/lib/tools/grep.d.ts +1 -1
- package/dist-lib/lib/tools/grep.js +1 -0
- package/dist-lib/lib/tools/http-request.d.ts +1 -1
- package/dist-lib/lib/tools/http-request.js +1 -0
- package/dist-lib/lib/tools/index.d.ts +21 -0
- package/dist-lib/lib/tools/index.js +46 -0
- package/dist-lib/lib/tools/office/ops.d.ts +13 -0
- package/dist-lib/lib/tools/office/ops.js +100 -0
- package/dist-lib/lib/tools/office.d.ts +12 -0
- package/dist-lib/lib/tools/office.js +486 -0
- package/dist-lib/lib/tools/operations/compile.d.ts +3 -3
- package/dist-lib/lib/tools/operations/compile.js +2 -1
- package/dist-lib/lib/tools/operations/decoders.js +1 -1
- package/dist-lib/lib/tools/operations/manifest.d.ts +1 -1
- package/dist-lib/lib/tools/outbound-guard.d.ts +3 -1
- package/dist-lib/lib/tools/outbound-guard.js +4 -0
- package/dist-lib/lib/tools/pdf/build.d.ts +43 -0
- package/dist-lib/lib/tools/pdf/build.js +150 -0
- package/dist-lib/lib/tools/pdf/images.d.ts +7 -0
- package/dist-lib/lib/tools/pdf/images.js +82 -0
- package/dist-lib/lib/tools/pdf/request.d.ts +63 -0
- package/dist-lib/lib/tools/pdf/request.js +335 -0
- package/dist-lib/lib/tools/pdf.d.ts +6 -0
- package/dist-lib/lib/tools/pdf.js +303 -0
- package/dist-lib/lib/tools/read-files.d.ts +1 -1
- package/dist-lib/lib/tools/read-files.js +5 -1
- package/dist-lib/lib/tools/skill.d.ts +2 -4
- package/dist-lib/lib/tools/skill.js +20 -22
- package/dist-lib/lib/tools/skills/auth-resolver.d.ts +1 -1
- package/dist-lib/lib/tools/skills/catalog.d.ts +9 -2
- package/dist-lib/lib/tools/skills/catalog.js +7 -7
- package/dist-lib/lib/tools/skills/cli-schema.js +1 -1
- package/dist-lib/lib/tools/skills/frontmatter-parser.d.ts +1 -0
- package/dist-lib/lib/tools/skills/frontmatter-parser.js +1 -0
- package/dist-lib/lib/tools/skills/mention.d.ts +1 -2
- package/dist-lib/lib/tools/skills/mention.js +0 -3
- package/dist-lib/lib/tools/skills/scope-key.d.ts +2 -1
- package/dist-lib/lib/tools/skills/scope-key.js +2 -3
- package/dist-lib/lib/tools/skills/skill-state.d.ts +2 -2
- package/dist-lib/lib/tools/skills/skill-state.js +11 -28
- package/dist-lib/lib/tools/toolsets.d.ts +3 -7
- package/dist-lib/lib/tools/toolsets.js +5 -9
- package/dist-lib/lib/tools/web-fetch.d.ts +1 -1
- package/dist-lib/lib/tools/web-fetch.js +42 -6
- package/dist-lib/lib/web-fetch/embedded-state.js +1 -1
- package/dist-lib/lib/web-fetch/extract.js +1 -1
- package/dist-lib/lib/web-fetch/images.js +1 -1
- package/dist-lib/lib/web-fetch/video.js +1 -1
- package/dist-lib/lib/wire.d.ts +8 -0
- package/dist-lib/lib/wire.js +112 -2
- package/dist-lib/plugins/code-mode/index.d.ts +16 -0
- package/dist-lib/plugins/code-mode/index.js +43 -0
- package/dist-lib/plugins/coding/index.d.ts +15 -0
- package/dist-lib/plugins/coding/index.js +42 -0
- package/dist-lib/plugins/coding/jobs.d.ts +24 -0
- package/dist-lib/plugins/coding/jobs.js +144 -0
- package/dist-lib/plugins/coding/session.d.ts +51 -0
- package/dist-lib/plugins/coding/session.js +263 -0
- package/dist-lib/plugins/coding/write-file.d.ts +3 -0
- package/dist-lib/plugins/coding/write-file.js +52 -0
- package/dist-lib/plugins/command-hooks/index.d.ts +88 -0
- package/dist-lib/plugins/command-hooks/index.js +338 -0
- package/dist-lib/plugins/external-agents/acp.d.ts +27 -0
- package/dist-lib/plugins/external-agents/acp.js +264 -0
- package/dist-lib/plugins/external-agents/cli.d.ts +3 -0
- package/dist-lib/plugins/external-agents/cli.js +199 -0
- package/dist-lib/plugins/external-agents/index.d.ts +25 -0
- package/dist-lib/plugins/external-agents/index.js +54 -0
- package/dist-lib/plugins/external-agents/process.d.ts +19 -0
- package/dist-lib/plugins/external-agents/process.js +92 -0
- package/dist-lib/plugins/external-agents/targets.d.ts +32 -0
- package/dist-lib/plugins/external-agents/targets.js +66 -0
- package/dist-lib/{lib/tools → plugins/image}/edit-image.d.ts +3 -2
- package/dist-lib/{lib/tools → plugins/image}/edit-image.js +7 -2
- package/dist-lib/{lib/tools → plugins/image}/generate-image.d.ts +6 -12
- package/dist-lib/{lib/tools → plugins/image}/generate-image.js +6 -7
- package/dist-lib/plugins/image/index.d.ts +25 -0
- package/dist-lib/plugins/image/index.js +76 -0
- package/dist-lib/plugins/knowledge/index.d.ts +21 -0
- package/dist-lib/plugins/knowledge/index.js +47 -0
- package/dist-lib/plugins/knowledge/search-tool.d.ts +4 -0
- package/dist-lib/plugins/knowledge/search-tool.js +38 -0
- package/dist-lib/plugins/knowledge/store.d.ts +42 -0
- package/dist-lib/plugins/knowledge/store.js +332 -0
- package/dist-lib/plugins/lsp/index.d.ts +32 -0
- package/dist-lib/plugins/lsp/index.js +77 -0
- package/dist-lib/plugins/lsp/pool.d.ts +24 -0
- package/dist-lib/plugins/lsp/pool.js +73 -0
- package/dist-lib/plugins/lsp/rpc.d.ts +37 -0
- package/dist-lib/plugins/lsp/rpc.js +145 -0
- package/dist-lib/plugins/lsp/server.d.ts +55 -0
- package/dist-lib/plugins/lsp/server.js +192 -0
- package/dist-lib/plugins/lsp/tool.d.ts +12 -0
- package/dist-lib/plugins/lsp/tool.js +366 -0
- package/dist-lib/plugins/mcp/call.d.ts +17 -0
- package/dist-lib/{lib/tools/mcp-call.js → plugins/mcp/call.js} +92 -84
- package/dist-lib/plugins/mcp/index.d.ts +21 -0
- package/dist-lib/plugins/mcp/index.js +85 -0
- package/dist-lib/{lib/tools → plugins}/mcp/protocol.d.ts +9 -16
- package/dist-lib/{lib/tools → plugins}/mcp/protocol.js +3 -16
- package/dist-lib/plugins/mcp/server.d.ts +23 -0
- package/dist-lib/plugins/mcp/server.js +108 -0
- package/dist-lib/{lib/tools → plugins/music}/generate-music.d.ts +6 -15
- package/dist-lib/{lib/tools → plugins/music}/generate-music.js +7 -8
- package/dist-lib/plugins/music/index.d.ts +24 -0
- package/dist-lib/plugins/music/index.js +48 -0
- package/dist-lib/{lib/tools/exec → plugins}/obsidian/cli-process.d.ts +2 -2
- package/dist-lib/{lib/tools/exec → plugins}/obsidian/cli-process.js +2 -2
- package/dist-lib/{lib/tools/exec → plugins}/obsidian/cli.d.ts +1 -1
- package/dist-lib/{lib/tools/exec → plugins}/obsidian/cli.js +7 -7
- package/dist-lib/{lib/tools/exec → plugins}/obsidian/command.js +1 -1
- package/dist-lib/{lib/tools/exec → plugins}/obsidian/guidance.d.ts +0 -1
- package/dist-lib/{lib/tools/exec → plugins}/obsidian/guidance.js +0 -7
- package/dist-lib/plugins/obsidian/index.d.ts +26 -0
- package/dist-lib/plugins/obsidian/index.js +138 -0
- package/dist-lib/{lib/tools/skills/obsidian-readiness.d.ts → plugins/obsidian/readiness.d.ts} +1 -0
- package/dist-lib/{lib/tools/skills/obsidian-readiness.js → plugins/obsidian/readiness.js} +7 -0
- package/dist-lib/plugins/python/guarded-fetch.d.ts +13 -0
- package/dist-lib/plugins/python/guarded-fetch.js +32 -0
- package/dist-lib/plugins/python/index.d.ts +18 -0
- package/dist-lib/plugins/python/index.js +19 -0
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/interrupt-timer.js +2 -2
- package/dist-lib/plugins/python/language.d.ts +8 -0
- package/dist-lib/plugins/python/language.js +377 -0
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/loader.d.ts +1 -0
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/loader.js +8 -1
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/memfs.js +3 -3
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/module-distributions.js +0 -3
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/pyodide.js +4 -4
- package/dist-lib/plugins/python/python-adapter.d.ts +41 -0
- package/dist-lib/plugins/python/python-adapter.js +515 -0
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/run-session.d.ts +1 -2
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/run-session.js +10 -99
- package/dist-lib/plugins/python/shell-redirect.d.ts +8 -0
- package/dist-lib/plugins/python/shell-redirect.js +25 -0
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/wheels.js +4 -3
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/worker/active.js +1 -1
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/worker/client.d.ts +1 -0
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/worker/client.js +6 -3
- package/dist-lib/plugins/python/worker/entry.d.ts +1 -0
- package/dist-lib/plugins/python/worker/entry.js +9 -0
- package/dist-lib/plugins/python/worker/interrupt-deadline.d.ts +1 -0
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/worker/interrupt-deadline.js +1 -1
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/worker/serve.js +2 -2
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/worker/spawn.d.ts +1 -0
- package/dist-lib/{lib/tools/exec/adapters → plugins}/python/worker/spawn.js +7 -0
- package/dist-lib/plugins/quickjs/index.d.ts +20 -0
- package/dist-lib/plugins/quickjs/index.js +25 -0
- package/dist-lib/plugins/quickjs/language.d.ts +3 -0
- package/dist-lib/plugins/quickjs/language.js +59 -0
- package/dist-lib/plugins/quickjs/runtime.d.ts +38 -0
- package/dist-lib/plugins/quickjs/runtime.js +421 -0
- package/dist-lib/plugins/quickjs/text-decoder.d.ts +1 -0
- package/dist-lib/plugins/quickjs/text-decoder.js +15 -0
- package/dist-lib/plugins/run-report/brand.d.ts +1 -0
- package/dist-lib/plugins/run-report/brand.js +1 -0
- package/dist-lib/plugins/run-report/flow-view.d.ts +6 -0
- package/dist-lib/plugins/run-report/flow-view.js +53 -0
- package/dist-lib/plugins/run-report/flow.d.ts +33 -0
- package/dist-lib/plugins/run-report/flow.js +201 -0
- package/dist-lib/plugins/run-report/index.d.ts +17 -0
- package/dist-lib/plugins/run-report/index.js +27 -0
- package/dist-lib/plugins/run-report/layout.d.ts +39 -0
- package/dist-lib/plugins/run-report/layout.js +175 -0
- package/dist-lib/plugins/run-report/meaning.d.ts +6 -0
- package/dist-lib/plugins/run-report/meaning.js +43 -0
- package/dist-lib/plugins/run-report/model.d.ts +86 -0
- package/dist-lib/plugins/run-report/model.js +387 -0
- package/dist-lib/plugins/run-report/page.d.ts +13 -0
- package/dist-lib/plugins/run-report/page.js +234 -0
- package/dist-lib/plugins/run-report/script.d.ts +1 -0
- package/dist-lib/plugins/run-report/script.js +661 -0
- package/dist-lib/plugins/run-report/story.d.ts +48 -0
- package/dist-lib/plugins/run-report/story.js +188 -0
- package/dist-lib/plugins/run-report/style.d.ts +1 -0
- package/dist-lib/plugins/run-report/style.js +410 -0
- package/dist-lib/plugins/run-report/why.d.ts +28 -0
- package/dist-lib/plugins/run-report/why.js +170 -0
- package/dist-lib/plugins/sandbox-macos/index.d.ts +48 -0
- package/dist-lib/plugins/sandbox-macos/index.js +175 -0
- package/dist-lib/plugins/sandbox-vm/index.d.ts +24 -0
- package/dist-lib/plugins/sandbox-vm/index.js +27 -0
- package/dist-lib/plugins/sandbox-vm/vm-shell.d.ts +46 -0
- package/dist-lib/plugins/sandbox-vm/vm-shell.js +106 -0
- package/dist-lib/{lib → plugins/speech}/audio-transcode-bare.js +2 -2
- package/dist-lib/plugins/speech/index.d.ts +17 -0
- package/dist-lib/plugins/speech/index.js +24 -0
- package/dist-lib/plugins/speech/speech-engine.d.ts +23 -0
- package/dist-lib/plugins/speech/speech-engine.js +55 -0
- package/dist-lib/plugins/speech/speech-runtime.d.ts +22 -0
- package/dist-lib/plugins/speech/speech-runtime.js +212 -0
- package/dist-lib/{lib/capabilities → plugins/speech}/speech-text.d.ts +1 -0
- package/dist-lib/{lib/capabilities → plugins/speech}/speech-text.js +10 -3
- package/dist-lib/plugins/speech/voice-lane.d.ts +2 -0
- package/dist-lib/plugins/speech/voice-lane.js +9 -0
- package/dist-lib/plugins/speech/voice.d.ts +17 -0
- package/dist-lib/{lib/capabilities → plugins/speech}/voice.js +27 -25
- package/dist-lib/plugins/translation/index.d.ts +22 -0
- package/dist-lib/plugins/translation/index.js +63 -0
- package/dist-lib/{lib/models → plugins/translation}/nmt-catalog.d.ts +0 -1
- package/dist-lib/{lib/models → plugins/translation}/nmt-catalog.js +0 -3
- package/dist-lib/{lib/tools → plugins/translation}/translate.d.ts +14 -6
- package/dist-lib/{lib/tools → plugins/translation}/translate.js +14 -8
- package/dist-lib/plugins/walkie-talkie/crew.d.ts +27 -0
- package/dist-lib/plugins/walkie-talkie/crew.js +103 -0
- package/dist-lib/plugins/walkie-talkie/index.d.ts +127 -0
- package/dist-lib/plugins/walkie-talkie/index.js +340 -0
- package/dist-lib/plugins/walkie-talkie/wire.d.ts +67 -0
- package/dist-lib/plugins/walkie-talkie/wire.js +136 -0
- package/dist-lib/plugins/weather/geocode.d.ts +25 -0
- package/dist-lib/plugins/weather/geocode.js +101 -0
- package/dist-lib/plugins/weather/index.d.ts +15 -0
- package/dist-lib/plugins/weather/index.js +17 -0
- package/dist-lib/plugins/weather/lookup.d.ts +6 -0
- package/dist-lib/plugins/weather/lookup.js +169 -0
- package/dist-lib/{lib/tools/weather-lookup → plugins/weather}/place.js +5 -1
- package/dist-lib/plugins/web-search/engine-registry.d.ts +44 -0
- package/dist-lib/plugins/web-search/engine-registry.js +17 -0
- package/dist-lib/{lib → plugins}/web-search/engines/aol.d.ts +1 -0
- package/dist-lib/{lib → plugins}/web-search/engines/aol.js +5 -3
- package/dist-lib/{lib → plugins}/web-search/engines/bing.d.ts +1 -0
- package/dist-lib/{lib → plugins}/web-search/engines/bing.js +9 -4
- package/dist-lib/{lib → plugins}/web-search/engines/brave.d.ts +1 -0
- package/dist-lib/{lib → plugins}/web-search/engines/brave.js +5 -3
- package/dist-lib/{lib → plugins}/web-search/engines/duckduckgo.d.ts +1 -0
- package/dist-lib/{lib → plugins}/web-search/engines/duckduckgo.js +5 -2
- package/dist-lib/{lib → plugins}/web-search/engines/google.d.ts +1 -0
- package/dist-lib/{lib → plugins}/web-search/engines/google.js +6 -4
- package/dist-lib/{lib → plugins}/web-search/engines/wikipedia.d.ts +1 -0
- package/dist-lib/{lib → plugins}/web-search/engines/wikipedia.js +5 -3
- package/dist-lib/{lib → plugins}/web-search/engines/yahoo.d.ts +1 -0
- package/dist-lib/{lib → plugins}/web-search/engines/yahoo.js +5 -3
- package/dist-lib/{lib → plugins}/web-search/fetch-html.js +1 -1
- package/dist-lib/plugins/web-search/index.d.ts +18 -0
- package/dist-lib/plugins/web-search/index.js +33 -0
- package/dist-lib/{lib → plugins}/web-search/orchestrator.d.ts +3 -1
- package/dist-lib/{lib → plugins}/web-search/orchestrator.js +5 -5
- package/dist-lib/plugins/web-search/tool.d.ts +3 -0
- package/dist-lib/{lib/tools/web-search.js → plugins/web-search/tool.js} +18 -14
- package/dist-lib/plugins/web-search/types.js +1 -0
- package/dist-lib/schema/generate.js +5 -2
- package/dist-lib/schema/harness.js +158 -7
- package/dist-lib/spec/bind.js +20 -4
- package/dist-lib/spec/calls.js +4 -0
- package/dist-lib/spec/hrpc/hrpc.json +52 -0
- package/dist-lib/spec/hrpc/index.js +51 -3
- package/dist-lib/spec/hrpc/messages.js +595 -17
- package/dist-lib/spec/hyperschema/index.js +595 -17
- package/dist-lib/spec/hyperschema/schema.json +464 -1
- package/dist-lib/spec/hyperschema/types.d.ts +113 -2
- package/package.json +261 -484
- package/patches/{@qvac%2Finference@0.20.0.patch → @qvac%2Finference@0.21.0.patch} +8 -8
- package/scripts/addon-externals.cjs +386 -0
- package/scripts/addon-externals.d.ts +30 -0
- package/wheels/manifest.json +1 -160
- package/worker/harness-sidecar.mjs +80 -59
- package/dist-lib/lib/capabilities/completion-engine/actors/inspect-preload.d.ts +0 -3
- package/dist-lib/lib/capabilities/completion-engine/actors/inspect-preload.js +0 -75
- package/dist-lib/lib/capabilities/completion-engine/actors/preload-failure.d.ts +0 -9
- package/dist-lib/lib/capabilities/completion-engine/actors/preload-failure.js +0 -11
- package/dist-lib/lib/capabilities/completion-engine/actors/preloading.d.ts +0 -3
- package/dist-lib/lib/capabilities/completion-engine/actors/preloading.js +0 -114
- package/dist-lib/lib/capabilities/completion-loop/index.d.ts +0 -80
- package/dist-lib/lib/capabilities/completion-loop/index.js +0 -158
- package/dist-lib/lib/capabilities/completion-loop/metrics.d.ts +0 -5
- package/dist-lib/lib/capabilities/completion-loop/metrics.js +0 -29
- package/dist-lib/lib/capabilities/completion-loop/tool-execution.d.ts +0 -60
- package/dist-lib/lib/capabilities/completion-loop/turns.js +0 -112
- package/dist-lib/lib/capabilities/completion-runtime.d.ts +0 -46
- package/dist-lib/lib/capabilities/completion.d.ts +0 -18
- package/dist-lib/lib/capabilities/completion.js +0 -22
- package/dist-lib/lib/helpers/recovery-required.d.ts +0 -1
- package/dist-lib/lib/helpers/recovery-required.js +0 -1
- package/dist-lib/lib/hooks/built-in/index.d.ts +0 -4
- package/dist-lib/lib/hooks/built-in/index.js +0 -4
- package/dist-lib/lib/hooks/pipeline.d.ts +0 -24
- package/dist-lib/lib/hooks/pipeline.js +0 -74
- package/dist-lib/lib/hooks/registry.d.ts +0 -2
- package/dist-lib/lib/hooks/registry.js +0 -7
- package/dist-lib/lib/machine/completion/actions/skills.d.ts +0 -9
- package/dist-lib/lib/machine/completion/actions/skills.js +0 -83
- package/dist-lib/lib/machine/engine.d.ts +0 -93
- package/dist-lib/lib/machine/guards.d.ts +0 -2
- package/dist-lib/lib/machine/guards.js +0 -6
- package/dist-lib/lib/office/pptx.d.ts +0 -1
- package/dist-lib/lib/office/pptx.js +0 -26
- package/dist-lib/lib/office/python.d.ts +0 -8
- package/dist-lib/lib/office/python.js +0 -32
- package/dist-lib/lib/office/xlsx.d.ts +0 -1
- package/dist-lib/lib/office/xlsx.js +0 -26
- package/dist-lib/lib/run-log-inspect.d.ts +0 -25
- package/dist-lib/lib/run-log-protocol.d.ts +0 -2
- package/dist-lib/lib/run-log-protocol.js +0 -1
- package/dist-lib/lib/tool-call-display.d.ts +0 -1
- package/dist-lib/lib/tools/exec/adapters/adapter.d.ts +0 -31
- package/dist-lib/lib/tools/exec/adapters/python/create-effect.d.ts +0 -7
- package/dist-lib/lib/tools/exec/adapters/python/create-effect.js +0 -318
- package/dist-lib/lib/tools/exec/adapters/python/python-adapter.d.ts +0 -89
- package/dist-lib/lib/tools/exec/adapters/python/python-adapter.js +0 -1371
- package/dist-lib/lib/tools/exec/adapters/python/worker/entry.js +0 -3
- package/dist-lib/lib/tools/exec/obsidian/route.d.ts +0 -17
- package/dist-lib/lib/tools/exec/obsidian/route.js +0 -91
- package/dist-lib/lib/tools/mcp-call.d.ts +0 -14
- package/dist-lib/lib/tools/rag-search.d.ts +0 -2
- package/dist-lib/lib/tools/rag-search.js +0 -105
- package/dist-lib/lib/tools/weather-lookup.d.ts +0 -8
- package/dist-lib/lib/tools/weather-lookup.js +0 -122
- package/dist-lib/lib/tools/web-search.d.ts +0 -6
- package/dist-lib/lib/web-search/engine-registry.d.ts +0 -7
- package/dist-lib/lib/web-search/engine-registry.js +0 -17
- package/wheels/cffi-2.0.0-cp314-cp314-pyemscripten_2026_0_wasm32.whl +0 -0
- package/wheels/cryptography-47.0.0-cp314-abi3-pyemscripten_2026_0_wasm32.whl +0 -0
- package/wheels/defusedxml-0.7.1-py2.py3-none-any.whl +0 -0
- package/wheels/et_xmlfile-2.0.0-py3-none-any.whl +0 -0
- package/wheels/fonttools-4.62.1-py3-none-any.whl +0 -0
- package/wheels/fpdf2-2.8.8-py3-none-any.whl +0 -0
- package/wheels/lxml-6.0.2-cp314-cp314-pyemscripten_2026_0_wasm32.whl +0 -0
- package/wheels/openpyxl-3.1.5-py2.py3-none-any.whl +0 -0
- package/wheels/pillow-12.2.0-cp314-cp314-pyemscripten_2026_0_wasm32.whl +0 -0
- package/wheels/pycparser-3.0-py3-none-any.whl +0 -0
- package/wheels/pypdf-6.15.0-py3-none-any.whl +0 -0
- package/wheels/python_docx-1.2.0-py3-none-any.whl +0 -0
- package/wheels/python_pptx-1.0.2-py3-none-any.whl +0 -0
- package/wheels/six-1.17.0-py2.py3-none-any.whl +0 -0
- package/wheels/typing_extensions-4.15.0-py3-none-any.whl +0 -0
- package/wheels/xlsxwriter-3.2.9-py3-none-any.whl +0 -0
- /package/dist-lib/lib/{tools/skills → agent}/tool-grants.d.ts +0 -0
- /package/dist-lib/lib/{tools/skills → agent}/tool-grants.js +0 -0
- /package/dist-lib/lib/capabilities/{types.js → completion-engine/prepare-step.js} +0 -0
- /package/dist-lib/lib/{hooks/types.js → capabilities/completion-engine/stages.js} +0 -0
- /package/dist-lib/lib/{tool-call-display.js → contract/agent.js} +0 -0
- /package/dist-lib/lib/{tools/exec/adapters/adapter.js → contract/completion.js} +0 -0
- /package/dist-lib/lib/{tools/exec/adapters/python/worker/entry.d.ts → contract/exec.js} +0 -0
- /package/dist-lib/lib/{tools/exec/adapters/python/worker/interrupt-deadline.d.ts → contract/hooks.js} +0 -0
- /package/dist-lib/lib/{web-search/types.js → contract/index.js} +0 -0
- /package/dist-lib/lib/{capabilities/completion-engine → helpers}/abort-polyfill.d.ts +0 -0
- /package/dist-lib/lib/{capabilities/completion-engine → helpers}/abort-polyfill.js +0 -0
- /package/dist-lib/lib/{web-search → helpers}/html-helpers.d.ts +0 -0
- /package/dist-lib/lib/{web-search → helpers}/html-helpers.js +0 -0
- /package/dist-lib/lib/{tools → helpers}/model-args.d.ts +0 -0
- /package/dist-lib/lib/{tools → helpers}/model-args.js +0 -0
- /package/dist-lib/lib/{machine → helpers}/stable-stringify.d.ts +0 -0
- /package/dist-lib/lib/{web-search → helpers}/user-agents.d.ts +0 -0
- /package/dist-lib/lib/{web-search → helpers}/user-agents.js +0 -0
- /package/dist-lib/lib/{harness-lifecycle.d.ts → lifecycle/machine.d.ts} +0 -0
- /package/dist-lib/lib/tools/{exec/adapters/python → attachments}/output-policy.js +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/command.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/note-name.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/note-name.js +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/output.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/output.js +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/safe-path.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/safe-path.js +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/vault-create.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/vault-create.js +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/vault-fs.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/vault-fs.js +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/vault-paths.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/vault-paths.js +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/vault-read.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/vault-read.js +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/vault-write.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec → plugins}/obsidian/vault-write.js +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/deadline-state.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/deadline-state.js +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/distributions.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/distributions.js +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/interrupt-timer.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/memfs.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/module-distributions.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/named-hosts.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/named-hosts.js +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/net-shim.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/net-shim.js +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/pyodide.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/wheels.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/worker/active.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/worker/protocol.d.ts +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/worker/protocol.js +0 -0
- /package/dist-lib/{lib/tools/exec/adapters → plugins}/python/worker/serve.d.ts +0 -0
- /package/dist-lib/{lib/capabilities → plugins/speech}/audio-resample.d.ts +0 -0
- /package/dist-lib/{lib/capabilities → plugins/speech}/audio-resample.js +0 -0
- /package/dist-lib/{lib → plugins/speech}/audio-transcode-bare.d.ts +0 -0
- /package/dist-lib/{lib → plugins/speech}/audio-transcode-node.d.ts +0 -0
- /package/dist-lib/{lib → plugins/speech}/audio-transcode-node.js +0 -0
- /package/dist-lib/{lib/capabilities → plugins/speech}/speech-lexicon.d.ts +0 -0
- /package/dist-lib/{lib/capabilities → plugins/speech}/speech-lexicon.js +0 -0
- /package/dist-lib/{lib → plugins/speech}/wav-encode.d.ts +0 -0
- /package/dist-lib/{lib → plugins/speech}/wav-encode.js +0 -0
- /package/dist-lib/{lib/tools/weather-lookup → plugins/weather}/place.d.ts +0 -0
- /package/dist-lib/{lib/tools/weather-lookup → plugins/weather}/report.d.ts +0 -0
- /package/dist-lib/{lib/tools/weather-lookup → plugins/weather}/report.js +0 -0
- /package/dist-lib/{lib → plugins}/web-search/fetch-html.d.ts +0 -0
- /package/dist-lib/{lib → plugins}/web-search/format-results.d.ts +0 -0
- /package/dist-lib/{lib → plugins}/web-search/format-results.js +0 -0
- /package/dist-lib/{lib → plugins}/web-search/merge-results.d.ts +0 -0
- /package/dist-lib/{lib → plugins}/web-search/merge-results.js +0 -0
- /package/dist-lib/{lib → plugins}/web-search/types.d.ts +0 -0
- /package/dist-lib/{lib → plugins}/web-search/url-helpers.d.ts +0 -0
- /package/dist-lib/{lib → plugins}/web-search/url-helpers.js +0 -0
- /package/dist-lib/{lib → plugins}/web-search/url-normalize.d.ts +0 -0
- /package/dist-lib/{lib → plugins}/web-search/url-normalize.js +0 -0
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import { TOOL_CONTINUATION_NUDGE } from './capabilities/tool-turns.js';
|
|
2
1
|
export const TOOL_RESULT_TRUNCATION_MARKER = '\n[tool result truncated for context]\n';
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
const TOOL_SEARCH_RESULT = '{"tool_search":';
|
|
3
|
+
const compactedSources = new WeakMap();
|
|
4
|
+
export function compactedFrom(message) {
|
|
5
|
+
return compactedSources.get(message);
|
|
5
6
|
}
|
|
6
|
-
export function contextCandidates(history) {
|
|
7
|
-
const
|
|
7
|
+
export function contextCandidates(history, ...nudges) {
|
|
8
|
+
const isBoundary = (message) => message.role === 'user' &&
|
|
9
|
+
!nudges.some((nudge) => message.content === nudge || message.content.startsWith(`${nudge}\nPlan:\n`));
|
|
10
|
+
const { prefix, turns } = splitTurns(history, isBoundary);
|
|
8
11
|
if (!turns.length) {
|
|
9
12
|
return [{ history, droppedTurns: 0 }];
|
|
10
13
|
}
|
|
@@ -13,18 +16,18 @@ export function contextCandidates(history) {
|
|
|
13
16
|
history: droppedTurns ? [...prefix, ...turns.slice(droppedTurns).flat()] : history,
|
|
14
17
|
droppedTurns
|
|
15
18
|
}));
|
|
16
|
-
appendToolCompactions(candidates);
|
|
19
|
+
appendToolCompactions(candidates, isBoundary);
|
|
17
20
|
return candidates;
|
|
18
21
|
}
|
|
19
|
-
function splitTurns(history) {
|
|
20
|
-
const firstUser = history.findIndex(
|
|
22
|
+
function splitTurns(history, isBoundary) {
|
|
23
|
+
const firstUser = history.findIndex(isBoundary);
|
|
21
24
|
if (firstUser === -1) {
|
|
22
25
|
return { prefix: history, turns: [] };
|
|
23
26
|
}
|
|
24
27
|
const prefix = history.slice(0, firstUser);
|
|
25
28
|
const starts = [];
|
|
26
29
|
for (const [i, message] of history.entries()) {
|
|
27
|
-
if (i >= firstUser &&
|
|
30
|
+
if (i >= firstUser && isBoundary(message)) {
|
|
28
31
|
starts.push(i);
|
|
29
32
|
}
|
|
30
33
|
}
|
|
@@ -44,12 +47,12 @@ function dropCounts(max) {
|
|
|
44
47
|
}
|
|
45
48
|
return counts;
|
|
46
49
|
}
|
|
47
|
-
function appendToolCompactions(candidates) {
|
|
50
|
+
function appendToolCompactions(candidates, isBoundary) {
|
|
48
51
|
const last = candidates[candidates.length - 1];
|
|
49
52
|
if (!last) {
|
|
50
53
|
return;
|
|
51
54
|
}
|
|
52
|
-
const tools = compactableTools(last.history);
|
|
55
|
+
const tools = compactableTools(last.history, isBoundary);
|
|
53
56
|
let history = last.history;
|
|
54
57
|
while (true) {
|
|
55
58
|
const selected = longestTool(tools);
|
|
@@ -61,8 +64,8 @@ function appendToolCompactions(candidates) {
|
|
|
61
64
|
candidates.push({ history, droppedTurns: last.droppedTurns });
|
|
62
65
|
}
|
|
63
66
|
}
|
|
64
|
-
function compactableTools(history) {
|
|
65
|
-
const newestUser = history.findLastIndex(
|
|
67
|
+
function compactableTools(history, isBoundary) {
|
|
68
|
+
const newestUser = history.findLastIndex(isBoundary);
|
|
66
69
|
if (newestUser === -1) {
|
|
67
70
|
return [];
|
|
68
71
|
}
|
|
@@ -72,7 +75,10 @@ function compactableTools(history) {
|
|
|
72
75
|
continue;
|
|
73
76
|
if (message.content.length <= TOOL_RESULT_TRUNCATION_MARKER.length)
|
|
74
77
|
continue;
|
|
75
|
-
|
|
78
|
+
if (message.content.startsWith(TOOL_SEARCH_RESULT)) {
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
tools.push({ index, source: message, target: message.content.length });
|
|
76
82
|
}
|
|
77
83
|
return tools;
|
|
78
84
|
}
|
|
@@ -81,7 +87,7 @@ function longestTool(tools) {
|
|
|
81
87
|
.filter((tool) => tool.target > TOOL_RESULT_TRUNCATION_MARKER.length)
|
|
82
88
|
.sort((a, b) => b.target - a.target)[0];
|
|
83
89
|
}
|
|
84
|
-
function compactContent(content, target) {
|
|
90
|
+
export function compactContent(content, target) {
|
|
85
91
|
const retained = target - TOOL_RESULT_TRUNCATION_MARKER.length;
|
|
86
92
|
const head = Math.ceil(retained / 2);
|
|
87
93
|
const tail = Math.floor(retained / 2);
|
|
@@ -90,5 +96,10 @@ function compactContent(content, target) {
|
|
|
90
96
|
function compactTool(selected, message, index) {
|
|
91
97
|
if (index !== selected.index)
|
|
92
98
|
return message;
|
|
93
|
-
|
|
99
|
+
const compacted = {
|
|
100
|
+
...message,
|
|
101
|
+
content: compactContent(selected.source.content, selected.target)
|
|
102
|
+
};
|
|
103
|
+
compactedSources.set(compacted, selected.source);
|
|
104
|
+
return compacted;
|
|
94
105
|
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import type { LlmGenerationParams } from '../models/llm-presets.ts';
|
|
2
|
+
import type { DriveRoot } from '../tools/fs/scope.ts';
|
|
3
|
+
import type { CliValidator } from '../tools/skills/cli-schema-types.ts';
|
|
4
|
+
import type { AgentConfig, ResponseFormat, ToolDefinition } from './completion.ts';
|
|
5
|
+
import type { Message } from './run.ts';
|
|
6
|
+
export type { LlmGenerationParams };
|
|
7
|
+
export interface AgentSkill {
|
|
8
|
+
readonly name: string;
|
|
9
|
+
readonly description: string;
|
|
10
|
+
readonly tools: readonly string[];
|
|
11
|
+
readonly cliValidator?: CliValidator;
|
|
12
|
+
}
|
|
13
|
+
export interface SystemPromptParts {
|
|
14
|
+
text: string;
|
|
15
|
+
bioChars: number;
|
|
16
|
+
skillsChars: number;
|
|
17
|
+
}
|
|
18
|
+
export interface SkillActivation {
|
|
19
|
+
skillsSelected: boolean;
|
|
20
|
+
enabledSkills: ReadonlyArray<string>;
|
|
21
|
+
mention: string | null;
|
|
22
|
+
loadedSkills: ReadonlySet<string>;
|
|
23
|
+
}
|
|
24
|
+
export interface AgentPolicy {
|
|
25
|
+
readonly sandbox: boolean;
|
|
26
|
+
readonly skipApprovals: boolean;
|
|
27
|
+
}
|
|
28
|
+
export interface AgentPorts<Skill extends AgentSkill = AgentSkill> {
|
|
29
|
+
generationParams(model: string | undefined, reasoning: boolean | undefined, thinking: boolean | undefined): LlmGenerationParams | undefined;
|
|
30
|
+
systemPrompt(input: {
|
|
31
|
+
bio: string | null | undefined;
|
|
32
|
+
toolNames: readonly string[];
|
|
33
|
+
skills: readonly Skill[];
|
|
34
|
+
}): SystemPromptParts;
|
|
35
|
+
mention(messages: readonly Message[], skills: readonly Skill[]): Skill | null;
|
|
36
|
+
implicitSkill(messages: readonly Message[], skills: readonly Skill[]): Skill | null;
|
|
37
|
+
}
|
|
38
|
+
export interface AgentRequest<Skill extends AgentSkill = AgentSkill> {
|
|
39
|
+
readonly agent: AgentConfig | undefined;
|
|
40
|
+
readonly model: string | undefined;
|
|
41
|
+
readonly thinkingDefault?: string | undefined;
|
|
42
|
+
readonly generationParams?: LlmGenerationParams | undefined;
|
|
43
|
+
readonly responseFormat?: ResponseFormat | undefined;
|
|
44
|
+
readonly messages: readonly Message[];
|
|
45
|
+
readonly tools: readonly ToolDefinition[];
|
|
46
|
+
readonly skills: readonly Skill[];
|
|
47
|
+
readonly loadedSkills: ReadonlySet<string>;
|
|
48
|
+
readonly fsRoots: readonly DriveRoot[];
|
|
49
|
+
readonly fsWriteRoots: readonly DriveRoot[];
|
|
50
|
+
readonly planning?: boolean;
|
|
51
|
+
readonly planMode?: boolean;
|
|
52
|
+
}
|
|
53
|
+
export interface ResolvedAgent<Skill extends AgentSkill = AgentSkill> {
|
|
54
|
+
readonly enabled: ToolDefinition[];
|
|
55
|
+
readonly system: SystemPromptParts;
|
|
56
|
+
readonly activation: SkillActivation;
|
|
57
|
+
readonly activeSkills: Skill[];
|
|
58
|
+
readonly mention: Skill | null;
|
|
59
|
+
readonly preload: Skill | null;
|
|
60
|
+
readonly grantedOps: Map<string, CliValidator[]>;
|
|
61
|
+
readonly writableRoots: DriveRoot[];
|
|
62
|
+
readonly generationParams: LlmGenerationParams | undefined;
|
|
63
|
+
readonly policy: AgentPolicy;
|
|
64
|
+
select(loadedSkills: ReadonlySet<string>): ToolDefinition[];
|
|
65
|
+
}
|
|
@@ -1,15 +1,27 @@
|
|
|
1
|
-
import type { CompletionFinal, Tool as SdkTool, ToolDialect } from '@qvac/sdk';
|
|
1
|
+
import type { CompletionFinal, Tool as SdkTool, ToolCallWithCall, ToolDialect } from '@qvac/sdk';
|
|
2
2
|
import type { AbortSignal as BareAbortSignal } from 'bare-abort-controller';
|
|
3
3
|
import type { TextEvent } from '../helpers/thinking.ts';
|
|
4
4
|
import type { LlmGenerationParams } from '../models/llm-presets.ts';
|
|
5
|
+
import type { CapabilityProfile } from '../models/model-catalog-constants.ts';
|
|
5
6
|
import type { DriveRoot } from '../tools/fs/scope.ts';
|
|
6
|
-
import type { CliValidator } from '../tools/skills/cli-schema.ts';
|
|
7
|
-
import type {
|
|
8
|
-
import type {
|
|
9
|
-
import type {
|
|
10
|
-
|
|
11
|
-
export
|
|
12
|
-
|
|
7
|
+
import type { CliValidator } from '../tools/skills/cli-schema-types.ts';
|
|
8
|
+
import type { UsageBreakdown } from '../capabilities/usage-breakdown.ts';
|
|
9
|
+
import type { KnowledgeGrant } from './knowledge.ts';
|
|
10
|
+
import type { GoalStatus, HookRejection, Message, ResourceDescriptor, RoundSpeed, RunBackendUse, RunBudget, RunLifecycleEvent, ToolActivityEvent, ToolCallDisplay, ToolDecision, ToolEffect, ToolSpeed, TrustedSource, TrustedSourceFacts } from './run.ts';
|
|
11
|
+
export type { CliValidator, DriveRoot, LlmGenerationParams };
|
|
12
|
+
export interface OutboundGuard {
|
|
13
|
+
facts(origin: TrustedSourceFacts['origin'], text: string): TrustedSourceFacts;
|
|
14
|
+
check(toolName: string, args: Record<string, unknown>, options: {
|
|
15
|
+
readonly sources: readonly TrustedSource[];
|
|
16
|
+
readonly sourceFacts?: readonly TrustedSourceFacts[];
|
|
17
|
+
readonly externalWrite?: boolean;
|
|
18
|
+
}): string | null;
|
|
19
|
+
}
|
|
20
|
+
export interface AgentHandoff {
|
|
21
|
+
id: string;
|
|
22
|
+
description: string;
|
|
23
|
+
}
|
|
24
|
+
export interface AgentConfig {
|
|
13
25
|
id?: string;
|
|
14
26
|
name?: string;
|
|
15
27
|
bio?: string;
|
|
@@ -28,6 +40,9 @@ export interface Agent {
|
|
|
28
40
|
approvalMode?: 'ask' | 'skip-all' | null;
|
|
29
41
|
disabledToolsets?: string[] | null;
|
|
30
42
|
sandboxMode?: boolean | null;
|
|
43
|
+
handoffs?: AgentHandoff[] | null;
|
|
44
|
+
plan?: boolean | null;
|
|
45
|
+
model?: string | null;
|
|
31
46
|
}
|
|
32
47
|
export interface ImageSettings {
|
|
33
48
|
modelChoice?: string;
|
|
@@ -49,6 +64,7 @@ export type ApproveFn = (call: {
|
|
|
49
64
|
effect?: ToolEffect;
|
|
50
65
|
intent?: string | null;
|
|
51
66
|
display?: ToolCallDisplay | null;
|
|
67
|
+
quote?: string | null;
|
|
52
68
|
}) => Promise<boolean>;
|
|
53
69
|
export type ToolActivityFn = (entry: ToolActivityEvent) => void;
|
|
54
70
|
export interface AttachInput {
|
|
@@ -81,29 +97,45 @@ export type FetchAttachmentFn = (query: {
|
|
|
81
97
|
export type ProgressFn = (update: {
|
|
82
98
|
percentage: number;
|
|
83
99
|
} | null) => void;
|
|
84
|
-
export type RagSearchFn = (input: {
|
|
85
|
-
query: string;
|
|
86
|
-
limit?: number;
|
|
87
|
-
}) => Promise<RagSearchResult>;
|
|
88
|
-
export interface RagSearchResult {
|
|
89
|
-
enabled: boolean;
|
|
90
|
-
indexEmpty: boolean;
|
|
91
|
-
hasKnowledge: boolean;
|
|
92
|
-
pendingReferenced?: boolean;
|
|
93
|
-
errorMessage?: string | null;
|
|
94
|
-
hits: ReadonlyArray<{
|
|
95
|
-
content: string;
|
|
96
|
-
metadataJson?: string | null;
|
|
97
|
-
score: number;
|
|
98
|
-
}>;
|
|
99
|
-
}
|
|
100
100
|
export type AskUserFn = (question: {
|
|
101
101
|
question: string;
|
|
102
102
|
options?: string[];
|
|
103
103
|
}) => Promise<string | null>;
|
|
104
|
+
export interface ToolFetchInit {
|
|
105
|
+
method?: string;
|
|
106
|
+
headers?: Record<string, string> | [string, string][];
|
|
107
|
+
body?: string | Uint8Array | ArrayBuffer;
|
|
108
|
+
signal?: BareAbortSignal;
|
|
109
|
+
redirect?: 'follow' | 'manual' | 'error';
|
|
110
|
+
}
|
|
111
|
+
export interface ToolFetchResponse {
|
|
112
|
+
readonly status: number;
|
|
113
|
+
readonly ok: boolean;
|
|
114
|
+
readonly url: string;
|
|
115
|
+
readonly redirected: boolean;
|
|
116
|
+
readonly headers: {
|
|
117
|
+
get(name: string): string | null;
|
|
118
|
+
has(name: string): boolean;
|
|
119
|
+
entries(): IterableIterator<[string, string]>;
|
|
120
|
+
};
|
|
121
|
+
text(): Promise<string>;
|
|
122
|
+
json(): Promise<unknown>;
|
|
123
|
+
arrayBuffer(): Promise<ArrayBuffer>;
|
|
124
|
+
bytes(): Promise<Uint8Array>;
|
|
125
|
+
}
|
|
126
|
+
export type ToolFetch = (input: string | URL, init?: ToolFetchInit) => Promise<ToolFetchResponse>;
|
|
127
|
+
export interface SpillSink {
|
|
128
|
+
write(text: string): void;
|
|
129
|
+
close(): Promise<string | null>;
|
|
130
|
+
}
|
|
131
|
+
export interface ToolSpill {
|
|
132
|
+
readonly dir: string;
|
|
133
|
+
sink(stream: string): SpillSink;
|
|
134
|
+
}
|
|
104
135
|
export interface ToolExecuteContext {
|
|
105
136
|
agentId?: string | null | undefined;
|
|
106
137
|
skills?: readonly string[] | undefined;
|
|
138
|
+
skillsLoadedThisTurn?: readonly string[] | undefined;
|
|
107
139
|
runId?: string;
|
|
108
140
|
callId?: string;
|
|
109
141
|
ctxSize?: number | undefined;
|
|
@@ -114,7 +146,6 @@ export interface ToolExecuteContext {
|
|
|
114
146
|
}[] | undefined;
|
|
115
147
|
attach?: AttachFn | undefined;
|
|
116
148
|
fetchAttachment?: FetchAttachmentFn | undefined;
|
|
117
|
-
ragSearch?: RagSearchFn | undefined;
|
|
118
149
|
progress?: ProgressFn | undefined;
|
|
119
150
|
askUser?: AskUserFn | undefined;
|
|
120
151
|
signal?: BareAbortSignal | undefined;
|
|
@@ -127,6 +158,20 @@ export interface ToolExecuteContext {
|
|
|
127
158
|
sandboxMode?: boolean | undefined;
|
|
128
159
|
toolNames?: readonly string[] | undefined;
|
|
129
160
|
approval?: ToolDecision | undefined;
|
|
161
|
+
fetch?: ToolFetch | undefined;
|
|
162
|
+
knowledge?: KnowledgeGrant | undefined;
|
|
163
|
+
spill?: ToolSpill | undefined;
|
|
164
|
+
planMode?: boolean | undefined;
|
|
165
|
+
callTool?: CallTool | undefined;
|
|
166
|
+
history?: readonly Message[] | undefined;
|
|
167
|
+
}
|
|
168
|
+
export interface CallTool {
|
|
169
|
+
(name: string, args: unknown): Promise<unknown>;
|
|
170
|
+
readonly names: readonly string[];
|
|
171
|
+
}
|
|
172
|
+
export type Toolset = 'web-search' | 'knowledge' | 'files' | 'exec' | 'http-request' | 'mcp-call' | 'image' | 'music' | 'coding' | 'team';
|
|
173
|
+
export interface ToolsetScoped {
|
|
174
|
+
toolset?: string | null;
|
|
130
175
|
}
|
|
131
176
|
export type ToolParameterType = 'string' | 'number' | 'boolean' | 'object' | 'integer' | 'array' | 'null';
|
|
132
177
|
export interface ToolParameterSchema {
|
|
@@ -137,6 +182,7 @@ export interface ToolParameterSchema {
|
|
|
137
182
|
items?: ToolParameterSchema;
|
|
138
183
|
properties?: Record<string, ToolParameterSchema>;
|
|
139
184
|
required?: string[];
|
|
185
|
+
default?: unknown;
|
|
140
186
|
}
|
|
141
187
|
export interface ToolParameters {
|
|
142
188
|
type: 'object';
|
|
@@ -147,6 +193,7 @@ export interface ToolPromptDefinition {
|
|
|
147
193
|
description?: string;
|
|
148
194
|
parameters?: ToolParameters;
|
|
149
195
|
}
|
|
196
|
+
export type AddonLoaders = Readonly<Record<string, () => Promise<unknown>>>;
|
|
150
197
|
export interface ToolDefinition {
|
|
151
198
|
name: string;
|
|
152
199
|
policyVersion?: string;
|
|
@@ -163,8 +210,17 @@ export interface ToolDefinition {
|
|
|
163
210
|
validate?: (args: Record<string, unknown>, ctx?: ToolExecuteContext) => string | null;
|
|
164
211
|
effect: (args: Record<string, unknown>, ctx?: ToolExecuteContext) => ToolEffect;
|
|
165
212
|
resource?: (args: Record<string, unknown>, ctx?: ToolExecuteContext) => ResourceDescriptor | null;
|
|
213
|
+
quote?: (args: Record<string, unknown>, ctx?: ToolExecuteContext) => string | null;
|
|
214
|
+
egress?: (args: Record<string, unknown>) => string | readonly string[] | null;
|
|
166
215
|
compiled?: true;
|
|
216
|
+
endsRun?: true;
|
|
217
|
+
concurrent?: true;
|
|
218
|
+
callsTools?: true;
|
|
219
|
+
defer?: true;
|
|
220
|
+
group?: string;
|
|
221
|
+
minCapabilityProfile?: CapabilityProfile;
|
|
167
222
|
landedWrite?: (args: Record<string, unknown>, output: unknown) => string | null;
|
|
223
|
+
addons?: AddonLoaders;
|
|
168
224
|
execute: (args: Record<string, unknown>, ctx?: ToolExecuteContext) => Promise<unknown>;
|
|
169
225
|
}
|
|
170
226
|
export interface ToolCallEvent {
|
|
@@ -199,11 +255,15 @@ export interface MetricsEvent {
|
|
|
199
255
|
type: 'metrics';
|
|
200
256
|
totalTokens: number;
|
|
201
257
|
durationMs: number;
|
|
258
|
+
modelMs?: number | undefined;
|
|
259
|
+
toolMs?: number | undefined;
|
|
202
260
|
timeToFirstToken?: number | undefined;
|
|
203
261
|
tokensPerSecond?: number | undefined;
|
|
204
262
|
promptTokensPerSecond?: number | undefined;
|
|
205
263
|
promptTokens?: number | undefined;
|
|
206
264
|
cacheTokens?: number | undefined;
|
|
265
|
+
rounds?: RoundSpeed[] | undefined;
|
|
266
|
+
tools?: ToolSpeed[] | undefined;
|
|
207
267
|
ctxSize?: number | undefined;
|
|
208
268
|
backends?: RunBackendUse[] | undefined;
|
|
209
269
|
usage?: UsageBreakdown | undefined;
|
|
@@ -227,6 +287,44 @@ export interface InferenceCallEvent {
|
|
|
227
287
|
type: 'inference-call';
|
|
228
288
|
call: InferenceCall;
|
|
229
289
|
}
|
|
290
|
+
export type TransferEvent = {
|
|
291
|
+
type: 'transfer';
|
|
292
|
+
from: string;
|
|
293
|
+
to: string;
|
|
294
|
+
reason: string;
|
|
295
|
+
};
|
|
296
|
+
export interface RunInput {
|
|
297
|
+
mode: 'steer' | 'follow-up';
|
|
298
|
+
text: string;
|
|
299
|
+
id?: string;
|
|
300
|
+
}
|
|
301
|
+
export interface InputEvent {
|
|
302
|
+
type: 'input';
|
|
303
|
+
id?: string;
|
|
304
|
+
text: string;
|
|
305
|
+
round: number;
|
|
306
|
+
}
|
|
307
|
+
export interface InputRejectedEvent {
|
|
308
|
+
type: 'input-rejected';
|
|
309
|
+
reason: string;
|
|
310
|
+
}
|
|
311
|
+
export interface GoalEvent {
|
|
312
|
+
type: 'goal';
|
|
313
|
+
status: GoalStatus;
|
|
314
|
+
turn: number;
|
|
315
|
+
round: number;
|
|
316
|
+
text?: string;
|
|
317
|
+
}
|
|
318
|
+
export type FoldEvent = {
|
|
319
|
+
type: 'fold';
|
|
320
|
+
phase: 'start';
|
|
321
|
+
} | {
|
|
322
|
+
type: 'fold';
|
|
323
|
+
phase: 'done';
|
|
324
|
+
summary: string;
|
|
325
|
+
throughId: string;
|
|
326
|
+
foldedTurns: number;
|
|
327
|
+
};
|
|
230
328
|
export interface InferenceSentEvent {
|
|
231
329
|
type: 'inference-sent';
|
|
232
330
|
round: number;
|
|
@@ -242,10 +340,11 @@ export interface InferenceTokens {
|
|
|
242
340
|
cached?: number | undefined;
|
|
243
341
|
timeToFirstToken?: number | undefined;
|
|
244
342
|
}
|
|
245
|
-
export type CompletionEvent = (RunLifecycleEvent | TextEvent | ToolCallEvent | ToolResultEvent | ToolActivityEvent | ErrorEvent | AbortedEvent | MetricsEvent | InferenceCallEvent | InferenceSentEvent) & {
|
|
343
|
+
export type CompletionEvent = (RunLifecycleEvent | TextEvent | ToolCallEvent | ToolResultEvent | ToolActivityEvent | ErrorEvent | AbortedEvent | MetricsEvent | InferenceCallEvent | InferenceSentEvent | TransferEvent | InputEvent | InputRejectedEvent | GoalEvent | FoldEvent) & {
|
|
246
344
|
runId?: string;
|
|
247
345
|
round?: number;
|
|
248
346
|
callId?: string;
|
|
347
|
+
agent?: string;
|
|
249
348
|
};
|
|
250
349
|
export interface CompletionSdkResult {
|
|
251
350
|
requestId?: string;
|
|
@@ -279,9 +378,24 @@ export interface CompletionSdk {
|
|
|
279
378
|
cancel?(params: {
|
|
280
379
|
requestId: string;
|
|
281
380
|
}): Promise<void>;
|
|
381
|
+
deleteCache?(params: {
|
|
382
|
+
kvCacheKey: string;
|
|
383
|
+
}): Promise<{
|
|
384
|
+
success: boolean;
|
|
385
|
+
}>;
|
|
282
386
|
}
|
|
283
387
|
export interface RoundModelLease {
|
|
284
388
|
modelId: string;
|
|
389
|
+
ctxSize?: number | undefined;
|
|
285
390
|
sdk?: CompletionSdk;
|
|
286
391
|
release: () => void;
|
|
287
392
|
}
|
|
393
|
+
export interface ResolvedCall {
|
|
394
|
+
call: ToolCallWithCall;
|
|
395
|
+
tool?: ToolDefinition;
|
|
396
|
+
args: Record<string, unknown>;
|
|
397
|
+
rawCall?: string;
|
|
398
|
+
intent?: string;
|
|
399
|
+
rejection?: HookRejection;
|
|
400
|
+
permission?: 'allow' | 'ask';
|
|
401
|
+
}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import type { AbortSignal as BareAbortSignal } from 'bare-abort-controller';
|
|
2
|
+
import type { AskUserFn, AttachFn, FetchAttachmentFn, RunBudget, ToolDecision, ToolEffect, ToolExecuteContext, ToolParameterSchema, ToolSpill } from './index.ts';
|
|
3
|
+
export interface ExecAttachment {
|
|
4
|
+
readonly attachmentId: string;
|
|
5
|
+
readonly fileName: string;
|
|
6
|
+
readonly byteLength: number;
|
|
7
|
+
}
|
|
8
|
+
export interface RejectedOutput {
|
|
9
|
+
readonly name: string;
|
|
10
|
+
readonly reason: string;
|
|
11
|
+
}
|
|
12
|
+
export interface ExecResult {
|
|
13
|
+
readonly stdout: string;
|
|
14
|
+
readonly stderr: string;
|
|
15
|
+
readonly exitCode: number;
|
|
16
|
+
readonly attachments?: readonly ExecAttachment[];
|
|
17
|
+
readonly missingOutputs?: readonly string[];
|
|
18
|
+
readonly rejectedOutputs?: readonly RejectedOutput[];
|
|
19
|
+
}
|
|
20
|
+
export interface SpawnOptions {
|
|
21
|
+
cwd?: string;
|
|
22
|
+
shell?: boolean;
|
|
23
|
+
detached?: boolean;
|
|
24
|
+
stdio?: [string, string, string] | string;
|
|
25
|
+
env?: Record<string, string>;
|
|
26
|
+
}
|
|
27
|
+
export interface Child {
|
|
28
|
+
readonly pid?: number;
|
|
29
|
+
readonly stdout: {
|
|
30
|
+
on(event: 'data', handler: (chunk: Buffer | string) => void): void;
|
|
31
|
+
} | null;
|
|
32
|
+
readonly stderr: {
|
|
33
|
+
on(event: 'data', handler: (chunk: Buffer | string) => void): void;
|
|
34
|
+
} | null;
|
|
35
|
+
kill(signum?: number | string): void;
|
|
36
|
+
on(event: 'exit', handler: (code: number | null, signal?: string | null) => void): void;
|
|
37
|
+
on(event: 'error', handler: (err: Error) => void): void;
|
|
38
|
+
}
|
|
39
|
+
export type SpawnFn = (command: string, opts?: SpawnOptions) => Child;
|
|
40
|
+
export type KillProcess = (pid: number, signal: string) => void;
|
|
41
|
+
export interface ShellRuntime {
|
|
42
|
+
readonly spawn: SpawnFn;
|
|
43
|
+
readonly killProcess?: KillProcess;
|
|
44
|
+
}
|
|
45
|
+
export interface ExecutionOptions {
|
|
46
|
+
readonly cwd?: string;
|
|
47
|
+
readonly env?: Readonly<Record<string, string>>;
|
|
48
|
+
readonly timeoutMs?: number;
|
|
49
|
+
readonly maxOutputChars?: number;
|
|
50
|
+
readonly signal?: BareAbortSignal;
|
|
51
|
+
readonly spill?: ToolSpill;
|
|
52
|
+
}
|
|
53
|
+
export interface ExecutionContext {
|
|
54
|
+
readonly attach?: AttachFn;
|
|
55
|
+
readonly fetchAttachment?: FetchAttachmentFn;
|
|
56
|
+
readonly turnImages?: readonly {
|
|
57
|
+
path: string;
|
|
58
|
+
}[];
|
|
59
|
+
readonly runBudget?: RunBudget;
|
|
60
|
+
readonly sandboxMode?: boolean;
|
|
61
|
+
readonly toolNames?: readonly string[];
|
|
62
|
+
readonly approval?: ToolDecision;
|
|
63
|
+
readonly askUser?: AskUserFn;
|
|
64
|
+
readonly writeRoots?: readonly string[];
|
|
65
|
+
readonly deniedRoots?: readonly string[];
|
|
66
|
+
}
|
|
67
|
+
export interface ExecutionPlan {
|
|
68
|
+
run(options: ExecutionOptions): Promise<ExecResult> | ExecResult;
|
|
69
|
+
}
|
|
70
|
+
export interface ExecutionAdapter {
|
|
71
|
+
resolve(args: Record<string, unknown>, ctx?: ExecutionContext): ExecutionPlan | null;
|
|
72
|
+
}
|
|
73
|
+
export interface FallbackExecutionAdapter {
|
|
74
|
+
resolve(args: Record<string, unknown>, ctx?: ExecutionContext): ExecutionPlan;
|
|
75
|
+
}
|
|
76
|
+
export interface ExecShell extends FallbackExecutionAdapter {
|
|
77
|
+
readonly name: string;
|
|
78
|
+
}
|
|
79
|
+
export interface ExecError {
|
|
80
|
+
error: string;
|
|
81
|
+
}
|
|
82
|
+
export interface ExecLanguageWording {
|
|
83
|
+
readonly runs: string;
|
|
84
|
+
readonly guide: string;
|
|
85
|
+
readonly command: string;
|
|
86
|
+
readonly language: string;
|
|
87
|
+
readonly properties: Readonly<Record<string, ToolParameterSchema>>;
|
|
88
|
+
}
|
|
89
|
+
export interface ExecLanguageText extends ExecLanguageWording {
|
|
90
|
+
readonly workdir: string;
|
|
91
|
+
readonly download: string;
|
|
92
|
+
readonly prompt: ExecLanguageWording;
|
|
93
|
+
}
|
|
94
|
+
export interface ExecScope {
|
|
95
|
+
readonly sandbox: boolean;
|
|
96
|
+
}
|
|
97
|
+
export interface ExecValidateScope extends ExecScope {
|
|
98
|
+
readonly trusted: boolean;
|
|
99
|
+
readonly toolNames?: readonly string[] | undefined;
|
|
100
|
+
}
|
|
101
|
+
export interface LanguageRun {
|
|
102
|
+
readonly args: Record<string, unknown>;
|
|
103
|
+
readonly trusted: boolean;
|
|
104
|
+
}
|
|
105
|
+
export interface LanguageCall {
|
|
106
|
+
readonly args: Record<string, unknown>;
|
|
107
|
+
readonly bundled?: {
|
|
108
|
+
readonly label: string;
|
|
109
|
+
load(skillsDir: string | undefined): LanguageRun | ExecError;
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
export interface ExecLanguage extends ExecutionAdapter {
|
|
113
|
+
readonly name: string;
|
|
114
|
+
readonly text: ExecLanguageText;
|
|
115
|
+
call(args: Record<string, unknown>): LanguageCall | ExecError | null;
|
|
116
|
+
effect(args: Record<string, unknown>): ToolEffect;
|
|
117
|
+
scope(args: Record<string, unknown>, scope: ExecScope): string | null;
|
|
118
|
+
validate(args: Record<string, unknown>, scope: ExecValidateScope): string | null;
|
|
119
|
+
label(args: Record<string, unknown>, scope: ExecScope): string;
|
|
120
|
+
online(scope: ExecScope): boolean;
|
|
121
|
+
redirect(args: Record<string, unknown>, scope: ExecScope): string | null;
|
|
122
|
+
strays(args: Record<string, unknown>): string | null;
|
|
123
|
+
}
|
|
124
|
+
export interface ExecRouteOptions {
|
|
125
|
+
readonly timeoutMs?: number;
|
|
126
|
+
readonly maxOutputChars?: number;
|
|
127
|
+
readonly signal?: BareAbortSignal;
|
|
128
|
+
readonly runtime: () => Promise<ShellRuntime>;
|
|
129
|
+
}
|
|
130
|
+
export interface ExecRoute {
|
|
131
|
+
readonly name: string;
|
|
132
|
+
claims(command: string): boolean;
|
|
133
|
+
run(command: string, ctx: ToolExecuteContext | undefined, options: ExecRouteOptions): Promise<ExecResult>;
|
|
134
|
+
}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import type { HookRejection } from '../machine/index.ts';
|
|
2
1
|
import type { AbortSignal as BareAbortSignal } from 'bare-abort-controller';
|
|
3
|
-
import type {
|
|
4
|
-
import type { Message, ResourceDescriptor,
|
|
5
|
-
export type HookPhase = 'runStart' | 'preToolCall' | 'postToolCall' | 'runEnd' | 'runPause' | 'runResume';
|
|
2
|
+
import type { ToolDefinition } from './completion.ts';
|
|
3
|
+
import type { HookRejection, Message, ResourceDescriptor, ToolEffect, ToolExecutionOutcome } from './run.ts';
|
|
4
|
+
export type HookPhase = 'runStart' | 'preToolCall' | 'postToolCall' | 'runEnd' | 'runPause' | 'runResume' | 'promptSubmit' | 'toolFailure' | 'stop' | 'preFold';
|
|
6
5
|
export interface RunStartPayload {
|
|
7
6
|
readonly phase: 'runStart';
|
|
8
7
|
readonly runId: string;
|
|
@@ -19,6 +18,9 @@ export interface PreToolCallPayload {
|
|
|
19
18
|
readonly skillNames?: readonly string[];
|
|
20
19
|
readonly parameters?: ToolDefinition['parameters'];
|
|
21
20
|
readonly sandboxMode?: boolean;
|
|
21
|
+
readonly egress?: ToolDefinition['egress'];
|
|
22
|
+
readonly effect: ToolEffect;
|
|
23
|
+
readonly resource: ResourceDescriptor | null;
|
|
22
24
|
args: Record<string, unknown>;
|
|
23
25
|
}
|
|
24
26
|
export interface PostToolCallPayload {
|
|
@@ -52,18 +54,68 @@ export interface RunLifecyclePayload {
|
|
|
52
54
|
readonly runId: string;
|
|
53
55
|
readonly agentId: string | null;
|
|
54
56
|
}
|
|
55
|
-
export
|
|
56
|
-
|
|
57
|
-
|
|
57
|
+
export interface PromptSubmitPayload {
|
|
58
|
+
readonly phase: 'promptSubmit';
|
|
59
|
+
readonly runId: string;
|
|
60
|
+
readonly agentId: string | null;
|
|
61
|
+
readonly mode: 'prompt' | 'steer' | 'follow-up';
|
|
62
|
+
readonly text: string;
|
|
63
|
+
}
|
|
64
|
+
export interface ToolFailurePayload {
|
|
65
|
+
readonly phase: 'toolFailure';
|
|
66
|
+
readonly runId: string;
|
|
67
|
+
readonly callId: string;
|
|
68
|
+
readonly toolName: string;
|
|
69
|
+
readonly agentId: string | null;
|
|
58
70
|
readonly args: Record<string, unknown>;
|
|
71
|
+
readonly executed: boolean;
|
|
72
|
+
readonly outcome: ToolExecutionOutcome;
|
|
73
|
+
readonly result: unknown;
|
|
74
|
+
}
|
|
75
|
+
export interface StopPayload {
|
|
76
|
+
readonly phase: 'stop';
|
|
77
|
+
readonly runId: string;
|
|
78
|
+
readonly agentId: string | null;
|
|
79
|
+
readonly round: number;
|
|
80
|
+
readonly response: string;
|
|
81
|
+
}
|
|
82
|
+
export interface PreFoldPayload {
|
|
83
|
+
readonly phase: 'preFold';
|
|
84
|
+
readonly runId: string;
|
|
85
|
+
readonly agentId: string | null;
|
|
86
|
+
readonly messages: ReadonlyArray<Message>;
|
|
87
|
+
}
|
|
88
|
+
export type HookContext = RunLifecyclePayload | RunStartPayload | PreToolCallPayload | PostToolCallPayload | RunEndPayload | PromptSubmitPayload | ToolFailurePayload | StopPayload | PreFoldPayload;
|
|
89
|
+
export interface PreToolCallResult {
|
|
90
|
+
readonly args?: Record<string, unknown>;
|
|
91
|
+
readonly permission?: 'allow' | 'deny' | 'ask';
|
|
92
|
+
readonly reason?: string;
|
|
59
93
|
}
|
|
60
94
|
export interface PostToolCallResult {
|
|
61
|
-
readonly result
|
|
95
|
+
readonly result?: unknown;
|
|
96
|
+
readonly context?: string;
|
|
97
|
+
}
|
|
98
|
+
export interface ContextResult {
|
|
99
|
+
readonly context: string;
|
|
100
|
+
}
|
|
101
|
+
export interface HaltResult {
|
|
102
|
+
readonly halt: string;
|
|
103
|
+
}
|
|
104
|
+
export interface ContinueResult {
|
|
105
|
+
readonly continue: string;
|
|
106
|
+
}
|
|
107
|
+
export interface InstructionsResult {
|
|
108
|
+
readonly instructions: string;
|
|
62
109
|
}
|
|
63
110
|
export type HookRejectionResult = Omit<HookRejection, 'hook' | 'phase'>;
|
|
64
|
-
export type HookResult = PreToolCallResult | PostToolCallResult | HookRejectionResult | void;
|
|
111
|
+
export type HookResult = PreToolCallResult | PostToolCallResult | ContextResult | HaltResult | ContinueResult | InstructionsResult | HookRejectionResult | void;
|
|
112
|
+
export interface HookRunOptions {
|
|
113
|
+
readonly signal?: BareAbortSignal | undefined;
|
|
114
|
+
}
|
|
65
115
|
export interface HarnessHook {
|
|
66
116
|
readonly name?: string;
|
|
67
117
|
readonly phase: HookPhase;
|
|
68
|
-
|
|
118
|
+
readonly matcher?: string;
|
|
119
|
+
readonly timeoutMs?: number;
|
|
120
|
+
run(ctx: HookContext, options?: HookRunOptions): Promise<HookResult> | HookResult;
|
|
69
121
|
}
|