@abot-ai/runtime 1.9.0 → 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 +19 -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/contracts.d.ts +3 -0
- package/dist/src/model-gateway/client/input-token-count.js +36 -16
- 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/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-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 +3 -0
- package/dist/src/runtime/capabilities/automation-builder/payload-schema.js +7 -5
- 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/tool-contract.js +3 -2
- package/dist/src/runtime/capabilities/automations/tool-module.js +16 -7
- 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 +5 -2
- package/dist/src/runtime/capabilities/scheduling/update-operations.js +2 -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/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/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 +25 -316
- 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/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 +3 -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/replacement-budget.js +3 -1
- package/dist/src/runtime/context/semantic-compaction/run.js +6 -12
- package/dist/src/runtime/knowledge-skills/builtins/computer-use.js +1 -1
- package/dist/src/runtime/knowledge-skills/builtins/technical-work.js +20 -2
- 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.js +2 -0
- package/dist/src/runtime/local-application.d.ts +5 -0
- package/dist/src/runtime/local-host/app-service-dispatch.d.ts +1 -1
- package/dist/src/runtime/local-host/app-service-dispatch.js +2 -0
- package/dist/src/runtime/local-host/client-services.d.ts +5 -0
- package/dist/src/runtime/local-host/saved-approvals.js +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/input-token-count.js +1 -0
- package/dist/src/runtime/model/invoke-step.js +12 -0
- 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/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 +1 -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/contracts.d.ts +5 -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.js +1 -0
- package/dist/src/runtime/request/execution-scope-surfaces.d.ts +2 -0
- package/dist/src/runtime/request/execution-scope-surfaces.js +3 -0
- package/dist/src/runtime/request/execution-scope.d.ts +2 -0
- package/dist/src/runtime/request/execution-scope.js +2 -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/prepared-execution.d.ts +1 -0
- package/dist/src/runtime/request/prepared-execution.js +3 -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/root-reference-action.js +3 -3
- 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.js +13 -5
- 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/worker-capability-composition.js +2 -0
- package/dist/src/runtime/scheduler/contracts.d.ts +7 -1
- package/dist/src/runtime/scheduler/job-management.js +7 -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/projection.js +2 -0
- 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-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.js +22 -6
- package/dist/src/runtime/steps/execution-agent/controls-compacted-evidence.js +2 -0
- 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 +10 -36
- 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 +2 -0
- 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/run.js +7 -1
- package/dist/src/runtime/steps/skill-read-decision.d.ts +1 -0
- package/dist/src/runtime/steps/skill-read-decision.js +9 -4
- package/dist/src/runtime/steps/supervisor-decision/artifact-paths.d.ts +6 -1
- package/dist/src/runtime/steps/supervisor-decision/artifact-paths.js +15 -0
- package/dist/src/runtime/steps/supervisor-decision/contracts.d.ts +1 -1
- package/dist/src/runtime/steps/supervisor-decision/contracts.js +2 -0
- package/dist/src/runtime/steps/supervisor-decision/decision-phases.d.ts +3 -0
- package/dist/src/runtime/steps/supervisor-decision/decision-phases.js +22 -3
- 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/input.d.ts +1 -0
- package/dist/src/runtime/steps/supervisor-decision/preparation-input.d.ts +3 -5
- package/dist/src/runtime/steps/supervisor-decision/preparation-input.js +5 -21
- package/dist/src/runtime/steps/supervisor-decision/preparation.d.ts +4 -1
- package/dist/src/runtime/steps/supervisor-decision/preparation.js +58 -6
- 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.js +3 -16
- package/dist/src/runtime/steps/supervisor-decision/response-recommendation.js +2 -2
- 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.js +50 -7
- 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 +3 -1
- package/dist/src/runtime/steps/supervisor-decision/skill-selection-input.js +20 -22
- package/dist/src/runtime/steps/supervisor-decision/skill-selection.d.ts +3 -2
- package/dist/src/runtime/steps/supervisor-decision/skill-selection.js +62 -15
- package/dist/src/runtime/steps/supervisor-response/prompt.js +18 -4
- 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 +9 -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 +8 -3
- 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/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 +31 -46
- 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 +14 -11
- 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/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 +7 -3
- 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 +30 -38
- 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/automations-controller.js +9 -1
- 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 +9 -7
- 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/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 +16 -3
- 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 +33 -16
- 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/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/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 +1 -0
- 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 +1 -1
- 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.js +6 -4
- 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/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 +2 -0
- package/dist/src/web-ui/app/services/session-sidebar-preferences.js +33 -13
- package/dist/src/web-ui/app/skills-feature.js +2 -3
- 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/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/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.css +8 -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/local-runtime/api-router.d.ts +1 -0
- package/dist/src/web-ui/local-runtime/api-router.js +11 -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/docs/configuration.md +10 -8
- 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/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/runtime.config.schema.json +140 -0
- package/src/runtime/README.md +50 -4
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`:
|
package/package.json
CHANGED
|
@@ -97,6 +97,7 @@
|
|
|
97
97
|
"docs/bridge-compatibility.md",
|
|
98
98
|
"docs/configuration.md",
|
|
99
99
|
"docs/installation.md",
|
|
100
|
+
"docs/llamacpp.md",
|
|
100
101
|
"docs/windows-companion-store.md",
|
|
101
102
|
"docs/known-limitations.md",
|
|
102
103
|
"docs/long-term-memory.md",
|
|
@@ -183,5 +184,5 @@
|
|
|
183
184
|
},
|
|
184
185
|
"type": "module",
|
|
185
186
|
"types": "./dist/src/runtime/index.d.ts",
|
|
186
|
-
"version": "
|
|
187
|
+
"version": "2.0.0"
|
|
187
188
|
}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { stat } from "node:fs/promises";
|
|
2
|
-
|
|
3
1
|
import {
|
|
4
2
|
boundText,
|
|
5
3
|
defineRuntimePlugin,
|
|
@@ -16,6 +14,7 @@ import {
|
|
|
16
14
|
} from "./inspection-failure.js";
|
|
17
15
|
import { readProjectManifests } from "./manifest-summary.js";
|
|
18
16
|
import { collectProjectTree } from "./tree.js";
|
|
17
|
+
import { readProjectTargetInfo } from "./project-target.js";
|
|
19
18
|
|
|
20
19
|
const DEFAULT_DEPTH = 3;
|
|
21
20
|
const DEFAULT_MAX_ENTRIES = 200;
|
|
@@ -54,7 +53,7 @@ export default defineRuntimePlugin((context) => {
|
|
|
54
53
|
defaultPath: ".",
|
|
55
54
|
allowedLocations: ["agent_work", "workspace"],
|
|
56
55
|
});
|
|
57
|
-
const info = await
|
|
56
|
+
const info = await readProjectTargetInfo(target.absolutePath, signal);
|
|
58
57
|
if (!info.isDirectory()) {
|
|
59
58
|
return failureResult({
|
|
60
59
|
errorCode: "project_target_not_directory",
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { stat } from "node:fs/promises";
|
|
2
|
+
|
|
3
|
+
import {
|
|
4
|
+
ProjectInspectionError,
|
|
5
|
+
throwIfProjectInspectionCancelled,
|
|
6
|
+
} from "./inspection-failure.js";
|
|
7
|
+
|
|
8
|
+
function isMissingProjectTarget(error: unknown): boolean {
|
|
9
|
+
return error instanceof Error && "code" in error && error.code === "ENOENT";
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/** Classify only the requested target lookup, never a disappearing child. */
|
|
13
|
+
export async function readProjectTargetInfo(
|
|
14
|
+
absolutePath: string,
|
|
15
|
+
signal?: AbortSignal,
|
|
16
|
+
) {
|
|
17
|
+
try {
|
|
18
|
+
return await stat(absolutePath);
|
|
19
|
+
} catch (error) {
|
|
20
|
+
throwIfProjectInspectionCancelled(signal);
|
|
21
|
+
if (isMissingProjectTarget(error)) {
|
|
22
|
+
throw new ProjectInspectionError(
|
|
23
|
+
"project_target_not_found",
|
|
24
|
+
"The requested project directory does not exist.",
|
|
25
|
+
);
|
|
26
|
+
}
|
|
27
|
+
throw error;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -584,7 +584,6 @@ __export(index_exports, {
|
|
|
584
584
|
default: () => index_default
|
|
585
585
|
});
|
|
586
586
|
module.exports = __toCommonJS(index_exports);
|
|
587
|
-
var import_promises5 = require("node:fs/promises");
|
|
588
587
|
|
|
589
588
|
// src/plugin-sdk/bounds.ts
|
|
590
589
|
function boundText(value, options) {
|
|
@@ -1155,6 +1154,26 @@ async function collectProjectTree(context, root, depth, maxEntries, signal) {
|
|
|
1155
1154
|
});
|
|
1156
1155
|
}
|
|
1157
1156
|
|
|
1157
|
+
// plugins/project-orientation/source/project-target.ts
|
|
1158
|
+
var import_promises5 = require("node:fs/promises");
|
|
1159
|
+
function isMissingProjectTarget(error) {
|
|
1160
|
+
return error instanceof Error && "code" in error && error.code === "ENOENT";
|
|
1161
|
+
}
|
|
1162
|
+
async function readProjectTargetInfo(absolutePath, signal) {
|
|
1163
|
+
try {
|
|
1164
|
+
return await (0, import_promises5.stat)(absolutePath);
|
|
1165
|
+
} catch (error) {
|
|
1166
|
+
throwIfProjectInspectionCancelled(signal);
|
|
1167
|
+
if (isMissingProjectTarget(error)) {
|
|
1168
|
+
throw new ProjectInspectionError(
|
|
1169
|
+
"project_target_not_found",
|
|
1170
|
+
"The requested project directory does not exist."
|
|
1171
|
+
);
|
|
1172
|
+
}
|
|
1173
|
+
throw error;
|
|
1174
|
+
}
|
|
1175
|
+
}
|
|
1176
|
+
|
|
1158
1177
|
// plugins/project-orientation/source/index.ts
|
|
1159
1178
|
var DEFAULT_DEPTH = 3;
|
|
1160
1179
|
var DEFAULT_MAX_ENTRIES = 200;
|
|
@@ -1189,7 +1208,7 @@ var index_default = defineRuntimePlugin((context) => {
|
|
|
1189
1208
|
defaultPath: ".",
|
|
1190
1209
|
allowedLocations: ["agent_work", "workspace"]
|
|
1191
1210
|
});
|
|
1192
|
-
const info = await (
|
|
1211
|
+
const info = await readProjectTargetInfo(target.absolutePath, signal);
|
|
1193
1212
|
if (!info.isDirectory()) {
|
|
1194
1213
|
return failureResult({
|
|
1195
1214
|
errorCode: "project_target_not_directory",
|
|
@@ -463,6 +463,52 @@
|
|
|
463
463
|
"type": "number",
|
|
464
464
|
"description": "Nucleus sampling value forwarded to the model provider."
|
|
465
465
|
},
|
|
466
|
+
"reasoningBudget": {
|
|
467
|
+
"description": "Reasoning-only budget for a declared budget-capable model. Zero disables thinking. Omit to inherit.",
|
|
468
|
+
"oneOf": [
|
|
469
|
+
{
|
|
470
|
+
"type": "object",
|
|
471
|
+
"additionalProperties": false,
|
|
472
|
+
"required": ["mode", "tokens"],
|
|
473
|
+
"properties": {
|
|
474
|
+
"mode": { "const": "tokens" },
|
|
475
|
+
"tokens": {
|
|
476
|
+
"type": "integer",
|
|
477
|
+
"minimum": 0,
|
|
478
|
+
"maximum": 2147483647
|
|
479
|
+
}
|
|
480
|
+
}
|
|
481
|
+
},
|
|
482
|
+
{
|
|
483
|
+
"type": "object",
|
|
484
|
+
"additionalProperties": false,
|
|
485
|
+
"required": ["mode"],
|
|
486
|
+
"properties": { "mode": { "const": "server-default" } }
|
|
487
|
+
}
|
|
488
|
+
]
|
|
489
|
+
},
|
|
490
|
+
"reasoningBudgetByMode": {
|
|
491
|
+
"type": "object",
|
|
492
|
+
"description": "Optional llama.cpp token budgets for main-step Low/Reasoning/Deep presets. Omit to inherit; {} clears the inherited map. A provided map replaces the whole parent map. Zero disables thinking; positive mode budgets enable it.",
|
|
493
|
+
"additionalProperties": false,
|
|
494
|
+
"properties": {
|
|
495
|
+
"fast": {
|
|
496
|
+
"type": "integer",
|
|
497
|
+
"minimum": 0,
|
|
498
|
+
"maximum": 2147483647
|
|
499
|
+
},
|
|
500
|
+
"reasoning": {
|
|
501
|
+
"type": "integer",
|
|
502
|
+
"minimum": 0,
|
|
503
|
+
"maximum": 2147483647
|
|
504
|
+
},
|
|
505
|
+
"deep": {
|
|
506
|
+
"type": "integer",
|
|
507
|
+
"minimum": 0,
|
|
508
|
+
"maximum": 2147483647
|
|
509
|
+
}
|
|
510
|
+
}
|
|
511
|
+
},
|
|
466
512
|
"reasoningEffort": {
|
|
467
513
|
"type": "string",
|
|
468
514
|
"enum": [
|
|
@@ -575,6 +621,54 @@
|
|
|
575
621
|
"type": "number",
|
|
576
622
|
"description": "Nucleus sampling value forwarded to the model provider."
|
|
577
623
|
},
|
|
624
|
+
"reasoningBudget": {
|
|
625
|
+
"description": "Reasoning-only budget for a declared budget-capable model. Zero disables thinking. Omit to inherit.",
|
|
626
|
+
"oneOf": [
|
|
627
|
+
{
|
|
628
|
+
"type": "object",
|
|
629
|
+
"additionalProperties": false,
|
|
630
|
+
"required": ["mode", "tokens"],
|
|
631
|
+
"properties": {
|
|
632
|
+
"mode": { "const": "tokens" },
|
|
633
|
+
"tokens": {
|
|
634
|
+
"type": "integer",
|
|
635
|
+
"minimum": 0,
|
|
636
|
+
"maximum": 2147483647
|
|
637
|
+
}
|
|
638
|
+
}
|
|
639
|
+
},
|
|
640
|
+
{
|
|
641
|
+
"type": "object",
|
|
642
|
+
"additionalProperties": false,
|
|
643
|
+
"required": ["mode"],
|
|
644
|
+
"properties": {
|
|
645
|
+
"mode": { "const": "server-default" }
|
|
646
|
+
}
|
|
647
|
+
}
|
|
648
|
+
]
|
|
649
|
+
},
|
|
650
|
+
"reasoningBudgetByMode": {
|
|
651
|
+
"type": "object",
|
|
652
|
+
"description": "Optional llama.cpp token budgets for main-step Low/Reasoning/Deep presets. Omit to inherit; {} clears the inherited map. A provided map replaces the whole parent map. Zero disables thinking; positive mode budgets enable it.",
|
|
653
|
+
"additionalProperties": false,
|
|
654
|
+
"properties": {
|
|
655
|
+
"fast": {
|
|
656
|
+
"type": "integer",
|
|
657
|
+
"minimum": 0,
|
|
658
|
+
"maximum": 2147483647
|
|
659
|
+
},
|
|
660
|
+
"reasoning": {
|
|
661
|
+
"type": "integer",
|
|
662
|
+
"minimum": 0,
|
|
663
|
+
"maximum": 2147483647
|
|
664
|
+
},
|
|
665
|
+
"deep": {
|
|
666
|
+
"type": "integer",
|
|
667
|
+
"minimum": 0,
|
|
668
|
+
"maximum": 2147483647
|
|
669
|
+
}
|
|
670
|
+
}
|
|
671
|
+
},
|
|
578
672
|
"reasoningEffort": {
|
|
579
673
|
"type": "string",
|
|
580
674
|
"enum": [
|
|
@@ -690,6 +784,52 @@
|
|
|
690
784
|
"type": "number",
|
|
691
785
|
"description": "Nucleus sampling value forwarded to the model provider."
|
|
692
786
|
},
|
|
787
|
+
"reasoningBudget": {
|
|
788
|
+
"description": "Reasoning-only budget for a declared budget-capable model. Zero disables thinking. Omit to inherit.",
|
|
789
|
+
"oneOf": [
|
|
790
|
+
{
|
|
791
|
+
"type": "object",
|
|
792
|
+
"additionalProperties": false,
|
|
793
|
+
"required": ["mode", "tokens"],
|
|
794
|
+
"properties": {
|
|
795
|
+
"mode": { "const": "tokens" },
|
|
796
|
+
"tokens": {
|
|
797
|
+
"type": "integer",
|
|
798
|
+
"minimum": 0,
|
|
799
|
+
"maximum": 2147483647
|
|
800
|
+
}
|
|
801
|
+
}
|
|
802
|
+
},
|
|
803
|
+
{
|
|
804
|
+
"type": "object",
|
|
805
|
+
"additionalProperties": false,
|
|
806
|
+
"required": ["mode"],
|
|
807
|
+
"properties": { "mode": { "const": "server-default" } }
|
|
808
|
+
}
|
|
809
|
+
]
|
|
810
|
+
},
|
|
811
|
+
"reasoningBudgetByMode": {
|
|
812
|
+
"type": "object",
|
|
813
|
+
"description": "Optional llama.cpp token budgets for main-step Low/Reasoning/Deep presets. Omit to inherit; {} clears the inherited map. A provided map replaces the whole parent map. Zero disables thinking; positive mode budgets enable it.",
|
|
814
|
+
"additionalProperties": false,
|
|
815
|
+
"properties": {
|
|
816
|
+
"fast": {
|
|
817
|
+
"type": "integer",
|
|
818
|
+
"minimum": 0,
|
|
819
|
+
"maximum": 2147483647
|
|
820
|
+
},
|
|
821
|
+
"reasoning": {
|
|
822
|
+
"type": "integer",
|
|
823
|
+
"minimum": 0,
|
|
824
|
+
"maximum": 2147483647
|
|
825
|
+
},
|
|
826
|
+
"deep": {
|
|
827
|
+
"type": "integer",
|
|
828
|
+
"minimum": 0,
|
|
829
|
+
"maximum": 2147483647
|
|
830
|
+
}
|
|
831
|
+
}
|
|
832
|
+
},
|
|
693
833
|
"reasoningEffort": {
|
|
694
834
|
"type": "string",
|
|
695
835
|
"enum": [
|