@abot-ai/runtime 1.8.1 → 2.0.0
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 +5 -1
- package/dist/scripts/add-runtime-model.js +11 -5
- package/dist/scripts/init-runtime.js +15 -10
- package/dist/scripts/runtime-model-addition.js +6 -1
- package/dist/scripts/runtime-setup-command-options.d.ts +11 -0
- package/dist/scripts/runtime-setup-command-options.js +41 -0
- package/dist/scripts/runtime-setup-files.d.ts +3 -2
- package/dist/scripts/runtime-setup-files.js +63 -4
- package/dist/scripts/runtime-setup-model-options.d.ts +8 -0
- package/dist/scripts/runtime-setup-model-options.js +40 -0
- package/dist/scripts/runtime-setup-presentation.js +2 -2
- package/dist/scripts/runtime-setup-provider-options.d.ts +4 -0
- package/dist/scripts/runtime-setup-provider-options.js +20 -0
- package/dist/src/model-gateway/client/chat.js +9 -5
- package/dist/src/model-gateway/client/contracts.d.ts +3 -0
- package/dist/src/model-gateway/client/input-token-count.js +36 -16
- package/dist/src/model-gateway/client/invocation-error.d.ts +9 -0
- package/dist/src/model-gateway/client/invocation-error.js +30 -0
- package/dist/src/model-gateway/client/message-projection.d.ts +2 -0
- package/dist/src/model-gateway/client/message-projection.js +1 -0
- package/dist/src/model-gateway/client/options.js +1 -1
- package/dist/src/model-gateway/client/raw.js +1 -0
- package/dist/src/model-gateway/client/stream-consumer.js +9 -2
- package/dist/src/model-gateway/client/stream-parser.js +2 -1
- package/dist/src/model-gateway/index.d.ts +1 -1
- package/dist/src/model-gateway/observability/input-token-count-diagnostics.d.ts +26 -0
- package/dist/src/model-gateway/observability/input-token-count-diagnostics.js +178 -0
- package/dist/src/model-gateway/policy/invocation-policy.d.ts +1 -3
- package/dist/src/model-gateway/policy/invocation-policy.js +3 -30
- package/dist/src/model-gateway/policy/reasoning-mode-budget.d.ts +5 -0
- package/dist/src/model-gateway/policy/reasoning-mode-budget.js +13 -0
- package/dist/src/model-gateway/policy/reasoning-policy.d.ts +10 -0
- package/dist/src/model-gateway/policy/reasoning-policy.js +124 -0
- package/dist/src/model-gateway/protocol/openai-embedding-response.d.ts +1 -0
- package/dist/src/model-gateway/protocol/openai-embedding-response.js +28 -0
- package/dist/src/model-gateway/protocol/sse-data.d.ts +9 -0
- package/dist/src/model-gateway/protocol/sse-data.js +67 -0
- package/dist/src/model-gateway/providers/envelope-budget.js +10 -1
- package/dist/src/model-gateway/providers/llamacpp/adapter.d.ts +2 -0
- package/dist/src/model-gateway/providers/llamacpp/adapter.js +79 -0
- package/dist/src/model-gateway/providers/llamacpp/connection.d.ts +9 -0
- package/dist/src/model-gateway/providers/llamacpp/connection.js +73 -0
- package/dist/src/model-gateway/providers/llamacpp/diagnostics.d.ts +2 -0
- package/dist/src/model-gateway/providers/llamacpp/diagnostics.js +17 -0
- package/dist/src/model-gateway/providers/llamacpp/embeddings.d.ts +2 -0
- package/dist/src/model-gateway/providers/llamacpp/embeddings.js +56 -0
- package/dist/src/model-gateway/providers/llamacpp/input-token-count.d.ts +3 -0
- package/dist/src/model-gateway/providers/llamacpp/input-token-count.js +59 -0
- package/dist/src/model-gateway/providers/llamacpp/message-projection.d.ts +2 -0
- package/dist/src/model-gateway/providers/llamacpp/message-projection.js +33 -0
- package/dist/src/model-gateway/providers/llamacpp/payload.d.ts +2 -0
- package/dist/src/model-gateway/providers/llamacpp/payload.js +44 -0
- package/dist/src/model-gateway/providers/llamacpp/response-lifetime.d.ts +1 -0
- package/dist/src/model-gateway/providers/llamacpp/response-lifetime.js +56 -0
- package/dist/src/model-gateway/providers/llamacpp/schema-format.d.ts +2 -0
- package/dist/src/model-gateway/providers/llamacpp/schema-format.js +29 -0
- package/dist/src/model-gateway/providers/llamacpp/settings.d.ts +9 -0
- package/dist/src/model-gateway/providers/llamacpp/settings.js +25 -0
- package/dist/src/model-gateway/providers/llamacpp/stream-normalizer.d.ts +10 -0
- package/dist/src/model-gateway/providers/llamacpp/stream-normalizer.js +85 -0
- package/dist/src/model-gateway/providers/llamacpp/stream.d.ts +9 -0
- package/dist/src/model-gateway/providers/llamacpp/stream.js +33 -0
- package/dist/src/model-gateway/providers/openai/embeddings.js +2 -29
- package/dist/src/model-gateway/providers/openai/sse-data.d.ts +1 -9
- package/dist/src/model-gateway/providers/openai/sse-data.js +1 -67
- package/dist/src/model-gateway/providers/registry.js +2 -0
- package/dist/src/model-gateway/server/input-token-count-handler.js +10 -1
- package/dist/src/model-gateway/types.d.ts +11 -1
- package/dist/src/runtime/adapters/long-term-memory/onboarding-provider-availability.d.ts +4 -0
- package/dist/src/runtime/adapters/long-term-memory/onboarding-provider-availability.js +11 -0
- package/dist/src/runtime/adapters/long-term-memory/onboarding-service.js +28 -1
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/approval.d.ts +5 -1
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/approval.js +15 -1
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/prepared-execution.js +7 -5
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/prepared-snapshot.js +9 -2
- package/dist/src/runtime/adapters/registered-tool-payload-related-artifacts.d.ts +1 -0
- package/dist/src/runtime/adapters/registered-tool-payload-related-artifacts.js +6 -1
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/contracts.d.ts +1 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/execution.d.ts +1 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/execution.js +2 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-lifecycle.d.ts +1 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-lifecycle.js +2 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-stages.d.ts +1 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-stages.js +1 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities.js +1 -0
- package/dist/src/runtime/adapters/scheduler-runtime.js +2 -0
- package/dist/src/runtime/automations/agent-step-executor.js +1 -0
- package/dist/src/runtime/automations/catalog.d.ts +3 -0
- package/dist/src/runtime/automations/catalog.js +2 -0
- package/dist/src/runtime/automations/definition-contracts.d.ts +2 -0
- package/dist/src/runtime/automations/definition-input.js +3 -1
- package/dist/src/runtime/automations/draft-mutations.js +5 -1
- package/dist/src/runtime/automations/model-dependency-projection.d.ts +3 -1
- package/dist/src/runtime/automations/model-dependency-projection.js +4 -2
- package/dist/src/runtime/automations/publication-validation.js +7 -0
- package/dist/src/runtime/automations/saved-agent-management.js +1 -0
- package/dist/src/runtime/automations/service.d.ts +4 -1
- package/dist/src/runtime/capabilities/automation-builder/payload-schema.js +7 -5
- package/dist/src/runtime/capabilities/automation-builder/tool-module.js +4 -4
- package/dist/src/runtime/capabilities/automations/authoring-catalog.d.ts +9 -0
- package/dist/src/runtime/capabilities/automations/authoring-catalog.js +1 -0
- package/dist/src/runtime/capabilities/automations/authoring-preparation.d.ts +3 -0
- package/dist/src/runtime/capabilities/automations/draft-index.d.ts +1 -1
- package/dist/src/runtime/capabilities/automations/tool-contract.js +3 -2
- package/dist/src/runtime/capabilities/automations/tool-module.js +20 -11
- package/dist/src/runtime/capabilities/core-tool-contracts.d.ts +29 -0
- package/dist/src/runtime/capabilities/core-tool-contracts.js +38 -0
- package/dist/src/runtime/capabilities/knowledge-skills/read-many.d.ts +4 -0
- package/dist/src/runtime/capabilities/knowledge-skills/read-many.js +21 -0
- package/dist/src/runtime/capabilities/knowledge-skills/read-targets.d.ts +13 -0
- package/dist/src/runtime/capabilities/knowledge-skills/read-targets.js +44 -0
- package/dist/src/runtime/capabilities/knowledge-skills/tool-contract.d.ts +141 -0
- package/dist/src/runtime/capabilities/knowledge-skills/tool-contract.js +58 -0
- package/dist/src/runtime/capabilities/knowledge-skills/tool-module.d.ts +4 -0
- package/dist/src/runtime/capabilities/knowledge-skills/tool-module.js +78 -0
- package/dist/src/runtime/capabilities/knowledge-skills/tool-output.d.ts +12 -0
- package/dist/src/runtime/capabilities/knowledge-skills/tool-output.js +21 -0
- package/dist/src/runtime/capabilities/knowledge-skills/write-contract.d.ts +77 -0
- package/dist/src/runtime/capabilities/knowledge-skills/write-contract.js +28 -0
- package/dist/src/runtime/capabilities/knowledge-skills/write-operations.d.ts +3 -0
- package/dist/src/runtime/capabilities/knowledge-skills/write-operations.js +34 -0
- package/dist/src/runtime/capabilities/model-reasoning-controls.d.ts +23 -0
- package/dist/src/runtime/capabilities/model-reasoning-controls.js +56 -0
- package/dist/src/runtime/capabilities/scheduling/create-operations.js +2 -0
- package/dist/src/runtime/capabilities/scheduling/job-list-page.d.ts +1 -0
- package/dist/src/runtime/capabilities/scheduling/tool-module.js +8 -5
- package/dist/src/runtime/capabilities/scheduling/update-operations.js +2 -0
- package/dist/src/runtime/composition.d.ts +5 -0
- package/dist/src/runtime/config/builders.js +6 -0
- package/dist/src/runtime/config/effective-model-config-validation.js +4 -0
- package/dist/src/runtime/config/llamacpp-profile-validation.d.ts +3 -0
- package/dist/src/runtime/config/llamacpp-profile-validation.js +15 -0
- package/dist/src/runtime/config/model-reasoning-schema.d.ts +40 -0
- package/dist/src/runtime/config/model-reasoning-schema.js +38 -0
- package/dist/src/runtime/config/model-reasoning-validation.d.ts +3 -0
- package/dist/src/runtime/config/model-reasoning-validation.js +37 -0
- package/dist/src/runtime/config/runner/step-instructions.d.ts +4 -0
- package/dist/src/runtime/config/runner/step-instructions.js +10 -6
- package/dist/src/runtime/config/schema.js +3 -0
- package/dist/src/runtime/config/validation/model-invocation-config-validation.js +14 -0
- package/dist/src/runtime/context/capability-result-compaction-source.d.ts +3 -1
- package/dist/src/runtime/context/capability-result-compaction-source.js +13 -1
- package/dist/src/runtime/context/compacted-capability-result-receipt.d.ts +2 -0
- package/dist/src/runtime/context/compacted-capability-result-receipt.js +8 -7
- package/dist/src/runtime/context/core-skill-read-context.d.ts +16 -0
- package/dist/src/runtime/context/core-skill-read-context.js +76 -0
- package/dist/src/runtime/context/exact-evidence-match.d.ts +3 -0
- package/dist/src/runtime/context/exact-evidence-match.js +34 -0
- package/dist/src/runtime/context/execution-compacted-evidence.d.ts +4 -0
- package/dist/src/runtime/context/execution-compacted-evidence.js +2 -23
- package/dist/src/runtime/context/execution-compaction-checkpoint-selection.d.ts +19 -0
- package/dist/src/runtime/context/execution-compaction-checkpoint-selection.js +104 -0
- package/dist/src/runtime/context/model-step-compaction-inheritance.d.ts +12 -0
- package/dist/src/runtime/context/model-step-compaction-inheritance.js +28 -0
- package/dist/src/runtime/context/model-step-compaction-projection.d.ts +12 -0
- package/dist/src/runtime/context/model-step-compaction-projection.js +322 -0
- package/dist/src/runtime/context/model-step-compaction.d.ts +2 -1
- package/dist/src/runtime/context/model-step-compaction.js +27 -304
- package/dist/src/runtime/context/operation-supervision-compacted-evidence.js +7 -1
- package/dist/src/runtime/context/request-context.d.ts +2 -0
- package/dist/src/runtime/context/request-context.js +16 -0
- package/dist/src/runtime/context/request-tool-results-checkpoint.d.ts +2 -1
- package/dist/src/runtime/context/request-tool-results-checkpoint.js +35 -6
- package/dist/src/runtime/context/request-tool-results.js +3 -1
- package/dist/src/runtime/context/semantic-compaction/checkpoint-message.d.ts +5 -1
- package/dist/src/runtime/context/semantic-compaction/checkpoint-message.js +10 -4
- package/dist/src/runtime/context/semantic-compaction/core-skill-read-source.d.ts +9 -0
- package/dist/src/runtime/context/semantic-compaction/core-skill-read-source.js +38 -0
- package/dist/src/runtime/context/semantic-compaction/execution-evidence-instructions.d.ts +4 -0
- package/dist/src/runtime/context/semantic-compaction/execution-evidence-instructions.js +38 -0
- package/dist/src/runtime/context/semantic-compaction/generation-contracts.d.ts +5 -1
- package/dist/src/runtime/context/semantic-compaction/generation-input.js +15 -10
- package/dist/src/runtime/context/semantic-compaction/inherited-source-digests.d.ts +8 -0
- package/dist/src/runtime/context/semantic-compaction/inherited-source-digests.js +76 -0
- package/dist/src/runtime/context/semantic-compaction/prompt.js +7 -7
- package/dist/src/runtime/context/semantic-compaction/replacement-budget.js +3 -1
- package/dist/src/runtime/context/semantic-compaction/run.js +16 -15
- package/dist/src/runtime/context/semantic-compaction/super-source-integrity.js +33 -3
- package/dist/src/runtime/context/session-artifact-paths.d.ts +2 -1
- package/dist/src/runtime/context/session-artifact-paths.js +2 -1
- package/dist/src/runtime/context/session-memory/model-step-controller.d.ts +2 -2
- package/dist/src/runtime/context/super-worker-compaction-failure.d.ts +1 -1
- package/dist/src/runtime/context/super-worker-compaction-failure.js +2 -1
- package/dist/src/runtime/context/super-worker-compaction-sidecar.d.ts +2 -1
- package/dist/src/runtime/context/super-worker-compaction-sidecar.js +9 -3
- package/dist/src/runtime/default-environment-adapters.d.ts +2 -1
- package/dist/src/runtime/default-environment-adapters.js +5 -1
- package/dist/src/runtime/knowledge-skills/available-skills-projection.d.ts +17 -0
- package/dist/src/runtime/knowledge-skills/available-skills-projection.js +66 -0
- package/dist/src/runtime/knowledge-skills/available-skills.d.ts +7 -0
- package/dist/src/runtime/knowledge-skills/available-skills.js +17 -0
- package/dist/src/runtime/knowledge-skills/builtins/abot-studio.d.ts +2 -0
- package/dist/src/runtime/knowledge-skills/builtins/abot-studio.js +27 -0
- package/dist/src/runtime/knowledge-skills/builtins/computer-use.d.ts +2 -0
- package/dist/src/runtime/knowledge-skills/builtins/computer-use.js +34 -0
- package/dist/src/runtime/knowledge-skills/builtins/skill-creator.d.ts +2 -0
- package/dist/src/runtime/knowledge-skills/builtins/skill-creator.js +29 -0
- package/dist/src/runtime/knowledge-skills/builtins/technical-work.d.ts +2 -0
- package/dist/src/runtime/knowledge-skills/builtins/technical-work.js +45 -0
- package/dist/src/runtime/knowledge-skills/builtins/what-can-i-do.d.ts +2 -0
- package/dist/src/runtime/knowledge-skills/builtins/what-can-i-do.js +27 -0
- package/dist/src/runtime/knowledge-skills/catalog.d.ts +2 -0
- package/dist/src/runtime/knowledge-skills/catalog.js +14 -0
- package/dist/src/runtime/knowledge-skills/personal-contracts.d.ts +48 -0
- package/dist/src/runtime/knowledge-skills/personal-contracts.js +29 -0
- package/dist/src/runtime/knowledge-skills/personal-documents.d.ts +6 -0
- package/dist/src/runtime/knowledge-skills/personal-documents.js +56 -0
- package/dist/src/runtime/knowledge-skills/personal-management.d.ts +9 -0
- package/dist/src/runtime/knowledge-skills/personal-management.js +64 -0
- package/dist/src/runtime/knowledge-skills/personal-repository.d.ts +6 -0
- package/dist/src/runtime/knowledge-skills/personal-repository.js +76 -0
- package/dist/src/runtime/knowledge-skills/personal-store.d.ts +4 -0
- package/dist/src/runtime/knowledge-skills/personal-store.js +33 -0
- package/dist/src/runtime/knowledge-skills/read-evidence.d.ts +3 -0
- package/dist/src/runtime/knowledge-skills/read-evidence.js +13 -0
- package/dist/src/runtime/knowledge-skills/store.d.ts +19 -0
- package/dist/src/runtime/knowledge-skills/store.js +41 -0
- package/dist/src/runtime/local-application.d.ts +7 -1
- package/dist/src/runtime/local-host/app-service-dispatch.d.ts +2 -1
- package/dist/src/runtime/local-host/app-service-dispatch.js +7 -0
- package/dist/src/runtime/local-host/client-services.d.ts +8 -1
- package/dist/src/runtime/local-host/client-services.js +3 -2
- package/dist/src/runtime/local-host/saved-approvals.js +1 -0
- package/dist/src/runtime/long-term-memory/conversation-authoring/context.d.ts +1 -0
- package/dist/src/runtime/long-term-memory/conversation-authoring/context.js +1 -1
- package/dist/src/runtime/long-term-memory/conversation-authoring/plain-text-context.d.ts +5 -0
- package/dist/src/runtime/long-term-memory/conversation-authoring/plain-text-context.js +28 -0
- package/dist/src/runtime/long-term-memory/initial-context.d.ts +1 -0
- package/dist/src/runtime/long-term-memory/onboarding/configuration.js +5 -7
- package/dist/src/runtime/long-term-memory/onboarding/contracts.d.ts +26 -0
- package/dist/src/runtime/long-term-memory/onboarding/embedding-profile-id.d.ts +1 -0
- package/dist/src/runtime/long-term-memory/onboarding/embedding-profile-id.js +8 -0
- package/dist/src/runtime/long-term-memory/onboarding/saved-profiles.d.ts +17 -0
- package/dist/src/runtime/long-term-memory/onboarding/saved-profiles.js +77 -0
- package/dist/src/runtime/long-term-memory/onboarding/service.js +40 -10
- package/dist/src/runtime/model/context-compaction-admission.d.ts +1 -0
- package/dist/src/runtime/model/context-compaction-admission.js +35 -1
- package/dist/src/runtime/model/context-compaction-contracts.d.ts +9 -1
- package/dist/src/runtime/model/input-token-count.js +1 -0
- package/dist/src/runtime/model/invoke-step.js +18 -2
- package/dist/src/runtime/model/invoke-structured-step.d.ts +4 -1
- package/dist/src/runtime/model/invoke-structured-step.js +4 -0
- package/dist/src/runtime/model/model-catalog.d.ts +3 -0
- package/dist/src/runtime/model/model-catalog.js +2 -0
- package/dist/src/runtime/model/model-context-budget.d.ts +5 -0
- package/dist/src/runtime/model/model-context-budget.js +2 -0
- package/dist/src/runtime/model/model-step-port.d.ts +7 -0
- package/dist/src/runtime/model/optional-context-admission.d.ts +18 -0
- package/dist/src/runtime/model/optional-context-admission.js +23 -0
- package/dist/src/runtime/model/provider-failure.d.ts +13 -0
- package/dist/src/runtime/model/provider-failure.js +37 -0
- package/dist/src/runtime/orchestration/role-calls/activation-budget.js +1 -0
- package/dist/src/runtime/orchestration/role-calls/candidate-validation.js +2 -0
- package/dist/src/runtime/orchestration/role-calls/checkpoint-state.js +2 -1
- package/dist/src/runtime/orchestration/role-calls/command-decoder.js +3 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/skill-read-transition.d.ts +4 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/skill-read-transition.js +48 -0
- package/dist/src/runtime/orchestration/role-calls/command-dispatch.js +3 -0
- package/dist/src/runtime/orchestration/role-calls/contracts.d.ts +6 -3
- package/dist/src/runtime/orchestration/role-calls/contracts.js +3 -3
- package/dist/src/runtime/orchestration/role-calls/skill-read.d.ts +47 -0
- package/dist/src/runtime/orchestration/role-calls/skill-read.js +196 -0
- package/dist/src/runtime/orchestration/role-executors/activation/model-output-failure.d.ts +1 -1
- package/dist/src/runtime/orchestration/role-executors/activation/model-output-failure.js +4 -2
- package/dist/src/runtime/orchestration/worker-capabilities/binding/create-binding.js +4 -1
- package/dist/src/runtime/orchestration/worker-capabilities/contracts.d.ts +1 -1
- package/dist/src/runtime/orchestration/worker-capabilities/contracts.js +1 -1
- package/dist/src/runtime/orchestration/worker-capabilities/execution/approval-group.js +5 -3
- package/dist/src/runtime/orchestration/worker-capabilities/payload-compaction-transport.d.ts +2 -0
- package/dist/src/runtime/orchestration/worker-capabilities/payload-compaction-transport.js +7 -2
- package/dist/src/runtime/orchestration/worker-capabilities/supervisor-skill-authority.d.ts +19 -0
- package/dist/src/runtime/orchestration/worker-capabilities/supervisor-skill-authority.js +43 -0
- package/dist/src/runtime/plugins/loader.js +7 -6
- package/dist/src/runtime/ports.d.ts +3 -1
- package/dist/src/runtime/projects/contracts.d.ts +6 -0
- package/dist/src/runtime/projects/registry-format.d.ts +3 -0
- package/dist/src/runtime/projects/registry-format.js +50 -0
- package/dist/src/runtime/projects/repository.d.ts +6 -3
- package/dist/src/runtime/projects/repository.js +26 -19
- package/dist/src/runtime/projects/service.js +11 -0
- package/dist/src/runtime/request/approval-wait/preflight.js +2 -0
- package/dist/src/runtime/request/approval-wait/snapshot.d.ts +1 -1
- package/dist/src/runtime/request/approval-wait/snapshot.js +1 -0
- package/dist/src/runtime/request/bound-runtime-handler.js +1 -0
- package/dist/src/runtime/request/contracts.d.ts +7 -1
- package/dist/src/runtime/request/execution-facets.js +2 -0
- package/dist/src/runtime/request/execution-payload-artifact-policy.d.ts +3 -0
- package/dist/src/runtime/request/execution-payload-artifact-policy.js +6 -0
- package/dist/src/runtime/request/execution-payload-compacted-evidence.d.ts +2 -2
- package/dist/src/runtime/request/execution-payload-compacted-evidence.js +1 -0
- package/dist/src/runtime/request/execution-scope-surfaces.d.ts +4 -0
- package/dist/src/runtime/request/execution-scope-surfaces.js +10 -0
- package/dist/src/runtime/request/execution-scope.d.ts +8 -2
- package/dist/src/runtime/request/execution-scope.js +13 -0
- package/dist/src/runtime/request/input.d.ts +1 -0
- package/dist/src/runtime/request/input.js +1 -0
- package/dist/src/runtime/request/payload-settled-evidence.d.ts +11 -0
- package/dist/src/runtime/request/payload-settled-evidence.js +29 -0
- package/dist/src/runtime/request/prepared-execution.d.ts +1 -0
- package/dist/src/runtime/request/prepared-execution.js +5 -0
- package/dist/src/runtime/request/reasoning-preference.d.ts +10 -0
- package/dist/src/runtime/request/reasoning-preference.js +29 -0
- package/dist/src/runtime/request/role-call-delegation-events.d.ts +19 -0
- package/dist/src/runtime/request/role-call-delegation-events.js +52 -0
- package/dist/src/runtime/request/role-call-return-events.d.ts +19 -0
- package/dist/src/runtime/request/role-call-return-events.js +63 -0
- package/dist/src/runtime/request/role-executor-composition.js +2 -2
- package/dist/src/runtime/request/root-capability-binding.d.ts +24 -0
- package/dist/src/runtime/request/root-capability-binding.js +57 -0
- package/dist/src/runtime/request/root-capability-catalog.d.ts +16 -0
- package/dist/src/runtime/request/root-capability-catalog.js +20 -0
- package/dist/src/runtime/request/root-contract.d.ts +11 -1
- package/dist/src/runtime/request/root-execution-kernel.js +35 -68
- package/dist/src/runtime/request/root-reference-action.d.ts +15 -0
- package/dist/src/runtime/request/root-reference-action.js +48 -0
- package/dist/src/runtime/request/root-skill-read-admission.d.ts +4 -0
- package/dist/src/runtime/request/root-skill-read-admission.js +14 -0
- package/dist/src/runtime/request/root-skill-read.d.ts +13 -0
- package/dist/src/runtime/request/root-skill-read.js +110 -0
- package/dist/src/runtime/request/runner.js +10 -0
- package/dist/src/runtime/request/super-payload-context-failure.js +13 -4
- package/dist/src/runtime/request/supervisor-root-execution.js +48 -1
- package/dist/src/runtime/request/supervisor-skill-edit-target.d.ts +9 -0
- package/dist/src/runtime/request/supervisor-skill-edit-target.js +25 -0
- package/dist/src/runtime/request/supervisor-skill-payload-context.d.ts +21 -0
- package/dist/src/runtime/request/supervisor-skill-payload-context.js +91 -0
- package/dist/src/runtime/request/supervisor-skill-selection-window.d.ts +16 -0
- package/dist/src/runtime/request/supervisor-skill-selection-window.js +17 -0
- package/dist/src/runtime/request/supervisor-skill-write-preparation.d.ts +25 -0
- package/dist/src/runtime/request/supervisor-skill-write-preparation.js +71 -0
- package/dist/src/runtime/request/worker-capability-composition.d.ts +4 -1
- package/dist/src/runtime/request/worker-capability-composition.js +6 -1
- package/dist/src/runtime/request/worker-capability-payload.d.ts +1 -1
- package/dist/src/runtime/request/worker-capability-payload.js +44 -37
- package/dist/src/runtime/runtime-environment.d.ts +2 -0
- package/dist/src/runtime/runtime-environment.js +12 -1
- package/dist/src/runtime/scheduler/contracts.d.ts +11 -1
- package/dist/src/runtime/scheduler/job-management.js +7 -1
- package/dist/src/runtime/scheduler/run-list-filter.d.ts +11 -0
- package/dist/src/runtime/scheduler/run-list-filter.js +56 -0
- package/dist/src/runtime/scheduler/run-list-query.d.ts +2 -2
- package/dist/src/runtime/scheduler/run-list-query.js +4 -1
- package/dist/src/runtime/scheduler/run-records.js +2 -0
- package/dist/src/runtime/scheduler/schedule-validation.js +2 -0
- package/dist/src/runtime/scheduler/scheduler-engine.js +1 -0
- package/dist/src/runtime/scheduler/snapshot-validation.js +2 -0
- package/dist/src/runtime/steps/auditor-decision/contracts.d.ts +2 -0
- package/dist/src/runtime/steps/auditor-decision/evidence-representation.d.ts +2 -2
- package/dist/src/runtime/steps/auditor-decision/evidence-representation.js +2 -34
- package/dist/src/runtime/steps/auditor-decision/input.js +21 -3
- package/dist/src/runtime/steps/auditor-decision/projection.js +7 -0
- package/dist/src/runtime/steps/auditor-decision/prompt.d.ts +1 -1
- package/dist/src/runtime/steps/auditor-decision/prompt.js +14 -3
- package/dist/src/runtime/steps/capability-execution-guidance.d.ts +7 -0
- package/dist/src/runtime/steps/capability-execution-guidance.js +28 -0
- package/dist/src/runtime/steps/capability-execution-instructions.d.ts +0 -2
- package/dist/src/runtime/steps/capability-execution-instructions.js +0 -2
- package/dist/src/runtime/steps/execution-agent/capability-controls-partition.d.ts +9 -0
- package/dist/src/runtime/steps/execution-agent/capability-controls-partition.js +29 -0
- package/dist/src/runtime/steps/execution-agent/capability-result-context.d.ts +5 -2
- package/dist/src/runtime/steps/execution-agent/capability-result-context.js +22 -3
- package/dist/src/runtime/steps/execution-agent/capability-scope.d.ts +17 -0
- package/dist/src/runtime/steps/execution-agent/capability-scope.js +54 -0
- package/dist/src/runtime/steps/execution-agent/compaction.d.ts +3 -2
- package/dist/src/runtime/steps/execution-agent/compaction.js +31 -7
- package/dist/src/runtime/steps/execution-agent/controls-compacted-evidence.js +2 -0
- package/dist/src/runtime/steps/execution-agent/direct-response-prompt.js +14 -14
- package/dist/src/runtime/steps/execution-agent/evidence-reuse-instructions.d.ts +6 -0
- package/dist/src/runtime/steps/execution-agent/evidence-reuse-instructions.js +13 -0
- package/dist/src/runtime/steps/execution-agent/format.js +3 -6
- package/dist/src/runtime/steps/execution-agent/input.d.ts +5 -1
- package/dist/src/runtime/steps/execution-agent/input.js +24 -38
- package/dist/src/runtime/steps/execution-agent/observation-guidance.d.ts +11 -0
- package/dist/src/runtime/steps/execution-agent/observation-guidance.js +33 -0
- package/dist/src/runtime/steps/execution-agent/prompt.js +42 -38
- package/dist/src/runtime/steps/execution-agent/refinement-input.d.ts +1 -0
- package/dist/src/runtime/steps/execution-agent/refinement-prompt.js +4 -1
- package/dist/src/runtime/steps/execution-agent/refinement.d.ts +3 -2
- package/dist/src/runtime/steps/execution-agent/refinement.js +17 -6
- package/dist/src/runtime/steps/execution-agent/response-prompt.js +1 -0
- package/dist/src/runtime/steps/execution-agent/response-run.js +1 -1
- package/dist/src/runtime/steps/execution-agent/run.js +8 -2
- package/dist/src/runtime/steps/execution-agent/state-context.js +1 -1
- package/dist/src/runtime/steps/knowledge-skill-instructions.d.ts +3 -0
- package/dist/src/runtime/steps/knowledge-skill-instructions.js +3 -0
- package/dist/src/runtime/steps/planner-decision/capability-brief.d.ts +2 -2
- package/dist/src/runtime/steps/planner-decision/capability-brief.js +5 -1
- package/dist/src/runtime/steps/planner-decision/input.d.ts +2 -2
- package/dist/src/runtime/steps/planner-decision/input.js +7 -1
- package/dist/src/runtime/steps/planner-decision/prompt.js +3 -0
- package/dist/src/runtime/steps/planner-graph/input.d.ts +2 -2
- package/dist/src/runtime/steps/planner-graph/input.js +9 -8
- package/dist/src/runtime/steps/planner-graph/prompt.js +2 -2
- package/dist/src/runtime/steps/planner-graph/run.d.ts +2 -2
- package/dist/src/runtime/steps/planner-graph/run.js +5 -5
- package/dist/src/runtime/steps/planner-graph/skill-guidance.d.ts +5 -0
- package/dist/src/runtime/steps/planner-graph/skill-guidance.js +62 -0
- package/dist/src/runtime/steps/reviewer-decision/final-evidence.d.ts +1 -0
- package/dist/src/runtime/steps/reviewer-decision/final-evidence.js +3 -1
- package/dist/src/runtime/steps/reviewer-decision/input.d.ts +3 -1
- package/dist/src/runtime/steps/reviewer-decision/input.js +2 -22
- package/dist/src/runtime/steps/reviewer-decision/model-context.d.ts +21 -0
- package/dist/src/runtime/steps/reviewer-decision/model-context.js +32 -1
- package/dist/src/runtime/steps/reviewer-decision/projection.js +4 -0
- package/dist/src/runtime/steps/reviewer-decision/prompt.d.ts +1 -1
- package/dist/src/runtime/steps/reviewer-decision/prompt.js +15 -4
- package/dist/src/runtime/steps/reviewer-decision/run.d.ts +2 -0
- package/dist/src/runtime/steps/reviewer-decision/run.js +6 -0
- package/dist/src/runtime/steps/skill-read-decision.d.ts +35 -0
- package/dist/src/runtime/steps/skill-read-decision.js +96 -0
- package/dist/src/runtime/steps/supervisor-decision/artifact-paths.d.ts +27 -0
- package/dist/src/runtime/steps/supervisor-decision/artifact-paths.js +147 -0
- package/dist/src/runtime/steps/supervisor-decision/capability-brief.d.ts +2 -0
- package/dist/src/runtime/steps/supervisor-decision/capability-brief.js +9 -2
- package/dist/src/runtime/steps/supervisor-decision/contracts.d.ts +12 -3
- package/dist/src/runtime/steps/supervisor-decision/contracts.js +5 -0
- package/dist/src/runtime/steps/supervisor-decision/decision-phases.d.ts +40 -0
- package/dist/src/runtime/steps/supervisor-decision/decision-phases.js +143 -0
- package/dist/src/runtime/steps/supervisor-decision/delegation-contract.d.ts +9 -0
- package/dist/src/runtime/steps/supervisor-decision/delegation-contract.js +82 -0
- package/dist/src/runtime/steps/supervisor-decision/delegation-input.d.ts +7 -0
- package/dist/src/runtime/steps/supervisor-decision/delegation-input.js +105 -0
- package/dist/src/runtime/steps/supervisor-decision/delegation-prompt.d.ts +7 -0
- package/dist/src/runtime/steps/supervisor-decision/delegation-prompt.js +13 -0
- package/dist/src/runtime/steps/supervisor-decision/diagnostics.d.ts +5 -1
- package/dist/src/runtime/steps/supervisor-decision/diagnostics.js +4 -0
- package/dist/src/runtime/steps/supervisor-decision/format.d.ts +1 -0
- package/dist/src/runtime/steps/supervisor-decision/format.js +2 -0
- package/dist/src/runtime/steps/supervisor-decision/input.d.ts +8 -1
- package/dist/src/runtime/steps/supervisor-decision/input.js +30 -11
- package/dist/src/runtime/steps/supervisor-decision/parser.d.ts +1 -0
- package/dist/src/runtime/steps/supervisor-decision/parser.js +11 -0
- package/dist/src/runtime/steps/supervisor-decision/preparation-input.d.ts +24 -0
- package/dist/src/runtime/steps/supervisor-decision/preparation-input.js +23 -0
- package/dist/src/runtime/steps/supervisor-decision/preparation.d.ts +20 -0
- package/dist/src/runtime/steps/supervisor-decision/preparation.js +117 -0
- package/dist/src/runtime/steps/supervisor-decision/presentation.d.ts +13 -0
- package/dist/src/runtime/steps/supervisor-decision/presentation.js +47 -0
- package/dist/src/runtime/steps/supervisor-decision/procedure-entry.d.ts +22 -0
- package/dist/src/runtime/steps/supervisor-decision/procedure-entry.js +61 -0
- package/dist/src/runtime/steps/supervisor-decision/procedure-gate.d.ts +39 -0
- package/dist/src/runtime/steps/supervisor-decision/procedure-gate.js +146 -0
- package/dist/src/runtime/steps/supervisor-decision/procedure-memory.d.ts +9 -0
- package/dist/src/runtime/steps/supervisor-decision/procedure-memory.js +100 -0
- package/dist/src/runtime/steps/supervisor-decision/procedure-recall.d.ts +10 -0
- package/dist/src/runtime/steps/supervisor-decision/procedure-recall.js +52 -0
- package/dist/src/runtime/steps/supervisor-decision/prompt.d.ts +4 -0
- package/dist/src/runtime/steps/supervisor-decision/prompt.js +85 -111
- package/dist/src/runtime/steps/supervisor-decision/response-recommendation.d.ts +2 -0
- package/dist/src/runtime/steps/supervisor-decision/response-recommendation.js +2 -0
- package/dist/src/runtime/steps/supervisor-decision/resume.d.ts +3 -0
- package/dist/src/runtime/steps/supervisor-decision/resume.js +20 -0
- package/dist/src/runtime/steps/supervisor-decision/role-guidance.d.ts +3 -0
- package/dist/src/runtime/steps/supervisor-decision/role-guidance.js +20 -0
- package/dist/src/runtime/steps/supervisor-decision/run.d.ts +6 -0
- package/dist/src/runtime/steps/supervisor-decision/run.js +120 -163
- package/dist/src/runtime/steps/supervisor-decision/skill-read-state.d.ts +10 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-read-state.js +45 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-selection-candidates.d.ts +15 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-selection-candidates.js +25 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-selection-catalog.d.ts +3 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-selection-catalog.js +15 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-selection-continuation.d.ts +10 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-selection-continuation.js +65 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-selection-input.d.ts +23 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-selection-input.js +27 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-selection.d.ts +17 -0
- package/dist/src/runtime/steps/supervisor-decision/skill-selection.js +91 -0
- package/dist/src/runtime/steps/supervisor-response/input.d.ts +3 -0
- package/dist/src/runtime/steps/supervisor-response/input.js +5 -0
- package/dist/src/runtime/steps/supervisor-response/prompt.js +20 -4
- package/dist/src/runtime/steps/supervisor-response/response-recommendation.d.ts +3 -0
- package/dist/src/runtime/steps/supervisor-response/response-recommendation.js +24 -4
- package/dist/src/runtime/steps/supervisor-response/run.d.ts +5 -0
- package/dist/src/runtime/steps/supervisor-skill-authoring/contract.d.ts +43 -0
- package/dist/src/runtime/steps/supervisor-skill-authoring/contract.js +85 -0
- package/dist/src/runtime/steps/supervisor-skill-authoring/input.d.ts +35 -0
- package/dist/src/runtime/steps/supervisor-skill-authoring/input.js +87 -0
- package/dist/src/runtime/steps/supervisor-skill-authoring/run.d.ts +10 -0
- package/dist/src/runtime/steps/supervisor-skill-authoring/run.js +35 -0
- package/dist/src/runtime/steps/supervisor-skill-instructions.d.ts +4 -0
- package/dist/src/runtime/steps/supervisor-skill-instructions.js +4 -0
- package/dist/src/runtime/steps/worker-capability-scope-decision.js +14 -1
- package/dist/src/runtime/steps/worker-decision/contracts.d.ts +1 -0
- package/dist/src/runtime/steps/worker-decision/input/execution-guidance.d.ts +5 -0
- package/dist/src/runtime/steps/worker-decision/input/execution-guidance.js +31 -0
- package/dist/src/runtime/steps/worker-decision/input/prompt-context.js +2 -25
- package/dist/src/runtime/steps/worker-decision/input/reference-context.js +4 -0
- package/dist/src/runtime/steps/worker-decision/prompt.js +6 -2
- package/dist/src/runtime/steps/worker-decision/result-author.js +6 -0
- package/dist/src/shared/model-reasoning-modes.d.ts +5 -0
- package/dist/src/shared/model-reasoning-modes.js +20 -0
- package/dist/src/shared/model-reasoning-schema.d.ts +38 -0
- package/dist/src/shared/model-reasoning-schema.js +29 -0
- package/dist/src/shared/model-reasoning.d.ts +35 -0
- package/dist/src/shared/model-reasoning.js +100 -0
- package/dist/src/web-ui/app/ARCHITECTURE.md +13 -0
- package/dist/src/web-ui/app/app-bootstrap.js +12 -12
- package/dist/src/web-ui/app/app-dom.js +6 -1
- package/dist/src/web-ui/app/app-state.js +1 -0
- package/dist/src/web-ui/app/app.js +14 -4
- package/dist/src/web-ui/app/appearance-feature.js +28 -0
- package/dist/src/web-ui/app/automations-feature.js +20 -11
- package/dist/src/web-ui/app/components/appearance-dialog.js +79 -0
- package/dist/src/web-ui/app/components/automations/archive-actions.js +5 -3
- package/dist/src/web-ui/app/components/automations/authoring-entry.js +26 -7
- package/dist/src/web-ui/app/components/automations/confirmation-actions.js +78 -0
- package/dist/src/web-ui/app/components/automations/draft-recovery-actions.js +1 -0
- package/dist/src/web-ui/app/components/automations/node-inspector.js +5 -1
- package/dist/src/web-ui/app/components/automations/run-history-controls.js +77 -0
- package/dist/src/web-ui/app/components/automations/run-history.js +55 -0
- package/dist/src/web-ui/app/components/automations/run.js +3 -8
- package/dist/src/web-ui/app/components/automations/step-editor-dialog.js +4 -2
- package/dist/src/web-ui/app/components/automations/timeline.js +2 -2
- package/dist/src/web-ui/app/components/automations/workspace-navigation.js +37 -0
- package/dist/src/web-ui/app/components/automations/workspace.js +39 -45
- package/dist/src/web-ui/app/components/config-workspace/config-model.js +6 -0
- package/dist/src/web-ui/app/components/config-workspace/model-removal.js +4 -2
- package/dist/src/web-ui/app/components/config-workspace/model-rendering.js +8 -16
- package/dist/src/web-ui/app/components/config-workspace/reasoning-budget-edit.js +113 -0
- package/dist/src/web-ui/app/components/config-workspace/reasoning-budget.d.ts +16 -0
- package/dist/src/web-ui/app/components/config-workspace/reasoning-budget.js +67 -0
- package/dist/src/web-ui/app/components/config-workspace/reasoning-mode-budgets.d.ts +7 -0
- package/dist/src/web-ui/app/components/config-workspace/reasoning-mode-budgets.js +25 -0
- package/dist/src/web-ui/app/components/config-workspace/workspace-events.js +15 -7
- package/dist/src/web-ui/app/components/config-workspace/workspace-mutations.js +32 -12
- package/dist/src/web-ui/app/components/config-workspace/workspace-persistence.js +1 -1
- package/dist/src/web-ui/app/components/config-workspace.js +2 -1
- package/dist/src/web-ui/app/components/confirmation-dialog.js +88 -0
- package/dist/src/web-ui/app/components/conversation-activity.d.ts +2 -0
- package/dist/src/web-ui/app/components/conversation-activity.js +32 -3
- package/dist/src/web-ui/app/components/conversation-memory-activity.js +31 -0
- package/dist/src/web-ui/app/components/conversation-role-cards.d.ts +2 -0
- package/dist/src/web-ui/app/components/conversation-role-cards.js +32 -2
- package/dist/src/web-ui/app/components/conversation-role-delegations.d.ts +12 -0
- package/dist/src/web-ui/app/components/conversation-role-delegations.js +24 -0
- package/dist/src/web-ui/app/components/conversation-role-history.d.ts +13 -0
- package/dist/src/web-ui/app/components/conversation-role-history.js +81 -0
- package/dist/src/web-ui/app/components/conversation-role-returns.d.ts +12 -0
- package/dist/src/web-ui/app/components/conversation-role-returns.js +23 -0
- package/dist/src/web-ui/app/components/conversation-skill-activity.js +67 -0
- package/dist/src/web-ui/app/components/conversation-tools.js +5 -5
- package/dist/src/web-ui/app/components/conversation-view.js +6 -0
- package/dist/src/web-ui/app/components/dashboard/approvals.js +13 -1
- package/dist/src/web-ui/app/components/long-term-memory/embedding-connection-dialog.d.ts +38 -0
- package/dist/src/web-ui/app/components/long-term-memory/embedding-connection-dialog.js +289 -0
- package/dist/src/web-ui/app/components/long-term-memory/embedding-connection-feature.js +75 -0
- package/dist/src/web-ui/app/components/long-term-memory/embedding-connection-rendering.js +31 -0
- package/dist/src/web-ui/app/components/long-term-memory/manager.js +15 -5
- package/dist/src/web-ui/app/components/long-term-memory/saved-embedding-profiles.js +114 -0
- package/dist/src/web-ui/app/components/long-term-memory/setup-rendering.js +55 -0
- package/dist/src/web-ui/app/components/long-term-memory-setup.js +141 -76
- package/dist/src/web-ui/app/components/model-setup/rendering.js +3 -2
- package/dist/src/web-ui/app/components/model-setup/validation.js +6 -2
- package/dist/src/web-ui/app/components/model-setup/wizard.d.ts +1 -0
- package/dist/src/web-ui/app/components/model-setup/wizard.js +28 -5
- package/dist/src/web-ui/app/components/onboarding-workspace-access.js +1 -1
- package/dist/src/web-ui/app/components/passive-learning/memory.js +12 -5
- package/dist/src/web-ui/app/components/plugins/manager.js +14 -0
- package/dist/src/web-ui/app/components/plugins/removal.js +10 -2
- package/dist/src/web-ui/app/components/project-group-actions.js +35 -0
- package/dist/src/web-ui/app/components/project-session-groups.js +17 -31
- package/dist/src/web-ui/app/components/runtime-setup/commands.js +1 -1
- package/dist/src/web-ui/app/components/runtime-setup/connection-form.d.ts +15 -0
- package/dist/src/web-ui/app/components/runtime-setup/connection-form.js +32 -9
- package/dist/src/web-ui/app/components/runtime-setup/connection-input.js +23 -0
- package/dist/src/web-ui/app/components/runtime-setup/connection-inspection.js +57 -0
- package/dist/src/web-ui/app/components/runtime-setup/connection-state.js +18 -4
- package/dist/src/web-ui/app/components/runtime-setup/embedding-credential-status.js +3 -0
- package/dist/src/web-ui/app/components/runtime-setup/embedding-provider-options.js +54 -0
- package/dist/src/web-ui/app/components/runtime-setup/embedding-provider-receipt.js +3 -0
- package/dist/src/web-ui/app/components/runtime-setup/embedding-rendering.js +22 -22
- package/dist/src/web-ui/app/components/runtime-setup/embedding.js +60 -16
- package/dist/src/web-ui/app/components/runtime-setup/reasoning-fields.d.ts +17 -0
- package/dist/src/web-ui/app/components/runtime-setup/reasoning-fields.js +54 -0
- package/dist/src/web-ui/app/components/runtime-setup/validation.js +5 -1
- package/dist/src/web-ui/app/components/runtime-setup-guide.d.ts +9 -3
- package/dist/src/web-ui/app/components/runtime-setup-guide.js +20 -29
- package/dist/src/web-ui/app/components/schedules/details.js +2 -2
- package/dist/src/web-ui/app/components/schedules/form.js +12 -5
- package/dist/src/web-ui/app/components/schedules/workspace.js +30 -18
- package/dist/src/web-ui/app/components/session-list-viewport.js +49 -0
- package/dist/src/web-ui/app/components/session-search-disclosure.js +27 -0
- package/dist/src/web-ui/app/components/skills/workspace.js +123 -0
- package/dist/src/web-ui/app/components/spark-chat/panel.js +7 -3
- package/dist/src/web-ui/app/components/spark-chat/settings.js +57 -15
- package/dist/src/web-ui/app/components/tool-approval-card.d.ts +2 -1
- package/dist/src/web-ui/app/components/tool-approval-card.js +10 -2
- package/dist/src/web-ui/app/components/tool-approval-rejection-input.js +116 -0
- package/dist/src/web-ui/app/components/workspace-shell.js +41 -39
- package/dist/src/web-ui/app/components/workspace-transitions.js +42 -0
- package/dist/src/web-ui/app/configuration-feature.js +34 -4
- package/dist/src/web-ui/app/controllers/app-event-bindings.js +45 -29
- package/dist/src/web-ui/app/controllers/appearance-controller.js +105 -0
- package/dist/src/web-ui/app/controllers/automation-read-projection.js +8 -4
- package/dist/src/web-ui/app/controllers/automation-run-actions.js +3 -1
- package/dist/src/web-ui/app/controllers/automation-run-history.js +159 -0
- package/dist/src/web-ui/app/controllers/automations-controller.js +36 -12
- package/dist/src/web-ui/app/controllers/composer-feature.d.ts +1 -1
- package/dist/src/web-ui/app/controllers/composer-feature.js +10 -3
- package/dist/src/web-ui/app/controllers/composer-queue-controller.d.ts +1 -1
- package/dist/src/web-ui/app/controllers/composer-queue-controller.js +9 -3
- package/dist/src/web-ui/app/controllers/composer-submission-lifecycle.d.ts +1 -1
- package/dist/src/web-ui/app/controllers/conversation-workspace-activation.js +8 -2
- package/dist/src/web-ui/app/controllers/dashboard-approvals-controller.js +10 -9
- package/dist/src/web-ui/app/controllers/environment-transition.js +2 -2
- package/dist/src/web-ui/app/controllers/environment-workspace-preparation.js +12 -6
- package/dist/src/web-ui/app/controllers/preference-view-sync.js +35 -0
- package/dist/src/web-ui/app/controllers/projects-controller.d.ts +4 -0
- package/dist/src/web-ui/app/controllers/projects-controller.js +64 -3
- package/dist/src/web-ui/app/controllers/realtime-event-controller.js +22 -1
- package/dist/src/web-ui/app/controllers/reasoning-budget-controller.d.ts +17 -0
- package/dist/src/web-ui/app/controllers/reasoning-budget-controller.js +80 -0
- package/dist/src/web-ui/app/controllers/reasoning-budget-menu-events.js +45 -0
- package/dist/src/web-ui/app/controllers/reasoning-mode-controller.js +35 -40
- package/dist/src/web-ui/app/controllers/runtime-selection-controller.d.ts +6 -1
- package/dist/src/web-ui/app/controllers/runtime-selection-controller.js +23 -4
- package/dist/src/web-ui/app/controllers/session-controller.js +34 -9
- package/dist/src/web-ui/app/controllers/session-sidebar-controller.js +4 -3
- package/dist/src/web-ui/app/controllers/skills-controller.js +254 -0
- package/dist/src/web-ui/app/controllers/spark-chat-sync.js +1 -1
- package/dist/src/web-ui/app/controllers/spark-handoff-navigation.js +7 -1
- package/dist/src/web-ui/app/controllers/tool-approval-controller.d.ts +2 -1
- package/dist/src/web-ui/app/controllers/tool-approval-controller.js +36 -3
- package/dist/src/web-ui/app/controllers/workspace-conversation-opener.js +8 -2
- package/dist/src/web-ui/app/controllers/workspace-route-controller.js +41 -10
- package/dist/src/web-ui/app/index.html +38 -32
- package/dist/src/web-ui/app/lib/color-palettes.d.ts +17 -0
- package/dist/src/web-ui/app/lib/color-palettes.js +20 -0
- package/dist/src/web-ui/app/lib/conversation-role-model.d.ts +5 -0
- package/dist/src/web-ui/app/lib/conversation-role-model.js +63 -5
- package/dist/src/web-ui/app/lib/event-presentation.js +34 -0
- package/dist/src/web-ui/app/lib/memory-activity-model.d.ts +12 -0
- package/dist/src/web-ui/app/lib/memory-activity-model.js +61 -0
- package/dist/src/web-ui/app/lib/navigation-display.d.ts +8 -0
- package/dist/src/web-ui/app/lib/navigation-display.js +12 -0
- package/dist/src/web-ui/app/lib/reasoning-controls.js +47 -6
- package/dist/src/web-ui/app/lib/reasoning-preference.d.ts +9 -0
- package/dist/src/web-ui/app/lib/reasoning-preference.js +75 -0
- package/dist/src/web-ui/app/lib/role-delegation-event.d.ts +18 -0
- package/dist/src/web-ui/app/lib/role-delegation-event.js +47 -0
- package/dist/src/web-ui/app/lib/role-return-event.d.ts +19 -0
- package/dist/src/web-ui/app/lib/role-return-event.js +36 -0
- package/dist/src/web-ui/app/lib/session-composer-queue.d.ts +4 -0
- package/dist/src/web-ui/app/lib/session-composer-queue.js +4 -0
- package/dist/src/web-ui/app/lib/session-project-groups.js +28 -0
- package/dist/src/web-ui/app/lib/session-sidebar-order.js +7 -5
- package/dist/src/web-ui/app/lib/tool-activity-event.d.ts +1 -0
- package/dist/src/web-ui/app/lib/tool-activity-event.js +9 -6
- package/dist/src/web-ui/app/lib/tool-activity-model.d.ts +1 -0
- package/dist/src/web-ui/app/lib/tool-activity-model.js +1 -0
- package/dist/src/web-ui/app/lib/tool-approval-rejection-drafts.js +45 -0
- package/dist/src/web-ui/app/lib/tool-skill-activity-fields.js +50 -0
- package/dist/src/web-ui/app/lib/workspace-route.js +1 -0
- package/dist/src/web-ui/app/notifications-feature.js +10 -2
- package/dist/src/web-ui/app/passive-learning-feature.js +2 -2
- package/dist/src/web-ui/app/projects-feature.js +40 -10
- package/dist/src/web-ui/app/runtime-onboarding-feature.js +1 -0
- package/dist/src/web-ui/app/schedules-feature.js +28 -5
- package/dist/src/web-ui/app/services/client-preferences.d.ts +4 -1
- package/dist/src/web-ui/app/services/client-preferences.js +2 -0
- package/dist/src/web-ui/app/services/conversation-reasoning-preferences.d.ts +11 -0
- package/dist/src/web-ui/app/services/conversation-reasoning-preferences.js +30 -0
- package/dist/src/web-ui/app/services/runtime-web-client/automations.d.ts +9 -1
- package/dist/src/web-ui/app/services/runtime-web-client/automations.js +16 -6
- package/dist/src/web-ui/app/services/runtime-web-client/configuration.js +5 -0
- package/dist/src/web-ui/app/services/runtime-web-client/memory.js +21 -0
- package/dist/src/web-ui/app/services/runtime-web-client/projects.d.ts +2 -1
- package/dist/src/web-ui/app/services/runtime-web-client/projects.js +4 -0
- package/dist/src/web-ui/app/services/runtime-web-client/skills.js +23 -0
- package/dist/src/web-ui/app/services/runtime-web-client/tool-approvals.js +2 -0
- package/dist/src/web-ui/app/services/runtime-web-client.d.ts +16 -0
- package/dist/src/web-ui/app/services/runtime-web-client.js +4 -0
- package/dist/src/web-ui/app/services/session-sidebar-preferences.js +33 -13
- package/dist/src/web-ui/app/skills-feature.js +35 -0
- package/dist/src/web-ui/app/spark-chat-conversation.js +29 -3
- package/dist/src/web-ui/app/spark-chat-feature.js +13 -7
- package/dist/src/web-ui/app/styles/01-color-palettes.css +90 -0
- package/dist/src/web-ui/app/styles/11-product-links.css +6 -2
- package/dist/src/web-ui/app/styles/11-workspace-header-width.css +37 -25
- package/dist/src/web-ui/app/styles/12-conversation-sidebar.css +56 -22
- package/dist/src/web-ui/app/styles/13-projects.css +56 -19
- package/dist/src/web-ui/app/styles/19-runtime-setup.css +16 -0
- package/dist/src/web-ui/app/styles/22-reasoning-budget.css +39 -0
- package/dist/src/web-ui/app/styles/24-conversation-role-cards.css +58 -0
- package/dist/src/web-ui/app/styles/27-conversation-memory.css +45 -0
- package/dist/src/web-ui/app/styles/27-conversation-skills.css +96 -0
- package/dist/src/web-ui/app/styles/28-tool-approval-card.css +38 -1
- package/dist/src/web-ui/app/styles/35-embedding-profiles.css +159 -0
- package/dist/src/web-ui/app/styles/40-skills.css +34 -0
- package/dist/src/web-ui/app/styles/50-automations.css +24 -3
- package/dist/src/web-ui/app/styles/54-spark-chat.css +62 -46
- package/dist/src/web-ui/app/styles/65-appearance.css +60 -0
- package/dist/src/web-ui/app/styles/66-navigation-display.css +30 -0
- package/dist/src/web-ui/app/styles/67-confirmation-dialog.css +32 -0
- package/dist/src/web-ui/app/styles/95-home-widgets.css +2 -1
- package/dist/src/web-ui/app/styles.css +9 -0
- package/dist/src/web-ui/app/ui-behavior.d.ts +1 -1
- package/dist/src/web-ui/app/ui-behavior.js +1 -0
- package/dist/src/web-ui/client-state/preference-shapes.js +6 -1
- package/dist/src/web-ui/client-state/preferences.js +8 -2
- package/dist/src/web-ui/client-state/reasoning-preference-shape.d.ts +1 -0
- package/dist/src/web-ui/client-state/reasoning-preference-shape.js +18 -0
- package/dist/src/web-ui/client-state/store.js +3 -2
- package/dist/src/web-ui/client-state/transaction-order.d.ts +2 -0
- package/dist/src/web-ui/client-state/transaction-order.js +18 -0
- package/dist/src/web-ui/local-runtime/api-router.d.ts +2 -0
- package/dist/src/web-ui/local-runtime/api-router.js +18 -0
- package/dist/src/web-ui/local-runtime/automation-routes.js +2 -1
- package/dist/src/web-ui/local-runtime/automation-run-page.d.ts +5 -0
- package/dist/src/web-ui/local-runtime/automation-run-page.js +26 -0
- package/dist/src/web-ui/local-runtime/memory-embedding-connection-input.d.ts +7 -0
- package/dist/src/web-ui/local-runtime/memory-embedding-connection-input.js +22 -0
- package/dist/src/web-ui/local-runtime/memory-embedding-connection-service.d.ts +20 -0
- package/dist/src/web-ui/local-runtime/memory-embedding-connection-service.js +47 -0
- package/dist/src/web-ui/local-runtime/memory-onboarding-routes.js +32 -0
- package/dist/src/web-ui/local-runtime/model-connection-inspection.d.ts +7 -0
- package/dist/src/web-ui/local-runtime/model-connection-inspection.js +48 -0
- package/dist/src/web-ui/local-runtime/model-setup-catalog.d.ts +2 -1
- package/dist/src/web-ui/local-runtime/model-setup-catalog.js +3 -1
- package/dist/src/web-ui/local-runtime/model-setup-identity.js +1 -1
- package/dist/src/web-ui/local-runtime/model-setup-input.d.ts +5 -2
- package/dist/src/web-ui/local-runtime/model-setup-input.js +29 -6
- package/dist/src/web-ui/local-runtime/model-setup-provider.d.ts +1 -1
- package/dist/src/web-ui/local-runtime/model-setup-provider.js +9 -6
- package/dist/src/web-ui/local-runtime/model-setup-retry.js +4 -1
- package/dist/src/web-ui/local-runtime/model-setup-service.d.ts +2 -1
- package/dist/src/web-ui/local-runtime/pending-tool-approvals.js +4 -1
- package/dist/src/web-ui/local-runtime/project-routes.js +10 -2
- package/dist/src/web-ui/local-runtime/request-execution.js +1 -0
- package/dist/src/web-ui/local-runtime/runtime-setup-auth.d.ts +2 -0
- package/dist/src/web-ui/local-runtime/runtime-setup-auth.js +20 -0
- package/dist/src/web-ui/local-runtime/runtime-setup-connection-edit.js +3 -2
- package/dist/src/web-ui/local-runtime/runtime-setup-credential-completion.js +6 -1
- package/dist/src/web-ui/local-runtime/runtime-setup-input.d.ts +3 -2
- package/dist/src/web-ui/local-runtime/runtime-setup-input.js +17 -5
- package/dist/src/web-ui/local-runtime/runtime-setup-provider.d.ts +4 -1
- package/dist/src/web-ui/local-runtime/runtime-setup-provider.js +6 -2
- package/dist/src/web-ui/local-runtime/runtime-setup-routes.d.ts +11 -2
- package/dist/src/web-ui/local-runtime/runtime-setup-routes.js +11 -2
- package/dist/src/web-ui/local-runtime/runtime-setup-scaffold.js +3 -2
- package/dist/src/web-ui/local-runtime/runtime-setup-service.d.ts +25 -4
- package/dist/src/web-ui/local-runtime/runtime-setup-service.js +19 -9
- package/dist/src/web-ui/local-runtime/setup-embedding-input.d.ts +3 -1
- package/dist/src/web-ui/local-runtime/setup-embedding-input.js +38 -6
- package/dist/src/web-ui/local-runtime/setup-embedding-llamacpp.d.ts +11 -0
- package/dist/src/web-ui/local-runtime/setup-embedding-llamacpp.js +53 -0
- package/dist/src/web-ui/local-runtime/setup-embedding-provider.js +23 -9
- package/dist/src/web-ui/local-runtime/setup-embedding-routes.d.ts +7 -2
- package/dist/src/web-ui/local-runtime/setup-embedding-routes.js +5 -3
- package/dist/src/web-ui/local-runtime/setup-embedding-service.d.ts +1 -0
- package/dist/src/web-ui/local-runtime/skill-management-routes.d.ts +18 -0
- package/dist/src/web-ui/local-runtime/skill-management-routes.js +118 -0
- package/docs/configuration.md +11 -1
- package/docs/installation.md +11 -5
- package/docs/llamacpp.md +248 -0
- package/docs/long-term-memory.md +12 -0
- package/docs/running-locally.md +7 -1
- package/docs/runtime-public-contracts.md +37 -0
- package/examples/request-runner.config.example.json +3 -0
- package/package.json +2 -1
- package/plugins/project-orientation/source/index.ts +2 -3
- package/plugins/project-orientation/source/inspection-failure.ts +1 -1
- package/plugins/project-orientation/source/project-target.ts +29 -0
- package/plugins/project-orientation/src/index.cjs +21 -2
- package/plugins/web/skills/web_fetch_skill/SKILL.md +1 -2
- package/plugins/web/skills/web_search_skill/SKILL.md +3 -7
- package/runtime.config.schema.json +140 -0
- package/src/runtime/README.md +145 -4
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { planNewLlamaEmbeddingProvider, commitLlamaEmbeddingProvider, } from "./setup-embedding-llamacpp.js";
|
|
1
2
|
import { buildProviderConfig } from "../../../scripts/runtime-setup-files.js";
|
|
2
3
|
import { createFileLongTermMemoryOnboardingConfigRepository } from "../../runtime/adapters/long-term-memory/onboarding-config-repository.js";
|
|
3
4
|
import { isRecord } from "../../runtime/config/utils.js";
|
|
@@ -57,8 +58,10 @@ function requirePreservedProviderSettings(provider, input) {
|
|
|
57
58
|
if (input.baseUrl && input.baseUrl !== provider.baseUrl) {
|
|
58
59
|
throw new RuntimeSetupError("embedding_provider_conflict", "That provider already uses another address. Choose its saved connection or edit it in Settings.", 409);
|
|
59
60
|
}
|
|
60
|
-
if (input.apiKey &&
|
|
61
|
-
|
|
61
|
+
if (input.apiKey &&
|
|
62
|
+
provider.type !== "openai" &&
|
|
63
|
+
provider.type !== "llamacpp") {
|
|
64
|
+
throw new RuntimeSetupError("invalid_embedding_credential", "This connection does not support an API key.");
|
|
62
65
|
}
|
|
63
66
|
}
|
|
64
67
|
/** Adds only the requested provider; chat profiles and existing provider settings stay intact. */
|
|
@@ -66,14 +69,19 @@ export async function prepareSetupEmbeddingProvider(options, input) {
|
|
|
66
69
|
const repository = createFileLongTermMemoryOnboardingConfigRepository(options);
|
|
67
70
|
const snapshot = await repository.read();
|
|
68
71
|
const providers = readProviderMap(snapshot.config.models);
|
|
69
|
-
const
|
|
72
|
+
const llamaConnection = input.provider === "llamacpp"
|
|
73
|
+
? planNewLlamaEmbeddingProvider(providers, input)
|
|
74
|
+
: undefined;
|
|
75
|
+
const providerId = llamaConnection?.providerId ??
|
|
76
|
+
resolveSetupEmbeddingProviderId(providers, input);
|
|
70
77
|
const existing = providers[providerId];
|
|
71
78
|
if (input.providerId && !isRecord(existing)) {
|
|
72
|
-
throw new RuntimeSetupError("embedding_provider_not_configured", "Choose a configured provider or add an OpenAI or
|
|
79
|
+
throw new RuntimeSetupError("embedding_provider_not_configured", "Choose a configured provider or add an OpenAI, Ollama or llama.cpp connection.", 404);
|
|
73
80
|
}
|
|
74
|
-
const provider =
|
|
75
|
-
|
|
76
|
-
|
|
81
|
+
const provider = llamaConnection?.provider ??
|
|
82
|
+
(isRecord(existing)
|
|
83
|
+
? existing
|
|
84
|
+
: buildProviderConfig(input.provider, input.baseUrl));
|
|
77
85
|
const isolatedCredential = needsIsolatedEmbeddingCredential(existing, input, providerId);
|
|
78
86
|
if (isolatedCredential)
|
|
79
87
|
provider.apiKeyEnv = resolveIsolatedEmbeddingCredentialName(providers, providerId);
|
|
@@ -105,8 +113,14 @@ export async function prepareSetupEmbeddingProvider(options, input) {
|
|
|
105
113
|
preserveExistingCredential: true,
|
|
106
114
|
});
|
|
107
115
|
}
|
|
108
|
-
|
|
109
|
-
|
|
116
|
+
const persistProvider = async () => {
|
|
117
|
+
if (!isRecord(existing))
|
|
118
|
+
await repository.write(candidate, snapshot.config);
|
|
119
|
+
};
|
|
120
|
+
if (provider.type === "llamacpp")
|
|
121
|
+
await commitLlamaEmbeddingProvider({ rootDir: options.rootDir, configPath: snapshot.path }, provider, input, persistProvider);
|
|
122
|
+
else
|
|
123
|
+
await persistProvider();
|
|
110
124
|
return {
|
|
111
125
|
providerId,
|
|
112
126
|
savedProvider: { id: providerId, type: provider.type },
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import type { IncomingMessage, ServerResponse } from "node:http";
|
|
2
|
-
import {
|
|
2
|
+
import type { LongTermMemoryOnboardingResult } from "../../runtime/long-term-memory/onboarding/contracts.js";
|
|
3
|
+
type EmbeddingConnectionService = {
|
|
4
|
+
enable(body: Record<string, unknown>, signal: AbortSignal): Promise<Pick<LongTermMemoryOnboardingResult, "status" | "probe" | "restartRequired">>;
|
|
5
|
+
};
|
|
3
6
|
export declare class SetupEmbeddingRoutes {
|
|
4
7
|
private readonly service;
|
|
5
|
-
|
|
8
|
+
private readonly route;
|
|
9
|
+
constructor(service: EmbeddingConnectionService, route?: string);
|
|
6
10
|
handle(params: {
|
|
7
11
|
method: string;
|
|
8
12
|
route: string;
|
|
@@ -10,3 +14,4 @@ export declare class SetupEmbeddingRoutes {
|
|
|
10
14
|
response: ServerResponse;
|
|
11
15
|
}): Promise<boolean>;
|
|
12
16
|
}
|
|
17
|
+
export {};
|
|
@@ -2,14 +2,16 @@ import { assertConfigMutationRequest, ConfigMutationRequestError, } from "./conf
|
|
|
2
2
|
import { readBody, readJsonBody, sendJson } from "./http.js";
|
|
3
3
|
import { withHttpRequestAbortSignal } from "./request-abort.js";
|
|
4
4
|
import { RuntimeSetupError } from "./runtime-setup-input.js";
|
|
5
|
-
import { SetupEmbeddingFailure
|
|
5
|
+
import { SetupEmbeddingFailure } from "./setup-embedding-service.js";
|
|
6
6
|
export class SetupEmbeddingRoutes {
|
|
7
7
|
service;
|
|
8
|
-
|
|
8
|
+
route;
|
|
9
|
+
constructor(service, route = "runtime/setup/embedding") {
|
|
9
10
|
this.service = service;
|
|
11
|
+
this.route = route;
|
|
10
12
|
}
|
|
11
13
|
async handle(params) {
|
|
12
|
-
if (params.route !==
|
|
14
|
+
if (params.route !== this.route)
|
|
13
15
|
return false;
|
|
14
16
|
params.response.setHeader("cache-control", "no-store");
|
|
15
17
|
try {
|
|
@@ -22,6 +22,7 @@ export declare class SetupEmbeddingService {
|
|
|
22
22
|
providerId?: string;
|
|
23
23
|
model?: string;
|
|
24
24
|
providers: readonly import("../../runtime/index.js").LongTermMemoryOnboardingProvider[];
|
|
25
|
+
embeddingProfiles: readonly import("../../runtime/index.js").SavedMemoryEmbeddingProfile[];
|
|
25
26
|
}>;
|
|
26
27
|
probe: Readonly<{
|
|
27
28
|
modelFingerprint: string;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { IncomingMessage, ServerResponse } from "node:http";
|
|
2
|
+
import { type PersonalSkillManagementService } from "../../runtime/knowledge-skills/personal-contracts.js";
|
|
3
|
+
import type { JsonObject } from "./contracts.js";
|
|
4
|
+
type SkillManagementRequest = Readonly<{
|
|
5
|
+
method: string;
|
|
6
|
+
segments: readonly string[];
|
|
7
|
+
body: JsonObject | null;
|
|
8
|
+
environmentId: string;
|
|
9
|
+
request: IncomingMessage;
|
|
10
|
+
response: ServerResponse;
|
|
11
|
+
}>;
|
|
12
|
+
/** Personal records only; the runtime owner shares the model Store's lock. */
|
|
13
|
+
export declare class PersonalSkillManagementRoutes {
|
|
14
|
+
private readonly resolveService;
|
|
15
|
+
constructor(resolveService: (environmentId: string) => PersonalSkillManagementService | undefined);
|
|
16
|
+
handle(request: SkillManagementRequest): Promise<boolean>;
|
|
17
|
+
}
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { KnowledgeSkillError, PERSONAL_SKILL_LIMITS, } from "../../runtime/knowledge-skills/personal-contracts.js";
|
|
2
|
+
import { acceptConfigMutationRequest } from "./config-mutation-request.js";
|
|
3
|
+
import { sendJson } from "./http.js";
|
|
4
|
+
/** Personal records only; the runtime owner shares the model Store's lock. */
|
|
5
|
+
export class PersonalSkillManagementRoutes {
|
|
6
|
+
resolveService;
|
|
7
|
+
constructor(resolveService) {
|
|
8
|
+
this.resolveService = resolveService;
|
|
9
|
+
}
|
|
10
|
+
async handle(request) {
|
|
11
|
+
const { segments, method, response } = request;
|
|
12
|
+
if (segments[0] !== "runtime" || segments[1] !== "skills")
|
|
13
|
+
return false;
|
|
14
|
+
const isItem = segments.length === 3 && Boolean(segments[2]);
|
|
15
|
+
const isArchiveAction = segments.length === 4 && Boolean(segments[2]) &&
|
|
16
|
+
(segments[3] === "archive" || segments[3] === "restore");
|
|
17
|
+
if (segments.length !== 2 && !isItem && !isArchiveAction)
|
|
18
|
+
return false;
|
|
19
|
+
const allow = isArchiveAction ? "POST" : isItem ? "GET, PATCH" : "GET, POST";
|
|
20
|
+
if (!allow.split(", ").includes(method)) {
|
|
21
|
+
response.setHeader("allow", allow);
|
|
22
|
+
sendJson(response, 405, { ok: false, error: "method_not_allowed" });
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
if (method !== "GET" && !acceptConfigMutationRequest(request.request, response))
|
|
26
|
+
return true;
|
|
27
|
+
try {
|
|
28
|
+
const service = this.resolveService(request.environmentId);
|
|
29
|
+
if (!service)
|
|
30
|
+
throw new KnowledgeSkillError("knowledge_skill_management_unavailable");
|
|
31
|
+
if (segments.length === 2) {
|
|
32
|
+
if (method === "POST") {
|
|
33
|
+
const skill = await service.create(readCreation(request.body));
|
|
34
|
+
sendJson(response, 201, { ok: true, skill });
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
sendJson(response, 200, { ok: true, items: await service.list() });
|
|
38
|
+
}
|
|
39
|
+
return true;
|
|
40
|
+
}
|
|
41
|
+
const skillId = segments[2];
|
|
42
|
+
let skill;
|
|
43
|
+
if (method === "GET") {
|
|
44
|
+
skill = await service.get(skillId);
|
|
45
|
+
if (!skill)
|
|
46
|
+
throw new KnowledgeSkillError("knowledge_skill_not_found");
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
const expectedRevision = readMutation(request.body, method === "PATCH");
|
|
50
|
+
if (method === "PATCH") {
|
|
51
|
+
skill = await service.updateContent(skillId, expectedRevision, request.body.content);
|
|
52
|
+
}
|
|
53
|
+
else if (segments[3] === "archive") {
|
|
54
|
+
skill = await service.archive(skillId, expectedRevision);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
skill = await service.restore(skillId, expectedRevision);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
sendJson(response, 200, { ok: true, skill });
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
sendManagementError(response, error);
|
|
64
|
+
}
|
|
65
|
+
return true;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
function readCreation(body) {
|
|
69
|
+
const allowed = ["name", "description", "content", "environment", "environmentId"];
|
|
70
|
+
if (!body || Object.keys(body).some((key) => !allowed.includes(key)) ||
|
|
71
|
+
typeof body.name !== "string" || typeof body.description !== "string" || typeof body.content !== "string") {
|
|
72
|
+
throw new KnowledgeSkillError("knowledge_skill_input_invalid");
|
|
73
|
+
}
|
|
74
|
+
return { name: body.name, description: body.description, content: body.content };
|
|
75
|
+
}
|
|
76
|
+
function readMutation(body, contentRequired) {
|
|
77
|
+
const allowed = ["expectedRevision", "environment", "environmentId", ...(contentRequired ? ["content"] : [])];
|
|
78
|
+
if (!body || Object.keys(body).some((key) => !allowed.includes(key)) ||
|
|
79
|
+
(contentRequired && typeof body.content !== "string")) {
|
|
80
|
+
throw new KnowledgeSkillError("knowledge_skill_input_invalid");
|
|
81
|
+
}
|
|
82
|
+
const revision = body.expectedRevision;
|
|
83
|
+
if (typeof revision !== "number" || !Number.isSafeInteger(revision) || revision < 1 ||
|
|
84
|
+
revision > PERSONAL_SKILL_LIMITS.revision) {
|
|
85
|
+
throw new KnowledgeSkillError("knowledge_skill_revision_invalid");
|
|
86
|
+
}
|
|
87
|
+
return revision;
|
|
88
|
+
}
|
|
89
|
+
const ERROR_STATUSES = Object.freeze({
|
|
90
|
+
knowledge_skill_not_found: 404,
|
|
91
|
+
knowledge_skill_read_only: 403,
|
|
92
|
+
knowledge_skill_revision_conflict: 409,
|
|
93
|
+
knowledge_skill_revision_limit: 409,
|
|
94
|
+
knowledge_skill_archived: 409,
|
|
95
|
+
knowledge_skill_input_invalid: 400,
|
|
96
|
+
knowledge_skill_id_invalid: 400,
|
|
97
|
+
knowledge_skill_revision_invalid: 400,
|
|
98
|
+
knowledge_skill_content_invalid: 400,
|
|
99
|
+
knowledge_skill_content_too_large: 400,
|
|
100
|
+
knowledge_skill_name_invalid: 400,
|
|
101
|
+
knowledge_skill_description_invalid: 400,
|
|
102
|
+
knowledge_skill_storage_unavailable: 503,
|
|
103
|
+
knowledge_skill_storage_invalid: 503,
|
|
104
|
+
knowledge_skill_storage_too_large: 503,
|
|
105
|
+
knowledge_skill_management_unavailable: 503,
|
|
106
|
+
});
|
|
107
|
+
function sendManagementError(response, error) {
|
|
108
|
+
// RPC reconstructs Error with its code; do not rely on prototype identity.
|
|
109
|
+
const code = error && typeof error === "object" && "code" in error ? error.code : undefined;
|
|
110
|
+
if (typeof code === "string" && Object.hasOwn(ERROR_STATUSES, code)) {
|
|
111
|
+
sendJson(response, ERROR_STATUSES[code], { ok: false, error: code });
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
const unavailable = error instanceof Error && error.message === "local_runtime_service_unavailable";
|
|
115
|
+
sendJson(response, unavailable ? 503 : 500, {
|
|
116
|
+
ok: false, error: unavailable ? "knowledge_skill_management_unavailable" : "knowledge_skill_management_failed",
|
|
117
|
+
});
|
|
118
|
+
}
|
package/docs/configuration.md
CHANGED
|
@@ -83,7 +83,7 @@ Provider configs should reference env var names:
|
|
|
83
83
|
}
|
|
84
84
|
```
|
|
85
85
|
|
|
86
|
-
Ollama and
|
|
86
|
+
Ollama, OpenAI and llama.cpp adapters are included. See [llama.cpp setup and reasoning budgets](llamacpp.md). A host may register another adapter
|
|
87
87
|
through `@abot-ai/runtime/model-gateway`; its config uses that adapter's `type` and
|
|
88
88
|
may place adapter-owned JSON-safe values under `settings`. Merely naming an
|
|
89
89
|
unknown type never selects a fallback provider.
|
|
@@ -610,6 +610,16 @@ The common slots and their first tuning targets are:
|
|
|
610
610
|
| Context compaction | `context.compact` | Structured format and preservation of facts that later steps still require; physical capacity remains profile-owned. |
|
|
611
611
|
| Literal tool payloads | `toolPayload.raw` | Literal-payload instructions and any intentional provider-native output controls. Verify the produced payload or artifact directly, not the model's description of it. |
|
|
612
612
|
|
|
613
|
+
New OpenAI profiles created through CLI setup, Web onboarding, or model
|
|
614
|
+
addition set `timeoutMs` to `300000` (five minutes) in both
|
|
615
|
+
`calibration["context.compact"]` and `calibration["toolPayload.raw"]`. These
|
|
616
|
+
profile overrides take precedence over the shared 180-second compaction and
|
|
617
|
+
90-second literal-payload defaults; other steps retain their own timeouts.
|
|
618
|
+
Explicit template timeouts are preserved, and existing profiles are not
|
|
619
|
+
migrated automatically. To apply these settings to an existing GPT profile,
|
|
620
|
+
add `"timeoutMs": 300000` to each of those calibration objects, preserving
|
|
621
|
+
their other fields. This does not change reasoning effort.
|
|
622
|
+
|
|
613
623
|
`timeoutMs` addresses provider latency only; raising it does not improve model
|
|
614
624
|
reasoning. Top-level `contextWindowTokens` declares the concrete model
|
|
615
625
|
profile's physical capacity. Calibration context fields can tune projection
|
package/docs/installation.md
CHANGED
|
@@ -13,6 +13,7 @@ This guide covers three entry points:
|
|
|
13
13
|
- TypeScript-capable host project if using the library directly
|
|
14
14
|
- Optional: an installed and running Ollama service for Ollama model profiles
|
|
15
15
|
- Optional: OpenAI API key for OpenAI model profiles
|
|
16
|
+
- Optional: a running llama.cpp server for [llama.cpp model profiles](llamacpp.md)
|
|
16
17
|
|
|
17
18
|
## Prepare Ollama (If Selected)
|
|
18
19
|
|
|
@@ -64,12 +65,15 @@ npx abot start
|
|
|
64
65
|
|
|
65
66
|
Open [http://127.0.0.1:5177](http://127.0.0.1:5177). The command binds to
|
|
66
67
|
loopback by default. On a fresh installation, the setup wizard lets you select
|
|
67
|
-
OpenAI or
|
|
68
|
+
OpenAI, Ollama or llama.cpp, enter a concrete model ID, and save the connection. OpenAI
|
|
68
69
|
accepts the API key directly in the form and stores it privately in the
|
|
69
70
|
consumer's `.env`. The key is not returned to the browser or stored in runtime
|
|
70
71
|
JSON. Existing OpenAI configurations missing a key open the same completion flow.
|
|
71
72
|
|
|
72
|
-
For Ollama, the server must already be running with the selected model available.
|
|
73
|
+
For Ollama and llama.cpp, the server must already be running with the selected model available.
|
|
74
|
+
Every provider's model registration includes an explicit thinking-support checkbox.
|
|
75
|
+
llama.cpp additionally offers per-segment token budgets and a metadata-only
|
|
76
|
+
connection check; see [llama.cpp setup](llamacpp.md).
|
|
73
77
|
Its address is resolved from the ABot host, even when you use the UI from a phone.
|
|
74
78
|
Continue through the optional **Embedding** step to configure semantic memory,
|
|
75
79
|
or choose to set it up later. **Plugins** starts with all tools selected for a
|
|
@@ -93,7 +97,7 @@ managed by a separate process remains under that process's lifecycle; the UI
|
|
|
93
97
|
reports when saved changes require that owner to restart.
|
|
94
98
|
|
|
95
99
|
In the Web UI, open **Models → Add model** to add another model.
|
|
96
|
-
Choose a saved provider connection or create a new OpenAI/Ollama connection.
|
|
100
|
+
Choose a saved provider connection or create a new OpenAI/Ollama/llama.cpp connection.
|
|
97
101
|
Each provider card also has an **Add model** shortcut. Review the model, then
|
|
98
102
|
choose **Save and apply**. Saved API keys are reused; existing model profiles and
|
|
99
103
|
the default model are preserved. The added model is selected in the Models list.
|
|
@@ -133,8 +137,10 @@ npx abot memory enable --provider <provider-id> --model <embedding-model-id>
|
|
|
133
137
|
|
|
134
138
|
ABot does not install or choose the embedding model. The enable command performs
|
|
135
139
|
a real probe, writes config only after it succeeds, and reports that the Runtime
|
|
136
|
-
must be restarted. OpenAI users enter the embedding model id
|
|
137
|
-
users can discover model ids installed at the configured Ollama
|
|
140
|
+
must be restarted. OpenAI and llama.cpp users enter the embedding model id
|
|
141
|
+
manually; Ollama users can discover model ids installed at the configured Ollama
|
|
142
|
+
endpoint. For llama.cpp, use an embedding-enabled server and, if needed, a
|
|
143
|
+
[separate connection from chat](llamacpp.md#embeddings-and-semantic-memory).
|
|
138
144
|
|
|
139
145
|
See [Passive Long-Term Memory](long-term-memory.md) before enabling persistence.
|
|
140
146
|
|
package/docs/llamacpp.md
ADDED
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
# llama.cpp model connection
|
|
2
|
+
|
|
3
|
+
ABot includes a **llamacpp** provider alongside Ollama and OpenAI. It connects to
|
|
4
|
+
an independently installed and running llama-server; it does not install,
|
|
5
|
+
start, stop, update or download that server, its models or GPU drivers.
|
|
6
|
+
|
|
7
|
+
The implementation targets the server protocol in
|
|
8
|
+
[llama.cpp v0.7.0, revision 620d2225](https://github.com/ggml-org/llama.cpp/tree/620d2225cc436ab0b001e3200e590e3b286ef9ab).
|
|
9
|
+
Protocol fixtures exercise that interface. This is a source compatibility
|
|
10
|
+
reference, not a claim that a real server or every model/template was tested.
|
|
11
|
+
Earlier builds may not support the reasoning budget fields.
|
|
12
|
+
|
|
13
|
+
## Input token counting and compaction
|
|
14
|
+
|
|
15
|
+
ABot uses `POST /v1/chat/completions/input_tokens` before context admission.
|
|
16
|
+
The endpoint is available in the pinned protocol revision above and performs
|
|
17
|
+
template rendering and tokenization without generating a response. Counting
|
|
18
|
+
uses the same model, projected messages, thinking controls and structured format
|
|
19
|
+
as generation, including the server's chat template and special tokens.
|
|
20
|
+
Structured-output grammar is not charged as additional prompt prose.
|
|
21
|
+
|
|
22
|
+
Each llama.cpp context assessment requests a fresh count instead of reusing the
|
|
23
|
+
client's token-count cache. The existing context budget and compactor consume
|
|
24
|
+
that measured count, and measure replacement candidates again. The final gateway
|
|
25
|
+
chat guard reuses a matching recent measurement; its existing estimate behavior
|
|
26
|
+
for a missing or expired measurement remains unchanged. Direct public `/raw`
|
|
27
|
+
calls retain their existing estimate guard. OpenAI caching and Ollama estimation
|
|
28
|
+
retain their existing behavior.
|
|
29
|
+
|
|
30
|
+
An unavailable counting endpoint, invalid response or failed authentication
|
|
31
|
+
fails the count explicitly; ABot does not silently substitute an estimate for
|
|
32
|
+
that failed call. Cancellation aborts counting. The count measures input size,
|
|
33
|
+
not server capacity: `contextWindowTokens` must still match the server's effective
|
|
34
|
+
context allocation.
|
|
35
|
+
|
|
36
|
+
## Prepare the server
|
|
37
|
+
|
|
38
|
+
Use the official [llama.cpp server guide](https://github.com/ggml-org/llama.cpp/blob/620d2225cc436ab0b001e3200e590e3b286ef9ab/tools/server/README.md)
|
|
39
|
+
to install a build suitable for your OS/GPU and start your chosen model.
|
|
40
|
+
Set its model alias, effective context capacity, GPU allocation and listening
|
|
41
|
+
address explicitly. The example ABot origin is http://127.0.0.1:8080;
|
|
42
|
+
your server must actually listen there. Use the exact model ID returned by
|
|
43
|
+
the server, not an Ollama model-library name unless it is also your server alias.
|
|
44
|
+
|
|
45
|
+
The URL is resolved from the ABot Runtime host. A Windows browser does not
|
|
46
|
+
make a WSL or Docker Runtime use Windows loopback. Use an address reachable
|
|
47
|
+
from the Runtime for WSL-to-Windows, container-to-host or remote connections.
|
|
48
|
+
The setup form accepts an HTTP/HTTPS origin without credentials, query or path.
|
|
49
|
+
|
|
50
|
+
## Register the connection
|
|
51
|
+
|
|
52
|
+
On a new installation choose **llama.cpp** in setup. For an existing installation,
|
|
53
|
+
open **Models → Add model** and choose a new llama.cpp connection or reuse a
|
|
54
|
+
saved connection.
|
|
55
|
+
|
|
56
|
+
Enter the model ID, physical context capacity and server origin. The context
|
|
57
|
+
value must match the effective per-request capacity configured by the server;
|
|
58
|
+
it is not an instruction to resize the server. The API key is optional for a
|
|
59
|
+
server without authentication. If supplied, ABot writes a private isolated
|
|
60
|
+
credential binding in .env, not a key inside the model JSON or browser state.
|
|
61
|
+
An existing saved connection retains its authentication settings.
|
|
62
|
+
|
|
63
|
+
**Check connection** reads GET /health and GET /v1/models only.
|
|
64
|
+
It never generates a response or saves settings. Server readiness does not prove
|
|
65
|
+
thinking support, tool support, image support or context capacity.
|
|
66
|
+
|
|
67
|
+
The **This model supports thinking** checkbox is available for all providers.
|
|
68
|
+
It declares a model capability; enable it only when the selected model supports
|
|
69
|
+
reasoning. Newly created llama.cpp profiles start with text input only and
|
|
70
|
+
thinking support disabled. No capability is inferred from the model name.
|
|
71
|
+
|
|
72
|
+
## Thinking budget
|
|
73
|
+
|
|
74
|
+
For a llama.cpp model with thinking support enabled, setup and the model editor
|
|
75
|
+
offer a default budget. Invocation calibration can override that model default.
|
|
76
|
+
|
|
77
|
+
- **Inherit (no override):** omits the budget at that configuration layer.
|
|
78
|
+
- **Server default:** explicitly asks llama-server to use its configured default;
|
|
79
|
+
this may itself be a finite budget.
|
|
80
|
+
- **Token limit:** a whole number from 0 through 2147483647 for each
|
|
81
|
+
reasoning segment. Zero disables thinking; a positive value limits its tokens.
|
|
82
|
+
|
|
83
|
+
A budget is not a wall-clock timeout or a total user-request allowance.
|
|
84
|
+
One user request can invoke the model several times; each invocation may contain
|
|
85
|
+
more than one reasoning segment. The server can need closing tokens after the
|
|
86
|
+
limit and the final answer still needs output/context capacity.
|
|
87
|
+
The model's chat template must support thinking and the server's closing-tag
|
|
88
|
+
mechanism. A successful health check cannot validate that behavior.
|
|
89
|
+
|
|
90
|
+
The request-level **Off** control overrides a saved budget. Numeric limits are
|
|
91
|
+
only offered for llama.cpp; Ollama and OpenAI retain their existing effort
|
|
92
|
+
controls. A finite budget does not change ABot's role policy, approval rules
|
|
93
|
+
or tool permissions.
|
|
94
|
+
|
|
95
|
+
### Shared modes and optional overrides
|
|
96
|
+
|
|
97
|
+
Chat, SPARK, schedules and automation agents expose the shared **Low / Reasoning /
|
|
98
|
+
Deep** choices. Their default wire values remain `none / medium / high`, subject
|
|
99
|
+
to existing profile and invocation calibration. A model's template determines
|
|
100
|
+
whether positive effort levels differ. Chat exposes separate menus for reasoning
|
|
101
|
+
depth and thinking budget; the other forms expose separate controls. A manual
|
|
102
|
+
token limit or server default preserves the effective positive effort, and
|
|
103
|
+
choosing a mode retains that budget. For example, Deep and a 512-token limit can
|
|
104
|
+
be selected together. Selecting a mode clears an explicit manual Thinking Off
|
|
105
|
+
setting so the newly chosen mode can take effect.
|
|
106
|
+
|
|
107
|
+
Selecting a positive budget or server default when the ordinary effort is
|
|
108
|
+
`none` enables thinking with `medium`; a zero budget disables thinking without
|
|
109
|
+
rewriting the saved effort. An explicit invocation override still wins. Choosing
|
|
110
|
+
Profile default in the budget menu removes only the manual budget, preserving
|
|
111
|
+
the selected mode.
|
|
112
|
+
|
|
113
|
+
The model editor also offers **Mode token overrides**. The optional
|
|
114
|
+
`generation.reasoningBudgetByMode` map accepts `fast`, `reasoning` and `deep`,
|
|
115
|
+
each with a non-negative integer limit. Zero disables thinking for that mode.
|
|
116
|
+
No mode limits are supplied automatically.
|
|
117
|
+
For example, `"reasoningBudgetByMode": { "fast": 32, "deep": 512 }` enables
|
|
118
|
+
bounded thinking for Low and Deep while Reasoning keeps the ordinary settings.
|
|
119
|
+
These numbers are illustrative, not application defaults.
|
|
120
|
+
|
|
121
|
+
A matching mode limit replaces the ordinary `reasoningBudget`. A positive limit
|
|
122
|
+
enables thinking even when Low or the profile effort would otherwise disable it;
|
|
123
|
+
an already positive configured effort is preserved. A zero limit disables
|
|
124
|
+
thinking. Explicit invocation effort and request-level Off still take precedence. Per-mode maps apply only to main model
|
|
125
|
+
steps and direct gateway calls; utility steps such as `context.compact` retain
|
|
126
|
+
their own calibration and ignore conversation mode budgets.
|
|
127
|
+
|
|
128
|
+
Configuration overlays replace the entire map. Omitting the field inherits the
|
|
129
|
+
parent map, while `{}` explicitly clears inherited mode limits. Blank entries in
|
|
130
|
+
a custom map use the ordinary effort and budget settings; they do not inherit individual
|
|
131
|
+
entries from the replaced map.
|
|
132
|
+
|
|
133
|
+
~~~json
|
|
134
|
+
{
|
|
135
|
+
"provider": "local-llama",
|
|
136
|
+
"model": "gemma",
|
|
137
|
+
"supportsThinking": true,
|
|
138
|
+
"contextWindowTokens": 32768,
|
|
139
|
+
"capabilities": { "inputModalities": ["text"] },
|
|
140
|
+
"generation": {
|
|
141
|
+
"reasoningBudget": { "mode": "tokens", "tokens": 512 }
|
|
142
|
+
},
|
|
143
|
+
"calibration": {
|
|
144
|
+
"context.compact": {
|
|
145
|
+
"generation": { "reasoningBudget": { "mode": "server-default" } }
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
~~~
|
|
150
|
+
|
|
151
|
+
Provider connection in runtime.config.json:
|
|
152
|
+
|
|
153
|
+
~~~json
|
|
154
|
+
{
|
|
155
|
+
"models": {
|
|
156
|
+
"providers": {
|
|
157
|
+
"local-llama": {
|
|
158
|
+
"type": "llamacpp",
|
|
159
|
+
"baseUrl": "http://127.0.0.1:8080"
|
|
160
|
+
}
|
|
161
|
+
},
|
|
162
|
+
"profiles": {
|
|
163
|
+
"gemma": { "configRef": "./models/gemma.config.json" }
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
~~~
|
|
168
|
+
|
|
169
|
+
For authenticated servers add an apiKeyEnv name and supply its key privately.
|
|
170
|
+
The wizard creates an isolated name automatically.
|
|
171
|
+
|
|
172
|
+
## Command-line setup
|
|
173
|
+
|
|
174
|
+
~~~bash
|
|
175
|
+
npx abot init --provider llamacpp --model gemma --base-url http://127.0.0.1:8080 --context-window 32768 --supports-thinking true --reasoning-budget 512
|
|
176
|
+
npx abot add-model --profile gemma-llama --provider llamacpp --model gemma --base-url http://127.0.0.1:8080 --supports-thinking true --reasoning-budget server-default
|
|
177
|
+
~~~
|
|
178
|
+
|
|
179
|
+
For an authenticated connection add --api-key-env MY_LLAMA_KEY and set that
|
|
180
|
+
environment variable privately. Do not put an API secret in command arguments.
|
|
181
|
+
--supports-thinking true|false is also available for Ollama/OpenAI registration;
|
|
182
|
+
--reasoning-budget requires llama.cpp and explicit thinking support.
|
|
183
|
+
|
|
184
|
+
The add command preserves existing profiles and the selected default unless
|
|
185
|
+
--default is supplied. A reused provider ID must keep its existing endpoint.
|
|
186
|
+
Restart the owning gateway/ABot process after CLI changes. Web UI **Save and
|
|
187
|
+
apply** reloads an owned gateway or reports when an external owner must restart.
|
|
188
|
+
|
|
189
|
+
## Embeddings and semantic memory
|
|
190
|
+
|
|
191
|
+
The llama.cpp adapter supports text embeddings through `/v1/embeddings`.
|
|
192
|
+
Use a dedicated embedding model and run its llama-server with `--embedding`
|
|
193
|
+
and a pooling mode other than `none`, as required by the official server API.
|
|
194
|
+
A chat model with thinking support does not automatically support embeddings.
|
|
195
|
+
|
|
196
|
+
In the setup wizard's memory step, choose an existing llama.cpp connection or
|
|
197
|
+
create another one for the embedding server. On an existing installation, open
|
|
198
|
+
**Memory → Setup → Add connection** to use the same form. A separate embedding server uses
|
|
199
|
+
its own address and optional API key; it does not replace the chat connection.
|
|
200
|
+
For example, chat can use port 8080 while embeddings use port 8081. Enter the
|
|
201
|
+
embedding model's exact server ID manually. Model listing and a health check do
|
|
202
|
+
not establish embedding support. **Test and save** sends an embedding probe and
|
|
203
|
+
enables memory only when that probe succeeds.
|
|
204
|
+
|
|
205
|
+
Existing installations can select a configured llama.cpp connection in memory
|
|
206
|
+
settings. Embeddings use the existing `models.embeddingProfiles` configuration,
|
|
207
|
+
independently of chat profiles and reasoning budgets. A manual configuration
|
|
208
|
+
fragment for a separate embedding connection is:
|
|
209
|
+
|
|
210
|
+
~~~json
|
|
211
|
+
{
|
|
212
|
+
"models": {
|
|
213
|
+
"providers": {
|
|
214
|
+
"llama-embeddings": {
|
|
215
|
+
"type": "llamacpp",
|
|
216
|
+
"baseUrl": "http://127.0.0.1:8081"
|
|
217
|
+
}
|
|
218
|
+
},
|
|
219
|
+
"embeddingProfiles": {
|
|
220
|
+
"memory-embedding": {
|
|
221
|
+
"provider": "llama-embeddings",
|
|
222
|
+
"model": "your-embedding-model-alias"
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
},
|
|
226
|
+
"longTermMemory": {
|
|
227
|
+
"enabled": true,
|
|
228
|
+
"embeddingProfileId": "memory-embedding"
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
~~~
|
|
232
|
+
|
|
233
|
+
The adapter validates response indices, vector count, dimensions and finite
|
|
234
|
+
values, and uses the existing cancellation and model-fingerprint contracts.
|
|
235
|
+
Semantic memory can also continue using a separate Ollama/OpenAI connection.
|
|
236
|
+
|
|
237
|
+
## Boundaries and validation
|
|
238
|
+
|
|
239
|
+
Image input is not advertised. Embedding support does not change memory admission,
|
|
240
|
+
retention, retrieval or approval policy. No embedding model is installed or
|
|
241
|
+
selected automatically.
|
|
242
|
+
|
|
243
|
+
Validate real model behavior separately: ordinary text, structured decisions,
|
|
244
|
+
tool/result continuation, generated file contents, cancellation and stream
|
|
245
|
+
completion. Compare timing and output quality with thinking off, a finite budget
|
|
246
|
+
and server default under the same model/context/server configuration. Provider
|
|
247
|
+
traces record resolved controls and native usage when supplied; ABot does not
|
|
248
|
+
invent a budget-exhaustion event or a reasoning-token count.
|
package/docs/long-term-memory.md
CHANGED
|
@@ -194,6 +194,15 @@ It can list configured providers, discover models when the provider supports
|
|
|
194
194
|
discovery, probe and enable a selected model, or disable the feature. A provider
|
|
195
195
|
without discovery support accepts a model id entered by the user.
|
|
196
196
|
|
|
197
|
+
Choose **Add connection** to configure an embedding server directly from this
|
|
198
|
+
screen. The shared setup form supports OpenAI, Ollama and llama.cpp; llama.cpp
|
|
199
|
+
can have a separate connection even when a chat connection already exists.
|
|
200
|
+
Enter its server URL, model ID and optional key, then choose **Test and save**.
|
|
201
|
+
The selected memory profile, lifecycle-event setting and plugin policy are
|
|
202
|
+
preserved. If the probe fails after the connection is saved, it remains available
|
|
203
|
+
for retry and the previous memory binding stays in place. After a successful
|
|
204
|
+
save, choose **Apply & restart** or close the dialog and apply later.
|
|
205
|
+
|
|
197
206
|
## Configuration Contract
|
|
198
207
|
|
|
199
208
|
The onboarding flow writes a dedicated embedding profile and binds the feature
|
|
@@ -233,6 +242,9 @@ or memory lifecycle event is added to the response path.
|
|
|
233
242
|
model ids through `/api/tags`.
|
|
234
243
|
- OpenAI uses `/embeddings`. Model discovery is not exposed by that provider,
|
|
235
244
|
so the consumer supplies the embedding model id.
|
|
245
|
+
- llama.cpp uses `/v1/embeddings` with a manually supplied embedding model id.
|
|
246
|
+
Use an embedding-enabled server; setup can register a separate connection
|
|
247
|
+
without changing the chat server. See [llama.cpp setup](llamacpp.md#embeddings-and-semantic-memory).
|
|
236
248
|
- A custom model-gateway adapter may implement `embed` and optional
|
|
237
249
|
`listEmbeddingModels` without changing Runtime memory policy.
|
|
238
250
|
|
package/docs/running-locally.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
`abot` is a runtime library plus local service entrypoints. A complete
|
|
4
4
|
source-checkout setup usually has:
|
|
5
5
|
|
|
6
|
-
- a model provider, such as Ollama or
|
|
6
|
+
- a model provider, such as Ollama, OpenAI or llama.cpp
|
|
7
7
|
- the model gateway process
|
|
8
8
|
- the runtime bridge client process
|
|
9
9
|
- optionally the local web UI proxy
|
|
@@ -79,6 +79,12 @@ hosts may use a different address. Run the `/api/tags` check against the chosen
|
|
|
79
79
|
URL from the runtime environment. You can also edit
|
|
80
80
|
`models.providers.ollama.baseUrl` in `local/runtime.config.json` later.
|
|
81
81
|
|
|
82
|
+
### llama.cpp
|
|
83
|
+
|
|
84
|
+
See [llama.cpp setup](llamacpp.md) for a separately managed server, reachable origin,
|
|
85
|
+
optional authentication and thinking-budget configuration. Model server lifecycle
|
|
86
|
+
is independent of ABot and its internal model gateway.
|
|
87
|
+
|
|
82
88
|
### OpenAI
|
|
83
89
|
|
|
84
90
|
Set the API key in `.env`:
|