@aexol/spectral 0.8.0 → 0.8.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +82 -55
- package/README.md +80 -82
- package/dist/agent/agents.d.ts +37 -0
- package/dist/agent/agents.d.ts.map +1 -0
- package/dist/agent/index.d.ts +29 -0
- package/dist/agent/index.d.ts.map +1 -0
- package/dist/cli.d.ts +17 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/commands/bind.d.ts +12 -0
- package/dist/commands/bind.d.ts.map +1 -0
- package/dist/commands/login-oauth.d.ts +15 -0
- package/dist/commands/login-oauth.d.ts.map +1 -0
- package/dist/commands/login.d.ts +37 -0
- package/dist/commands/login.d.ts.map +1 -0
- package/dist/commands/logout.d.ts +8 -0
- package/dist/commands/logout.d.ts.map +1 -0
- package/dist/commands/serve.d.ts +112 -0
- package/dist/commands/serve.d.ts.map +1 -0
- package/dist/commands/unbind.d.ts +8 -0
- package/dist/commands/unbind.d.ts.map +1 -0
- package/dist/config.d.ts +49 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/designer/guidelines.d.ts +23 -0
- package/dist/designer/guidelines.d.ts.map +1 -0
- package/dist/designer/index.d.ts +26 -0
- package/dist/designer/index.d.ts.map +1 -0
- package/dist/designer/philosophies.d.ts +33 -0
- package/dist/designer/philosophies.d.ts.map +1 -0
- package/dist/designer/skills.d.ts +27 -0
- package/dist/designer/skills.d.ts.map +1 -0
- package/dist/designer/systems.d.ts +36 -0
- package/dist/designer/systems.d.ts.map +1 -0
- package/dist/extensions/aexol-mcp.d.ts +25 -0
- package/dist/extensions/aexol-mcp.d.ts.map +1 -0
- package/dist/extensions/kanban-bridge.d.ts +24 -0
- package/dist/extensions/kanban-bridge.d.ts.map +1 -0
- package/dist/extensions/kanban-bridge.js +668 -0
- package/dist/extensions/openrouter-attribution.d.ts +12 -0
- package/dist/extensions/openrouter-attribution.d.ts.map +1 -0
- package/dist/extensions/spectral-vision-fallback.d.ts +23 -0
- package/dist/extensions/spectral-vision-fallback.d.ts.map +1 -0
- package/dist/extensions/spectral-vision-fallback.js +32 -22
- package/dist/index.d.ts +46 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +44 -0
- package/dist/mcp/agent-dir.d.ts +3 -0
- package/dist/mcp/agent-dir.d.ts.map +1 -0
- package/dist/mcp/commands.d.ts +9 -0
- package/dist/mcp/commands.d.ts.map +1 -0
- package/dist/mcp/config.d.ts +78 -0
- package/dist/mcp/config.d.ts.map +1 -0
- package/dist/mcp/consent-manager.d.ts +14 -0
- package/dist/mcp/consent-manager.d.ts.map +1 -0
- package/dist/mcp/direct-tools.d.ts +11 -0
- package/dist/mcp/direct-tools.d.ts.map +1 -0
- package/dist/mcp/errors.d.ts +100 -0
- package/dist/mcp/errors.d.ts.map +1 -0
- package/dist/mcp/glimpse-ui.d.ts +10 -0
- package/dist/mcp/glimpse-ui.d.ts.map +1 -0
- package/dist/mcp/host-html-template.d.ts +17 -0
- package/dist/mcp/host-html-template.d.ts.map +1 -0
- package/dist/mcp/index.d.ts +3 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/init.d.ts +10 -0
- package/dist/mcp/init.d.ts.map +1 -0
- package/dist/mcp/init.js +1 -9
- package/dist/mcp/lifecycle.d.ts +30 -0
- package/dist/mcp/lifecycle.d.ts.map +1 -0
- package/dist/mcp/logger.d.ts +52 -0
- package/dist/mcp/logger.d.ts.map +1 -0
- package/dist/mcp/mcp-auth-flow.d.ts +69 -0
- package/dist/mcp/mcp-auth-flow.d.ts.map +1 -0
- package/dist/mcp/mcp-auth.d.ts +100 -0
- package/dist/mcp/mcp-auth.d.ts.map +1 -0
- package/dist/mcp/mcp-callback-server.d.ts +40 -0
- package/dist/mcp/mcp-callback-server.d.ts.map +1 -0
- package/dist/mcp/mcp-oauth-provider.d.ts +101 -0
- package/dist/mcp/mcp-oauth-provider.d.ts.map +1 -0
- package/dist/mcp/metadata-cache.d.ts +32 -0
- package/dist/mcp/metadata-cache.d.ts.map +1 -0
- package/dist/mcp/npx-resolver.d.ts +7 -0
- package/dist/mcp/npx-resolver.d.ts.map +1 -0
- package/dist/mcp/oauth-handler.d.ts +19 -0
- package/dist/mcp/oauth-handler.d.ts.map +1 -0
- package/dist/mcp/onboarding-state.d.ts +13 -0
- package/dist/mcp/onboarding-state.d.ts.map +1 -0
- package/dist/mcp/proxy-modes.d.ts +12 -0
- package/dist/mcp/proxy-modes.d.ts.map +1 -0
- package/dist/mcp/resource-tools.d.ts +2 -0
- package/dist/mcp/resource-tools.d.ts.map +1 -0
- package/dist/mcp/sampling-handler.d.ts +16 -0
- package/dist/mcp/sampling-handler.d.ts.map +1 -0
- package/dist/mcp/server-manager.d.ts +42 -0
- package/dist/mcp/server-manager.d.ts.map +1 -0
- package/dist/mcp/state.d.ts +41 -0
- package/dist/mcp/state.d.ts.map +1 -0
- package/dist/mcp/tool-metadata.d.ts +11 -0
- package/dist/mcp/tool-metadata.d.ts.map +1 -0
- package/dist/mcp/tool-registrar.d.ts +9 -0
- package/dist/mcp/tool-registrar.d.ts.map +1 -0
- package/dist/mcp/types.d.ts +263 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/mcp/ui-resource-handler.d.ts +10 -0
- package/dist/mcp/ui-resource-handler.d.ts.map +1 -0
- package/dist/mcp/ui-server.d.ts +37 -0
- package/dist/mcp/ui-server.d.ts.map +1 -0
- package/dist/mcp/ui-session.d.ts +27 -0
- package/dist/mcp/ui-session.d.ts.map +1 -0
- package/dist/mcp/ui-stream-types.d.ts +197 -0
- package/dist/mcp/ui-stream-types.d.ts.map +1 -0
- package/dist/mcp/utils.d.ts +17 -0
- package/dist/mcp/utils.d.ts.map +1 -0
- package/dist/mcp/vitest.config.d.ts +3 -0
- package/dist/mcp/vitest.config.d.ts.map +1 -0
- package/dist/mcp-client.d.ts +58 -0
- package/dist/mcp-client.d.ts.map +1 -0
- package/dist/mcp-client.js +2 -1
- package/dist/memory/branch.d.ts +124 -0
- package/dist/memory/branch.d.ts.map +1 -0
- package/dist/memory/commands/status.d.ts +4 -0
- package/dist/memory/commands/status.d.ts.map +1 -0
- package/dist/memory/commands/view.d.ts +4 -0
- package/dist/memory/commands/view.d.ts.map +1 -0
- package/dist/memory/compaction.d.ts +113 -0
- package/dist/memory/compaction.d.ts.map +1 -0
- package/dist/memory/config.d.ts +27 -0
- package/dist/memory/config.d.ts.map +1 -0
- package/dist/memory/debug-log.d.ts +12 -0
- package/dist/memory/debug-log.d.ts.map +1 -0
- package/dist/memory/hooks/compaction-hook.d.ts +4 -0
- package/dist/memory/hooks/compaction-hook.d.ts.map +1 -0
- package/dist/memory/hooks/compaction-trigger.d.ts +4 -0
- package/dist/memory/hooks/compaction-trigger.d.ts.map +1 -0
- package/dist/memory/hooks/observer-trigger.d.ts +4 -0
- package/dist/memory/hooks/observer-trigger.d.ts.map +1 -0
- package/dist/memory/ids.d.ts +2 -0
- package/dist/memory/ids.d.ts.map +1 -0
- package/dist/memory/index.d.ts +3 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +2 -0
- package/dist/memory/model-budget.d.ts +4 -0
- package/dist/memory/model-budget.d.ts.map +1 -0
- package/dist/memory/observer.d.ts +21 -0
- package/dist/memory/observer.d.ts.map +1 -0
- package/dist/memory/project-observations-store.d.ts +24 -0
- package/dist/memory/project-observations-store.d.ts.map +1 -0
- package/dist/memory/prompts.d.ts +11 -0
- package/dist/memory/prompts.d.ts.map +1 -0
- package/dist/memory/relevance.d.ts +4 -0
- package/dist/memory/relevance.d.ts.map +1 -0
- package/dist/memory/runtime.d.ts +40 -0
- package/dist/memory/runtime.d.ts.map +1 -0
- package/dist/memory/serialize.d.ts +26 -0
- package/dist/memory/serialize.d.ts.map +1 -0
- package/dist/memory/tokens.d.ts +8 -0
- package/dist/memory/tokens.d.ts.map +1 -0
- package/dist/memory/tools/read-project-observations.d.ts +8 -0
- package/dist/memory/tools/read-project-observations.d.ts.map +1 -0
- package/dist/memory/tools/recall-observation.d.ts +63 -0
- package/dist/memory/tools/recall-observation.d.ts.map +1 -0
- package/dist/memory/tools/write-project-observation.d.ts +9 -0
- package/dist/memory/tools/write-project-observation.d.ts.map +1 -0
- package/dist/memory/tools/write-project-observation.js +60 -0
- package/dist/memory/types.d.ts +65 -0
- package/dist/memory/types.d.ts.map +1 -0
- package/dist/preflight.d.ts +27 -0
- package/dist/preflight.d.ts.map +1 -0
- package/dist/preflight.js +3 -1
- package/dist/relay/auto-research.d.ts +64 -0
- package/dist/relay/auto-research.d.ts.map +1 -0
- package/dist/relay/auto-research.js +208 -69
- package/dist/relay/client.d.ts +126 -0
- package/dist/relay/client.d.ts.map +1 -0
- package/dist/relay/dispatcher.d.ts +207 -0
- package/dist/relay/dispatcher.d.ts.map +1 -0
- package/dist/relay/machine-store.d.ts +68 -0
- package/dist/relay/machine-store.d.ts.map +1 -0
- package/dist/relay/models-fetch.d.ts +75 -0
- package/dist/relay/models-fetch.d.ts.map +1 -0
- package/dist/relay/registration.d.ts +81 -0
- package/dist/relay/registration.d.ts.map +1 -0
- package/dist/sdk/agent-core/agent-loop.d.ts +24 -0
- package/dist/sdk/agent-core/agent-loop.d.ts.map +1 -0
- package/dist/sdk/agent-core/agent.d.ts +125 -0
- package/dist/sdk/agent-core/agent.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/agent-harness.d.ts +92 -0
- package/dist/sdk/agent-core/harness/agent-harness.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/compaction/branch-summarization.d.ts +53 -0
- package/dist/sdk/agent-core/harness/compaction/branch-summarization.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/compaction/compaction.d.ts +95 -0
- package/dist/sdk/agent-core/harness/compaction/compaction.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/compaction/utils.d.ts +25 -0
- package/dist/sdk/agent-core/harness/compaction/utils.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/env/nodejs.d.ts +51 -0
- package/dist/sdk/agent-core/harness/env/nodejs.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/messages.d.ts +51 -0
- package/dist/sdk/agent-core/harness/messages.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/prompt-templates.d.ts +48 -0
- package/dist/sdk/agent-core/harness/prompt-templates.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/session/jsonl-repo.d.ts +26 -0
- package/dist/sdk/agent-core/harness/session/jsonl-repo.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/session/jsonl-storage.d.ts +33 -0
- package/dist/sdk/agent-core/harness/session/jsonl-storage.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/session/memory-repo.d.ts +18 -0
- package/dist/sdk/agent-core/harness/session/memory-repo.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/session/memory-storage.d.ts +25 -0
- package/dist/sdk/agent-core/harness/session/memory-storage.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/session/repo-utils.d.ts +11 -0
- package/dist/sdk/agent-core/harness/session/repo-utils.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/session/session.d.ts +32 -0
- package/dist/sdk/agent-core/harness/session/session.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/session/uuid.d.ts +2 -0
- package/dist/sdk/agent-core/harness/session/uuid.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/skills.d.ts +44 -0
- package/dist/sdk/agent-core/harness/skills.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/system-prompt.d.ts +3 -0
- package/dist/sdk/agent-core/harness/system-prompt.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/types.d.ts +601 -0
- package/dist/sdk/agent-core/harness/types.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/utils/shell-output.d.ts +14 -0
- package/dist/sdk/agent-core/harness/utils/shell-output.d.ts.map +1 -0
- package/dist/sdk/agent-core/harness/utils/truncate.d.ts +70 -0
- package/dist/sdk/agent-core/harness/utils/truncate.d.ts.map +1 -0
- package/dist/sdk/agent-core/index.d.ts +20 -0
- package/dist/sdk/agent-core/index.d.ts.map +1 -0
- package/dist/sdk/agent-core/node.d.ts +3 -0
- package/dist/sdk/agent-core/node.d.ts.map +1 -0
- package/dist/sdk/agent-core/proxy.d.ts +69 -0
- package/dist/sdk/agent-core/proxy.d.ts.map +1 -0
- package/dist/sdk/agent-core/types.d.ts +393 -0
- package/dist/sdk/agent-core/types.d.ts.map +1 -0
- package/dist/sdk/ai/api-registry.d.ts +20 -0
- package/dist/sdk/ai/api-registry.d.ts.map +1 -0
- package/dist/sdk/ai/cli.d.ts +3 -0
- package/dist/sdk/ai/cli.d.ts.map +1 -0
- package/dist/sdk/ai/env-api-keys.d.ts +18 -0
- package/dist/sdk/ai/env-api-keys.d.ts.map +1 -0
- package/dist/sdk/ai/env-api-keys.js +9 -49
- package/dist/sdk/ai/image-models.d.ts +10 -0
- package/dist/sdk/ai/image-models.d.ts.map +1 -0
- package/dist/sdk/ai/image-models.generated.d.ts +440 -0
- package/dist/sdk/ai/image-models.generated.d.ts.map +1 -0
- package/dist/sdk/ai/images-api-registry.d.ts +14 -0
- package/dist/sdk/ai/images-api-registry.d.ts.map +1 -0
- package/dist/sdk/ai/images.d.ts +4 -0
- package/dist/sdk/ai/images.d.ts.map +1 -0
- package/dist/sdk/ai/index.d.ts +21 -0
- package/dist/sdk/ai/index.d.ts.map +1 -0
- package/dist/sdk/ai/models.d.ts +18 -0
- package/dist/sdk/ai/models.d.ts.map +1 -0
- package/dist/sdk/ai/models.generated.d.ts +17349 -0
- package/dist/sdk/ai/models.generated.d.ts.map +1 -0
- package/dist/sdk/ai/oauth.d.ts +2 -0
- package/dist/sdk/ai/oauth.d.ts.map +1 -0
- package/dist/sdk/ai/providers/anthropic.d.ts +54 -0
- package/dist/sdk/ai/providers/anthropic.d.ts.map +1 -0
- package/dist/sdk/ai/providers/faux.d.ts +56 -0
- package/dist/sdk/ai/providers/faux.d.ts.map +1 -0
- package/dist/sdk/ai/providers/github-copilot-headers.d.ts +8 -0
- package/dist/sdk/ai/providers/github-copilot-headers.d.ts.map +1 -0
- package/dist/sdk/ai/providers/openai-completions.d.ts +19 -0
- package/dist/sdk/ai/providers/openai-completions.d.ts.map +1 -0
- package/dist/sdk/ai/providers/openai-prompt-cache.d.ts +3 -0
- package/dist/sdk/ai/providers/openai-prompt-cache.d.ts.map +1 -0
- package/dist/sdk/ai/providers/register-builtins.d.ts +15 -0
- package/dist/sdk/ai/providers/register-builtins.d.ts.map +1 -0
- package/dist/sdk/ai/providers/simple-options.d.ts +8 -0
- package/dist/sdk/ai/providers/simple-options.d.ts.map +1 -0
- package/dist/sdk/ai/providers/transform-messages.d.ts +8 -0
- package/dist/sdk/ai/providers/transform-messages.d.ts.map +1 -0
- package/dist/sdk/ai/session-resources.d.ts +4 -0
- package/dist/sdk/ai/session-resources.d.ts.map +1 -0
- package/dist/sdk/ai/stream.d.ts +8 -0
- package/dist/sdk/ai/stream.d.ts.map +1 -0
- package/dist/sdk/ai/types.d.ts +488 -0
- package/dist/sdk/ai/types.d.ts.map +1 -0
- package/dist/sdk/ai/utils/diagnostics.d.ts +19 -0
- package/dist/sdk/ai/utils/diagnostics.d.ts.map +1 -0
- package/dist/sdk/ai/utils/event-stream.d.ts +21 -0
- package/dist/sdk/ai/utils/event-stream.d.ts.map +1 -0
- package/dist/sdk/ai/utils/hash.d.ts +3 -0
- package/dist/sdk/ai/utils/hash.d.ts.map +1 -0
- package/dist/sdk/ai/utils/headers.d.ts +2 -0
- package/dist/sdk/ai/utils/headers.d.ts.map +1 -0
- package/dist/sdk/ai/utils/json-parse.d.ts +16 -0
- package/dist/sdk/ai/utils/json-parse.d.ts.map +1 -0
- package/dist/sdk/ai/utils/node-http-proxy.d.ts +10 -0
- package/dist/sdk/ai/utils/node-http-proxy.d.ts.map +1 -0
- package/dist/sdk/ai/utils/oauth/anthropic.d.ts +25 -0
- package/dist/sdk/ai/utils/oauth/anthropic.d.ts.map +1 -0
- package/dist/sdk/ai/utils/oauth/anthropic.js +1 -1
- package/dist/sdk/ai/utils/oauth/device-code.d.ts +19 -0
- package/dist/sdk/ai/utils/oauth/device-code.d.ts.map +1 -0
- package/dist/sdk/ai/utils/oauth/github-copilot.d.ts +30 -0
- package/dist/sdk/ai/utils/oauth/github-copilot.d.ts.map +1 -0
- package/dist/sdk/ai/utils/oauth/index.d.ts +58 -0
- package/dist/sdk/ai/utils/oauth/index.d.ts.map +1 -0
- package/dist/sdk/ai/utils/oauth/oauth-page.d.ts +3 -0
- package/dist/sdk/ai/utils/oauth/oauth-page.d.ts.map +1 -0
- package/dist/sdk/ai/utils/oauth/openai-codex.d.ts +34 -0
- package/dist/sdk/ai/utils/oauth/openai-codex.d.ts.map +1 -0
- package/dist/sdk/ai/utils/oauth/openai-codex.js +1 -1
- package/dist/sdk/ai/utils/oauth/pkce.d.ts +13 -0
- package/dist/sdk/ai/utils/oauth/pkce.d.ts.map +1 -0
- package/dist/sdk/ai/utils/oauth/types.d.ts +64 -0
- package/dist/sdk/ai/utils/oauth/types.d.ts.map +1 -0
- package/dist/sdk/ai/utils/overflow.d.ts +56 -0
- package/dist/sdk/ai/utils/overflow.d.ts.map +1 -0
- package/dist/sdk/ai/utils/sanitize-unicode.d.ts +22 -0
- package/dist/sdk/ai/utils/sanitize-unicode.d.ts.map +1 -0
- package/dist/sdk/ai/utils/typebox-helpers.d.ts +17 -0
- package/dist/sdk/ai/utils/typebox-helpers.d.ts.map +1 -0
- package/dist/sdk/ai/utils/validation.d.ts +18 -0
- package/dist/sdk/ai/utils/validation.d.ts.map +1 -0
- package/dist/sdk/coding-agent/cli.d.ts +3 -0
- package/dist/sdk/coding-agent/cli.d.ts.map +1 -0
- package/dist/sdk/coding-agent/config.d.ts +71 -0
- package/dist/sdk/coding-agent/config.d.ts.map +1 -0
- package/dist/sdk/coding-agent/config.js +2 -69
- package/dist/sdk/coding-agent/core/agent-session-runtime.d.ts +117 -0
- package/dist/sdk/coding-agent/core/agent-session-runtime.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/agent-session-services.d.ts +86 -0
- package/dist/sdk/coding-agent/core/agent-session-services.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/agent-session.d.ts +626 -0
- package/dist/sdk/coding-agent/core/agent-session.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/auth-guidance.d.ts +5 -0
- package/dist/sdk/coding-agent/core/auth-guidance.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/auth-storage.d.ts +145 -0
- package/dist/sdk/coding-agent/core/auth-storage.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/bash-executor.d.ts +32 -0
- package/dist/sdk/coding-agent/core/bash-executor.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/compaction/branch-summarization.d.ts +88 -0
- package/dist/sdk/coding-agent/core/compaction/branch-summarization.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/compaction/compaction.d.ts +142 -0
- package/dist/sdk/coding-agent/core/compaction/compaction.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/compaction/index.d.ts +7 -0
- package/dist/sdk/coding-agent/core/compaction/index.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/compaction/utils.d.ts +38 -0
- package/dist/sdk/coding-agent/core/compaction/utils.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/defaults.d.ts +3 -0
- package/dist/sdk/coding-agent/core/defaults.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/diagnostics.d.ts +15 -0
- package/dist/sdk/coding-agent/core/diagnostics.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/event-bus.d.ts +9 -0
- package/dist/sdk/coding-agent/core/event-bus.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/exec.d.ts +29 -0
- package/dist/sdk/coding-agent/core/exec.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/extensions/index.d.ts +12 -0
- package/dist/sdk/coding-agent/core/extensions/index.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/extensions/loader.d.ts +24 -0
- package/dist/sdk/coding-agent/core/extensions/loader.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/extensions/loader.js +3 -35
- package/dist/sdk/coding-agent/core/extensions/runner.d.ts +161 -0
- package/dist/sdk/coding-agent/core/extensions/runner.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/extensions/runner.js +1 -2
- package/dist/sdk/coding-agent/core/extensions/types.d.ts +1181 -0
- package/dist/sdk/coding-agent/core/extensions/types.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/extensions/wrapper.d.ts +20 -0
- package/dist/sdk/coding-agent/core/extensions/wrapper.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/http-dispatcher.d.ts +21 -0
- package/dist/sdk/coding-agent/core/http-dispatcher.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/index.d.ts +12 -0
- package/dist/sdk/coding-agent/core/index.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/keybindings.d.ts +371 -0
- package/dist/sdk/coding-agent/core/keybindings.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/messages.d.ts +77 -0
- package/dist/sdk/coding-agent/core/messages.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/model-registry.d.ts +150 -0
- package/dist/sdk/coding-agent/core/model-registry.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/model-resolver-utils.d.ts +7 -0
- package/dist/sdk/coding-agent/core/model-resolver-utils.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/model-resolver-utils.js +8 -0
- package/dist/sdk/coding-agent/core/model-resolver.d.ts +110 -0
- package/dist/sdk/coding-agent/core/model-resolver.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/model-resolver.js +1 -1
- package/dist/sdk/coding-agent/core/output-guard.d.ts +6 -0
- package/dist/sdk/coding-agent/core/output-guard.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/package-manager.d.ts +204 -0
- package/dist/sdk/coding-agent/core/package-manager.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/prompt-templates.d.ts +52 -0
- package/dist/sdk/coding-agent/core/prompt-templates.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/provider-display-names.d.ts +2 -0
- package/dist/sdk/coding-agent/core/provider-display-names.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/resolve-config-value.d.ts +23 -0
- package/dist/sdk/coding-agent/core/resolve-config-value.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/resource-loader.d.ts +194 -0
- package/dist/sdk/coding-agent/core/resource-loader.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/resource-loader.js +1 -1
- package/dist/sdk/coding-agent/core/sdk.d.ts +107 -0
- package/dist/sdk/coding-agent/core/sdk.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/session-cwd.d.ts +19 -0
- package/dist/sdk/coding-agent/core/session-cwd.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/session-manager.d.ts +333 -0
- package/dist/sdk/coding-agent/core/session-manager.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/settings-manager.d.ts +209 -0
- package/dist/sdk/coding-agent/core/settings-manager.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/settings-manager.js +1 -170
- package/dist/sdk/coding-agent/core/skills.d.ts +60 -0
- package/dist/sdk/coding-agent/core/skills.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/slash-commands.d.ts +14 -0
- package/dist/sdk/coding-agent/core/slash-commands.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/source-info.d.ts +18 -0
- package/dist/sdk/coding-agent/core/source-info.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/system-prompt.d.ts +28 -0
- package/dist/sdk/coding-agent/core/system-prompt.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/system-prompt.js +3 -1
- package/dist/sdk/coding-agent/core/telemetry.d.ts +3 -0
- package/dist/sdk/coding-agent/core/telemetry.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/theme.d.ts +28 -0
- package/dist/sdk/coding-agent/core/theme.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/theme.js +202 -0
- package/dist/sdk/coding-agent/core/timings.d.ts +8 -0
- package/dist/sdk/coding-agent/core/timings.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/bash.d.ts +63 -0
- package/dist/sdk/coding-agent/core/tools/bash.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/bash.js +17 -18
- package/dist/sdk/coding-agent/core/tools/edit-diff.d.ts +87 -0
- package/dist/sdk/coding-agent/core/tools/edit-diff.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/edit.d.ts +39 -0
- package/dist/sdk/coding-agent/core/tools/edit.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/edit.js +7 -8
- package/dist/sdk/coding-agent/core/tools/file-mutation-queue.d.ts +6 -0
- package/dist/sdk/coding-agent/core/tools/file-mutation-queue.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/find.d.ts +35 -0
- package/dist/sdk/coding-agent/core/tools/find.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/find.js +9 -13
- package/dist/sdk/coding-agent/core/tools/grep.d.ts +37 -0
- package/dist/sdk/coding-agent/core/tools/grep.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/grep.js +10 -14
- package/dist/sdk/coding-agent/core/tools/index.d.ts +40 -0
- package/dist/sdk/coding-agent/core/tools/index.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/ls.d.ts +37 -0
- package/dist/sdk/coding-agent/core/tools/ls.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/ls.js +9 -10
- package/dist/sdk/coding-agent/core/tools/output-accumulator.d.ts +52 -0
- package/dist/sdk/coding-agent/core/tools/output-accumulator.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/path-utils.d.ts +8 -0
- package/dist/sdk/coding-agent/core/tools/path-utils.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/read.d.ts +35 -0
- package/dist/sdk/coding-agent/core/tools/read.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/read.js +33 -35
- package/dist/sdk/coding-agent/core/tools/render-diff.d.ts +17 -0
- package/dist/sdk/coding-agent/core/tools/render-diff.d.ts.map +1 -0
- package/dist/sdk/coding-agent/{modes/interactive/components/diff.js → core/tools/render-diff.js} +18 -31
- package/dist/sdk/coding-agent/core/tools/render-utils.d.ts +21 -0
- package/dist/sdk/coding-agent/core/tools/render-utils.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/tool-definition-wrapper.d.ts +14 -0
- package/dist/sdk/coding-agent/core/tools/tool-definition-wrapper.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/truncate.d.ts +70 -0
- package/dist/sdk/coding-agent/core/tools/truncate.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/write.d.ts +26 -0
- package/dist/sdk/coding-agent/core/tools/write.d.ts.map +1 -0
- package/dist/sdk/coding-agent/core/tools/write.js +10 -11
- package/dist/sdk/coding-agent/index.d.ts +29 -0
- package/dist/sdk/coding-agent/index.d.ts.map +1 -0
- package/dist/sdk/coding-agent/index.js +7 -5
- package/dist/sdk/coding-agent/main.d.ts +2 -0
- package/dist/sdk/coding-agent/main.d.ts.map +1 -0
- package/dist/sdk/coding-agent/migrations.d.ts +33 -0
- package/dist/sdk/coding-agent/migrations.d.ts.map +1 -0
- package/dist/sdk/coding-agent/modes/index.d.ts +8 -0
- package/dist/sdk/coding-agent/modes/index.d.ts.map +1 -0
- package/dist/sdk/coding-agent/modes/index.js +0 -1
- package/dist/sdk/coding-agent/modes/print-mode.d.ts +28 -0
- package/dist/sdk/coding-agent/modes/print-mode.d.ts.map +1 -0
- package/dist/sdk/coding-agent/modes/rpc/jsonl.d.ts +17 -0
- package/dist/sdk/coding-agent/modes/rpc/jsonl.d.ts.map +1 -0
- package/dist/sdk/coding-agent/modes/rpc/rpc-client.d.ts +224 -0
- package/dist/sdk/coding-agent/modes/rpc/rpc-client.d.ts.map +1 -0
- package/dist/sdk/coding-agent/modes/rpc/rpc-mode.d.ts +20 -0
- package/dist/sdk/coding-agent/modes/rpc/rpc-mode.d.ts.map +1 -0
- package/dist/sdk/coding-agent/modes/rpc/rpc-mode.js +2 -2
- package/dist/sdk/coding-agent/modes/rpc/rpc-types.d.ts +419 -0
- package/dist/sdk/coding-agent/modes/rpc/rpc-types.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/ansi.d.ts +2 -0
- package/dist/sdk/coding-agent/utils/ansi.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/changelog.d.ts +21 -0
- package/dist/sdk/coding-agent/utils/changelog.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/child-process.d.ts +15 -0
- package/dist/sdk/coding-agent/utils/child-process.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/clipboard-image.d.ts +11 -0
- package/dist/sdk/coding-agent/utils/clipboard-image.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/clipboard-native.d.ts +8 -0
- package/dist/sdk/coding-agent/utils/clipboard-native.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/clipboard.d.ts +2 -0
- package/dist/sdk/coding-agent/utils/clipboard.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/exif-orientation.d.ts +5 -0
- package/dist/sdk/coding-agent/utils/exif-orientation.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/frontmatter.d.ts +8 -0
- package/dist/sdk/coding-agent/utils/frontmatter.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/fs-watch.d.ts +5 -0
- package/dist/sdk/coding-agent/utils/fs-watch.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/git.d.ts +26 -0
- package/dist/sdk/coding-agent/utils/git.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/html.d.ts +7 -0
- package/dist/sdk/coding-agent/utils/html.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/image-convert.d.ts +9 -0
- package/dist/sdk/coding-agent/utils/image-convert.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/image-resize.d.ts +36 -0
- package/dist/sdk/coding-agent/utils/image-resize.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/mime.d.ts +3 -0
- package/dist/sdk/coding-agent/utils/mime.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/paths.d.ts +31 -0
- package/dist/sdk/coding-agent/utils/paths.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/photon.d.ts +13 -0
- package/dist/sdk/coding-agent/utils/photon.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/photon.js +2 -10
- package/dist/sdk/coding-agent/utils/pi-user-agent.d.ts +2 -0
- package/dist/sdk/coding-agent/utils/pi-user-agent.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/pi-user-agent.js +1 -2
- package/dist/sdk/coding-agent/utils/shell.d.ts +30 -0
- package/dist/sdk/coding-agent/utils/shell.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/sleep.d.ts +5 -0
- package/dist/sdk/coding-agent/utils/sleep.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/syntax-highlight.d.ts +12 -0
- package/dist/sdk/coding-agent/utils/syntax-highlight.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/tools-manager.d.ts +3 -0
- package/dist/sdk/coding-agent/utils/tools-manager.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/version-check.d.ts +15 -0
- package/dist/sdk/coding-agent/utils/version-check.d.ts.map +1 -0
- package/dist/sdk/coding-agent/utils/windows-self-update.d.ts +3 -0
- package/dist/sdk/coding-agent/utils/windows-self-update.d.ts.map +1 -0
- package/dist/server/agent-bridge.d.ts +308 -0
- package/dist/server/agent-bridge.d.ts.map +1 -0
- package/dist/server/agent-bridge.js +2 -1
- package/dist/server/handlers/errors.d.ts +26 -0
- package/dist/server/handlers/errors.d.ts.map +1 -0
- package/dist/server/handlers/paths-autocomplete.d.ts +45 -0
- package/dist/server/handlers/paths-autocomplete.d.ts.map +1 -0
- package/dist/server/handlers/projects.d.ts +58 -0
- package/dist/server/handlers/projects.d.ts.map +1 -0
- package/dist/server/handlers/queue.d.ts +27 -0
- package/dist/server/handlers/queue.d.ts.map +1 -0
- package/dist/server/handlers/sessions.d.ts +50 -0
- package/dist/server/handlers/sessions.d.ts.map +1 -0
- package/dist/server/paths.d.ts +51 -0
- package/dist/server/paths.d.ts.map +1 -0
- package/dist/server/session-stream.d.ts +379 -0
- package/dist/server/session-stream.d.ts.map +1 -0
- package/dist/server/shutdown.d.ts +102 -0
- package/dist/server/shutdown.d.ts.map +1 -0
- package/dist/server/storage.d.ts +287 -0
- package/dist/server/storage.d.ts.map +1 -0
- package/dist/server/title-generator.d.ts +25 -0
- package/dist/server/title-generator.d.ts.map +1 -0
- package/dist/server/wire.d.ts +448 -0
- package/dist/server/wire.d.ts.map +1 -0
- package/dist/studio-binding.d.ts +44 -0
- package/dist/studio-binding.d.ts.map +1 -0
- package/dist/studio-binding.js +1 -1
- package/package.json +11 -1
- package/dist/sdk/coding-agent/bun/cli.js +0 -7
- package/dist/sdk/coding-agent/bun/restore-sandbox-env.js +0 -31
- package/dist/sdk/coding-agent/cli/args.js +0 -340
- package/dist/sdk/coding-agent/cli/file-processor.js +0 -82
- package/dist/sdk/coding-agent/cli/initial-message.js +0 -21
- package/dist/sdk/coding-agent/core/footer-data-provider.js +0 -309
- package/dist/sdk/coding-agent/modes/interactive/components/keybinding-hints.js +0 -35
- package/dist/sdk/coding-agent/modes/interactive/components/visual-truncate.js +0 -26
- package/dist/sdk/coding-agent/modes/interactive/interactive-mode.js +0 -3
- package/dist/sdk/coding-agent/modes/interactive/theme/theme.js +0 -1022
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimal hand-rolled JSON-RPC 2.0 client for the Aexol MCP backend.
|
|
3
|
+
*
|
|
4
|
+
* Why hand-rolled, not @modelcontextprotocol/sdk?
|
|
5
|
+
* - The Aexol backend speaks a non-standard MCP dialect (custom content types,
|
|
6
|
+
* protocol version 0.1.0 negotiation, no SSE). The official SDK adds a lot
|
|
7
|
+
* of negotiation overhead we don't need and would actively break against
|
|
8
|
+
* this server.
|
|
9
|
+
* - All we want is: POST a JSON-RPC envelope with a Bearer token, get a
|
|
10
|
+
* JSON-RPC reply, surface errors. fetch() is built into Node 20+.
|
|
11
|
+
*/
|
|
12
|
+
export interface McpTool {
|
|
13
|
+
name: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
inputSchema: unknown;
|
|
16
|
+
}
|
|
17
|
+
export interface McpContentItem {
|
|
18
|
+
type: string;
|
|
19
|
+
json?: unknown;
|
|
20
|
+
text?: string;
|
|
21
|
+
[k: string]: unknown;
|
|
22
|
+
}
|
|
23
|
+
export interface McpToolCallResult {
|
|
24
|
+
content: McpContentItem[];
|
|
25
|
+
isError?: boolean;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Errors thrown by AexolMcpClient carry an optional HTTP `status` so callers
|
|
29
|
+
* can produce friendlier messages (e.g. 401 → "invalid token").
|
|
30
|
+
*/
|
|
31
|
+
export declare class AexolMcpError extends Error {
|
|
32
|
+
readonly status?: number;
|
|
33
|
+
readonly code?: number;
|
|
34
|
+
constructor(message: string, opts?: {
|
|
35
|
+
status?: number;
|
|
36
|
+
code?: number;
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
export declare class AexolMcpClient {
|
|
40
|
+
private readonly apiUrl;
|
|
41
|
+
private readonly apiKey;
|
|
42
|
+
private readonly timeoutMs;
|
|
43
|
+
constructor(apiUrl: string, apiKey: string, timeoutMs?: number);
|
|
44
|
+
/** Low-level: send a JSON-RPC call and return its `result` field. */
|
|
45
|
+
call<T>(method: string, params?: unknown): Promise<T>;
|
|
46
|
+
/**
|
|
47
|
+
* Fetch the tool catalog. The Aexol backend returns `{ tools: [...] }`
|
|
48
|
+
* per JSON-RPC convention, but we accept the raw array shape too in case
|
|
49
|
+
* the server format drifts.
|
|
50
|
+
*/
|
|
51
|
+
listTools(): Promise<McpTool[]>;
|
|
52
|
+
/**
|
|
53
|
+
* Invoke a single tool. Returns the raw `{ content, isError? }` envelope —
|
|
54
|
+
* the caller (the pi extension) decides how to surface it back to the model.
|
|
55
|
+
*/
|
|
56
|
+
callTool(name: string, args: unknown): Promise<McpToolCallResult>;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=mcp-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-client.d.ts","sourceRoot":"","sources":["../src/mcp-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAgBD;;;GAGG;AACH,qBAAa,aAAc,SAAQ,KAAK;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;gBACX,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAO;CAM3E;AAED,qBAAa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAFT,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAAe;IAG7C,qEAAqE;IAC/D,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAoE3D;;;;OAIG;IACG,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IASrC;;;OAGG;IACG,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAexE"}
|
package/dist/mcp-client.js
CHANGED
|
@@ -108,7 +108,8 @@ export class AexolMcpClient {
|
|
|
108
108
|
name,
|
|
109
109
|
arguments: args ?? {},
|
|
110
110
|
});
|
|
111
|
-
if (!result || typeof result !== "object" ||
|
|
111
|
+
if (!result || typeof result !== "object" ||
|
|
112
|
+
!Array.isArray(result.content)) {
|
|
112
113
|
throw new AexolMcpError(`tools/call returned an unexpected payload for "${name}"`);
|
|
113
114
|
}
|
|
114
115
|
return result;
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { type MemoryReflection, type ObservationEntryData, type ObservationRecord, type ReflectionRecord } from "./types.js";
|
|
2
|
+
export type Entry = {
|
|
3
|
+
type: string;
|
|
4
|
+
id: string;
|
|
5
|
+
timestamp?: string;
|
|
6
|
+
message?: unknown;
|
|
7
|
+
content?: unknown;
|
|
8
|
+
customType?: string;
|
|
9
|
+
summary?: unknown;
|
|
10
|
+
fromId?: string;
|
|
11
|
+
data?: unknown;
|
|
12
|
+
details?: unknown;
|
|
13
|
+
firstKeptEntryId?: string;
|
|
14
|
+
};
|
|
15
|
+
export declare function isSourceEntry(entry: Entry): boolean;
|
|
16
|
+
export type RecallObservationMatch = {
|
|
17
|
+
status: "ok";
|
|
18
|
+
observation: ObservationRecord;
|
|
19
|
+
observationEntryId: string;
|
|
20
|
+
sourceEntryIds: string[];
|
|
21
|
+
sourceEntries: Entry[];
|
|
22
|
+
} | {
|
|
23
|
+
status: "no_source";
|
|
24
|
+
observation: ObservationRecord;
|
|
25
|
+
observationEntryId: string;
|
|
26
|
+
} | {
|
|
27
|
+
status: "source_unavailable";
|
|
28
|
+
observation: ObservationRecord;
|
|
29
|
+
observationEntryId: string;
|
|
30
|
+
sourceEntryIds: string[];
|
|
31
|
+
missingSourceEntryIds: string[];
|
|
32
|
+
nonSourceEntryIds: string[];
|
|
33
|
+
};
|
|
34
|
+
export type RecallObservationSourcesResult = {
|
|
35
|
+
status: "not_found";
|
|
36
|
+
observationId: string;
|
|
37
|
+
matches: [];
|
|
38
|
+
collision: false;
|
|
39
|
+
} | {
|
|
40
|
+
status: "found";
|
|
41
|
+
observationId: string;
|
|
42
|
+
matches: RecallObservationMatch[];
|
|
43
|
+
collision: boolean;
|
|
44
|
+
};
|
|
45
|
+
export type RecallMemoryObservation = {
|
|
46
|
+
status: "ok";
|
|
47
|
+
observation: ObservationRecord;
|
|
48
|
+
observationEntryId: string;
|
|
49
|
+
observationRecordIndex: number;
|
|
50
|
+
sourceEntryIds: string[];
|
|
51
|
+
sourceEntries: Entry[];
|
|
52
|
+
} | {
|
|
53
|
+
status: "no_source";
|
|
54
|
+
observation: ObservationRecord;
|
|
55
|
+
observationEntryId: string;
|
|
56
|
+
observationRecordIndex: number;
|
|
57
|
+
} | {
|
|
58
|
+
status: "source_unavailable";
|
|
59
|
+
observation: ObservationRecord;
|
|
60
|
+
observationEntryId: string;
|
|
61
|
+
observationRecordIndex: number;
|
|
62
|
+
sourceEntryIds: string[];
|
|
63
|
+
sourceEntries: Entry[];
|
|
64
|
+
missingSourceEntryIds: string[];
|
|
65
|
+
nonSourceEntryIds: string[];
|
|
66
|
+
};
|
|
67
|
+
export type RecallMemoryReflectionMatch = {
|
|
68
|
+
reflection: ReflectionRecord;
|
|
69
|
+
reflectionIndex: number;
|
|
70
|
+
};
|
|
71
|
+
export type RecallUnavailableSupportingObservation = {
|
|
72
|
+
reflection: ReflectionRecord;
|
|
73
|
+
reflectionIndex: number;
|
|
74
|
+
observationId: string;
|
|
75
|
+
};
|
|
76
|
+
export type RecallUnavailableReflectionProvenance = {
|
|
77
|
+
reflection: ReflectionRecord;
|
|
78
|
+
reflectionIndex: number;
|
|
79
|
+
reason: "legacy";
|
|
80
|
+
};
|
|
81
|
+
export type RecallMemorySourcesResult = {
|
|
82
|
+
status: "not_found";
|
|
83
|
+
memoryId: string;
|
|
84
|
+
reflectionMatches: [];
|
|
85
|
+
directObservationMatches: [];
|
|
86
|
+
observations: [];
|
|
87
|
+
sourceEntries: [];
|
|
88
|
+
unavailableSupportingObservations: [];
|
|
89
|
+
unavailableReflectionProvenance: [];
|
|
90
|
+
missingSourceEntryIds: [];
|
|
91
|
+
nonSourceEntryIds: [];
|
|
92
|
+
collision: false;
|
|
93
|
+
partial: false;
|
|
94
|
+
} | {
|
|
95
|
+
status: "found";
|
|
96
|
+
memoryId: string;
|
|
97
|
+
reflectionMatches: RecallMemoryReflectionMatch[];
|
|
98
|
+
directObservationMatches: RecallMemoryObservation[];
|
|
99
|
+
observations: RecallMemoryObservation[];
|
|
100
|
+
sourceEntries: Entry[];
|
|
101
|
+
unavailableSupportingObservations: RecallUnavailableSupportingObservation[];
|
|
102
|
+
unavailableReflectionProvenance: RecallUnavailableReflectionProvenance[];
|
|
103
|
+
missingSourceEntryIds: string[];
|
|
104
|
+
nonSourceEntryIds: string[];
|
|
105
|
+
collision: boolean;
|
|
106
|
+
partial: boolean;
|
|
107
|
+
};
|
|
108
|
+
export declare function findLastCompactionIndex(entries: Entry[]): number;
|
|
109
|
+
export declare function lastObservationCoverEndIdx(entries: Entry[]): number;
|
|
110
|
+
export declare function rawTokensSinceLastBound(entries: Entry[]): number;
|
|
111
|
+
export declare function rawTokensSinceLastCompaction(entries: Entry[]): number;
|
|
112
|
+
export declare function firstRawIdAfter(entries: Entry[], afterIndex: number): string | undefined;
|
|
113
|
+
export declare function gapRawEntries(entries: Entry[], newFirstKeptEntryId: string): Entry[];
|
|
114
|
+
export declare function rawTailEntriesBetween(entries: Entry[], fromId: string, untilId: string): Entry[];
|
|
115
|
+
export declare function recallObservationSources(entries: Entry[], observationId: string): RecallObservationSourcesResult;
|
|
116
|
+
export declare function recallMemorySources(entries: Entry[], memoryId: string): RecallMemorySourcesResult;
|
|
117
|
+
export declare function collectObservationsByCoverage(entries: Entry[], priorFirstKeptEntryId: string | undefined, newFirstKeptEntryId: string): ObservationEntryData[];
|
|
118
|
+
export interface MemoryState {
|
|
119
|
+
reflections: MemoryReflection[];
|
|
120
|
+
committedObs: ObservationRecord[];
|
|
121
|
+
pendingObs: ObservationRecord[];
|
|
122
|
+
}
|
|
123
|
+
export declare function getMemoryState(entries: Entry[]): MemoryState;
|
|
124
|
+
//# sourceMappingURL=branch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"branch.d.ts","sourceRoot":"","sources":["../../src/memory/branch.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/memory/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AASpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAI7C,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CA6F9E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../src/memory/commands/view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAUpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAI7C,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CA0E5E"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { agentLoop } from "../sdk/agent-core/index.js";
|
|
2
|
+
import { type Model } from "../sdk/ai/index.js";
|
|
3
|
+
import type { MemoryReflection, ObservationRecord } from "./types.js";
|
|
4
|
+
export declare const REFLECTOR_MAX_PASSES = 2;
|
|
5
|
+
export declare const PRUNER_MAX_PASSES = 2;
|
|
6
|
+
export declare function observationPoolTokens(observations: ObservationRecord[]): number;
|
|
7
|
+
interface LlmArgs {
|
|
8
|
+
model: Model<any>;
|
|
9
|
+
apiKey: string;
|
|
10
|
+
headers?: Record<string, string>;
|
|
11
|
+
signal?: AbortSignal;
|
|
12
|
+
agentLoop?: typeof agentLoop;
|
|
13
|
+
onEvent?: (event: import("../sdk/agent-core/index.js").AgentEvent) => void;
|
|
14
|
+
maxTurns?: number;
|
|
15
|
+
}
|
|
16
|
+
export type ObservationCoverageTag = "uncited" | "cited" | "reinforced";
|
|
17
|
+
export interface CoverageTagCounts {
|
|
18
|
+
uncited: number;
|
|
19
|
+
cited: number;
|
|
20
|
+
reinforced: number;
|
|
21
|
+
}
|
|
22
|
+
export declare function deriveObservationCoverageTags(reflections: MemoryReflection[], observations: ObservationRecord[]): Map<string, ObservationCoverageTag>;
|
|
23
|
+
export declare function coverageTagCounts(reflections: MemoryReflection[], observations: ObservationRecord[]): CoverageTagCounts;
|
|
24
|
+
export declare function renderObservationsForPrunerPrompt(observations: ObservationRecord[], coverageTags: ReadonlyMap<string, ObservationCoverageTag>): string;
|
|
25
|
+
export declare function migrateLegacyReflections(reflections: MemoryReflection[]): MemoryReflection[];
|
|
26
|
+
export declare function normalizeSupportingObservationIds(supportingObservationIds: readonly string[] | undefined, allowedObservationIds: readonly string[]): string[] | undefined;
|
|
27
|
+
export interface ReflectorPassContext {
|
|
28
|
+
pass: number;
|
|
29
|
+
maxPasses: number;
|
|
30
|
+
minSupportingObservationIds: number;
|
|
31
|
+
}
|
|
32
|
+
export type ReflectionProposal = {
|
|
33
|
+
content: string;
|
|
34
|
+
supportingObservationIds?: readonly string[];
|
|
35
|
+
};
|
|
36
|
+
export interface ApplyReflectionProposalsResult {
|
|
37
|
+
reflections: MemoryReflection[];
|
|
38
|
+
accepted: number;
|
|
39
|
+
added: number;
|
|
40
|
+
merged: number;
|
|
41
|
+
promoted: number;
|
|
42
|
+
duplicates: number;
|
|
43
|
+
unsupported: number;
|
|
44
|
+
}
|
|
45
|
+
export interface ReflectorPassStats {
|
|
46
|
+
pass: number;
|
|
47
|
+
toolCalls: number;
|
|
48
|
+
accepted: number;
|
|
49
|
+
added: number;
|
|
50
|
+
merged: number;
|
|
51
|
+
promoted: number;
|
|
52
|
+
duplicates: number;
|
|
53
|
+
unsupported: number;
|
|
54
|
+
failed: boolean;
|
|
55
|
+
}
|
|
56
|
+
export interface ReflectorStats {
|
|
57
|
+
passes: ReflectorPassStats[];
|
|
58
|
+
toolCalls: number;
|
|
59
|
+
accepted: number;
|
|
60
|
+
added: number;
|
|
61
|
+
merged: number;
|
|
62
|
+
promoted: number;
|
|
63
|
+
duplicates: number;
|
|
64
|
+
unsupported: number;
|
|
65
|
+
failedPass?: number;
|
|
66
|
+
}
|
|
67
|
+
export interface ReflectorResult {
|
|
68
|
+
reflections: MemoryReflection[];
|
|
69
|
+
stats: ReflectorStats;
|
|
70
|
+
}
|
|
71
|
+
export declare function renderReflectionsForReflectorPrompt(reflections: MemoryReflection[]): string;
|
|
72
|
+
export declare function applyReflectionProposals(reflections: MemoryReflection[], proposals: readonly ReflectionProposal[], allowedObservationIds: readonly string[], passContext: Pick<ReflectorPassContext, "minSupportingObservationIds">): ApplyReflectionProposalsResult;
|
|
73
|
+
export declare function runReflector(args: LlmArgs, reflections: MemoryReflection[], observations: ObservationRecord[], onPassStart?: (pass: number, maxPasses: number) => void): Promise<ReflectorResult>;
|
|
74
|
+
export type PrunerStopReason = "empty" | "under_target" | "fell_back" | "zero_drops" | "max_passes";
|
|
75
|
+
export interface PrunerPassStats {
|
|
76
|
+
pass: number;
|
|
77
|
+
poolTokens: number;
|
|
78
|
+
targetTokens: number;
|
|
79
|
+
deltaTokens: number;
|
|
80
|
+
dropped: number;
|
|
81
|
+
remaining: number;
|
|
82
|
+
fellBack: boolean;
|
|
83
|
+
}
|
|
84
|
+
export interface PrunerResult {
|
|
85
|
+
observations: ObservationRecord[];
|
|
86
|
+
droppedIds: string[];
|
|
87
|
+
fellBack: boolean;
|
|
88
|
+
passes: PrunerPassStats[];
|
|
89
|
+
stopReason: PrunerStopReason;
|
|
90
|
+
}
|
|
91
|
+
export declare function runPruner(args: LlmArgs, reflections: MemoryReflection[], observations: ObservationRecord[], budgetTokens: number, onPassStart?: (pass: number, maxPasses: number) => void): Promise<PrunerResult>;
|
|
92
|
+
/**
|
|
93
|
+
* Format an observation for Markdown-safe display.
|
|
94
|
+
* Wraps the ID in backticks so it renders as inline code in Markdown
|
|
95
|
+
* rather than being misinterpreted as a link reference.
|
|
96
|
+
*/
|
|
97
|
+
export declare function observationToMarkdown(record: ObservationRecord): string;
|
|
98
|
+
/**
|
|
99
|
+
* Format a reflection for Markdown-safe display.
|
|
100
|
+
* Wraps the ID in backticks so it renders as inline code in Markdown.
|
|
101
|
+
*/
|
|
102
|
+
export declare function reflectionToMarkdown(reflection: MemoryReflection): string;
|
|
103
|
+
/**
|
|
104
|
+
* Format observations as a Markdown bullet list for display.
|
|
105
|
+
*/
|
|
106
|
+
export declare function observationsToMarkdownList(observations: ObservationRecord[]): string;
|
|
107
|
+
/**
|
|
108
|
+
* Format reflections as a Markdown bullet list for display.
|
|
109
|
+
*/
|
|
110
|
+
export declare function reflectionsToMarkdownList(reflections: MemoryReflection[]): string;
|
|
111
|
+
export declare function renderSummary(reflections: MemoryReflection[], observations: ObservationRecord[]): string;
|
|
112
|
+
export {};
|
|
113
|
+
//# sourceMappingURL=compaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compaction.d.ts","sourceRoot":"","sources":["../../src/memory/compaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA4E,MAAM,4BAA4B,CAAC;AAEjI,OAAO,EAAsB,KAAK,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAUpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAoB,MAAM,YAAY,CAAC;AAExF,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAGnC,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAE/E;AAED,UAAU,OAAO;IAChB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,SAAS,CAAC;IAC7B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,4BAA4B,EAAE,UAAU,KAAK,IAAI,CAAC;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAuHD,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,OAAO,GAAG,YAAY,CAAC;AAExE,MAAM,WAAW,iBAAiB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,6BAA6B,CAC5C,WAAW,EAAE,gBAAgB,EAAE,EAC/B,YAAY,EAAE,iBAAiB,EAAE,GAC/B,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAiBrC;AAED,wBAAgB,iBAAiB,CAChC,WAAW,EAAE,gBAAgB,EAAE,EAC/B,YAAY,EAAE,iBAAiB,EAAE,GAC/B,iBAAiB,CAOnB;AAED,wBAAgB,iCAAiC,CAChD,YAAY,EAAE,iBAAiB,EAAE,EACjC,YAAY,EAAE,WAAW,CAAC,MAAM,EAAE,sBAAsB,CAAC,GACvD,MAAM,CAQR;AAED,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,EAAE,CAsC5F;AA+BD,wBAAgB,iCAAiC,CAChD,wBAAwB,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EACvD,qBAAqB,EAAE,SAAS,MAAM,EAAE,GACtC,MAAM,EAAE,GAAG,SAAS,CActB;AAED,MAAM,WAAW,oBAAoB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,2BAA2B,EAAE,MAAM,CAAC;CACpC;AAED,MAAM,MAAM,kBAAkB,GAAG;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,wBAAwB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7C,CAAC;AAEF,MAAM,WAAW,8BAA8B;IAC9C,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC9B,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC/B,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAChC,KAAK,EAAE,cAAc,CAAC;CACtB;AAiFD,wBAAgB,mCAAmC,CAAC,WAAW,EAAE,gBAAgB,EAAE,GAAG,MAAM,CAE3F;AAED,wBAAgB,wBAAwB,CACvC,WAAW,EAAE,gBAAgB,EAAE,EAC/B,SAAS,EAAE,SAAS,kBAAkB,EAAE,EACxC,qBAAqB,EAAE,SAAS,MAAM,EAAE,EACxC,WAAW,EAAE,IAAI,CAAC,oBAAoB,EAAE,6BAA6B,CAAC,GACpE,8BAA8B,CAiFhC;AAuJD,wBAAsB,YAAY,CACjC,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,gBAAgB,EAAE,EAC/B,YAAY,EAAE,iBAAiB,EAAE,EACjC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,GACrD,OAAO,CAAC,eAAe,CAAC,CAkC1B;AAED,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,cAAc,GAAG,WAAW,GAAG,YAAY,GAAG,YAAY,CAAC;AAEpG,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC5B,YAAY,EAAE,iBAAiB,EAAE,CAAC;IAClC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,UAAU,EAAE,gBAAgB,CAAC;CAC7B;AA2MD,wBAAsB,SAAS,CAC9B,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,gBAAgB,EAAE,EAC/B,YAAY,EAAE,iBAAiB,EAAE,EACjC,YAAY,EAAE,MAAM,EACpB,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,GACrD,OAAO,CAAC,YAAY,CAAC,CAiFvB;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAEvE;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,gBAAgB,GAAG,MAAM,CAGzE;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAEpF;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,gBAAgB,EAAE,GAAG,MAAM,CAEjF;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,gBAAgB,EAAE,EAAE,YAAY,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAaxG"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export interface Config {
|
|
2
|
+
observationThresholdTokens: number;
|
|
3
|
+
compactionThresholdTokens: number;
|
|
4
|
+
reflectionThresholdTokens: number;
|
|
5
|
+
passive: boolean;
|
|
6
|
+
debugLog: boolean;
|
|
7
|
+
compactionModel?: {
|
|
8
|
+
provider: string;
|
|
9
|
+
id: string;
|
|
10
|
+
};
|
|
11
|
+
observerMaxTurnsPerRun?: number;
|
|
12
|
+
observerMaxChunkTokens?: number;
|
|
13
|
+
reflectorMaxTurnsPerPass?: number;
|
|
14
|
+
prunerMaxTurnsPerPass?: number;
|
|
15
|
+
/** @deprecated Use reflectorMaxTurnsPerPass and prunerMaxTurnsPerPass. */
|
|
16
|
+
compactionMaxToolCalls?: number;
|
|
17
|
+
}
|
|
18
|
+
export interface EffectiveTurnLimits {
|
|
19
|
+
observerMaxTurnsPerRun: number;
|
|
20
|
+
reflectorMaxTurnsPerPass: number;
|
|
21
|
+
prunerMaxTurnsPerPass: number;
|
|
22
|
+
}
|
|
23
|
+
export declare const DEFAULTS: Config;
|
|
24
|
+
export declare function resolveTurnLimits(config: Config): EffectiveTurnLimits;
|
|
25
|
+
export declare function readEnvConfig(env?: NodeJS.ProcessEnv): Partial<Config>;
|
|
26
|
+
export declare function loadConfig(cwd: string, env?: NodeJS.ProcessEnv): Config;
|
|
27
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/memory/config.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,MAAM;IACtB,0BAA0B,EAAE,MAAM,CAAC;IACnC,yBAAyB,EAAE,MAAM,CAAC;IAClC,yBAAyB,EAAE,MAAM,CAAC;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,0EAA0E;IAC1E,sBAAsB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IACnC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,wBAAwB,EAAE,MAAM,CAAC;IACjC,qBAAqB,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,QAAQ,EAAE,MAOtB,CAAC;AAiCF,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAMrE;AAED,wBAAgB,aAAa,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,CAOnF;AAaD,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAUpF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const DEBUG_LOG_MAX_BYTES: number;
|
|
2
|
+
export declare const DEBUG_LOG_RELATIVE_PATH: string;
|
|
3
|
+
interface DebugLogContext {
|
|
4
|
+
enabled: boolean;
|
|
5
|
+
cwd?: string;
|
|
6
|
+
runId?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function withDebugLogContext<T>(context: DebugLogContext, fn: () => T): T;
|
|
9
|
+
export declare function isDebugLogEnabled(): boolean;
|
|
10
|
+
export declare function debugLog(event: string, data?: Record<string, unknown>): void;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=debug-log.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug-log.d.ts","sourceRoot":"","sources":["../../src/memory/debug-log.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,mBAAmB,QAAmB,CAAC;AACpD,eAAO,MAAM,uBAAuB,QAA+C,CAAC;AAEpF,UAAU,eAAe;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAID,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAG/E;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,IAAI,CAmBhF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compaction-hook.d.ts","sourceRoot":"","sources":["../../../src/memory/hooks/compaction-hook.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAoB,MAAM,iCAAiC,CAAC;AAsBtF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AA6B7C,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CA2V/E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compaction-trigger.d.ts","sourceRoot":"","sources":["../../../src/memory/hooks/compaction-trigger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAU7C,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAsFlF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observer-trigger.d.ts","sourceRoot":"","sources":["../../../src/memory/hooks/observer-trigger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAWpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAK7C,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAyKhF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../../src/memory/ids.ts"],"names":[],"mappings":"AAEA,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE9C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAWjE,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAAE,EAAE,YAAY,QAe3D"}
|
package/dist/memory/index.js
CHANGED
|
@@ -6,6 +6,7 @@ import { registerObserverTrigger } from "./hooks/observer-trigger.js";
|
|
|
6
6
|
import { Runtime } from "./runtime.js";
|
|
7
7
|
import { registerRecallTool } from "./tools/recall-observation.js";
|
|
8
8
|
import { registerReadProjectObservationsTool } from "./tools/read-project-observations.js";
|
|
9
|
+
import { registerWriteProjectObservationTool } from "./tools/write-project-observation.js";
|
|
9
10
|
export default function observationalMemory(pi) {
|
|
10
11
|
const runtime = new Runtime();
|
|
11
12
|
// Log extension load so we can confirm it's running in serve mode.
|
|
@@ -17,4 +18,5 @@ export default function observationalMemory(pi) {
|
|
|
17
18
|
registerViewCommand(pi, runtime);
|
|
18
19
|
registerRecallTool(pi);
|
|
19
20
|
registerReadProjectObservationsTool(pi);
|
|
21
|
+
registerWriteProjectObservationTool(pi);
|
|
20
22
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-budget.d.ts","sourceRoot":"","sources":["../../src/memory/model-budget.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAE5C,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,SAAS,GAAE,MAA8B,GAAG,MAAM,CAIrG"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { agentLoop } from "../sdk/agent-core/index.js";
|
|
2
|
+
import type { Model } from "../sdk/ai/index.js";
|
|
3
|
+
import type { ObservationRecord } from "./types.js";
|
|
4
|
+
interface RunObserverArgs {
|
|
5
|
+
model: Model<any>;
|
|
6
|
+
apiKey: string;
|
|
7
|
+
headers?: Record<string, string>;
|
|
8
|
+
priorReflections: string[];
|
|
9
|
+
priorObservations: string[];
|
|
10
|
+
chunk: string;
|
|
11
|
+
allowedSourceEntryIds: string[];
|
|
12
|
+
signal?: AbortSignal;
|
|
13
|
+
agentLoop?: typeof agentLoop;
|
|
14
|
+
maxTurns?: number;
|
|
15
|
+
}
|
|
16
|
+
export declare const OBSERVATION_TIMESTAMP_PATTERN = "^[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}$";
|
|
17
|
+
export declare function normalizeSourceEntryIds(sourceEntryIds: readonly string[] | undefined, allowedSourceEntryIds: readonly string[]): string[] | undefined;
|
|
18
|
+
export declare function runObserver(args: RunObserverArgs): Promise<ObservationRecord[] | undefined>;
|
|
19
|
+
export declare function observationsToPromptLines(records: ObservationRecord[]): string[];
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=observer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../../src/memory/observer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA2D,MAAM,4BAA4B,CAAC;AAChH,OAAO,KAAK,EAAW,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAOzD,OAAO,KAAK,EAAE,iBAAiB,EAAa,MAAM,YAAY,CAAC;AAE/D,UAAU,eAAe;IACxB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,SAAS,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AASD,eAAO,MAAM,6BAA6B,mDAAmD,CAAC;AAkC9F,wBAAgB,uBAAuB,CACtC,cAAc,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EAC7C,qBAAqB,EAAE,SAAS,MAAM,EAAE,GACtC,MAAM,EAAE,GAAG,SAAS,CAYtB;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,EAAE,GAAG,SAAS,CAAC,CA+GjG;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,MAAM,EAAE,CAEhF"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Module-level singleton that bridges the server's SessionStore into the
|
|
3
|
+
* memory extension so the `read_project_observations` tool can query
|
|
4
|
+
* cross-session observations.
|
|
5
|
+
*
|
|
6
|
+
* Set once by the SessionStreamManager at startup. Read by tools at runtime.
|
|
7
|
+
*/
|
|
8
|
+
export interface ProjectObservationsStore {
|
|
9
|
+
insertProjectObservations(projectId: string, sessionId: string, observations: Array<{
|
|
10
|
+
id: string;
|
|
11
|
+
content: string;
|
|
12
|
+
relevance: string;
|
|
13
|
+
}>, createdAt: number): void;
|
|
14
|
+
searchProjectObservations(projectId: string, query: string, limit?: number): Array<{
|
|
15
|
+
content: string;
|
|
16
|
+
relevance: string;
|
|
17
|
+
createdAt: number;
|
|
18
|
+
sessionId: string;
|
|
19
|
+
}>;
|
|
20
|
+
getProjectByCwd(cwd: string): string | null;
|
|
21
|
+
}
|
|
22
|
+
export declare function setProjectObsStore(store: ProjectObservationsStore): void;
|
|
23
|
+
export declare function getProjectObsStore(): ProjectObservationsStore | null;
|
|
24
|
+
//# sourceMappingURL=project-observations-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-observations-store.d.ts","sourceRoot":"","sources":["../../src/memory/project-observations-store.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,wBAAwB;IACxC,yBAAyB,CACxB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,EACvE,SAAS,EAAE,MAAM,GACf,IAAI,CAAC;IACR,yBAAyB,CACxB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,GACZ,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvF,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CAC5C;AAID,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,wBAAwB,GAAG,IAAI,CAExE;AAED,wBAAgB,kBAAkB,IAAI,wBAAwB,GAAG,IAAI,CAEpE"}
|