@roj-ai/sdk 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bootstrap.d.ts +453 -0
- package/dist/bootstrap.d.ts.map +1 -0
- package/dist/builtin-events.d.ts +16 -0
- package/dist/builtin-events.d.ts.map +1 -0
- package/dist/bun-platform/fs.d.ts +9 -0
- package/dist/bun-platform/fs.d.ts.map +1 -0
- package/dist/bun-platform/index.d.ts +12 -0
- package/dist/bun-platform/index.d.ts.map +1 -0
- package/dist/bun-platform/process.d.ts +6 -0
- package/dist/bun-platform/process.d.ts.map +1 -0
- package/dist/config.d.ts +38 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.test.d.ts +2 -0
- package/dist/config.test.d.ts.map +1 -0
- package/dist/core/agent-loop.integration.test.d.ts +2 -0
- package/dist/core/agent-loop.integration.test.d.ts.map +1 -0
- package/dist/core/agents/agent-config.test.d.ts +2 -0
- package/dist/core/agents/agent-config.test.d.ts.map +1 -0
- package/dist/core/agents/agent-roles.d.ts +33 -0
- package/dist/core/agents/agent-roles.d.ts.map +1 -0
- package/dist/core/agents/agent-shutdown.test.d.ts +6 -0
- package/dist/core/agents/agent-shutdown.test.d.ts.map +1 -0
- package/dist/core/agents/agent.d.ts +234 -0
- package/dist/core/agents/agent.d.ts.map +1 -0
- package/dist/core/agents/agent.test.d.ts +2 -0
- package/dist/core/agents/agent.test.d.ts.map +1 -0
- package/dist/core/agents/communicator.d.ts +3 -0
- package/dist/core/agents/communicator.d.ts.map +1 -0
- package/dist/core/agents/config.d.ts +84 -0
- package/dist/core/agents/config.d.ts.map +1 -0
- package/dist/core/agents/context.d.ts +16 -0
- package/dist/core/agents/context.d.ts.map +1 -0
- package/dist/core/agents/debounce.d.ts +52 -0
- package/dist/core/agents/debounce.d.ts.map +1 -0
- package/dist/core/agents/handler-events.test.d.ts +5 -0
- package/dist/core/agents/handler-events.test.d.ts.map +1 -0
- package/dist/core/agents/index.d.ts +2 -0
- package/dist/core/agents/index.d.ts.map +1 -0
- package/dist/core/agents/response-sanitizer.d.ts +25 -0
- package/dist/core/agents/response-sanitizer.d.ts.map +1 -0
- package/dist/core/agents/response-sanitizer.test.d.ts +2 -0
- package/dist/core/agents/response-sanitizer.test.d.ts.map +1 -0
- package/dist/core/agents/retry.d.ts +40 -0
- package/dist/core/agents/retry.d.ts.map +1 -0
- package/dist/core/agents/schema.d.ts +57 -0
- package/dist/core/agents/schema.d.ts.map +1 -0
- package/dist/core/agents/state.d.ts +255 -0
- package/dist/core/agents/state.d.ts.map +1 -0
- package/dist/core/context/state.d.ts +28 -0
- package/dist/core/context/state.d.ts.map +1 -0
- package/dist/core/errors.d.ts +29 -0
- package/dist/core/errors.d.ts.map +1 -0
- package/dist/core/event-sourcing.integration.test.d.ts +2 -0
- package/dist/core/event-sourcing.integration.test.d.ts.map +1 -0
- package/dist/core/events/base-event-store.d.ts +55 -0
- package/dist/core/events/base-event-store.d.ts.map +1 -0
- package/dist/core/events/event-store.d.ts +108 -0
- package/dist/core/events/event-store.d.ts.map +1 -0
- package/dist/core/events/file.d.ts +50 -0
- package/dist/core/events/file.d.ts.map +1 -0
- package/dist/core/events/file.test.d.ts +2 -0
- package/dist/core/events/file.test.d.ts.map +1 -0
- package/dist/core/events/index.d.ts +4 -0
- package/dist/core/events/index.d.ts.map +1 -0
- package/dist/core/events/memory.d.ts +43 -0
- package/dist/core/events/memory.d.ts.map +1 -0
- package/dist/core/events/memory.test.d.ts +2 -0
- package/dist/core/events/memory.test.d.ts.map +1 -0
- package/dist/core/events/metadata-utils.d.ts +27 -0
- package/dist/core/events/metadata-utils.d.ts.map +1 -0
- package/dist/core/events/test-helpers.d.ts +28 -0
- package/dist/core/events/test-helpers.d.ts.map +1 -0
- package/dist/core/events/types.d.ts +46 -0
- package/dist/core/events/types.d.ts.map +1 -0
- package/dist/core/file-store/file-store.d.ts +56 -0
- package/dist/core/file-store/file-store.d.ts.map +1 -0
- package/dist/core/file-store/types.d.ts +50 -0
- package/dist/core/file-store/types.d.ts.map +1 -0
- package/dist/core/image/image-processor.d.ts +15 -0
- package/dist/core/image/image-processor.d.ts.map +1 -0
- package/dist/core/image/image-processor.test.d.ts +2 -0
- package/dist/core/image/image-processor.test.d.ts.map +1 -0
- package/dist/core/image/index.d.ts +5 -0
- package/dist/core/image/index.d.ts.map +1 -0
- package/dist/core/image/noop-resizer.d.ts +5 -0
- package/dist/core/image/noop-resizer.d.ts.map +1 -0
- package/dist/core/image/types.d.ts +20 -0
- package/dist/core/image/types.d.ts.map +1 -0
- package/dist/core/image/vips-resizer.d.ts +21 -0
- package/dist/core/image/vips-resizer.d.ts.map +1 -0
- package/dist/core/image/vips-resizer.test.d.ts +2 -0
- package/dist/core/image/vips-resizer.test.d.ts.map +1 -0
- package/dist/core/llm/anthropic.d.ts +51 -0
- package/dist/core/llm/anthropic.d.ts.map +1 -0
- package/dist/core/llm/anthropic.test.d.ts +2 -0
- package/dist/core/llm/anthropic.test.d.ts.map +1 -0
- package/dist/core/llm/cache-breakpoints.d.ts +17 -0
- package/dist/core/llm/cache-breakpoints.d.ts.map +1 -0
- package/dist/core/llm/cache-live.test.d.ts +16 -0
- package/dist/core/llm/cache-live.test.d.ts.map +1 -0
- package/dist/core/llm/index.d.ts +16 -0
- package/dist/core/llm/index.d.ts.map +1 -0
- package/dist/core/llm/llm-log-types.d.ts +148 -0
- package/dist/core/llm/llm-log-types.d.ts.map +1 -0
- package/dist/core/llm/logger.d.ts +74 -0
- package/dist/core/llm/logger.d.ts.map +1 -0
- package/dist/core/llm/logger.test.d.ts +7 -0
- package/dist/core/llm/logger.test.d.ts.map +1 -0
- package/dist/core/llm/logging-provider.d.ts +20 -0
- package/dist/core/llm/logging-provider.d.ts.map +1 -0
- package/dist/core/llm/middleware.d.ts +79 -0
- package/dist/core/llm/middleware.d.ts.map +1 -0
- package/dist/core/llm/mock.d.ts +79 -0
- package/dist/core/llm/mock.d.ts.map +1 -0
- package/dist/core/llm/mock.test.d.ts +2 -0
- package/dist/core/llm/mock.test.d.ts.map +1 -0
- package/dist/core/llm/openrouter-mapping.test.d.ts +2 -0
- package/dist/core/llm/openrouter-mapping.test.d.ts.map +1 -0
- package/dist/core/llm/openrouter.d.ts +37 -0
- package/dist/core/llm/openrouter.d.ts.map +1 -0
- package/dist/core/llm/openrouter.test.d.ts +2 -0
- package/dist/core/llm/openrouter.test.d.ts.map +1 -0
- package/dist/core/llm/provider-integration.test.d.ts +12 -0
- package/dist/core/llm/provider-integration.test.d.ts.map +1 -0
- package/dist/core/llm/provider.d.ts +175 -0
- package/dist/core/llm/provider.d.ts.map +1 -0
- package/dist/core/llm/routing-provider.d.ts +31 -0
- package/dist/core/llm/routing-provider.d.ts.map +1 -0
- package/dist/core/llm/routing-provider.test.d.ts +2 -0
- package/dist/core/llm/routing-provider.test.d.ts.map +1 -0
- package/dist/core/llm/schema.d.ts +24 -0
- package/dist/core/llm/schema.d.ts.map +1 -0
- package/dist/core/llm/snapshot-fetch.d.ts +21 -0
- package/dist/core/llm/snapshot-fetch.d.ts.map +1 -0
- package/dist/core/llm/snapshot-middleware.d.ts +71 -0
- package/dist/core/llm/snapshot-middleware.d.ts.map +1 -0
- package/dist/core/llm/snapshot-middleware.test.d.ts +2 -0
- package/dist/core/llm/snapshot-middleware.test.d.ts.map +1 -0
- package/dist/core/llm/state.d.ts +73 -0
- package/dist/core/llm/state.d.ts.map +1 -0
- package/dist/core/llm/tokens.d.ts +36 -0
- package/dist/core/llm/tokens.d.ts.map +1 -0
- package/dist/core/multi-agent.integration.test.d.ts +2 -0
- package/dist/core/multi-agent.integration.test.d.ts.map +1 -0
- package/dist/core/plugin-hooks.integration.test.d.ts +2 -0
- package/dist/core/plugin-hooks.integration.test.d.ts.map +1 -0
- package/dist/core/plugins/hook-types.d.ts +55 -0
- package/dist/core/plugins/hook-types.d.ts.map +1 -0
- package/dist/core/plugins/index.d.ts +23 -0
- package/dist/core/plugins/index.d.ts.map +1 -0
- package/dist/core/plugins/plugin-builder.d.ts +474 -0
- package/dist/core/plugins/plugin-builder.d.ts.map +1 -0
- package/dist/core/preset/config.d.ts +55 -0
- package/dist/core/preset/config.d.ts.map +1 -0
- package/dist/core/preset/index.d.ts +8 -0
- package/dist/core/preset/index.d.ts.map +1 -0
- package/dist/core/preset/preset-builder.d.ts +44 -0
- package/dist/core/preset/preset-builder.d.ts.map +1 -0
- package/dist/core/session-lifecycle.integration.test.d.ts +2 -0
- package/dist/core/session-lifecycle.integration.test.d.ts.map +1 -0
- package/dist/core/sessions/apply-event.d.ts +19 -0
- package/dist/core/sessions/apply-event.d.ts.map +1 -0
- package/dist/core/sessions/context.d.ts +34 -0
- package/dist/core/sessions/context.d.ts.map +1 -0
- package/dist/core/sessions/fork-utils.d.ts +20 -0
- package/dist/core/sessions/fork-utils.d.ts.map +1 -0
- package/dist/core/sessions/fork-utils.test.d.ts +2 -0
- package/dist/core/sessions/fork-utils.test.d.ts.map +1 -0
- package/dist/core/sessions/reducer.d.ts +50 -0
- package/dist/core/sessions/reducer.d.ts.map +1 -0
- package/dist/core/sessions/schema.d.ts +82 -0
- package/dist/core/sessions/schema.d.ts.map +1 -0
- package/dist/core/sessions/session-environment.d.ts +13 -0
- package/dist/core/sessions/session-environment.d.ts.map +1 -0
- package/dist/core/sessions/session-manager.d.ts +183 -0
- package/dist/core/sessions/session-manager.d.ts.map +1 -0
- package/dist/core/sessions/session-store.d.ts +69 -0
- package/dist/core/sessions/session-store.d.ts.map +1 -0
- package/dist/core/sessions/session.d.ts +212 -0
- package/dist/core/sessions/session.d.ts.map +1 -0
- package/dist/core/sessions/session.test.d.ts +2 -0
- package/dist/core/sessions/session.test.d.ts.map +1 -0
- package/dist/core/sessions/state.d.ts +110 -0
- package/dist/core/sessions/state.d.ts.map +1 -0
- package/dist/core/system.d.ts +97 -0
- package/dist/core/system.d.ts.map +1 -0
- package/dist/core/tools/context.d.ts +3 -0
- package/dist/core/tools/context.d.ts.map +1 -0
- package/dist/core/tools/definition.d.ts +10 -0
- package/dist/core/tools/definition.d.ts.map +1 -0
- package/dist/core/tools/executor.d.ts +28 -0
- package/dist/core/tools/executor.d.ts.map +1 -0
- package/dist/core/tools/executor.test.d.ts +2 -0
- package/dist/core/tools/executor.test.d.ts.map +1 -0
- package/dist/core/tools/index.d.ts +4 -0
- package/dist/core/tools/index.d.ts.map +1 -0
- package/dist/core/tools/schema.d.ts +61 -0
- package/dist/core/tools/schema.d.ts.map +1 -0
- package/dist/core/tools/state.d.ts +28 -0
- package/dist/core/tools/state.d.ts.map +1 -0
- package/dist/index.d.ts +111 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/lib/json/index.d.ts +17 -0
- package/dist/lib/json/index.d.ts.map +1 -0
- package/dist/lib/logger/console.d.ts +35 -0
- package/dist/lib/logger/console.d.ts.map +1 -0
- package/dist/lib/logger/console.test.d.ts +2 -0
- package/dist/lib/logger/console.test.d.ts.map +1 -0
- package/dist/lib/logger/file.d.ts +20 -0
- package/dist/lib/logger/file.d.ts.map +1 -0
- package/dist/lib/logger/index.d.ts +5 -0
- package/dist/lib/logger/index.d.ts.map +1 -0
- package/dist/lib/logger/logger.d.ts +87 -0
- package/dist/lib/logger/logger.d.ts.map +1 -0
- package/dist/lib/logger/ring-buffer.d.ts +33 -0
- package/dist/lib/logger/ring-buffer.d.ts.map +1 -0
- package/dist/lib/logger/tee.d.ts +15 -0
- package/dist/lib/logger/tee.d.ts.map +1 -0
- package/dist/lib/mime.d.ts +9 -0
- package/dist/lib/mime.d.ts.map +1 -0
- package/dist/lib/never.d.ts +2 -0
- package/dist/lib/never.d.ts.map +1 -0
- package/dist/lib/utils/hash.d.ts +19 -0
- package/dist/lib/utils/hash.d.ts.map +1 -0
- package/dist/lib/utils/result.d.ts +26 -0
- package/dist/lib/utils/result.d.ts.map +1 -0
- package/dist/platform/fs.d.ts +39 -0
- package/dist/platform/fs.d.ts.map +1 -0
- package/dist/platform/index.d.ts +21 -0
- package/dist/platform/index.d.ts.map +1 -0
- package/dist/platform/process.d.ts +24 -0
- package/dist/platform/process.d.ts.map +1 -0
- package/dist/plugins/agent-status/plugin.d.ts +8 -0
- package/dist/plugins/agent-status/plugin.d.ts.map +1 -0
- package/dist/plugins/agents/agents.integration.test.d.ts +2 -0
- package/dist/plugins/agents/agents.integration.test.d.ts.map +1 -0
- package/dist/plugins/agents/index.d.ts +3 -0
- package/dist/plugins/agents/index.d.ts.map +1 -0
- package/dist/plugins/agents/plugin.d.ts +57 -0
- package/dist/plugins/agents/plugin.d.ts.map +1 -0
- package/dist/plugins/context-compact/context-compact.integration.test.d.ts +2 -0
- package/dist/plugins/context-compact/context-compact.integration.test.d.ts.map +1 -0
- package/dist/plugins/context-compact/context-compactor.d.ts +88 -0
- package/dist/plugins/context-compact/context-compactor.d.ts.map +1 -0
- package/dist/plugins/context-compact/context-compactor.test.d.ts +2 -0
- package/dist/plugins/context-compact/context-compactor.test.d.ts.map +1 -0
- package/dist/plugins/context-compact/history-offloader.d.ts +17 -0
- package/dist/plugins/context-compact/history-offloader.d.ts.map +1 -0
- package/dist/plugins/context-compact/history-offloader.test.d.ts +2 -0
- package/dist/plugins/context-compact/history-offloader.test.d.ts.map +1 -0
- package/dist/plugins/context-compact/index.d.ts +4 -0
- package/dist/plugins/context-compact/index.d.ts.map +1 -0
- package/dist/plugins/context-compact/plugin.d.ts +15 -0
- package/dist/plugins/context-compact/plugin.d.ts.map +1 -0
- package/dist/plugins/filesystem/filesystem.integration.test.d.ts +2 -0
- package/dist/plugins/filesystem/filesystem.integration.test.d.ts.map +1 -0
- package/dist/plugins/filesystem/helpers.d.ts +34 -0
- package/dist/plugins/filesystem/helpers.d.ts.map +1 -0
- package/dist/plugins/filesystem/index.d.ts +5 -0
- package/dist/plugins/filesystem/index.d.ts.map +1 -0
- package/dist/plugins/filesystem/listing.d.ts +38 -0
- package/dist/plugins/filesystem/listing.d.ts.map +1 -0
- package/dist/plugins/filesystem/plugin.d.ts +53 -0
- package/dist/plugins/filesystem/plugin.d.ts.map +1 -0
- package/dist/plugins/filesystem/schema.d.ts +7 -0
- package/dist/plugins/filesystem/schema.d.ts.map +1 -0
- package/dist/plugins/git-status/index.d.ts +2 -0
- package/dist/plugins/git-status/index.d.ts.map +1 -0
- package/dist/plugins/git-status/plugin.d.ts +12 -0
- package/dist/plugins/git-status/plugin.d.ts.map +1 -0
- package/dist/plugins/limits-guard/config.d.ts +23 -0
- package/dist/plugins/limits-guard/config.d.ts.map +1 -0
- package/dist/plugins/limits-guard/index.d.ts +5 -0
- package/dist/plugins/limits-guard/index.d.ts.map +1 -0
- package/dist/plugins/limits-guard/limit-guard.d.ts +40 -0
- package/dist/plugins/limits-guard/limit-guard.d.ts.map +1 -0
- package/dist/plugins/limits-guard/limit-guard.test.d.ts +2 -0
- package/dist/plugins/limits-guard/limit-guard.test.d.ts.map +1 -0
- package/dist/plugins/limits-guard/limits-guard.integration.test.d.ts +2 -0
- package/dist/plugins/limits-guard/limits-guard.integration.test.d.ts.map +1 -0
- package/dist/plugins/limits-guard/plugin.d.ts +39 -0
- package/dist/plugins/limits-guard/plugin.d.ts.map +1 -0
- package/dist/plugins/llm-debug/index.d.ts +2 -0
- package/dist/plugins/llm-debug/index.d.ts.map +1 -0
- package/dist/plugins/llm-debug/llm-debug.integration.test.d.ts +2 -0
- package/dist/plugins/llm-debug/llm-debug.integration.test.d.ts.map +1 -0
- package/dist/plugins/llm-debug/plugin.d.ts +31 -0
- package/dist/plugins/llm-debug/plugin.d.ts.map +1 -0
- package/dist/plugins/logs/index.d.ts +2 -0
- package/dist/plugins/logs/index.d.ts.map +1 -0
- package/dist/plugins/logs/plugin.d.ts +10 -0
- package/dist/plugins/logs/plugin.d.ts.map +1 -0
- package/dist/plugins/mailbox/helpers.d.ts +20 -0
- package/dist/plugins/mailbox/helpers.d.ts.map +1 -0
- package/dist/plugins/mailbox/index.d.ts +9 -0
- package/dist/plugins/mailbox/index.d.ts.map +1 -0
- package/dist/plugins/mailbox/mailbox.integration.test.d.ts +2 -0
- package/dist/plugins/mailbox/mailbox.integration.test.d.ts.map +1 -0
- package/dist/plugins/mailbox/plugin.d.ts +31 -0
- package/dist/plugins/mailbox/plugin.d.ts.map +1 -0
- package/dist/plugins/mailbox/prompts.d.ts +21 -0
- package/dist/plugins/mailbox/prompts.d.ts.map +1 -0
- package/dist/plugins/mailbox/query.d.ts +33 -0
- package/dist/plugins/mailbox/query.d.ts.map +1 -0
- package/dist/plugins/mailbox/schema.d.ts +54 -0
- package/dist/plugins/mailbox/schema.d.ts.map +1 -0
- package/dist/plugins/mailbox/state.d.ts +40 -0
- package/dist/plugins/mailbox/state.d.ts.map +1 -0
- package/dist/plugins/resources/index.d.ts +7 -0
- package/dist/plugins/resources/index.d.ts.map +1 -0
- package/dist/plugins/resources/manifest.d.ts +23 -0
- package/dist/plugins/resources/manifest.d.ts.map +1 -0
- package/dist/plugins/resources/plugin.d.ts +28 -0
- package/dist/plugins/resources/plugin.d.ts.map +1 -0
- package/dist/plugins/resources/post-inject.d.ts +39 -0
- package/dist/plugins/resources/post-inject.d.ts.map +1 -0
- package/dist/plugins/resources/state.d.ts +25 -0
- package/dist/plugins/resources/state.d.ts.map +1 -0
- package/dist/plugins/result-eviction/index.d.ts +3 -0
- package/dist/plugins/result-eviction/index.d.ts.map +1 -0
- package/dist/plugins/result-eviction/plugin.d.ts +19 -0
- package/dist/plugins/result-eviction/plugin.d.ts.map +1 -0
- package/dist/plugins/result-eviction/result-eviction.integration.test.d.ts +2 -0
- package/dist/plugins/result-eviction/result-eviction.integration.test.d.ts.map +1 -0
- package/dist/plugins/services/plugin.d.ts +85 -0
- package/dist/plugins/services/plugin.d.ts.map +1 -0
- package/dist/plugins/services/port-pool.d.ts +32 -0
- package/dist/plugins/services/port-pool.d.ts.map +1 -0
- package/dist/plugins/services/prompt.d.ts +13 -0
- package/dist/plugins/services/prompt.d.ts.map +1 -0
- package/dist/plugins/services/schema.d.ts +70 -0
- package/dist/plugins/services/schema.d.ts.map +1 -0
- package/dist/plugins/services/service.d.ts +86 -0
- package/dist/plugins/services/service.d.ts.map +1 -0
- package/dist/plugins/services/services.integration.test.d.ts +2 -0
- package/dist/plugins/services/services.integration.test.d.ts.map +1 -0
- package/dist/plugins/session-lifecycle/index.d.ts +2 -0
- package/dist/plugins/session-lifecycle/index.d.ts.map +1 -0
- package/dist/plugins/session-lifecycle/plugin.d.ts +97 -0
- package/dist/plugins/session-lifecycle/plugin.d.ts.map +1 -0
- package/dist/plugins/session-lifecycle/session-lifecycle.integration.test.d.ts +2 -0
- package/dist/plugins/session-lifecycle/session-lifecycle.integration.test.d.ts.map +1 -0
- package/dist/plugins/session-state/plugin.d.ts +48 -0
- package/dist/plugins/session-state/plugin.d.ts.map +1 -0
- package/dist/plugins/session-stats/index.d.ts +4 -0
- package/dist/plugins/session-stats/index.d.ts.map +1 -0
- package/dist/plugins/session-stats/plugin.d.ts +29 -0
- package/dist/plugins/session-stats/plugin.d.ts.map +1 -0
- package/dist/plugins/shell/executor.d.ts +78 -0
- package/dist/plugins/shell/executor.d.ts.map +1 -0
- package/dist/plugins/shell/index.d.ts +6 -0
- package/dist/plugins/shell/index.d.ts.map +1 -0
- package/dist/plugins/shell/plugin.d.ts +51 -0
- package/dist/plugins/shell/plugin.d.ts.map +1 -0
- package/dist/plugins/shell/shell.integration.test.d.ts +2 -0
- package/dist/plugins/shell/shell.integration.test.d.ts.map +1 -0
- package/dist/plugins/shell/shell.test.d.ts +2 -0
- package/dist/plugins/shell/shell.test.d.ts.map +1 -0
- package/dist/plugins/skills/discovery.d.ts +69 -0
- package/dist/plugins/skills/discovery.d.ts.map +1 -0
- package/dist/plugins/skills/discovery.test.d.ts +2 -0
- package/dist/plugins/skills/discovery.test.d.ts.map +1 -0
- package/dist/plugins/skills/index.d.ts +11 -0
- package/dist/plugins/skills/index.d.ts.map +1 -0
- package/dist/plugins/skills/plugin.d.ts +94 -0
- package/dist/plugins/skills/plugin.d.ts.map +1 -0
- package/dist/plugins/skills/prompts.d.ts +29 -0
- package/dist/plugins/skills/prompts.d.ts.map +1 -0
- package/dist/plugins/skills/schema.d.ts +64 -0
- package/dist/plugins/skills/schema.d.ts.map +1 -0
- package/dist/plugins/skills/skills.integration.test.d.ts +2 -0
- package/dist/plugins/skills/skills.integration.test.d.ts.map +1 -0
- package/dist/plugins/snapshotting/index.d.ts +4 -0
- package/dist/plugins/snapshotting/index.d.ts.map +1 -0
- package/dist/plugins/snapshotting/jj-snapshotter.d.ts +27 -0
- package/dist/plugins/snapshotting/jj-snapshotter.d.ts.map +1 -0
- package/dist/plugins/snapshotting/plugin.d.ts +15 -0
- package/dist/plugins/snapshotting/plugin.d.ts.map +1 -0
- package/dist/plugins/snapshotting/snapshotter.d.ts +19 -0
- package/dist/plugins/snapshotting/snapshotter.d.ts.map +1 -0
- package/dist/plugins/todo/index.d.ts +7 -0
- package/dist/plugins/todo/index.d.ts.map +1 -0
- package/dist/plugins/todo/plugin.d.ts +95 -0
- package/dist/plugins/todo/plugin.d.ts.map +1 -0
- package/dist/plugins/todo/prompts.d.ts +13 -0
- package/dist/plugins/todo/prompts.d.ts.map +1 -0
- package/dist/plugins/todo/schema.d.ts +44 -0
- package/dist/plugins/todo/schema.d.ts.map +1 -0
- package/dist/plugins/todo/todo.integration.test.d.ts +2 -0
- package/dist/plugins/todo/todo.integration.test.d.ts.map +1 -0
- package/dist/plugins/uploads/index.d.ts +9 -0
- package/dist/plugins/uploads/index.d.ts.map +1 -0
- package/dist/plugins/uploads/plugin.d.ts +56 -0
- package/dist/plugins/uploads/plugin.d.ts.map +1 -0
- package/dist/plugins/uploads/preprocessor.d.ts +70 -0
- package/dist/plugins/uploads/preprocessor.d.ts.map +1 -0
- package/dist/plugins/uploads/preprocessors/image-classifier.d.ts +49 -0
- package/dist/plugins/uploads/preprocessors/image-classifier.d.ts.map +1 -0
- package/dist/plugins/uploads/preprocessors/index.d.ts +7 -0
- package/dist/plugins/uploads/preprocessors/index.d.ts.map +1 -0
- package/dist/plugins/uploads/preprocessors/markitdown-preprocessor.d.ts +43 -0
- package/dist/plugins/uploads/preprocessors/markitdown-preprocessor.d.ts.map +1 -0
- package/dist/plugins/uploads/preprocessors/zip-preprocessor.d.ts +30 -0
- package/dist/plugins/uploads/preprocessors/zip-preprocessor.d.ts.map +1 -0
- package/dist/plugins/uploads/schema.d.ts +72 -0
- package/dist/plugins/uploads/schema.d.ts.map +1 -0
- package/dist/plugins/uploads/state.d.ts +38 -0
- package/dist/plugins/uploads/state.d.ts.map +1 -0
- package/dist/plugins/uploads/uploads.integration.test.d.ts +2 -0
- package/dist/plugins/uploads/uploads.integration.test.d.ts.map +1 -0
- package/dist/plugins/user-chat/index.d.ts +7 -0
- package/dist/plugins/user-chat/index.d.ts.map +1 -0
- package/dist/plugins/user-chat/plugin.d.ts +221 -0
- package/dist/plugins/user-chat/plugin.d.ts.map +1 -0
- package/dist/plugins/user-chat/prompts.d.ts +13 -0
- package/dist/plugins/user-chat/prompts.d.ts.map +1 -0
- package/dist/plugins/user-chat/schema.d.ts +82 -0
- package/dist/plugins/user-chat/schema.d.ts.map +1 -0
- package/dist/plugins/user-chat/user-chat.integration.test.d.ts +2 -0
- package/dist/plugins/user-chat/user-chat.integration.test.d.ts.map +1 -0
- package/dist/plugins/workers/context.d.ts +159 -0
- package/dist/plugins/workers/context.d.ts.map +1 -0
- package/dist/plugins/workers/definition.d.ts +118 -0
- package/dist/plugins/workers/definition.d.ts.map +1 -0
- package/dist/plugins/workers/index.d.ts +11 -0
- package/dist/plugins/workers/index.d.ts.map +1 -0
- package/dist/plugins/workers/plugin.d.ts +125 -0
- package/dist/plugins/workers/plugin.d.ts.map +1 -0
- package/dist/plugins/workers/worker.d.ts +76 -0
- package/dist/plugins/workers/worker.d.ts.map +1 -0
- package/dist/plugins/workers/workers.integration.test.d.ts +2 -0
- package/dist/plugins/workers/workers.integration.test.d.ts.map +1 -0
- package/dist/prompts/base.d.ts +75 -0
- package/dist/prompts/base.d.ts.map +1 -0
- package/dist/prompts/builder.d.ts +73 -0
- package/dist/prompts/builder.d.ts.map +1 -0
- package/dist/prompts/index.d.ts +10 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/macros.d.ts +15 -0
- package/dist/prompts/macros.d.ts.map +1 -0
- package/dist/prompts/macros.test.d.ts +2 -0
- package/dist/prompts/macros.test.d.ts.map +1 -0
- package/dist/testing/bootstrap-for-testing.d.ts +12 -0
- package/dist/testing/bootstrap-for-testing.d.ts.map +1 -0
- package/dist/testing/index.d.ts +8 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/node-platform.d.ts +12 -0
- package/dist/testing/node-platform.d.ts.map +1 -0
- package/dist/testing/notification-collector.d.ts +46 -0
- package/dist/testing/notification-collector.d.ts.map +1 -0
- package/dist/testing/preset-helpers.d.ts +28 -0
- package/dist/testing/preset-helpers.d.ts.map +1 -0
- package/dist/testing/test-harness.d.ts +117 -0
- package/dist/testing/test-harness.d.ts.map +1 -0
- package/dist/testing/test-harness.test.d.ts +2 -0
- package/dist/testing/test-harness.test.d.ts.map +1 -0
- package/dist/testing/wait-helpers.d.ts +17 -0
- package/dist/testing/wait-helpers.d.ts.map +1 -0
- package/dist/transport/adapter/client-adapter.d.ts +32 -0
- package/dist/transport/adapter/client-adapter.d.ts.map +1 -0
- package/dist/transport/adapter/index.d.ts +23 -0
- package/dist/transport/adapter/index.d.ts.map +1 -0
- package/dist/transport/adapter/server-adapter.d.ts +29 -0
- package/dist/transport/adapter/server-adapter.d.ts.map +1 -0
- package/dist/transport/adapter/types.d.ts +14 -0
- package/dist/transport/adapter/types.d.ts.map +1 -0
- package/dist/transport/http/app.d.ts +41 -0
- package/dist/transport/http/app.d.ts.map +1 -0
- package/dist/transport/http/index.d.ts +7 -0
- package/dist/transport/http/index.d.ts.map +1 -0
- package/dist/transport/http/middleware/bearer-auth.d.ts +16 -0
- package/dist/transport/http/middleware/bearer-auth.d.ts.map +1 -0
- package/dist/transport/http/middleware/error-handler.d.ts +21 -0
- package/dist/transport/http/middleware/error-handler.d.ts.map +1 -0
- package/dist/transport/http/routes/files.d.ts +16 -0
- package/dist/transport/http/routes/files.d.ts.map +1 -0
- package/dist/transport/http/routes/resources.d.ts +12 -0
- package/dist/transport/http/routes/resources.d.ts.map +1 -0
- package/dist/transport/http/routes/rpc.d.ts +22 -0
- package/dist/transport/http/routes/rpc.d.ts.map +1 -0
- package/dist/transport/http/routes/rpc.integration.test.d.ts +2 -0
- package/dist/transport/http/routes/rpc.integration.test.d.ts.map +1 -0
- package/dist/transport/http/routes/rpc.test.d.ts +2 -0
- package/dist/transport/http/routes/rpc.test.d.ts.map +1 -0
- package/dist/transport/http/routes/upload.d.ts +14 -0
- package/dist/transport/http/routes/upload.d.ts.map +1 -0
- package/dist/transport/rpc/index.d.ts +8 -0
- package/dist/transport/rpc/index.d.ts.map +1 -0
- package/dist/transport/rpc/methods.d.ts +25 -0
- package/dist/transport/rpc/methods.d.ts.map +1 -0
- package/dist/user-config.d.ts +29 -0
- package/dist/user-config.d.ts.map +1 -0
- package/package.json +154 -0
- package/src/bootstrap.ts +268 -0
- package/src/builtin-events.ts +25 -0
- package/src/bun-platform/fs.ts +50 -0
- package/src/bun-platform/index.ts +21 -0
- package/src/bun-platform/process.ts +25 -0
- package/src/config.test.ts +174 -0
- package/src/config.ts +103 -0
- package/src/core/agent-loop.integration.test.ts +503 -0
- package/src/core/agents/agent-config.test.ts +240 -0
- package/src/core/agents/agent-roles.ts +41 -0
- package/src/core/agents/agent-shutdown.test.ts +236 -0
- package/src/core/agents/agent.test.ts +387 -0
- package/src/core/agents/agent.ts +1472 -0
- package/src/core/agents/communicator.ts +16 -0
- package/src/core/agents/config.ts +98 -0
- package/src/core/agents/context.ts +19 -0
- package/src/core/agents/debounce.ts +116 -0
- package/src/core/agents/handler-events.test.ts +167 -0
- package/src/core/agents/index.ts +1 -0
- package/src/core/agents/response-sanitizer.test.ts +137 -0
- package/src/core/agents/response-sanitizer.ts +67 -0
- package/src/core/agents/retry.ts +164 -0
- package/src/core/agents/schema.ts +75 -0
- package/src/core/agents/state.ts +272 -0
- package/src/core/context/state.ts +38 -0
- package/src/core/errors.ts +55 -0
- package/src/core/event-sourcing.integration.test.ts +191 -0
- package/src/core/events/base-event-store.ts +264 -0
- package/src/core/events/event-store.ts +143 -0
- package/src/core/events/file.test.ts +436 -0
- package/src/core/events/file.ts +372 -0
- package/src/core/events/index.ts +3 -0
- package/src/core/events/memory.test.ts +741 -0
- package/src/core/events/memory.ts +131 -0
- package/src/core/events/metadata-utils.ts +133 -0
- package/src/core/events/test-helpers.ts +31 -0
- package/src/core/events/types.ts +64 -0
- package/src/core/file-store/file-store.ts +275 -0
- package/src/core/file-store/types.ts +52 -0
- package/src/core/image/image-processor.test.ts +218 -0
- package/src/core/image/image-processor.ts +127 -0
- package/src/core/image/index.ts +4 -0
- package/src/core/image/noop-resizer.ts +7 -0
- package/src/core/image/types.ts +24 -0
- package/src/core/image/vips-resizer.test.ts +377 -0
- package/src/core/image/vips-resizer.ts +124 -0
- package/src/core/llm/__snapshots__/anthropic-assistant-text-with-tool-calls.json +156 -0
- package/src/core/llm/__snapshots__/anthropic-consecutive-tool-results.json +152 -0
- package/src/core/llm/__snapshots__/anthropic-image-data-url.json +105 -0
- package/src/core/llm/__snapshots__/anthropic-image-http-url.json +104 -0
- package/src/core/llm/__snapshots__/anthropic-multiple-images.json +113 -0
- package/src/core/llm/__snapshots__/anthropic-multiple-tool-calls-requested.json +151 -0
- package/src/core/llm/__snapshots__/anthropic-simple-user-message.json +97 -0
- package/src/core/llm/__snapshots__/anthropic-system-message-in-conversation.json +119 -0
- package/src/core/llm/__snapshots__/anthropic-tool-call.json +123 -0
- package/src/core/llm/__snapshots__/anthropic-tool-error-result.json +139 -0
- package/src/core/llm/__snapshots__/anthropic-tool-result-with-image.json +152 -0
- package/src/core/llm/__snapshots__/anthropic-tool-roundtrip.json +139 -0
- package/src/core/llm/__snapshots__/openrouter-assistant-text-with-tool-calls.json +150 -0
- package/src/core/llm/__snapshots__/openrouter-consecutive-tool-results.json +150 -0
- package/src/core/llm/__snapshots__/openrouter-image-data-url.json +107 -0
- package/src/core/llm/__snapshots__/openrouter-image-http-url.json +107 -0
- package/src/core/llm/__snapshots__/openrouter-multiple-images.json +113 -0
- package/src/core/llm/__snapshots__/openrouter-multiple-tool-calls-requested.json +158 -0
- package/src/core/llm/__snapshots__/openrouter-simple-user-message.json +96 -0
- package/src/core/llm/__snapshots__/openrouter-system-message-in-conversation.json +108 -0
- package/src/core/llm/__snapshots__/openrouter-tool-call.json +129 -0
- package/src/core/llm/__snapshots__/openrouter-tool-error-result.json +137 -0
- package/src/core/llm/__snapshots__/openrouter-tool-result-with-image.json +148 -0
- package/src/core/llm/__snapshots__/openrouter-tool-roundtrip.json +137 -0
- package/src/core/llm/anthropic.test.ts +509 -0
- package/src/core/llm/anthropic.ts +578 -0
- package/src/core/llm/cache-breakpoints.ts +38 -0
- package/src/core/llm/cache-live.test.ts +155 -0
- package/src/core/llm/index.ts +30 -0
- package/src/core/llm/llm-log-types.ts +167 -0
- package/src/core/llm/logger.test.ts +270 -0
- package/src/core/llm/logger.ts +306 -0
- package/src/core/llm/logging-provider.ts +73 -0
- package/src/core/llm/middleware.ts +172 -0
- package/src/core/llm/mock.test.ts +402 -0
- package/src/core/llm/mock.ts +234 -0
- package/src/core/llm/openrouter-mapping.test.ts +153 -0
- package/src/core/llm/openrouter.test.ts +499 -0
- package/src/core/llm/openrouter.ts +458 -0
- package/src/core/llm/provider-integration.test.ts +408 -0
- package/src/core/llm/provider.ts +238 -0
- package/src/core/llm/routing-provider.test.ts +113 -0
- package/src/core/llm/routing-provider.ts +86 -0
- package/src/core/llm/schema.ts +47 -0
- package/src/core/llm/snapshot-fetch.ts +158 -0
- package/src/core/llm/snapshot-middleware.test.ts +168 -0
- package/src/core/llm/snapshot-middleware.ts +185 -0
- package/src/core/llm/state.ts +92 -0
- package/src/core/llm/tokens.ts +61 -0
- package/src/core/multi-agent.integration.test.ts +340 -0
- package/src/core/plugin-hooks.integration.test.ts +428 -0
- package/src/core/plugins/hook-types.ts +49 -0
- package/src/core/plugins/index.ts +52 -0
- package/src/core/plugins/plugin-builder.ts +967 -0
- package/src/core/preset/config.ts +110 -0
- package/src/core/preset/index.ts +11 -0
- package/src/core/preset/preset-builder.ts +111 -0
- package/src/core/session-lifecycle.integration.test.ts +202 -0
- package/src/core/sessions/apply-event.ts +46 -0
- package/src/core/sessions/context.ts +36 -0
- package/src/core/sessions/fork-utils.test.ts +158 -0
- package/src/core/sessions/fork-utils.ts +71 -0
- package/src/core/sessions/reducer.ts +95 -0
- package/src/core/sessions/schema.ts +91 -0
- package/src/core/sessions/session-environment.ts +12 -0
- package/src/core/sessions/session-manager.ts +883 -0
- package/src/core/sessions/session-store.ts +141 -0
- package/src/core/sessions/session.test.ts +1730 -0
- package/src/core/sessions/session.ts +833 -0
- package/src/core/sessions/state.ts +520 -0
- package/src/core/system.ts +206 -0
- package/src/core/tools/context.ts +3 -0
- package/src/core/tools/definition.ts +15 -0
- package/src/core/tools/executor.test.ts +160 -0
- package/src/core/tools/executor.ts +117 -0
- package/src/core/tools/index.ts +3 -0
- package/src/core/tools/schema.ts +80 -0
- package/src/core/tools/state.ts +34 -0
- package/src/index.ts +165 -0
- package/src/lib/json/index.ts +20 -0
- package/src/lib/logger/console.test.ts +348 -0
- package/src/lib/logger/console.ts +185 -0
- package/src/lib/logger/file.ts +65 -0
- package/src/lib/logger/index.ts +4 -0
- package/src/lib/logger/logger.ts +114 -0
- package/src/lib/logger/ring-buffer.ts +65 -0
- package/src/lib/logger/tee.ts +51 -0
- package/src/lib/mime.ts +23 -0
- package/src/lib/never.ts +3 -0
- package/src/lib/utils/hash.ts +38 -0
- package/src/lib/utils/result.ts +35 -0
- package/src/platform/fs.ts +38 -0
- package/src/platform/index.ts +23 -0
- package/src/platform/process.ts +28 -0
- package/src/plugins/agent-status/plugin.ts +77 -0
- package/src/plugins/agents/agents.integration.test.ts +808 -0
- package/src/plugins/agents/index.ts +2 -0
- package/src/plugins/agents/plugin.ts +242 -0
- package/src/plugins/context-compact/context-compact.integration.test.ts +207 -0
- package/src/plugins/context-compact/context-compactor.test.ts +923 -0
- package/src/plugins/context-compact/context-compactor.ts +343 -0
- package/src/plugins/context-compact/history-offloader.test.ts +100 -0
- package/src/plugins/context-compact/history-offloader.ts +47 -0
- package/src/plugins/context-compact/index.ts +3 -0
- package/src/plugins/context-compact/plugin.ts +62 -0
- package/src/plugins/filesystem/filesystem.integration.test.ts +485 -0
- package/src/plugins/filesystem/helpers.ts +216 -0
- package/src/plugins/filesystem/index.ts +4 -0
- package/src/plugins/filesystem/listing.ts +276 -0
- package/src/plugins/filesystem/plugin.ts +468 -0
- package/src/plugins/filesystem/schema.ts +6 -0
- package/src/plugins/git-status/index.ts +1 -0
- package/src/plugins/git-status/plugin.ts +166 -0
- package/src/plugins/limits-guard/config.ts +26 -0
- package/src/plugins/limits-guard/index.ts +4 -0
- package/src/plugins/limits-guard/limit-guard.test.ts +161 -0
- package/src/plugins/limits-guard/limit-guard.ts +164 -0
- package/src/plugins/limits-guard/limits-guard.integration.test.ts +437 -0
- package/src/plugins/limits-guard/plugin.ts +306 -0
- package/src/plugins/llm-debug/index.ts +1 -0
- package/src/plugins/llm-debug/llm-debug.integration.test.ts +192 -0
- package/src/plugins/llm-debug/plugin.ts +172 -0
- package/src/plugins/logs/index.ts +1 -0
- package/src/plugins/logs/plugin.ts +39 -0
- package/src/plugins/mailbox/helpers.ts +83 -0
- package/src/plugins/mailbox/index.ts +13 -0
- package/src/plugins/mailbox/mailbox.integration.test.ts +705 -0
- package/src/plugins/mailbox/plugin.ts +270 -0
- package/src/plugins/mailbox/prompts.ts +104 -0
- package/src/plugins/mailbox/query.ts +53 -0
- package/src/plugins/mailbox/schema.ts +81 -0
- package/src/plugins/mailbox/state.ts +52 -0
- package/src/plugins/resources/index.ts +11 -0
- package/src/plugins/resources/manifest.ts +25 -0
- package/src/plugins/resources/plugin.ts +201 -0
- package/src/plugins/resources/post-inject.ts +74 -0
- package/src/plugins/resources/state.ts +30 -0
- package/src/plugins/result-eviction/index.ts +2 -0
- package/src/plugins/result-eviction/plugin.ts +65 -0
- package/src/plugins/result-eviction/result-eviction.integration.test.ts +244 -0
- package/src/plugins/services/plugin.ts +485 -0
- package/src/plugins/services/port-pool.ts +73 -0
- package/src/plugins/services/prompt.ts +53 -0
- package/src/plugins/services/schema.ts +83 -0
- package/src/plugins/services/service.ts +578 -0
- package/src/plugins/services/services.integration.test.ts +595 -0
- package/src/plugins/session-lifecycle/index.ts +1 -0
- package/src/plugins/session-lifecycle/plugin.ts +302 -0
- package/src/plugins/session-lifecycle/session-lifecycle.integration.test.ts +639 -0
- package/src/plugins/session-state/plugin.ts +179 -0
- package/src/plugins/session-stats/index.ts +3 -0
- package/src/plugins/session-stats/plugin.ts +120 -0
- package/src/plugins/shell/executor.ts +462 -0
- package/src/plugins/shell/index.ts +23 -0
- package/src/plugins/shell/plugin.ts +118 -0
- package/src/plugins/shell/shell.integration.test.ts +273 -0
- package/src/plugins/shell/shell.test.ts +314 -0
- package/src/plugins/skills/discovery.test.ts +395 -0
- package/src/plugins/skills/discovery.ts +276 -0
- package/src/plugins/skills/index.ts +32 -0
- package/src/plugins/skills/plugin.ts +381 -0
- package/src/plugins/skills/prompts.ts +84 -0
- package/src/plugins/skills/schema.ts +88 -0
- package/src/plugins/skills/skills.integration.test.ts +580 -0
- package/src/plugins/snapshotting/index.ts +3 -0
- package/src/plugins/snapshotting/jj-snapshotter.ts +122 -0
- package/src/plugins/snapshotting/plugin.ts +36 -0
- package/src/plugins/snapshotting/snapshotter.ts +20 -0
- package/src/plugins/todo/index.ts +11 -0
- package/src/plugins/todo/plugin.ts +363 -0
- package/src/plugins/todo/prompts.ts +63 -0
- package/src/plugins/todo/schema.ts +71 -0
- package/src/plugins/todo/todo.integration.test.ts +687 -0
- package/src/plugins/uploads/index.ts +13 -0
- package/src/plugins/uploads/plugin.ts +406 -0
- package/src/plugins/uploads/preprocessor.ts +111 -0
- package/src/plugins/uploads/preprocessors/image-classifier.ts +176 -0
- package/src/plugins/uploads/preprocessors/index.ts +7 -0
- package/src/plugins/uploads/preprocessors/markitdown-preprocessor.ts +262 -0
- package/src/plugins/uploads/preprocessors/zip-preprocessor.ts +210 -0
- package/src/plugins/uploads/schema.ts +92 -0
- package/src/plugins/uploads/state.ts +42 -0
- package/src/plugins/uploads/uploads.integration.test.ts +654 -0
- package/src/plugins/user-chat/index.ts +17 -0
- package/src/plugins/user-chat/plugin.ts +728 -0
- package/src/plugins/user-chat/prompts.ts +30 -0
- package/src/plugins/user-chat/schema.ts +80 -0
- package/src/plugins/user-chat/user-chat.integration.test.ts +794 -0
- package/src/plugins/workers/context.ts +251 -0
- package/src/plugins/workers/definition.ts +169 -0
- package/src/plugins/workers/index.ts +21 -0
- package/src/plugins/workers/plugin.ts +722 -0
- package/src/plugins/workers/worker.ts +115 -0
- package/src/plugins/workers/workers.integration.test.ts +778 -0
- package/src/prompts/base.ts +266 -0
- package/src/prompts/builder.ts +194 -0
- package/src/prompts/index.ts +36 -0
- package/src/prompts/macros.test.ts +107 -0
- package/src/prompts/macros.ts +27 -0
- package/src/testing/bootstrap-for-testing.ts +39 -0
- package/src/testing/index.ts +7 -0
- package/src/testing/node-platform.ts +80 -0
- package/src/testing/notification-collector.ts +100 -0
- package/src/testing/preset-helpers.ts +57 -0
- package/src/testing/test-harness.test.ts +63 -0
- package/src/testing/test-harness.ts +279 -0
- package/src/testing/wait-helpers.ts +84 -0
- package/src/transport/adapter/client-adapter.ts +81 -0
- package/src/transport/adapter/index.ts +42 -0
- package/src/transport/adapter/server-adapter.ts +93 -0
- package/src/transport/adapter/types.ts +20 -0
- package/src/transport/http/app.ts +129 -0
- package/src/transport/http/index.ts +7 -0
- package/src/transport/http/middleware/bearer-auth.ts +40 -0
- package/src/transport/http/middleware/error-handler.ts +76 -0
- package/src/transport/http/routes/files.ts +274 -0
- package/src/transport/http/routes/resources.ts +115 -0
- package/src/transport/http/routes/rpc.integration.test.ts +243 -0
- package/src/transport/http/routes/rpc.test.ts +372 -0
- package/src/transport/http/routes/rpc.ts +156 -0
- package/src/transport/http/routes/upload.ts +286 -0
- package/src/transport/rpc/index.ts +11 -0
- package/src/transport/rpc/methods.ts +38 -0
- package/src/user-config.ts +33 -0
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Prompt builder pattern for constructing system prompts dynamically.
|
|
3
|
+
*/
|
|
4
|
+
import { TONE_INSTRUCTIONS } from './base.js';
|
|
5
|
+
export type ToneType = keyof typeof TONE_INSTRUCTIONS;
|
|
6
|
+
/**
|
|
7
|
+
* Agent role determines which briefing to include in the system prompt.
|
|
8
|
+
* - "entry": Orchestrator without communicator (talks to user directly)
|
|
9
|
+
* - "orchestrator": Orchestrator with communicator (talks to communicator, not user)
|
|
10
|
+
* - "child": Spawned by parent, reports results back
|
|
11
|
+
* - "communicator": Handles user communication, relays to orchestrator
|
|
12
|
+
*/
|
|
13
|
+
export type AgentRole = 'entry' | 'orchestrator' | 'child' | 'communicator';
|
|
14
|
+
/**
|
|
15
|
+
* Builder for constructing prompts with various sections.
|
|
16
|
+
*/
|
|
17
|
+
export declare class PromptBuilder {
|
|
18
|
+
private sections;
|
|
19
|
+
/**
|
|
20
|
+
* Add a section to the prompt.
|
|
21
|
+
*/
|
|
22
|
+
add(content: string | undefined | null): this;
|
|
23
|
+
/**
|
|
24
|
+
* Add a section only if a condition is met.
|
|
25
|
+
*/
|
|
26
|
+
addIf(condition: boolean, content: string): this;
|
|
27
|
+
/**
|
|
28
|
+
* Add multiple sections at once, filtering out empty values.
|
|
29
|
+
*/
|
|
30
|
+
addAll(...contents: (string | undefined | null)[]): this;
|
|
31
|
+
/**
|
|
32
|
+
* Build the final prompt by joining sections with double newlines.
|
|
33
|
+
*/
|
|
34
|
+
build(): string;
|
|
35
|
+
/**
|
|
36
|
+
* Reset the builder for reuse.
|
|
37
|
+
*/
|
|
38
|
+
reset(): this;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Environment info for system prompt injection.
|
|
42
|
+
*/
|
|
43
|
+
export interface PromptEnvironment {
|
|
44
|
+
/** Path the agent sees for session directory */
|
|
45
|
+
sessionPath: string;
|
|
46
|
+
/** Path the agent sees for workspace directory (optional) */
|
|
47
|
+
workspacePath?: string;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Build environment section for system prompt.
|
|
51
|
+
*/
|
|
52
|
+
export declare function buildEnvironmentSection(env: PromptEnvironment): string;
|
|
53
|
+
/**
|
|
54
|
+
* Build a complete system prompt for an agent.
|
|
55
|
+
*
|
|
56
|
+
* Structure:
|
|
57
|
+
* 1. BASE BRIEFING - For all agents, technical minimum
|
|
58
|
+
* 2. ROLE BRIEFING - Entry agent vs Child agent vs Communicator
|
|
59
|
+
* 3. ENVIRONMENT - Working directories
|
|
60
|
+
* 4. CUSTOM PROMPT - From preset, purely role/tasks without tech details
|
|
61
|
+
*
|
|
62
|
+
* @param role - Agent role: "entry", "child", or "communicator"
|
|
63
|
+
* @param customPrompt - Custom prompt from preset (role/tasks only)
|
|
64
|
+
* @param environment - Optional environment info for directory roots
|
|
65
|
+
*/
|
|
66
|
+
export declare function buildSystemPrompt(role: AgentRole, customPrompt: string, environment?: PromptEnvironment): string;
|
|
67
|
+
/**
|
|
68
|
+
* Wrap a summary in the standard context summary format.
|
|
69
|
+
* @param summary - The summary text
|
|
70
|
+
* @param historyPath - Optional path to offloaded full history
|
|
71
|
+
*/
|
|
72
|
+
export declare function wrapContextSummary(summary: string, historyPath?: string): string;
|
|
73
|
+
//# sourceMappingURL=builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/prompts/builder.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAON,iBAAiB,EACjB,MAAM,WAAW,CAAA;AAMlB,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,iBAAiB,CAAA;AAErD;;;;;;GAMG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,cAAc,GAAG,OAAO,GAAG,cAAc,CAAA;AAM3E;;GAEG;AACH,qBAAa,aAAa;IACzB,OAAO,CAAC,QAAQ,CAAe;IAE/B;;OAEG;IACH,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI;IAO7C;;OAEG;IACH,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAOhD;;OAEG;IACH,MAAM,CAAC,GAAG,QAAQ,EAAE,CAAC,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI;IAOxD;;OAEG;IACH,KAAK,IAAI,MAAM;IAIf;;OAEG;IACH,KAAK,IAAI,IAAI;CAIb;AAMD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,gDAAgD;IAChD,WAAW,EAAE,MAAM,CAAA;IACnB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,iBAAiB,GAAG,MAAM,CAmBtE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAChC,IAAI,EAAE,SAAS,EACf,YAAY,EAAE,MAAM,EACpB,WAAW,CAAC,EAAE,iBAAiB,GAC7B,MAAM,CAqCR;AAMD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAKhF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Prompts module - centralized location for base prompts and prompt builders.
|
|
3
|
+
*
|
|
4
|
+
* This module consolidates prompt templates that are used across the codebase.
|
|
5
|
+
* Preset-specific prompts remain in their respective preset files.
|
|
6
|
+
*/
|
|
7
|
+
export { AGENT_BASE_BRIEFING, CHILD_AGENT_BRIEFING, COMMUNICATOR_BRIEFING, CONTEXT_SUMMARY_PROMPT, CONTEXT_SUMMARY_WRAPPER, ENTRY_AGENT_BRIEFING, ORCHESTRATOR_BRIEFING, REASONING_INSTRUCTIONS, TONE_INSTRUCTIONS, } from './base.js';
|
|
8
|
+
export { type AgentRole, buildEnvironmentSection, buildSystemPrompt, PromptBuilder, type PromptEnvironment, type ToneType, wrapContextSummary, } from './builder.js';
|
|
9
|
+
export { agentVars, processPromptMacros } from './macros.js';
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAEN,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EAErB,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EAEtB,iBAAiB,GACjB,MAAM,WAAW,CAAA;AAElB,OAAO,EACN,KAAK,SAAS,EAEd,uBAAuB,EACvB,iBAAiB,EAEjB,aAAa,EACb,KAAK,iBAAiB,EAEtB,KAAK,QAAQ,EACb,kBAAkB,GAClB,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Process simple conditional macros in prompt templates.
|
|
3
|
+
*
|
|
4
|
+
* Syntax: `{{#if varName}}...content...{{/if}}`
|
|
5
|
+
* - If `vars[varName]` is `true`, the content is kept (tags removed).
|
|
6
|
+
* - Otherwise the entire block (including tags) is stripped.
|
|
7
|
+
*/
|
|
8
|
+
export declare function processPromptMacros(prompt: string, vars: Record<string, boolean>): string;
|
|
9
|
+
/**
|
|
10
|
+
* Convert an array of agent names into macro variables.
|
|
11
|
+
*
|
|
12
|
+
* `['design-tokens', 'common-blocks']` → `{ 'agent:design-tokens': true, 'agent:common-blocks': true }`
|
|
13
|
+
*/
|
|
14
|
+
export declare function agentVars(agents: readonly string[]): Record<string, boolean>;
|
|
15
|
+
//# sourceMappingURL=macros.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"macros.d.ts","sourceRoot":"","sources":["../../src/prompts/macros.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAIzF;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAM5E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"macros.test.d.ts","sourceRoot":"","sources":["../../src/prompts/macros.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Test-only bootstrap helper: wires memory persistence, mock LLM, and a
|
|
3
|
+
* node-backed Platform so integration tests don't need a runtime package.
|
|
4
|
+
*
|
|
5
|
+
* Production callers should use `bootstrap()` directly and pass a Platform
|
|
6
|
+
* from their runtime package (e.g. `@roj-ai/sdk/bun-platform`).
|
|
7
|
+
*/
|
|
8
|
+
import { type Services } from '../bootstrap.js';
|
|
9
|
+
import type { MockInferenceHandler } from '../core/llm/mock.js';
|
|
10
|
+
import type { Preset } from '../core/preset/index.js';
|
|
11
|
+
export declare function bootstrapForTesting(mockHandler?: MockInferenceHandler, presets?: Preset[]): Services;
|
|
12
|
+
//# sourceMappingURL=bootstrap-for-testing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootstrap-for-testing.d.ts","sourceRoot":"","sources":["../../src/testing/bootstrap-for-testing.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAGpD,wBAAgB,mBAAmB,CAClC,WAAW,CAAC,EAAE,oBAAoB,EAClC,OAAO,CAAC,EAAE,MAAM,EAAE,GAChB,QAAQ,CAqBV"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { bootstrapForTesting } from './bootstrap-for-testing.js';
|
|
2
|
+
export { createNodeFileSystem, createNodePlatform, createNodeProcessRunner } from './node-platform.js';
|
|
3
|
+
export { NotificationCollector } from './notification-collector.js';
|
|
4
|
+
export { createMultiAgentPreset, createTestPreset } from './preset-helpers.js';
|
|
5
|
+
export type { TestAgentDefinition } from './preset-helpers.js';
|
|
6
|
+
export { TestHarness, TestSession } from './test-harness.js';
|
|
7
|
+
export { waitForAgentIdle, waitForAllAgentsIdle } from './wait-helpers.js';
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AACtG,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAC9E,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC5D,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Test-only Platform impl backed by `node:fs/promises` + `node:child_process`.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the production adapter from `@roj-ai/sdk/bun-platform` but lives in this
|
|
5
|
+
* package so tests don't create a workspace cycle. Production SDK code MUST
|
|
6
|
+
* NOT import from here — use injected `Platform` from the caller instead.
|
|
7
|
+
*/
|
|
8
|
+
import type { FileSystem, Platform, ProcessRunner } from '../platform/index.js';
|
|
9
|
+
export declare function createNodeFileSystem(): FileSystem;
|
|
10
|
+
export declare function createNodeProcessRunner(): ProcessRunner;
|
|
11
|
+
export declare function createNodePlatform(): Platform;
|
|
12
|
+
//# sourceMappingURL=node-platform.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node-platform.d.ts","sourceRoot":"","sources":["../../src/testing/node-platform.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAI9E,wBAAgB,oBAAoB,IAAI,UAAU,CAuCjD;AAED,wBAAgB,uBAAuB,IAAI,aAAa,CAcvD;AAED,wBAAgB,kBAAkB,IAAI,QAAQ,CAM7C"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { PluginNotification } from '../core/plugins/plugin-builder.js';
|
|
2
|
+
/**
|
|
3
|
+
* In-memory notification collector for testing.
|
|
4
|
+
* Captures PluginNotification instances emitted during session execution.
|
|
5
|
+
*/
|
|
6
|
+
export declare class NotificationCollector {
|
|
7
|
+
private notifications;
|
|
8
|
+
private waiters;
|
|
9
|
+
/**
|
|
10
|
+
* Push a notification into the collector.
|
|
11
|
+
* Wired to SessionManager's onUserOutput callback.
|
|
12
|
+
*/
|
|
13
|
+
push(notification: PluginNotification): void;
|
|
14
|
+
/**
|
|
15
|
+
* Get all collected notifications.
|
|
16
|
+
*/
|
|
17
|
+
getAll(): PluginNotification[];
|
|
18
|
+
/**
|
|
19
|
+
* Get notifications from a specific plugin.
|
|
20
|
+
*/
|
|
21
|
+
getByPlugin(pluginName: string): PluginNotification[];
|
|
22
|
+
/**
|
|
23
|
+
* Get notifications matching plugin name and type.
|
|
24
|
+
*/
|
|
25
|
+
getByType(pluginName: string, type: string): PluginNotification[];
|
|
26
|
+
/**
|
|
27
|
+
* Get agent messages (user-chat.agentMessage notifications) with extracted payload.
|
|
28
|
+
*/
|
|
29
|
+
getAgentMessages(): Array<{
|
|
30
|
+
content: string;
|
|
31
|
+
format: string;
|
|
32
|
+
sessionId: string;
|
|
33
|
+
}>;
|
|
34
|
+
/**
|
|
35
|
+
* Wait for a notification matching the predicate.
|
|
36
|
+
* Checks already-collected notifications first, then waits for new ones.
|
|
37
|
+
*/
|
|
38
|
+
waitFor(predicate: (n: PluginNotification) => boolean, opts?: {
|
|
39
|
+
timeoutMs?: number;
|
|
40
|
+
}): Promise<PluginNotification>;
|
|
41
|
+
/**
|
|
42
|
+
* Clear all collected notifications.
|
|
43
|
+
*/
|
|
44
|
+
clear(): void;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=notification-collector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notification-collector.d.ts","sourceRoot":"","sources":["../../src/testing/notification-collector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAE1E;;;GAGG;AACH,qBAAa,qBAAqB;IACjC,OAAO,CAAC,aAAa,CAA2B;IAChD,OAAO,CAAC,OAAO,CAKR;IAEP;;;OAGG;IACH,IAAI,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI;IAc5C;;OAEG;IACH,MAAM,IAAI,kBAAkB,EAAE;IAI9B;;OAEG;IACH,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB,EAAE;IAIrD;;OAEG;IACH,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,kBAAkB,EAAE;IAIjE;;OAEG;IACH,gBAAgB,IAAI,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAWjF;;;OAGG;IACH,OAAO,CACN,SAAS,EAAE,CAAC,CAAC,EAAE,kBAAkB,KAAK,OAAO,EAC7C,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAC3B,OAAO,CAAC,kBAAkB,CAAC;IAkB9B;;OAEG;IACH,KAAK,IAAI,IAAI;CAGb"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { AgentDefinition } from '../core/agents/config.js';
|
|
2
|
+
import { ModelId } from '../core/llm/schema.js';
|
|
3
|
+
import type { AgentPluginConfig, SessionPluginConfig } from '../core/plugins/plugin-builder.js';
|
|
4
|
+
import type { Preset } from '../core/preset/index.js';
|
|
5
|
+
/** AgentDefinition with model optional — defaults to ModelId('mock') in test helpers. */
|
|
6
|
+
export type TestAgentDefinition<TInput = unknown> = Omit<AgentDefinition<TInput>, 'model'> & {
|
|
7
|
+
model?: ReturnType<typeof ModelId>;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Create a minimal test preset with sensible defaults.
|
|
11
|
+
* All agents get debounceMs: 0 and model: ModelId('mock').
|
|
12
|
+
*/
|
|
13
|
+
export declare function createTestPreset(overrides?: {
|
|
14
|
+
id?: string;
|
|
15
|
+
orchestratorSystem?: string;
|
|
16
|
+
agents?: TestAgentDefinition[];
|
|
17
|
+
plugins?: SessionPluginConfig[];
|
|
18
|
+
orchestratorPlugins?: AgentPluginConfig[];
|
|
19
|
+
}): Preset;
|
|
20
|
+
/**
|
|
21
|
+
* Create a multi-agent test preset from agent definitions.
|
|
22
|
+
* The orchestrator can spawn all provided agents.
|
|
23
|
+
*/
|
|
24
|
+
export declare function createMultiAgentPreset(agents: TestAgentDefinition[], overrides?: {
|
|
25
|
+
id?: string;
|
|
26
|
+
orchestratorSystem?: string;
|
|
27
|
+
}): Preset;
|
|
28
|
+
//# sourceMappingURL=preset-helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preset-helpers.d.ts","sourceRoot":"","sources":["../../src/testing/preset-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAA;AAC9F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAEpD,yFAAyF;AACzF,MAAM,MAAM,mBAAmB,CAAC,MAAM,GAAG,OAAO,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG;IAAE,KAAK,CAAC,EAAE,UAAU,CAAC,OAAO,OAAO,CAAC,CAAA;CAAE,CAAA;AAEnI;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,CAAC,EAAE;IAC5C,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,MAAM,CAAC,EAAE,mBAAmB,EAAE,CAAA;IAC9B,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAA;IAC/B,mBAAmB,CAAC,EAAE,iBAAiB,EAAE,CAAA;CACzC,GAAG,MAAM,CAqBT;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACrC,MAAM,EAAE,mBAAmB,EAAE,EAC7B,SAAS,CAAC,EAAE;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC3B,GACC,MAAM,CAKR"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import type { AgentId } from '../core/agents/schema.js';
|
|
2
|
+
import type { DomainError } from '../core/errors.js';
|
|
3
|
+
import { MemoryEventStore } from '../core/events/memory.js';
|
|
4
|
+
import type { DomainEvent } from '../core/events/types.js';
|
|
5
|
+
import type { LLMLogger } from '../core/llm/logger.js';
|
|
6
|
+
import { MockLLMProvider } from '../core/llm/mock.js';
|
|
7
|
+
import type { MockInferenceHandler } from '../core/llm/mock.js';
|
|
8
|
+
import type { PluginDefinition, PluginNotification } from '../core/plugins/plugin-builder.js';
|
|
9
|
+
import type { Preset } from '../core/preset/index.js';
|
|
10
|
+
import type { SessionId } from '../core/sessions/schema.js';
|
|
11
|
+
import { SessionManager } from '../core/sessions/session-manager.js';
|
|
12
|
+
import type { Session } from '../core/sessions/session.js';
|
|
13
|
+
import type { SessionState } from '../core/sessions/state.js';
|
|
14
|
+
import type { Result } from '../lib/utils/result.js';
|
|
15
|
+
import { NotificationCollector } from './notification-collector.js';
|
|
16
|
+
/**
|
|
17
|
+
* TestHarness — boots a real SessionManager with MemoryEventStore,
|
|
18
|
+
* MockLLMProvider, and in-memory notification collection.
|
|
19
|
+
*
|
|
20
|
+
* Enables full-flow integration tests without external dependencies.
|
|
21
|
+
*/
|
|
22
|
+
export declare class TestHarness {
|
|
23
|
+
readonly eventStore: MemoryEventStore;
|
|
24
|
+
readonly llmProvider: MockLLMProvider;
|
|
25
|
+
readonly notifications: NotificationCollector;
|
|
26
|
+
readonly sessionManager: SessionManager;
|
|
27
|
+
constructor(options: {
|
|
28
|
+
presets: Preset[];
|
|
29
|
+
llmProvider?: MockLLMProvider;
|
|
30
|
+
mockHandler?: MockInferenceHandler;
|
|
31
|
+
/** Additional system plugins to register (merged with built-in defaults) */
|
|
32
|
+
systemPlugins?: readonly PluginDefinition<string, any, any, any, any>[];
|
|
33
|
+
/** Optional LLM logger — when provided, wraps the mock provider with LoggingLLMProvider */
|
|
34
|
+
llmLogger?: LLMLogger;
|
|
35
|
+
/** Optional pre-existing event store — lets multiple harnesses share persisted state (simulates server restart) */
|
|
36
|
+
eventStore?: MemoryEventStore;
|
|
37
|
+
});
|
|
38
|
+
/**
|
|
39
|
+
* Create a session and return a TestSession wrapper.
|
|
40
|
+
*/
|
|
41
|
+
createSession(presetId: string): Promise<TestSession>;
|
|
42
|
+
/**
|
|
43
|
+
* Open an existing session from the event store (replays events, runs onSessionReady hooks).
|
|
44
|
+
* Used to simulate server restart by pairing with another harness over the same eventStore.
|
|
45
|
+
*/
|
|
46
|
+
openSession(sessionId: SessionId): Promise<TestSession>;
|
|
47
|
+
/**
|
|
48
|
+
* Shutdown all sessions.
|
|
49
|
+
*/
|
|
50
|
+
shutdown(): Promise<void>;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* TestSession — convenience wrapper around Session for integration tests.
|
|
54
|
+
*/
|
|
55
|
+
export declare class TestSession {
|
|
56
|
+
private readonly session;
|
|
57
|
+
private readonly harness;
|
|
58
|
+
readonly sessionId: SessionId;
|
|
59
|
+
constructor(session: Session, harness: TestHarness);
|
|
60
|
+
/**
|
|
61
|
+
* Send a message to the entry agent (communicator or orchestrator).
|
|
62
|
+
*/
|
|
63
|
+
sendMessage(content: string): Promise<void>;
|
|
64
|
+
/**
|
|
65
|
+
* Send a message to a specific agent.
|
|
66
|
+
*/
|
|
67
|
+
sendMessageToAgent(agentId: AgentId, content: string): Promise<void>;
|
|
68
|
+
/**
|
|
69
|
+
* Wait for all agents to become idle.
|
|
70
|
+
*/
|
|
71
|
+
waitForIdle(opts?: {
|
|
72
|
+
timeoutMs?: number;
|
|
73
|
+
}): Promise<void>;
|
|
74
|
+
/**
|
|
75
|
+
* Send a message and wait for all agents to become idle.
|
|
76
|
+
*/
|
|
77
|
+
sendAndWaitForIdle(content: string, opts?: {
|
|
78
|
+
timeoutMs?: number;
|
|
79
|
+
}): Promise<void>;
|
|
80
|
+
/**
|
|
81
|
+
* Get all events from the event store for this session.
|
|
82
|
+
*/
|
|
83
|
+
getEvents(): Promise<DomainEvent[]>;
|
|
84
|
+
/**
|
|
85
|
+
* Get events filtered by type.
|
|
86
|
+
* When called with an EventsFactory, returns fully typed events.
|
|
87
|
+
*/
|
|
88
|
+
getEventsByType(type: string): Promise<DomainEvent[]>;
|
|
89
|
+
getEventsByType<TEventsMap extends Record<string, DomainEvent>, K extends string & keyof TEventsMap>(factory: {
|
|
90
|
+
Events: TEventsMap;
|
|
91
|
+
}, type: K): Promise<TEventsMap[K][]>;
|
|
92
|
+
/**
|
|
93
|
+
* Get notifications for this session.
|
|
94
|
+
*/
|
|
95
|
+
getNotifications(): PluginNotification[];
|
|
96
|
+
/**
|
|
97
|
+
* Get the current session state.
|
|
98
|
+
*/
|
|
99
|
+
get state(): SessionState;
|
|
100
|
+
/**
|
|
101
|
+
* Get the entry agent ID.
|
|
102
|
+
*/
|
|
103
|
+
getEntryAgentId(): AgentId | null;
|
|
104
|
+
/**
|
|
105
|
+
* Close the session.
|
|
106
|
+
*/
|
|
107
|
+
close(): Promise<void>;
|
|
108
|
+
/**
|
|
109
|
+
* Call a plugin method on the underlying session.
|
|
110
|
+
*/
|
|
111
|
+
callPluginMethod(method: string, input: unknown): Promise<Result<unknown, DomainError>>;
|
|
112
|
+
/**
|
|
113
|
+
* Answer a user-chat question (convenience wrapper around callPluginMethod).
|
|
114
|
+
*/
|
|
115
|
+
answerQuestion(agentId: AgentId, questionId: string, answer: unknown): Promise<void>;
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=test-harness.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-harness.d.ts","sourceRoot":"","sources":["../../src/testing/test-harness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAC5F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AACnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAI5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AASnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAkBnE;;;;;GAKG;AACH,qBAAa,WAAW;IACvB,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAA;IACrC,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAA;IACrC,QAAQ,CAAC,aAAa,EAAE,qBAAqB,CAAA;IAC7C,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAA;gBAE3B,OAAO,EAAE;QACpB,OAAO,EAAE,MAAM,EAAE,CAAA;QACjB,WAAW,CAAC,EAAE,eAAe,CAAA;QAC7B,WAAW,CAAC,EAAE,oBAAoB,CAAA;QAClC,4EAA4E;QAC5E,aAAa,CAAC,EAAE,SAAS,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAA;QACvE,2FAA2F;QAC3F,SAAS,CAAC,EAAE,SAAS,CAAA;QACrB,mHAAmH;QACnH,UAAU,CAAC,EAAE,gBAAgB,CAAA;KAC7B;IAuDD;;OAEG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAQ3D;;;OAGG;IACG,WAAW,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC;IAQ7D;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAG/B;AAED;;GAEG;AACH,qBAAa,WAAW;IAItB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAJzB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;gBAGX,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,WAAW;IAKtC;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQjD;;OAEG;IACG,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1E;;OAEG;IACG,WAAW,CAAC,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/D;;OAEG;IACG,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvF;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAIzC;;;OAGG;IACG,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACrD,eAAe,CAAC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,UAAU,EACxG,OAAO,EAAE;QAAE,MAAM,EAAE,UAAU,CAAA;KAAE,EAC/B,IAAI,EAAE,CAAC,GACL,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IAM3B;;OAEG;IACH,gBAAgB,IAAI,kBAAkB,EAAE;IAIxC;;OAEG;IACH,IAAI,KAAK,IAAI,YAAY,CAExB;IAED;;OAEG;IACH,eAAe,IAAI,OAAO,GAAG,IAAI;IAIjC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAO5B;;OAEG;IACG,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAI7F;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAU1F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-harness.test.d.ts","sourceRoot":"","sources":["../../src/testing/test-harness.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { AgentId } from '../core/agents/schema.js';
|
|
2
|
+
import type { Session } from '../core/sessions/session.js';
|
|
3
|
+
/**
|
|
4
|
+
* Wait for a specific agent to become idle.
|
|
5
|
+
* An agent is "idle" when: status === 'pending', no pendingToolCalls,
|
|
6
|
+
* no pendingToolResults, and not scheduled for processing.
|
|
7
|
+
*/
|
|
8
|
+
export declare function waitForAgentIdle(session: Session, agentId: AgentId, opts?: {
|
|
9
|
+
timeoutMs?: number;
|
|
10
|
+
}): Promise<void>;
|
|
11
|
+
/**
|
|
12
|
+
* Wait for all agents in a session to become idle.
|
|
13
|
+
*/
|
|
14
|
+
export declare function waitForAllAgentsIdle(session: Session, opts?: {
|
|
15
|
+
timeoutMs?: number;
|
|
16
|
+
}): Promise<void>;
|
|
17
|
+
//# sourceMappingURL=wait-helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wait-helpers.d.ts","sourceRoot":"","sources":["../../src/testing/wait-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAKzD;;;;GAIG;AACH,wBAAsB,gBAAgB,CACrC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,IAAI,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3B,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACzC,OAAO,EAAE,OAAO,EAChB,IAAI,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3B,OAAO,CAAC,IAAI,CAAC,CAgBf"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client Adapter
|
|
3
|
+
*
|
|
4
|
+
* Worker mode - agent connects to DO as WebSocket client.
|
|
5
|
+
* Simplified for broadcast-only communication (agent -> DO -> SPA).
|
|
6
|
+
* User messages and answers are handled via REST API.
|
|
7
|
+
*
|
|
8
|
+
* Authentication: Token is passed in the WebSocket URL as query parameter
|
|
9
|
+
* and Authorization header (handled by DO before upgrade).
|
|
10
|
+
*/
|
|
11
|
+
import type { IWebSocketFactory, ReconnectOptions } from '@roj-ai/transport';
|
|
12
|
+
import type { Logger } from '../../lib/logger/logger.js';
|
|
13
|
+
import type { IAgentTransport, PluginNotification } from './types.js';
|
|
14
|
+
export interface ClientAdapterConfig {
|
|
15
|
+
url: string;
|
|
16
|
+
wsFactory: IWebSocketFactory;
|
|
17
|
+
reconnect?: Partial<ReconnectOptions>;
|
|
18
|
+
logger?: Logger;
|
|
19
|
+
}
|
|
20
|
+
export declare class ClientAdapter implements IAgentTransport {
|
|
21
|
+
private readonly config;
|
|
22
|
+
private readonly connection;
|
|
23
|
+
private readonly logger?;
|
|
24
|
+
private heartbeatTimer;
|
|
25
|
+
constructor(config: ClientAdapterConfig);
|
|
26
|
+
start(): Promise<void>;
|
|
27
|
+
stop(): Promise<void>;
|
|
28
|
+
private startHeartbeat;
|
|
29
|
+
private stopHeartbeat;
|
|
30
|
+
broadcast(notification: PluginNotification): void;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=client-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-adapter.d.ts","sourceRoot":"","sources":["../../../src/transport/adapter/client-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAe,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEzF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAErE,MAAM,WAAW,mBAAmB;IACnC,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,iBAAiB,CAAA;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACrC,MAAM,CAAC,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,aAAc,YAAW,eAAe;IACpD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA4C;IACvE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAQ;IAChC,OAAO,CAAC,cAAc,CAA8C;gBAExD,MAAM,EAAE,mBAAmB;IAejC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAOtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAO3B,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,aAAa;IAOrB,SAAS,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI;CAQjD"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Transport Adapter Module
|
|
3
|
+
*
|
|
4
|
+
* Simplified for broadcast-only WebSocket communication.
|
|
5
|
+
* User messages and answers are handled via REST API.
|
|
6
|
+
*/
|
|
7
|
+
export type { IAgentTransport, PluginNotification } from './types.js';
|
|
8
|
+
export { ServerAdapter } from './server-adapter.js';
|
|
9
|
+
export type { ServerAdapterConfig } from './server-adapter.js';
|
|
10
|
+
export { ClientAdapter } from './client-adapter.js';
|
|
11
|
+
export type { ClientAdapterConfig } from './client-adapter.js';
|
|
12
|
+
import { type ClientAdapterConfig } from './client-adapter.js';
|
|
13
|
+
import { type ServerAdapterConfig } from './server-adapter.js';
|
|
14
|
+
import type { IAgentTransport } from './types.js';
|
|
15
|
+
export interface StandaloneConfig extends ServerAdapterConfig {
|
|
16
|
+
mode: 'standalone';
|
|
17
|
+
}
|
|
18
|
+
export interface WorkerConfig extends ClientAdapterConfig {
|
|
19
|
+
mode: 'worker';
|
|
20
|
+
}
|
|
21
|
+
export type AgentTransportConfig = StandaloneConfig | WorkerConfig;
|
|
22
|
+
export declare function createAgentTransport(config: AgentTransportConfig): IAgentTransport;
|
|
23
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transport/adapter/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAErE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAM9D,OAAO,EAAiB,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC7E,OAAO,EAAiB,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAEjD,MAAM,WAAW,gBAAiB,SAAQ,mBAAmB;IAC5D,IAAI,EAAE,YAAY,CAAA;CAClB;AAED,MAAM,WAAW,YAAa,SAAQ,mBAAmB;IACxD,IAAI,EAAE,QAAQ,CAAA;CACd;AAED,MAAM,MAAM,oBAAoB,GAAG,gBAAgB,GAAG,YAAY,CAAA;AAElE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,oBAAoB,GAAG,eAAe,CAQlF"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Server Adapter
|
|
3
|
+
*
|
|
4
|
+
* Standalone mode - agent is the WebSocket server.
|
|
5
|
+
* Simplified for broadcast-only communication (agent -> SPA).
|
|
6
|
+
* User messages and answers are handled via REST API.
|
|
7
|
+
*/
|
|
8
|
+
import type { IServerWebSocket } from '@roj-ai/transport';
|
|
9
|
+
import { ConnectionManager } from '@roj-ai/transport/server';
|
|
10
|
+
import type { Logger } from '../../lib/logger/logger.js';
|
|
11
|
+
import type { IAgentTransport, PluginNotification } from './types.js';
|
|
12
|
+
export interface ServerAdapterConfig {
|
|
13
|
+
logger?: Logger;
|
|
14
|
+
}
|
|
15
|
+
export declare class ServerAdapter implements IAgentTransport {
|
|
16
|
+
private readonly connectionManager;
|
|
17
|
+
private readonly logger?;
|
|
18
|
+
private readonly wsToConnectionId;
|
|
19
|
+
constructor(config?: ServerAdapterConfig);
|
|
20
|
+
start(): Promise<void>;
|
|
21
|
+
stop(): Promise<void>;
|
|
22
|
+
broadcast(notification: PluginNotification): void;
|
|
23
|
+
handleOpen(ws: IServerWebSocket, sessionId?: string): void;
|
|
24
|
+
handleClose(ws: IServerWebSocket, code: number, reason: string): void;
|
|
25
|
+
handleMessage(ws: IServerWebSocket, message: string): void;
|
|
26
|
+
handleError(_ws: IServerWebSocket, error: Error): void;
|
|
27
|
+
getConnectionManager(): ConnectionManager;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=server-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-adapter.d.ts","sourceRoot":"","sources":["../../../src/transport/adapter/server-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAe,MAAM,mBAAmB,CAAA;AACtE,OAAO,EAAE,iBAAiB,EAAoB,MAAM,0BAA0B,CAAA;AAC9E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAErE,MAAM,WAAW,mBAAmB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,aAAc,YAAW,eAAe;IACpD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IACrD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA0C;gBAE/D,MAAM,GAAE,mBAAwB;IAKtC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,SAAS,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI;IAgBjD,UAAU,CAAC,EAAE,EAAE,gBAAgB,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAmB1D,WAAW,CAAC,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IASrE,aAAa,CAAC,EAAE,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAK1D,WAAW,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;IAItD,oBAAoB,IAAI,iBAAiB;CAGzC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent Transport Types
|
|
3
|
+
*
|
|
4
|
+
* Simplified for broadcast-only WebSocket communication.
|
|
5
|
+
* User messages and answers are handled via REST API.
|
|
6
|
+
*/
|
|
7
|
+
import type { PluginNotification } from '../../core/plugins/plugin-builder.js';
|
|
8
|
+
export type { PluginNotification };
|
|
9
|
+
export interface IAgentTransport {
|
|
10
|
+
start(): Promise<void>;
|
|
11
|
+
stop(): Promise<void>;
|
|
12
|
+
broadcast(notification: PluginNotification): void;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/transport/adapter/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAE1E,YAAY,EAAE,kBAAkB,EAAE,CAAA;AAMlC,MAAM,WAAW,eAAe;IAC/B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACrB,SAAS,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI,CAAA;CACjD"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hono App Setup
|
|
3
|
+
*
|
|
4
|
+
* Creates the main HTTP application with middleware and routes.
|
|
5
|
+
*/
|
|
6
|
+
import { Hono } from 'hono';
|
|
7
|
+
import type { PreprocessorRegistry } from '../../plugins/uploads/preprocessor.js';
|
|
8
|
+
import type { Services } from '../../bootstrap.js';
|
|
9
|
+
import type { SessionManager } from '../../core/sessions/session-manager.js';
|
|
10
|
+
/**
|
|
11
|
+
* Extended services with SessionManager for HTTP routes.
|
|
12
|
+
*/
|
|
13
|
+
export type AppServices = Services & {
|
|
14
|
+
sessionRuntime: SessionManager;
|
|
15
|
+
/** Bearer token for authenticating HTTP requests. Optional - only used in worker mode. */
|
|
16
|
+
agentToken?: string;
|
|
17
|
+
/** File preprocessor registry for upload routes. Optional - only available when uploads plugin is configured. */
|
|
18
|
+
preprocessorRegistry?: PreprocessorRegistry;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Environment type for Hono app with injected services.
|
|
22
|
+
*/
|
|
23
|
+
export type AppEnv = {
|
|
24
|
+
Variables: {
|
|
25
|
+
services: AppServices;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Hono context type for routes.
|
|
30
|
+
*/
|
|
31
|
+
export type AppContext = import('hono').Context<AppEnv>;
|
|
32
|
+
/**
|
|
33
|
+
* Type-safe accessor for services from Hono context.
|
|
34
|
+
* Guarantees services are present (set by middleware).
|
|
35
|
+
*/
|
|
36
|
+
export declare function getServices(c: AppContext): AppServices;
|
|
37
|
+
/**
|
|
38
|
+
* Creates the Hono application with all middleware and routes.
|
|
39
|
+
*/
|
|
40
|
+
export declare function createApp(services: AppServices): Hono<AppEnv>;
|
|
41
|
+
//# sourceMappingURL=app.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../src/transport/http/app.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AAC7E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAA;AAQ5E;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG;IACpC,cAAc,EAAE,cAAc,CAAA;IAC9B,0FAA0F;IAC1F,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,iHAAiH;IACjH,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;CAC3C,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG;IACpB,SAAS,EAAE;QACV,QAAQ,EAAE,WAAW,CAAA;KACrB,CAAA;CACD,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;AAEvD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,UAAU,GAAG,WAAW,CAEtD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CA0E7D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transport/http/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AACpC,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bearer Auth Middleware
|
|
3
|
+
*
|
|
4
|
+
* Validates Authorization: Bearer <token> header against configured agentToken.
|
|
5
|
+
* Only active when agentToken is configured (worker mode).
|
|
6
|
+
*/
|
|
7
|
+
import type { MiddlewareHandler } from 'hono';
|
|
8
|
+
import type { AppEnv } from '../app.js';
|
|
9
|
+
/**
|
|
10
|
+
* Creates bearer auth middleware.
|
|
11
|
+
* Returns 401 if token is invalid or missing (when required).
|
|
12
|
+
*
|
|
13
|
+
* @param expectedToken - The expected bearer token. If undefined, middleware is a no-op.
|
|
14
|
+
*/
|
|
15
|
+
export declare function createBearerAuth(expectedToken: string | undefined): MiddlewareHandler<AppEnv>;
|
|
16
|
+
//# sourceMappingURL=bearer-auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bearer-auth.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/middleware/bearer-auth.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,MAAM,CAAA;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAEvC;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAuB7F"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error Handler Middleware
|
|
3
|
+
*
|
|
4
|
+
* Handles all errors thrown during request processing:
|
|
5
|
+
* - HTTPException from Hono
|
|
6
|
+
* - Domain errors from business logic (self-describing with httpStatus)
|
|
7
|
+
* - Validation errors from Zod
|
|
8
|
+
* - Unknown errors (logged and returned as 500)
|
|
9
|
+
*/
|
|
10
|
+
import type { Context } from 'hono';
|
|
11
|
+
import type { AppEnv } from '../app.js';
|
|
12
|
+
/**
|
|
13
|
+
* Global error handler for Hono app.
|
|
14
|
+
*/
|
|
15
|
+
export declare const errorHandler: (error: Error, c: Context<AppEnv>) => Response & import("hono").TypedResponse<{
|
|
16
|
+
error: {
|
|
17
|
+
type: string;
|
|
18
|
+
message: string;
|
|
19
|
+
};
|
|
20
|
+
}, 400 | 100 | 500 | 404 | 409 | -1 | 429 | 401 | 200 | 501 | 201 | 102 | 103 | 202 | 203 | 206 | 207 | 208 | 226 | 300 | 301 | 302 | 303 | 305 | 306 | 307 | 308 | 402 | 403 | 405 | 406 | 407 | 408 | 410 | 411 | 412 | 413 | 414 | 415 | 416 | 417 | 418 | 421 | 422 | 423 | 424 | 425 | 426 | 428 | 431 | 451 | 502 | 503 | 504 | 505 | 506 | 507 | 508 | 510 | 511, "json">;
|
|
21
|
+
//# sourceMappingURL=error-handler.d.ts.map
|