imcodes 2026.3.332 → 2026.3.340
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/shared/agent-message.d.ts +98 -0
- package/dist/shared/agent-message.d.ts.map +1 -0
- package/dist/shared/agent-message.js +30 -0
- package/dist/shared/agent-message.js.map +1 -0
- package/dist/shared/cookie-names.d.ts +8 -0
- package/dist/shared/cookie-names.d.ts.map +1 -0
- package/dist/shared/cookie-names.js +8 -0
- package/dist/shared/cookie-names.js.map +1 -0
- package/dist/shared/logging/redact.d.ts +9 -0
- package/dist/shared/logging/redact.d.ts.map +1 -0
- package/dist/shared/logging/redact.js +45 -0
- package/dist/shared/logging/redact.js.map +1 -0
- package/dist/shared/p2p-status.d.ts +16 -0
- package/dist/shared/p2p-status.d.ts.map +1 -0
- package/dist/shared/p2p-status.js +29 -0
- package/dist/shared/p2p-status.js.map +1 -0
- package/dist/shared/repo-types.d.ts.map +1 -1
- package/dist/shared/repo-types.js +13 -16
- package/dist/shared/repo-types.js.map +1 -1
- package/dist/shared/transport/file-transfer.d.ts +2 -2
- package/dist/shared/transport/file-transfer.d.ts.map +1 -1
- package/dist/shared/transport/file-transfer.js +3 -6
- package/dist/shared/transport/file-transfer.js.map +1 -1
- package/dist/shared/transport-events.d.ts +119 -0
- package/dist/shared/transport-events.d.ts.map +1 -0
- package/dist/shared/transport-events.js +67 -0
- package/dist/shared/transport-events.js.map +1 -0
- package/dist/src/agent/agent-version.d.ts.map +1 -0
- package/dist/src/agent/agent-version.js.map +1 -0
- package/dist/src/agent/brain-dispatcher.d.ts.map +1 -0
- package/dist/src/agent/brain-dispatcher.js.map +1 -0
- package/dist/{agent → src/agent}/detect.d.ts +15 -2
- package/dist/src/agent/detect.d.ts.map +1 -0
- package/dist/{agent → src/agent}/detect.js +113 -0
- package/dist/src/agent/detect.js.map +1 -0
- package/dist/src/agent/drivers/base.d.ts.map +1 -0
- package/dist/{agent → src/agent}/drivers/base.js.map +1 -1
- package/dist/src/agent/drivers/claude-code.d.ts.map +1 -0
- package/dist/src/agent/drivers/claude-code.js.map +1 -0
- package/dist/src/agent/drivers/codex.d.ts.map +1 -0
- package/dist/src/agent/drivers/codex.js.map +1 -0
- package/dist/src/agent/drivers/gemini.d.ts.map +1 -0
- package/dist/src/agent/drivers/gemini.js.map +1 -0
- package/dist/src/agent/drivers/opencode.d.ts.map +1 -0
- package/dist/src/agent/drivers/opencode.js.map +1 -0
- package/dist/src/agent/drivers/shell.d.ts.map +1 -0
- package/dist/src/agent/drivers/shell.js.map +1 -0
- package/dist/src/agent/env-isolation.d.ts.map +1 -0
- package/dist/src/agent/env-isolation.js.map +1 -0
- package/dist/src/agent/notify-setup.d.ts.map +1 -0
- package/dist/src/agent/notify-setup.js.map +1 -0
- package/dist/src/agent/openclaw-config.d.ts +24 -0
- package/dist/src/agent/openclaw-config.d.ts.map +1 -0
- package/dist/src/agent/openclaw-config.js +77 -0
- package/dist/src/agent/openclaw-config.js.map +1 -0
- package/dist/src/agent/process-session-runtime.d.ts +17 -0
- package/dist/src/agent/process-session-runtime.d.ts.map +1 -0
- package/dist/src/agent/process-session-runtime.js +36 -0
- package/dist/src/agent/process-session-runtime.js.map +1 -0
- package/dist/src/agent/provider-registry.d.ts +7 -0
- package/dist/src/agent/provider-registry.d.ts.map +1 -0
- package/dist/src/agent/provider-registry.js +54 -0
- package/dist/src/agent/provider-registry.js.map +1 -0
- package/dist/src/agent/providers/_template.d.ts +82 -0
- package/dist/src/agent/providers/_template.d.ts.map +1 -0
- package/dist/src/agent/providers/_template.js +160 -0
- package/dist/src/agent/providers/_template.js.map +1 -0
- package/dist/src/agent/providers/openclaw.d.ts +63 -0
- package/dist/src/agent/providers/openclaw.d.ts.map +1 -0
- package/dist/src/agent/providers/openclaw.js +462 -0
- package/dist/src/agent/providers/openclaw.js.map +1 -0
- package/dist/{agent → src/agent}/session-manager.d.ts +7 -0
- package/dist/src/agent/session-manager.d.ts.map +1 -0
- package/dist/{agent → src/agent}/session-manager.js +87 -2
- package/dist/src/agent/session-manager.js.map +1 -0
- package/dist/src/agent/session-runtime.d.ts +24 -0
- package/dist/src/agent/session-runtime.d.ts.map +1 -0
- package/dist/src/agent/session-runtime.js +8 -0
- package/dist/src/agent/session-runtime.js.map +1 -0
- package/dist/src/agent/signal.d.ts.map +1 -0
- package/dist/src/agent/signal.js.map +1 -0
- package/dist/src/agent/status-poller.d.ts.map +1 -0
- package/dist/src/agent/status-poller.js.map +1 -0
- package/dist/src/agent/templates/brain-prompt.d.ts.map +1 -0
- package/dist/src/agent/templates/brain-prompt.js.map +1 -0
- package/dist/src/agent/templates/identity.d.ts.map +1 -0
- package/dist/src/agent/templates/identity.js.map +1 -0
- package/dist/src/agent/tmux.d.ts.map +1 -0
- package/dist/src/agent/tmux.js.map +1 -0
- package/dist/src/agent/transport-provider.d.ts +221 -0
- package/dist/src/agent/transport-provider.d.ts.map +1 -0
- package/dist/src/agent/transport-provider.js +37 -0
- package/dist/src/agent/transport-provider.js.map +1 -0
- package/dist/src/agent/transport-session-runtime.d.ts +25 -0
- package/dist/src/agent/transport-session-runtime.d.ts.map +1 -0
- package/dist/src/agent/transport-session-runtime.js +90 -0
- package/dist/src/agent/transport-session-runtime.js.map +1 -0
- package/dist/src/autofix/audit-engine.d.ts.map +1 -0
- package/dist/src/autofix/audit-engine.js.map +1 -0
- package/dist/src/autofix/branch-manager.d.ts.map +1 -0
- package/dist/src/autofix/branch-manager.js.map +1 -0
- package/dist/src/autofix/decision-engine.d.ts.map +1 -0
- package/dist/src/autofix/decision-engine.js.map +1 -0
- package/dist/src/autofix/index.d.ts.map +1 -0
- package/dist/src/autofix/index.js.map +1 -0
- package/dist/src/autofix/prompt-builder.d.ts.map +1 -0
- package/dist/src/autofix/prompt-builder.js.map +1 -0
- package/dist/src/autofix/report-parser.d.ts.map +1 -0
- package/dist/src/autofix/report-parser.js.map +1 -0
- package/dist/src/autofix/state-machine.d.ts.map +1 -0
- package/dist/src/autofix/state-machine.js.map +1 -0
- package/dist/src/bind/bind-flow.d.ts.map +1 -0
- package/dist/src/bind/bind-flow.js.map +1 -0
- package/dist/src/config.d.ts.map +1 -0
- package/dist/src/config.js.map +1 -0
- package/dist/src/daemon/codex-watcher.d.ts.map +1 -0
- package/dist/src/daemon/codex-watcher.js.map +1 -0
- package/dist/src/daemon/command-handler.d.ts.map +1 -0
- package/dist/{daemon → src/daemon}/command-handler.js +29 -0
- package/dist/src/daemon/command-handler.js.map +1 -0
- package/dist/src/daemon/discussion-orchestrator.d.ts.map +1 -0
- package/dist/src/daemon/discussion-orchestrator.js.map +1 -0
- package/dist/src/daemon/file-transfer-handler.d.ts.map +1 -0
- package/dist/src/daemon/file-transfer-handler.js.map +1 -0
- package/dist/src/daemon/gemini-watcher.d.ts.map +1 -0
- package/dist/src/daemon/gemini-watcher.js.map +1 -0
- package/dist/src/daemon/hook-server.d.ts.map +1 -0
- package/dist/src/daemon/hook-server.js.map +1 -0
- package/dist/src/daemon/jsonl-watcher.d.ts.map +1 -0
- package/dist/src/daemon/jsonl-watcher.js.map +1 -0
- package/dist/src/daemon/lifecycle.d.ts.map +1 -0
- package/dist/{daemon → src/daemon}/lifecycle.js +35 -0
- package/dist/src/daemon/lifecycle.js.map +1 -0
- package/dist/src/daemon/memory-inject.d.ts.map +1 -0
- package/dist/src/daemon/memory-inject.js.map +1 -0
- package/dist/src/daemon/p2p-orchestrator.d.ts.map +1 -0
- package/dist/src/daemon/p2p-orchestrator.js.map +1 -0
- package/dist/src/daemon/repo-handler.d.ts.map +1 -0
- package/dist/src/daemon/repo-handler.js.map +1 -0
- package/dist/src/daemon/server-link.d.ts.map +1 -0
- package/dist/{daemon → src/daemon}/server-link.js +11 -0
- package/dist/src/daemon/server-link.js.map +1 -0
- package/dist/src/daemon/subsession-manager.d.ts.map +1 -0
- package/dist/src/daemon/subsession-manager.js.map +1 -0
- package/dist/src/daemon/terminal-parser.d.ts.map +1 -0
- package/dist/src/daemon/terminal-parser.js.map +1 -0
- package/dist/src/daemon/terminal-streamer.d.ts.map +1 -0
- package/dist/src/daemon/terminal-streamer.js.map +1 -0
- package/dist/src/daemon/timeline-emitter.d.ts.map +1 -0
- package/dist/src/daemon/timeline-emitter.js.map +1 -0
- package/dist/src/daemon/timeline-event.d.ts.map +1 -0
- package/dist/src/daemon/timeline-event.js.map +1 -0
- package/dist/src/daemon/timeline-store.d.ts.map +1 -0
- package/dist/src/daemon/timeline-store.js.map +1 -0
- package/dist/src/daemon/transport-relay.d.ts +12 -0
- package/dist/src/daemon/transport-relay.d.ts.map +1 -0
- package/dist/src/daemon/transport-relay.js +55 -0
- package/dist/src/daemon/transport-relay.js.map +1 -0
- package/dist/{index.d.ts.map → src/index.d.ts.map} +1 -1
- package/dist/{index.js → src/index.js} +53 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/memory/claude-mem.d.ts.map +1 -0
- package/dist/src/memory/claude-mem.js.map +1 -0
- package/dist/src/memory/context-builder.d.ts.map +1 -0
- package/dist/src/memory/context-builder.js.map +1 -0
- package/dist/src/memory/detector.d.ts.map +1 -0
- package/dist/src/memory/detector.js.map +1 -0
- package/dist/src/memory/extractor.d.ts.map +1 -0
- package/dist/src/memory/extractor.js.map +1 -0
- package/dist/src/memory/injector.d.ts.map +1 -0
- package/dist/src/memory/injector.js.map +1 -0
- package/dist/src/memory/interface.d.ts.map +1 -0
- package/dist/{memory → src/memory}/interface.js.map +1 -1
- package/dist/src/memory/mem0.d.ts.map +1 -0
- package/dist/src/memory/mem0.js.map +1 -0
- package/dist/src/repo/cache.d.ts.map +1 -0
- package/dist/src/repo/cache.js.map +1 -0
- package/dist/src/repo/detector.d.ts.map +1 -0
- package/dist/src/repo/detector.js.map +1 -0
- package/dist/src/repo/github-provider.d.ts.map +1 -0
- package/dist/src/repo/github-provider.js.map +1 -0
- package/dist/src/repo/gitlab-provider.d.ts.map +1 -0
- package/dist/src/repo/gitlab-provider.js.map +1 -0
- package/dist/src/repo/provider.d.ts.map +1 -0
- package/dist/src/repo/provider.js.map +1 -0
- package/dist/src/repo/types.d.ts.map +1 -0
- package/dist/{repo → src/repo}/types.js.map +1 -1
- package/dist/src/router/command-parser.d.ts.map +1 -0
- package/dist/src/router/command-parser.js.map +1 -0
- package/dist/src/router/message-router.d.ts.map +1 -0
- package/dist/src/router/message-router.js.map +1 -0
- package/dist/src/router/response-collector.d.ts.map +1 -0
- package/dist/src/router/response-collector.js.map +1 -0
- package/dist/src/setup/setup-flow.d.ts.map +1 -0
- package/dist/src/setup/setup-flow.js.map +1 -0
- package/dist/src/setup/templates.d.ts.map +1 -0
- package/dist/src/setup/templates.js.map +1 -0
- package/dist/src/shared/models/context.d.ts.map +1 -0
- package/dist/src/shared/models/context.js.map +1 -0
- package/dist/src/shared/models/label.d.ts.map +1 -0
- package/dist/src/shared/models/label.js.map +1 -0
- package/dist/src/shared/p2p-modes.d.ts.map +1 -0
- package/dist/src/shared/p2p-modes.js.map +1 -0
- package/dist/src/shared/platform/types.d.ts.map +1 -0
- package/dist/src/shared/platform/types.js.map +1 -0
- package/dist/src/shared/repo-types.d.ts +29 -0
- package/dist/src/shared/repo-types.d.ts.map +1 -0
- package/dist/src/shared/repo-types.js +46 -0
- package/dist/src/shared/repo-types.js.map +1 -0
- package/dist/src/shared/timeline/types.d.ts.map +1 -0
- package/dist/src/shared/timeline/types.js.map +1 -0
- package/dist/src/shared/transport/file-transfer.d.ts +88 -0
- package/dist/src/shared/transport/file-transfer.d.ts.map +1 -0
- package/dist/src/shared/transport/file-transfer.js +23 -0
- package/dist/src/shared/transport/file-transfer.js.map +1 -0
- package/dist/src/shared/transport/fs.d.ts.map +1 -0
- package/dist/{shared → src/shared}/transport/fs.js.map +1 -1
- package/dist/src/shared/transport/terminal.d.ts.map +1 -0
- package/dist/src/shared/transport/terminal.js.map +1 -0
- package/dist/src/store/project-store.d.ts.map +1 -0
- package/dist/src/store/project-store.js.map +1 -0
- package/dist/{store → src/store}/session-store.d.ts +10 -0
- package/dist/src/store/session-store.d.ts.map +1 -0
- package/dist/{store → src/store}/session-store.js +4 -0
- package/dist/src/store/session-store.js.map +1 -0
- package/dist/src/tracker/branch.d.ts.map +1 -0
- package/dist/src/tracker/branch.js.map +1 -0
- package/dist/src/tracker/github.d.ts.map +1 -0
- package/dist/src/tracker/github.js.map +1 -0
- package/dist/src/tracker/gitlab.d.ts.map +1 -0
- package/dist/src/tracker/gitlab.js.map +1 -0
- package/dist/src/tracker/index.d.ts.map +1 -0
- package/dist/src/tracker/index.js.map +1 -0
- package/dist/src/tracker/interface.d.ts.map +1 -0
- package/dist/src/tracker/interface.js.map +1 -0
- package/dist/src/tracker/priority.d.ts.map +1 -0
- package/dist/src/tracker/priority.js.map +1 -0
- package/dist/src/util/imc-dir.d.ts.map +1 -0
- package/dist/src/util/imc-dir.js.map +1 -0
- package/dist/src/util/logger.d.ts.map +1 -0
- package/dist/src/util/logger.js.map +1 -0
- package/dist/src/util/model-context.d.ts.map +1 -0
- package/dist/src/util/model-context.js.map +1 -0
- package/dist/src/util/version.d.ts.map +1 -0
- package/dist/src/util/version.js.map +1 -0
- package/package.json +1 -1
- package/dist/agent/agent-version.d.ts.map +0 -1
- package/dist/agent/agent-version.js.map +0 -1
- package/dist/agent/brain-dispatcher.d.ts.map +0 -1
- package/dist/agent/brain-dispatcher.js.map +0 -1
- package/dist/agent/detect.d.ts.map +0 -1
- package/dist/agent/detect.js.map +0 -1
- package/dist/agent/drivers/base.d.ts.map +0 -1
- package/dist/agent/drivers/claude-code.d.ts.map +0 -1
- package/dist/agent/drivers/claude-code.js.map +0 -1
- package/dist/agent/drivers/codex.d.ts.map +0 -1
- package/dist/agent/drivers/codex.js.map +0 -1
- package/dist/agent/drivers/gemini.d.ts.map +0 -1
- package/dist/agent/drivers/gemini.js.map +0 -1
- package/dist/agent/drivers/opencode.d.ts.map +0 -1
- package/dist/agent/drivers/opencode.js.map +0 -1
- package/dist/agent/drivers/shell.d.ts.map +0 -1
- package/dist/agent/drivers/shell.js.map +0 -1
- package/dist/agent/env-isolation.d.ts.map +0 -1
- package/dist/agent/env-isolation.js.map +0 -1
- package/dist/agent/notify-setup.d.ts.map +0 -1
- package/dist/agent/notify-setup.js.map +0 -1
- package/dist/agent/session-manager.d.ts.map +0 -1
- package/dist/agent/session-manager.js.map +0 -1
- package/dist/agent/signal.d.ts.map +0 -1
- package/dist/agent/signal.js.map +0 -1
- package/dist/agent/status-poller.d.ts.map +0 -1
- package/dist/agent/status-poller.js.map +0 -1
- package/dist/agent/templates/brain-prompt.d.ts.map +0 -1
- package/dist/agent/templates/brain-prompt.js.map +0 -1
- package/dist/agent/templates/identity.d.ts.map +0 -1
- package/dist/agent/templates/identity.js.map +0 -1
- package/dist/agent/tmux.d.ts.map +0 -1
- package/dist/agent/tmux.js.map +0 -1
- package/dist/autofix/audit-engine.d.ts.map +0 -1
- package/dist/autofix/audit-engine.js.map +0 -1
- package/dist/autofix/branch-manager.d.ts.map +0 -1
- package/dist/autofix/branch-manager.js.map +0 -1
- package/dist/autofix/decision-engine.d.ts.map +0 -1
- package/dist/autofix/decision-engine.js.map +0 -1
- package/dist/autofix/index.d.ts.map +0 -1
- package/dist/autofix/index.js.map +0 -1
- package/dist/autofix/prompt-builder.d.ts.map +0 -1
- package/dist/autofix/prompt-builder.js.map +0 -1
- package/dist/autofix/report-parser.d.ts.map +0 -1
- package/dist/autofix/report-parser.js.map +0 -1
- package/dist/autofix/state-machine.d.ts.map +0 -1
- package/dist/autofix/state-machine.js.map +0 -1
- package/dist/bind/bind-flow.d.ts.map +0 -1
- package/dist/bind/bind-flow.js.map +0 -1
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js.map +0 -1
- package/dist/daemon/codex-watcher.d.ts.map +0 -1
- package/dist/daemon/codex-watcher.js.map +0 -1
- package/dist/daemon/command-handler.d.ts.map +0 -1
- package/dist/daemon/command-handler.js.map +0 -1
- package/dist/daemon/discussion-orchestrator.d.ts.map +0 -1
- package/dist/daemon/discussion-orchestrator.js.map +0 -1
- package/dist/daemon/file-transfer-handler.d.ts.map +0 -1
- package/dist/daemon/file-transfer-handler.js.map +0 -1
- package/dist/daemon/gemini-watcher.d.ts.map +0 -1
- package/dist/daemon/gemini-watcher.js.map +0 -1
- package/dist/daemon/hook-server.d.ts.map +0 -1
- package/dist/daemon/hook-server.js.map +0 -1
- package/dist/daemon/jsonl-watcher.d.ts.map +0 -1
- package/dist/daemon/jsonl-watcher.js.map +0 -1
- package/dist/daemon/lifecycle.d.ts.map +0 -1
- package/dist/daemon/lifecycle.js.map +0 -1
- package/dist/daemon/memory-inject.d.ts.map +0 -1
- package/dist/daemon/memory-inject.js.map +0 -1
- package/dist/daemon/p2p-orchestrator.d.ts.map +0 -1
- package/dist/daemon/p2p-orchestrator.js.map +0 -1
- package/dist/daemon/repo-handler.d.ts.map +0 -1
- package/dist/daemon/repo-handler.js.map +0 -1
- package/dist/daemon/server-link.d.ts.map +0 -1
- package/dist/daemon/server-link.js.map +0 -1
- package/dist/daemon/subsession-manager.d.ts.map +0 -1
- package/dist/daemon/subsession-manager.js.map +0 -1
- package/dist/daemon/terminal-parser.d.ts.map +0 -1
- package/dist/daemon/terminal-parser.js.map +0 -1
- package/dist/daemon/terminal-streamer.d.ts.map +0 -1
- package/dist/daemon/terminal-streamer.js.map +0 -1
- package/dist/daemon/timeline-emitter.d.ts.map +0 -1
- package/dist/daemon/timeline-emitter.js.map +0 -1
- package/dist/daemon/timeline-event.d.ts.map +0 -1
- package/dist/daemon/timeline-event.js.map +0 -1
- package/dist/daemon/timeline-store.d.ts.map +0 -1
- package/dist/daemon/timeline-store.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/memory/claude-mem.d.ts.map +0 -1
- package/dist/memory/claude-mem.js.map +0 -1
- package/dist/memory/context-builder.d.ts.map +0 -1
- package/dist/memory/context-builder.js.map +0 -1
- package/dist/memory/detector.d.ts.map +0 -1
- package/dist/memory/detector.js.map +0 -1
- package/dist/memory/extractor.d.ts.map +0 -1
- package/dist/memory/extractor.js.map +0 -1
- package/dist/memory/injector.d.ts.map +0 -1
- package/dist/memory/injector.js.map +0 -1
- package/dist/memory/interface.d.ts.map +0 -1
- package/dist/memory/mem0.d.ts.map +0 -1
- package/dist/memory/mem0.js.map +0 -1
- package/dist/repo/cache.d.ts.map +0 -1
- package/dist/repo/cache.js.map +0 -1
- package/dist/repo/detector.d.ts.map +0 -1
- package/dist/repo/detector.js.map +0 -1
- package/dist/repo/github-provider.d.ts.map +0 -1
- package/dist/repo/github-provider.js.map +0 -1
- package/dist/repo/gitlab-provider.d.ts.map +0 -1
- package/dist/repo/gitlab-provider.js.map +0 -1
- package/dist/repo/provider.d.ts.map +0 -1
- package/dist/repo/provider.js.map +0 -1
- package/dist/repo/types.d.ts.map +0 -1
- package/dist/router/command-parser.d.ts.map +0 -1
- package/dist/router/command-parser.js.map +0 -1
- package/dist/router/message-router.d.ts.map +0 -1
- package/dist/router/message-router.js.map +0 -1
- package/dist/router/response-collector.d.ts.map +0 -1
- package/dist/router/response-collector.js.map +0 -1
- package/dist/setup/setup-flow.d.ts.map +0 -1
- package/dist/setup/setup-flow.js.map +0 -1
- package/dist/setup/templates.d.ts.map +0 -1
- package/dist/setup/templates.js.map +0 -1
- package/dist/shared/models/context.d.ts.map +0 -1
- package/dist/shared/models/context.js.map +0 -1
- package/dist/shared/models/label.d.ts.map +0 -1
- package/dist/shared/models/label.js.map +0 -1
- package/dist/shared/p2p-modes.d.ts.map +0 -1
- package/dist/shared/p2p-modes.js.map +0 -1
- package/dist/shared/platform/types.d.ts.map +0 -1
- package/dist/shared/platform/types.js.map +0 -1
- package/dist/shared/timeline/types.d.ts.map +0 -1
- package/dist/shared/timeline/types.js.map +0 -1
- package/dist/shared/transport/fs.d.ts.map +0 -1
- package/dist/shared/transport/terminal.d.ts.map +0 -1
- package/dist/shared/transport/terminal.js.map +0 -1
- package/dist/store/project-store.d.ts.map +0 -1
- package/dist/store/project-store.js.map +0 -1
- package/dist/store/session-store.d.ts.map +0 -1
- package/dist/store/session-store.js.map +0 -1
- package/dist/tracker/branch.d.ts.map +0 -1
- package/dist/tracker/branch.js.map +0 -1
- package/dist/tracker/github.d.ts.map +0 -1
- package/dist/tracker/github.js.map +0 -1
- package/dist/tracker/gitlab.d.ts.map +0 -1
- package/dist/tracker/gitlab.js.map +0 -1
- package/dist/tracker/index.d.ts.map +0 -1
- package/dist/tracker/index.js.map +0 -1
- package/dist/tracker/interface.d.ts.map +0 -1
- package/dist/tracker/interface.js.map +0 -1
- package/dist/tracker/priority.d.ts.map +0 -1
- package/dist/tracker/priority.js.map +0 -1
- package/dist/util/imc-dir.d.ts.map +0 -1
- package/dist/util/imc-dir.js.map +0 -1
- package/dist/util/logger.d.ts.map +0 -1
- package/dist/util/logger.js.map +0 -1
- package/dist/util/model-context.d.ts.map +0 -1
- package/dist/util/model-context.js.map +0 -1
- package/dist/util/version.d.ts.map +0 -1
- package/dist/util/version.js.map +0 -1
- /package/dist/{agent → src/agent}/agent-version.d.ts +0 -0
- /package/dist/{agent → src/agent}/agent-version.js +0 -0
- /package/dist/{agent → src/agent}/brain-dispatcher.d.ts +0 -0
- /package/dist/{agent → src/agent}/brain-dispatcher.js +0 -0
- /package/dist/{agent → src/agent}/drivers/base.d.ts +0 -0
- /package/dist/{agent → src/agent}/drivers/base.js +0 -0
- /package/dist/{agent → src/agent}/drivers/claude-code.d.ts +0 -0
- /package/dist/{agent → src/agent}/drivers/claude-code.js +0 -0
- /package/dist/{agent → src/agent}/drivers/codex.d.ts +0 -0
- /package/dist/{agent → src/agent}/drivers/codex.js +0 -0
- /package/dist/{agent → src/agent}/drivers/gemini.d.ts +0 -0
- /package/dist/{agent → src/agent}/drivers/gemini.js +0 -0
- /package/dist/{agent → src/agent}/drivers/opencode.d.ts +0 -0
- /package/dist/{agent → src/agent}/drivers/opencode.js +0 -0
- /package/dist/{agent → src/agent}/drivers/shell.d.ts +0 -0
- /package/dist/{agent → src/agent}/drivers/shell.js +0 -0
- /package/dist/{agent → src/agent}/env-isolation.d.ts +0 -0
- /package/dist/{agent → src/agent}/env-isolation.js +0 -0
- /package/dist/{agent → src/agent}/notify-setup.d.ts +0 -0
- /package/dist/{agent → src/agent}/notify-setup.js +0 -0
- /package/dist/{agent → src/agent}/signal.d.ts +0 -0
- /package/dist/{agent → src/agent}/signal.js +0 -0
- /package/dist/{agent → src/agent}/status-poller.d.ts +0 -0
- /package/dist/{agent → src/agent}/status-poller.js +0 -0
- /package/dist/{agent → src/agent}/templates/brain-prompt.d.ts +0 -0
- /package/dist/{agent → src/agent}/templates/brain-prompt.js +0 -0
- /package/dist/{agent → src/agent}/templates/identity.d.ts +0 -0
- /package/dist/{agent → src/agent}/templates/identity.js +0 -0
- /package/dist/{agent → src/agent}/tmux.d.ts +0 -0
- /package/dist/{agent → src/agent}/tmux.js +0 -0
- /package/dist/{autofix → src/autofix}/audit-engine.d.ts +0 -0
- /package/dist/{autofix → src/autofix}/audit-engine.js +0 -0
- /package/dist/{autofix → src/autofix}/branch-manager.d.ts +0 -0
- /package/dist/{autofix → src/autofix}/branch-manager.js +0 -0
- /package/dist/{autofix → src/autofix}/decision-engine.d.ts +0 -0
- /package/dist/{autofix → src/autofix}/decision-engine.js +0 -0
- /package/dist/{autofix → src/autofix}/index.d.ts +0 -0
- /package/dist/{autofix → src/autofix}/index.js +0 -0
- /package/dist/{autofix → src/autofix}/prompt-builder.d.ts +0 -0
- /package/dist/{autofix → src/autofix}/prompt-builder.js +0 -0
- /package/dist/{autofix → src/autofix}/report-parser.d.ts +0 -0
- /package/dist/{autofix → src/autofix}/report-parser.js +0 -0
- /package/dist/{autofix → src/autofix}/state-machine.d.ts +0 -0
- /package/dist/{autofix → src/autofix}/state-machine.js +0 -0
- /package/dist/{bind → src/bind}/bind-flow.d.ts +0 -0
- /package/dist/{bind → src/bind}/bind-flow.js +0 -0
- /package/dist/{config.d.ts → src/config.d.ts} +0 -0
- /package/dist/{config.js → src/config.js} +0 -0
- /package/dist/{daemon → src/daemon}/codex-watcher.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/codex-watcher.js +0 -0
- /package/dist/{daemon → src/daemon}/command-handler.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/discussion-orchestrator.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/discussion-orchestrator.js +0 -0
- /package/dist/{daemon → src/daemon}/file-transfer-handler.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/file-transfer-handler.js +0 -0
- /package/dist/{daemon → src/daemon}/gemini-watcher.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/gemini-watcher.js +0 -0
- /package/dist/{daemon → src/daemon}/hook-server.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/hook-server.js +0 -0
- /package/dist/{daemon → src/daemon}/jsonl-watcher.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/jsonl-watcher.js +0 -0
- /package/dist/{daemon → src/daemon}/lifecycle.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/memory-inject.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/memory-inject.js +0 -0
- /package/dist/{daemon → src/daemon}/p2p-orchestrator.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/p2p-orchestrator.js +0 -0
- /package/dist/{daemon → src/daemon}/repo-handler.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/repo-handler.js +0 -0
- /package/dist/{daemon → src/daemon}/server-link.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/subsession-manager.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/subsession-manager.js +0 -0
- /package/dist/{daemon → src/daemon}/terminal-parser.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/terminal-parser.js +0 -0
- /package/dist/{daemon → src/daemon}/terminal-streamer.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/terminal-streamer.js +0 -0
- /package/dist/{daemon → src/daemon}/timeline-emitter.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/timeline-emitter.js +0 -0
- /package/dist/{daemon → src/daemon}/timeline-event.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/timeline-event.js +0 -0
- /package/dist/{daemon → src/daemon}/timeline-store.d.ts +0 -0
- /package/dist/{daemon → src/daemon}/timeline-store.js +0 -0
- /package/dist/{index.d.ts → src/index.d.ts} +0 -0
- /package/dist/{memory → src/memory}/claude-mem.d.ts +0 -0
- /package/dist/{memory → src/memory}/claude-mem.js +0 -0
- /package/dist/{memory → src/memory}/context-builder.d.ts +0 -0
- /package/dist/{memory → src/memory}/context-builder.js +0 -0
- /package/dist/{memory → src/memory}/detector.d.ts +0 -0
- /package/dist/{memory → src/memory}/detector.js +0 -0
- /package/dist/{memory → src/memory}/extractor.d.ts +0 -0
- /package/dist/{memory → src/memory}/extractor.js +0 -0
- /package/dist/{memory → src/memory}/injector.d.ts +0 -0
- /package/dist/{memory → src/memory}/injector.js +0 -0
- /package/dist/{memory → src/memory}/interface.d.ts +0 -0
- /package/dist/{memory → src/memory}/interface.js +0 -0
- /package/dist/{memory → src/memory}/mem0.d.ts +0 -0
- /package/dist/{memory → src/memory}/mem0.js +0 -0
- /package/dist/{repo → src/repo}/cache.d.ts +0 -0
- /package/dist/{repo → src/repo}/cache.js +0 -0
- /package/dist/{repo → src/repo}/detector.d.ts +0 -0
- /package/dist/{repo → src/repo}/detector.js +0 -0
- /package/dist/{repo → src/repo}/github-provider.d.ts +0 -0
- /package/dist/{repo → src/repo}/github-provider.js +0 -0
- /package/dist/{repo → src/repo}/gitlab-provider.d.ts +0 -0
- /package/dist/{repo → src/repo}/gitlab-provider.js +0 -0
- /package/dist/{repo → src/repo}/provider.d.ts +0 -0
- /package/dist/{repo → src/repo}/provider.js +0 -0
- /package/dist/{repo → src/repo}/types.d.ts +0 -0
- /package/dist/{repo → src/repo}/types.js +0 -0
- /package/dist/{router → src/router}/command-parser.d.ts +0 -0
- /package/dist/{router → src/router}/command-parser.js +0 -0
- /package/dist/{router → src/router}/message-router.d.ts +0 -0
- /package/dist/{router → src/router}/message-router.js +0 -0
- /package/dist/{router → src/router}/response-collector.d.ts +0 -0
- /package/dist/{router → src/router}/response-collector.js +0 -0
- /package/dist/{setup → src/setup}/setup-flow.d.ts +0 -0
- /package/dist/{setup → src/setup}/setup-flow.js +0 -0
- /package/dist/{setup → src/setup}/templates.d.ts +0 -0
- /package/dist/{setup → src/setup}/templates.js +0 -0
- /package/dist/{shared → src/shared}/models/context.d.ts +0 -0
- /package/dist/{shared → src/shared}/models/context.js +0 -0
- /package/dist/{shared → src/shared}/models/label.d.ts +0 -0
- /package/dist/{shared → src/shared}/models/label.js +0 -0
- /package/dist/{shared → src/shared}/p2p-modes.d.ts +0 -0
- /package/dist/{shared → src/shared}/p2p-modes.js +0 -0
- /package/dist/{shared → src/shared}/platform/types.d.ts +0 -0
- /package/dist/{shared → src/shared}/platform/types.js +0 -0
- /package/dist/{shared → src/shared}/timeline/types.d.ts +0 -0
- /package/dist/{shared → src/shared}/timeline/types.js +0 -0
- /package/dist/{shared → src/shared}/transport/fs.d.ts +0 -0
- /package/dist/{shared → src/shared}/transport/fs.js +0 -0
- /package/dist/{shared → src/shared}/transport/terminal.d.ts +0 -0
- /package/dist/{shared → src/shared}/transport/terminal.js +0 -0
- /package/dist/{store → src/store}/project-store.d.ts +0 -0
- /package/dist/{store → src/store}/project-store.js +0 -0
- /package/dist/{tracker → src/tracker}/branch.d.ts +0 -0
- /package/dist/{tracker → src/tracker}/branch.js +0 -0
- /package/dist/{tracker → src/tracker}/github.d.ts +0 -0
- /package/dist/{tracker → src/tracker}/github.js +0 -0
- /package/dist/{tracker → src/tracker}/gitlab.d.ts +0 -0
- /package/dist/{tracker → src/tracker}/gitlab.js +0 -0
- /package/dist/{tracker → src/tracker}/index.d.ts +0 -0
- /package/dist/{tracker → src/tracker}/index.js +0 -0
- /package/dist/{tracker → src/tracker}/interface.d.ts +0 -0
- /package/dist/{tracker → src/tracker}/interface.js +0 -0
- /package/dist/{tracker → src/tracker}/priority.d.ts +0 -0
- /package/dist/{tracker → src/tracker}/priority.js +0 -0
- /package/dist/{util → src/util}/imc-dir.d.ts +0 -0
- /package/dist/{util → src/util}/imc-dir.js +0 -0
- /package/dist/{util → src/util}/logger.d.ts +0 -0
- /package/dist/{util → src/util}/logger.js +0 -0
- /package/dist/{util → src/util}/model-context.d.ts +0 -0
- /package/dist/{util → src/util}/model-context.js +0 -0
- /package/dist/{util → src/util}/version.d.ts +0 -0
- /package/dist/{util → src/util}/version.js +0 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Provider template — copy this file to implement a new TransportProvider.
|
|
3
|
+
*
|
|
4
|
+
* Steps:
|
|
5
|
+
* 1. Copy to `src/agent/providers/your-provider.ts`
|
|
6
|
+
* 2. Implement all required methods (search for TODO).
|
|
7
|
+
* 3. Register in `src/agent/provider-registry.ts` → createProvider().
|
|
8
|
+
* 4. Add your agent type to `src/agent/detect.ts` → TransportAgent union.
|
|
9
|
+
* 5. Add connect/disconnect handling if needed in `src/agent/session-manager.ts`.
|
|
10
|
+
*
|
|
11
|
+
* Connection modes:
|
|
12
|
+
* - persistent: Long-lived connection (WebSocket). Example: OpenClaw.
|
|
13
|
+
* connect() establishes and maintains the connection; the provider
|
|
14
|
+
* tracks session state server-side (sessionOwnership: 'provider').
|
|
15
|
+
* - per-request: New HTTP request per message. Example: MiniMax, DeepSeek.
|
|
16
|
+
* connect() only validates config (no persistent connection).
|
|
17
|
+
* send() creates a new HTTP request each time.
|
|
18
|
+
* History must be managed locally (sessionOwnership: 'local').
|
|
19
|
+
* - local-sdk: In-process SDK calls. Example: Claude Code SDK.
|
|
20
|
+
* connect() loads/validates the SDK; session ownership is 'shared'.
|
|
21
|
+
*/
|
|
22
|
+
import type { TransportProvider, ProviderConfig, ProviderCapabilities, SessionConfig, ProviderError } from '../transport-provider.js';
|
|
23
|
+
import type { AgentMessage, MessageDelta } from '../../../shared/agent-message.js';
|
|
24
|
+
export declare class YourProvider implements TransportProvider {
|
|
25
|
+
readonly id = "your-provider";
|
|
26
|
+
readonly connectionMode: "per-request";
|
|
27
|
+
readonly sessionOwnership: "local";
|
|
28
|
+
readonly capabilities: ProviderCapabilities;
|
|
29
|
+
private config;
|
|
30
|
+
/** Registered callbacks (initialise each array even if you don't use streaming). */
|
|
31
|
+
private deltaCallbacks;
|
|
32
|
+
private completeCallbacks;
|
|
33
|
+
private errorCallbacks;
|
|
34
|
+
/**
|
|
35
|
+
* Initialise the provider with user-supplied config.
|
|
36
|
+
*
|
|
37
|
+
* For persistent providers: open the WebSocket / SDK connection here.
|
|
38
|
+
* For per-request providers: validate required fields (apiKey, url, …) and
|
|
39
|
+
* store them — no network call needed.
|
|
40
|
+
*
|
|
41
|
+
* Throw a ProviderError (use makeError below) if config is missing or invalid.
|
|
42
|
+
*/
|
|
43
|
+
connect(config: ProviderConfig): Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* Release all resources (timers, sockets, SDK handles).
|
|
46
|
+
* Must be safe to call multiple times.
|
|
47
|
+
*/
|
|
48
|
+
disconnect(): Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* Send a user message to the given session.
|
|
51
|
+
*
|
|
52
|
+
* For persistent providers: forward the message over the existing connection.
|
|
53
|
+
* For per-request providers: build and fire an HTTP request; call completeCallbacks
|
|
54
|
+
* (and deltaCallbacks if streaming) with the result before returning.
|
|
55
|
+
*
|
|
56
|
+
* @param sessionId - The session ID returned by createSession().
|
|
57
|
+
* @param message - The user's text content.
|
|
58
|
+
* @param attachments - Only present when capabilities.attachments is true.
|
|
59
|
+
*/
|
|
60
|
+
send(sessionId: string, message: string, _attachments?: unknown[]): Promise<void>;
|
|
61
|
+
/** Register a callback for streaming deltas (only meaningful when capabilities.streaming is true). */
|
|
62
|
+
onDelta(cb: (sessionId: string, delta: MessageDelta) => void): void;
|
|
63
|
+
/** Register a callback for the final completed message after a turn. */
|
|
64
|
+
onComplete(cb: (sessionId: string, message: AgentMessage) => void): void;
|
|
65
|
+
/** Register a callback for provider errors scoped to a session. */
|
|
66
|
+
onError(cb: (sessionId: string, error: ProviderError) => void): void;
|
|
67
|
+
/**
|
|
68
|
+
* Create a new session on the provider.
|
|
69
|
+
* Return the provider-assigned session ID that will be passed to send() and endSession().
|
|
70
|
+
*
|
|
71
|
+
* For per-request providers with sessionOwnership 'local', this can simply return
|
|
72
|
+
* config.sessionKey (the daemon uses it as the key locally).
|
|
73
|
+
*/
|
|
74
|
+
createSession(config: SessionConfig): Promise<string>;
|
|
75
|
+
/**
|
|
76
|
+
* End a session and release any provider-side resources.
|
|
77
|
+
* For per-request providers with no remote session state, this is a no-op.
|
|
78
|
+
*/
|
|
79
|
+
endSession(_sessionId: string): Promise<void>;
|
|
80
|
+
private makeError;
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=_template.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_template.d.ts","sourceRoot":"","sources":["../../../../src/agent/providers/_template.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,aAAa,EACb,aAAa,EACd,MAAM,0BAA0B,CAAC;AAMlC,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAMnF,qBAAa,YAAa,YAAW,iBAAiB;IAGpD,QAAQ,CAAC,EAAE,mBAAe;IAM1B,QAAQ,CAAC,cAAc,gBAAgC;IAMvD,QAAQ,CAAC,gBAAgB,UAA2B;IAEpD,QAAQ,CAAC,YAAY,EAAE,oBAAoB,CAQzC;IAIF,OAAO,CAAC,MAAM,CAA+B;IAE7C,oFAAoF;IACpF,OAAO,CAAC,cAAc,CAAkE;IACxF,OAAO,CAAC,iBAAiB,CAAiE;IAC1F,OAAO,CAAC,cAAc,CAAmE;IAIzF;;;;;;;;OAQG;IACG,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IASpD;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAMjC;;;;;;;;;;OAUG;IACG,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBvF,sGAAsG;IACtG,OAAO,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI;IAInE,wEAAwE;IACxE,UAAU,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI;IAIxE,mEAAmE;IACnE,OAAO,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,IAAI;IAIpE;;;;;;OAMG;IACG,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;IAK3D;;;OAGG;IACG,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcnD,OAAO,CAAC,SAAS;CAGlB"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Provider template — copy this file to implement a new TransportProvider.
|
|
4
|
+
*
|
|
5
|
+
* Steps:
|
|
6
|
+
* 1. Copy to `src/agent/providers/your-provider.ts`
|
|
7
|
+
* 2. Implement all required methods (search for TODO).
|
|
8
|
+
* 3. Register in `src/agent/provider-registry.ts` → createProvider().
|
|
9
|
+
* 4. Add your agent type to `src/agent/detect.ts` → TransportAgent union.
|
|
10
|
+
* 5. Add connect/disconnect handling if needed in `src/agent/session-manager.ts`.
|
|
11
|
+
*
|
|
12
|
+
* Connection modes:
|
|
13
|
+
* - persistent: Long-lived connection (WebSocket). Example: OpenClaw.
|
|
14
|
+
* connect() establishes and maintains the connection; the provider
|
|
15
|
+
* tracks session state server-side (sessionOwnership: 'provider').
|
|
16
|
+
* - per-request: New HTTP request per message. Example: MiniMax, DeepSeek.
|
|
17
|
+
* connect() only validates config (no persistent connection).
|
|
18
|
+
* send() creates a new HTTP request each time.
|
|
19
|
+
* History must be managed locally (sessionOwnership: 'local').
|
|
20
|
+
* - local-sdk: In-process SDK calls. Example: Claude Code SDK.
|
|
21
|
+
* connect() loads/validates the SDK; session ownership is 'shared'.
|
|
22
|
+
*/
|
|
23
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
24
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
25
|
+
};
|
|
26
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
+
exports.YourProvider = void 0;
|
|
28
|
+
const transport_provider_js_1 = require("../transport-provider.js");
|
|
29
|
+
const logger_js_1 = __importDefault(require("../../util/logger.js"));
|
|
30
|
+
// TODO: Replace 'your-provider' with the unique stable id for your provider.
|
|
31
|
+
const PROVIDER_ID = 'your-provider';
|
|
32
|
+
class YourProvider {
|
|
33
|
+
// ── Identity & mode ────────────────────────────────────────────────────────
|
|
34
|
+
id = PROVIDER_ID;
|
|
35
|
+
// TODO: Set the appropriate connection mode.
|
|
36
|
+
// CONNECTION_MODES.PERSISTENT — long-lived WebSocket
|
|
37
|
+
// CONNECTION_MODES.PER_REQUEST — HTTP per message
|
|
38
|
+
// CONNECTION_MODES.LOCAL_SDK — in-process SDK
|
|
39
|
+
connectionMode = transport_provider_js_1.CONNECTION_MODES.PER_REQUEST;
|
|
40
|
+
// TODO: Set who owns session state.
|
|
41
|
+
// SESSION_OWNERSHIP.PROVIDER — provider tracks history (persistent)
|
|
42
|
+
// SESSION_OWNERSHIP.LOCAL — daemon must manage history (per-request)
|
|
43
|
+
// SESSION_OWNERSHIP.SHARED — both sides participate (local-sdk)
|
|
44
|
+
sessionOwnership = transport_provider_js_1.SESSION_OWNERSHIP.LOCAL;
|
|
45
|
+
capabilities = {
|
|
46
|
+
// TODO: Set capabilities to match what your provider actually supports.
|
|
47
|
+
streaming: false,
|
|
48
|
+
toolCalling: false,
|
|
49
|
+
approval: false,
|
|
50
|
+
sessionRestore: false,
|
|
51
|
+
multiTurn: true,
|
|
52
|
+
attachments: false,
|
|
53
|
+
};
|
|
54
|
+
// ── Private state ──────────────────────────────────────────────────────────
|
|
55
|
+
config = null;
|
|
56
|
+
/** Registered callbacks (initialise each array even if you don't use streaming). */
|
|
57
|
+
deltaCallbacks = [];
|
|
58
|
+
completeCallbacks = [];
|
|
59
|
+
errorCallbacks = [];
|
|
60
|
+
// ── Core methods ───────────────────────────────────────────────────────────
|
|
61
|
+
/**
|
|
62
|
+
* Initialise the provider with user-supplied config.
|
|
63
|
+
*
|
|
64
|
+
* For persistent providers: open the WebSocket / SDK connection here.
|
|
65
|
+
* For per-request providers: validate required fields (apiKey, url, …) and
|
|
66
|
+
* store them — no network call needed.
|
|
67
|
+
*
|
|
68
|
+
* Throw a ProviderError (use makeError below) if config is missing or invalid.
|
|
69
|
+
*/
|
|
70
|
+
async connect(config) {
|
|
71
|
+
// TODO: validate required config fields.
|
|
72
|
+
if (!config.apiKey) {
|
|
73
|
+
throw this.makeError(transport_provider_js_1.PROVIDER_ERROR_CODES.CONFIG_ERROR, 'apiKey is required', false);
|
|
74
|
+
}
|
|
75
|
+
this.config = config;
|
|
76
|
+
logger_js_1.default.info({ provider: this.id }, 'Provider connected');
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Release all resources (timers, sockets, SDK handles).
|
|
80
|
+
* Must be safe to call multiple times.
|
|
81
|
+
*/
|
|
82
|
+
async disconnect() {
|
|
83
|
+
// TODO: tear down any persistent connections / cancel timers.
|
|
84
|
+
this.config = null;
|
|
85
|
+
logger_js_1.default.info({ provider: this.id }, 'Provider disconnected');
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Send a user message to the given session.
|
|
89
|
+
*
|
|
90
|
+
* For persistent providers: forward the message over the existing connection.
|
|
91
|
+
* For per-request providers: build and fire an HTTP request; call completeCallbacks
|
|
92
|
+
* (and deltaCallbacks if streaming) with the result before returning.
|
|
93
|
+
*
|
|
94
|
+
* @param sessionId - The session ID returned by createSession().
|
|
95
|
+
* @param message - The user's text content.
|
|
96
|
+
* @param attachments - Only present when capabilities.attachments is true.
|
|
97
|
+
*/
|
|
98
|
+
async send(sessionId, message, _attachments) {
|
|
99
|
+
if (!this.config) {
|
|
100
|
+
throw this.makeError(transport_provider_js_1.PROVIDER_ERROR_CODES.CONNECTION_LOST, 'Not connected', false);
|
|
101
|
+
}
|
|
102
|
+
// TODO: implement message sending.
|
|
103
|
+
// For per-request providers, fire the HTTP call here, then emit:
|
|
104
|
+
//
|
|
105
|
+
// const reply = await callProviderApi(this.config, sessionId, message);
|
|
106
|
+
// const agentMessage: AgentMessage = {
|
|
107
|
+
// id: randomUUID(),
|
|
108
|
+
// sessionId,
|
|
109
|
+
// kind: 'text',
|
|
110
|
+
// role: 'assistant',
|
|
111
|
+
// content: reply,
|
|
112
|
+
// timestamp: Date.now(),
|
|
113
|
+
// status: 'complete',
|
|
114
|
+
// };
|
|
115
|
+
// this.completeCallbacks.forEach((cb) => cb(sessionId, agentMessage));
|
|
116
|
+
logger_js_1.default.debug({ provider: this.id, sessionId }, 'send() — not yet implemented');
|
|
117
|
+
}
|
|
118
|
+
/** Register a callback for streaming deltas (only meaningful when capabilities.streaming is true). */
|
|
119
|
+
onDelta(cb) {
|
|
120
|
+
this.deltaCallbacks.push(cb);
|
|
121
|
+
}
|
|
122
|
+
/** Register a callback for the final completed message after a turn. */
|
|
123
|
+
onComplete(cb) {
|
|
124
|
+
this.completeCallbacks.push(cb);
|
|
125
|
+
}
|
|
126
|
+
/** Register a callback for provider errors scoped to a session. */
|
|
127
|
+
onError(cb) {
|
|
128
|
+
this.errorCallbacks.push(cb);
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Create a new session on the provider.
|
|
132
|
+
* Return the provider-assigned session ID that will be passed to send() and endSession().
|
|
133
|
+
*
|
|
134
|
+
* For per-request providers with sessionOwnership 'local', this can simply return
|
|
135
|
+
* config.sessionKey (the daemon uses it as the key locally).
|
|
136
|
+
*/
|
|
137
|
+
async createSession(config) {
|
|
138
|
+
// TODO: create a remote session if required, or just return the local key.
|
|
139
|
+
return config.sessionKey;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* End a session and release any provider-side resources.
|
|
143
|
+
* For per-request providers with no remote session state, this is a no-op.
|
|
144
|
+
*/
|
|
145
|
+
async endSession(_sessionId) {
|
|
146
|
+
// TODO: delete remote session if the provider supports it.
|
|
147
|
+
}
|
|
148
|
+
// ── Optional capability methods — implement only if the capability is true ──
|
|
149
|
+
// onToolCall?(cb: (sessionId: string, tool: ToolCallEvent) => void): void { ... }
|
|
150
|
+
// onApprovalRequest?(cb: (sessionId: string, req: ApprovalRequest) => void): void { ... }
|
|
151
|
+
// respondApproval?(sessionId: string, requestId: string, approved: boolean): Promise<void> { ... }
|
|
152
|
+
// restoreSession?(sessionId: string): Promise<boolean> { ... }
|
|
153
|
+
// listSessions?(): Promise<RemoteSessionInfo[]> { ... }
|
|
154
|
+
// ── Helpers ────────────────────────────────────────────────────────────────
|
|
155
|
+
makeError(code, message, recoverable, details) {
|
|
156
|
+
return { code, message, recoverable, details };
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
exports.YourProvider = YourProvider;
|
|
160
|
+
//# sourceMappingURL=_template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_template.js","sourceRoot":"","sources":["../../../../src/agent/providers/_template.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenClaw TransportProvider
|
|
3
|
+
*
|
|
4
|
+
* Connects to a local OpenClaw gateway via WebSocket, completes the
|
|
5
|
+
* connect-challenge handshake, and routes messages to/from OC agent sessions.
|
|
6
|
+
*
|
|
7
|
+
* Connection mode : persistent (long-lived WebSocket, reconnects on drop)
|
|
8
|
+
* Session ownership: provider (OpenClaw owns history and session state)
|
|
9
|
+
*/
|
|
10
|
+
import type { TransportProvider, ProviderConfig, SessionConfig, ProviderCapabilities, ProviderError, RemoteSessionInfo } from '../transport-provider.js';
|
|
11
|
+
import type { AgentMessage, MessageDelta } from '../../../shared/agent-message.js';
|
|
12
|
+
export declare class OpenClawProvider implements TransportProvider {
|
|
13
|
+
readonly id = "openclaw";
|
|
14
|
+
readonly connectionMode: "persistent";
|
|
15
|
+
readonly sessionOwnership: "provider";
|
|
16
|
+
readonly capabilities: ProviderCapabilities;
|
|
17
|
+
private config;
|
|
18
|
+
private ws;
|
|
19
|
+
/** Pending RPC calls keyed by request id. */
|
|
20
|
+
private pending;
|
|
21
|
+
/** Registered callbacks. */
|
|
22
|
+
private deltaCallbacks;
|
|
23
|
+
private completeCallbacks;
|
|
24
|
+
private errorCallbacks;
|
|
25
|
+
/** Accumulator: partial text per runId while streaming. */
|
|
26
|
+
private runAccumulator;
|
|
27
|
+
/** Reconnect state. */
|
|
28
|
+
private reconnectTimer;
|
|
29
|
+
private backoffMs;
|
|
30
|
+
private intentionalDisconnect;
|
|
31
|
+
/** Tick / heartbeat state. */
|
|
32
|
+
private lastTickAt;
|
|
33
|
+
private tickStaleTimer;
|
|
34
|
+
/** Whether connect() has resolved successfully at least once. */
|
|
35
|
+
private connected;
|
|
36
|
+
/** OC agent ID (e.g. 'main'). Resolved from config on connect. */
|
|
37
|
+
private agentId;
|
|
38
|
+
connect(config: ProviderConfig): Promise<void>;
|
|
39
|
+
disconnect(): Promise<void>;
|
|
40
|
+
send(sessionId: string, message: string, _attachments?: unknown[]): Promise<void>;
|
|
41
|
+
onDelta(cb: (sessionId: string, delta: MessageDelta) => void): void;
|
|
42
|
+
onComplete(cb: (sessionId: string, message: AgentMessage) => void): void;
|
|
43
|
+
onError(cb: (sessionId: string, error: ProviderError) => void): void;
|
|
44
|
+
createSession(config: SessionConfig): Promise<string>;
|
|
45
|
+
endSession(_sessionId: string): Promise<void>;
|
|
46
|
+
restoreSession(sessionId: string): Promise<boolean>;
|
|
47
|
+
listSessions(): Promise<RemoteSessionInfo[]>;
|
|
48
|
+
private openSocket;
|
|
49
|
+
private handleFrame;
|
|
50
|
+
private handleEventFrame;
|
|
51
|
+
private handleResFrame;
|
|
52
|
+
private handleAgentEvent;
|
|
53
|
+
private handleChatEvent;
|
|
54
|
+
private rpc;
|
|
55
|
+
private makeError;
|
|
56
|
+
private handleWsError;
|
|
57
|
+
private handleWsClose;
|
|
58
|
+
private scheduleReconnect;
|
|
59
|
+
private resetTickTimer;
|
|
60
|
+
private clearTimers;
|
|
61
|
+
private rejectAllPending;
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=openclaw.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openclaw.d.ts","sourceRoot":"","sources":["../../../../src/agent/providers/openclaw.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AAMlC,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAgCnF,qBAAa,gBAAiB,YAAW,iBAAiB;IACxD,QAAQ,CAAC,EAAE,cAAc;IACzB,QAAQ,CAAC,cAAc,eAA+B;IACtD,QAAQ,CAAC,gBAAgB,aAA8B;IACvD,QAAQ,CAAC,YAAY,EAAE,oBAAoB,CAOzC;IAIF,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,EAAE,CAA0B;IAEpC,6CAA6C;IAC7C,OAAO,CAAC,OAAO,CAAoC;IAEnD,4BAA4B;IAC5B,OAAO,CAAC,cAAc,CAA+D;IACrF,OAAO,CAAC,iBAAiB,CAAiE;IAC1F,OAAO,CAAC,cAAc,CAAgE;IAEtF,2DAA2D;IAC3D,OAAO,CAAC,cAAc,CAA6E;IAEnG,uBAAuB;IACvB,OAAO,CAAC,cAAc,CAA8C;IACpE,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,qBAAqB,CAAS;IAEtC,8BAA8B;IAC9B,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,cAAc,CAA8C;IAEpE,iEAAiE;IACjE,OAAO,CAAC,SAAS,CAAS;IAE1B,kEAAkE;IAClE,OAAO,CAAC,OAAO,CAAU;IAInB,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAO9C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAc3B,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBvF,OAAO,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI;IAInE,UAAU,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI;IAIxE,OAAO,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,IAAI;IAI9D,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBrD,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO7C,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASnD,YAAY,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAsBpC,UAAU;IAsGxB,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,gBAAgB;IAoBxB,OAAO,CAAC,cAAc;IAkBtB,OAAO,CAAC,gBAAgB;IA0FxB,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,GAAG;IAiCX,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,gBAAgB;CAOzB"}
|