pulseed 0.1.3 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/{a2a-adapter.d.ts → agents/a2a-adapter.d.ts} +1 -1
- package/dist/adapters/agents/a2a-adapter.d.ts.map +1 -0
- package/dist/adapters/{a2a-adapter.js → agents/a2a-adapter.js} +1 -1
- package/dist/adapters/agents/a2a-adapter.js.map +1 -0
- package/dist/adapters/{a2a-client.d.ts → agents/a2a-client.d.ts} +1 -1
- package/dist/adapters/agents/a2a-client.d.ts.map +1 -0
- package/dist/adapters/{a2a-client.js → agents/a2a-client.js} +1 -1
- package/dist/adapters/agents/a2a-client.js.map +1 -0
- package/dist/adapters/{agent-profile-loader.d.ts → agents/agent-profile-loader.d.ts} +1 -1
- package/dist/adapters/agents/agent-profile-loader.d.ts.map +1 -0
- package/dist/adapters/{agent-profile-loader.js → agents/agent-profile-loader.js} +1 -1
- package/dist/adapters/agents/agent-profile-loader.js.map +1 -0
- package/dist/adapters/{browser-use-cli.d.ts → agents/browser-use-cli.d.ts} +1 -1
- package/dist/adapters/agents/browser-use-cli.d.ts.map +1 -0
- package/dist/adapters/{browser-use-cli.js → agents/browser-use-cli.js} +6 -2
- package/dist/adapters/agents/browser-use-cli.js.map +1 -0
- package/dist/adapters/{claude-api.d.ts → agents/claude-api.d.ts} +2 -2
- package/dist/adapters/agents/claude-api.d.ts.map +1 -0
- package/dist/adapters/{claude-api.js → agents/claude-api.js} +2 -1
- package/dist/adapters/agents/claude-api.js.map +1 -0
- package/dist/adapters/{claude-code-cli.d.ts → agents/claude-code-cli.d.ts} +1 -1
- package/dist/adapters/agents/claude-code-cli.d.ts.map +1 -0
- package/dist/adapters/{claude-code-cli.js → agents/claude-code-cli.js} +6 -2
- package/dist/adapters/agents/claude-code-cli.js.map +1 -0
- package/dist/adapters/{openai-codex.d.ts → agents/openai-codex.d.ts} +2 -2
- package/dist/adapters/agents/openai-codex.d.ts.map +1 -0
- package/dist/adapters/{openai-codex.js → agents/openai-codex.js} +6 -2
- package/dist/adapters/agents/openai-codex.js.map +1 -0
- package/dist/adapters/{openclaw-acp.d.ts → agents/openclaw-acp.d.ts} +1 -1
- package/dist/adapters/agents/openclaw-acp.d.ts.map +1 -0
- package/dist/adapters/agents/openclaw-acp.js.map +1 -0
- package/dist/adapters/{file-existence-datasource.d.ts → datasources/file-existence-datasource.d.ts} +2 -2
- package/dist/adapters/datasources/file-existence-datasource.d.ts.map +1 -0
- package/dist/adapters/datasources/file-existence-datasource.js.map +1 -0
- package/dist/adapters/{github-issue-datasource.d.ts → datasources/github-issue-datasource.d.ts} +2 -2
- package/dist/adapters/datasources/github-issue-datasource.d.ts.map +1 -0
- package/dist/adapters/datasources/github-issue-datasource.js.map +1 -0
- package/dist/adapters/{mcp-datasource.d.ts → datasources/mcp-datasource.d.ts} +3 -3
- package/dist/adapters/datasources/mcp-datasource.d.ts.map +1 -0
- package/dist/adapters/datasources/mcp-datasource.js.map +1 -0
- package/dist/adapters/{openclaw-datasource.d.ts → datasources/openclaw-datasource.d.ts} +2 -2
- package/dist/adapters/datasources/openclaw-datasource.d.ts.map +1 -0
- package/dist/adapters/datasources/openclaw-datasource.js.map +1 -0
- package/dist/adapters/{shell-datasource.d.ts → datasources/shell-datasource.d.ts} +3 -3
- package/dist/adapters/datasources/shell-datasource.d.ts.map +1 -0
- package/dist/adapters/datasources/shell-datasource.js.map +1 -0
- package/dist/adapters/github-issue.js +1 -1
- package/dist/adapters/github-issue.js.map +1 -1
- package/dist/adapters/mcp-client-manager.d.ts +1 -1
- package/dist/adapters/mcp-client-manager.d.ts.map +1 -1
- package/dist/adapters/mcp-client-manager.js +1 -1
- package/dist/adapters/mcp-client-manager.js.map +1 -1
- package/dist/chat/chat-history.d.ts +80 -0
- package/dist/chat/chat-history.d.ts.map +1 -0
- package/dist/chat/chat-history.js +70 -0
- package/dist/chat/chat-history.js.map +1 -0
- package/dist/chat/chat-runner.d.ts +79 -0
- package/dist/chat/chat-runner.d.ts.map +1 -0
- package/dist/chat/chat-runner.js +279 -0
- package/dist/chat/chat-runner.js.map +1 -0
- package/dist/chat/chat-verifier.d.ts +13 -0
- package/dist/chat/chat-verifier.d.ts.map +1 -0
- package/dist/chat/chat-verifier.js +35 -0
- package/dist/chat/chat-verifier.js.map +1 -0
- package/dist/chat/escalation.d.ts +30 -0
- package/dist/chat/escalation.d.ts.map +1 -0
- package/dist/chat/escalation.js +53 -0
- package/dist/chat/escalation.js.map +1 -0
- package/dist/chat/grounding.d.ts +8 -0
- package/dist/chat/grounding.d.ts.map +1 -0
- package/dist/chat/grounding.js +104 -0
- package/dist/chat/grounding.js.map +1 -0
- package/dist/chat/mutation-tool-defs.d.ts +19 -0
- package/dist/chat/mutation-tool-defs.d.ts.map +1 -0
- package/dist/chat/mutation-tool-defs.js +154 -0
- package/dist/chat/mutation-tool-defs.js.map +1 -0
- package/dist/chat/self-knowledge-mutation-tools.d.ts +5 -0
- package/dist/chat/self-knowledge-mutation-tools.d.ts.map +1 -0
- package/dist/chat/self-knowledge-mutation-tools.js +249 -0
- package/dist/chat/self-knowledge-mutation-tools.js.map +1 -0
- package/dist/chat/self-knowledge-tools.d.ts +22 -0
- package/dist/chat/self-knowledge-tools.d.ts.map +1 -0
- package/dist/chat/self-knowledge-tools.js +261 -0
- package/dist/chat/self-knowledge-tools.js.map +1 -0
- package/dist/cli/cli-command-registry 2.d.ts +16 -0
- package/dist/cli/cli-command-registry 2.d.ts.map +1 -0
- package/dist/cli/cli-command-registry 2.js +408 -0
- package/dist/cli/cli-command-registry 2.js.map +1 -0
- package/dist/cli/cli-command-registry.d.ts +16 -0
- package/dist/cli/cli-command-registry.d.ts.map +1 -0
- package/dist/cli/cli-command-registry.js +408 -0
- package/dist/cli/cli-command-registry.js.map +1 -0
- package/dist/cli/cli-runner.d.ts.map +1 -0
- package/dist/cli/cli-runner.js +122 -0
- package/dist/cli/cli-runner.js.map +1 -0
- package/dist/cli/commands/chat.d.ts +3 -0
- package/dist/cli/commands/chat.d.ts.map +1 -0
- package/dist/cli/commands/chat.js +148 -0
- package/dist/cli/commands/chat.js.map +1 -0
- package/dist/cli/commands/config.d.ts +1 -1
- package/dist/cli/commands/config.d.ts.map +1 -1
- package/dist/cli/commands/config.js +1 -1
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/daemon.d.ts +1 -1
- package/dist/cli/commands/daemon.d.ts.map +1 -1
- package/dist/cli/commands/daemon.js +97 -14
- package/dist/cli/commands/daemon.js.map +1 -1
- package/dist/cli/commands/doctor.d.ts +19 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -0
- package/dist/cli/commands/doctor.js +203 -0
- package/dist/cli/commands/doctor.js.map +1 -0
- package/dist/cli/commands/goal-dispatch.d.ts +1 -1
- package/dist/cli/commands/goal-dispatch.d.ts.map +1 -1
- package/dist/cli/commands/goal-raw.d.ts +1 -1
- package/dist/cli/commands/goal-raw.d.ts.map +1 -1
- package/dist/cli/commands/goal-read.d.ts +2 -2
- package/dist/cli/commands/goal-read.d.ts.map +1 -1
- package/dist/cli/commands/goal-read.js +1 -1
- package/dist/cli/commands/goal-read.js.map +1 -1
- package/dist/cli/commands/goal-utils.d.ts +1 -1
- package/dist/cli/commands/goal-utils.d.ts.map +1 -1
- package/dist/cli/commands/goal-utils.js +1 -0
- package/dist/cli/commands/goal-utils.js.map +1 -1
- package/dist/cli/commands/goal-write.d.ts +1 -1
- package/dist/cli/commands/goal-write.d.ts.map +1 -1
- package/dist/cli/commands/install.d.ts +16 -0
- package/dist/cli/commands/install.d.ts.map +1 -0
- package/dist/cli/commands/install.js +153 -0
- package/dist/cli/commands/install.js.map +1 -0
- package/dist/cli/commands/knowledge.d.ts +1 -1
- package/dist/cli/commands/knowledge.d.ts.map +1 -1
- package/dist/cli/commands/logs.d.ts +2 -0
- package/dist/cli/commands/logs.d.ts.map +1 -0
- package/dist/cli/commands/logs.js +201 -0
- package/dist/cli/commands/logs.js.map +1 -0
- package/dist/cli/commands/notify.d.ts +2 -0
- package/dist/cli/commands/notify.d.ts.map +1 -0
- package/dist/cli/commands/notify.js +277 -0
- package/dist/cli/commands/notify.js.map +1 -0
- package/dist/cli/commands/report.d.ts +1 -1
- package/dist/cli/commands/report.d.ts.map +1 -1
- package/dist/cli/commands/report.js +1 -1
- package/dist/cli/commands/report.js.map +1 -1
- package/dist/cli/commands/run.d.ts +3 -3
- package/dist/cli/commands/run.d.ts.map +1 -1
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/cli/commands/suggest.d.ts +1 -1
- package/dist/cli/commands/suggest.d.ts.map +1 -1
- package/dist/cli/commands/suggest.js +1 -1
- package/dist/cli/commands/suggest.js.map +1 -1
- package/dist/cli/commands/task-read.d.ts +1 -1
- package/dist/cli/commands/task-read.d.ts.map +1 -1
- package/dist/cli/commands/telegram.d.ts +2 -0
- package/dist/cli/commands/telegram.d.ts.map +1 -0
- package/dist/cli/commands/telegram.js +155 -0
- package/dist/cli/commands/telegram.js.map +1 -0
- package/dist/cli/setup.d.ts +5 -5
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +21 -11
- package/dist/cli/setup.js.map +1 -1
- package/dist/cli/utils/loop-runner.d.ts +1 -1
- package/dist/cli/utils/loop-runner.d.ts.map +1 -1
- package/dist/cli/utils.d.ts.map +1 -1
- package/dist/cli/utils.js +11 -0
- package/dist/cli/utils.js.map +1 -1
- package/dist/drive/drive-system.d.ts +1 -1
- package/dist/drive/drive-system.d.ts.map +1 -1
- package/dist/drive/drive-system.js +11 -2
- package/dist/drive/drive-system.js.map +1 -1
- package/dist/drive/satisficing-judge.d.ts +1 -1
- package/dist/drive/satisficing-judge.d.ts.map +1 -1
- package/dist/drive/satisficing-propagation.d.ts +1 -1
- package/dist/drive/satisficing-propagation.d.ts.map +1 -1
- package/dist/drive/stall-detector.d.ts +20 -1
- package/dist/drive/stall-detector.d.ts.map +1 -1
- package/dist/drive/stall-detector.js +75 -0
- package/dist/drive/stall-detector.js.map +1 -1
- package/dist/execution/adapter-layer.d.ts +2 -0
- package/dist/execution/adapter-layer.d.ts.map +1 -1
- package/dist/execution/adapter-layer.js.map +1 -1
- package/dist/execution/checkpoint-manager.d.ts +1 -1
- package/dist/execution/checkpoint-manager.d.ts.map +1 -1
- package/dist/execution/{context-budget.d.ts → context/context-budget.d.ts} +1 -1
- package/dist/execution/context/context-budget.d.ts.map +1 -0
- package/dist/execution/context/context-budget.js.map +1 -0
- package/dist/execution/{context-builder.d.ts → context/context-builder.d.ts} +3 -3
- package/dist/execution/context/context-builder.d.ts.map +1 -0
- package/dist/execution/{context-builder.js → context/context-builder.js} +1 -1
- package/dist/execution/context/context-builder.js.map +1 -0
- package/dist/execution/{dimension-selector.d.ts → context/dimension-selector.d.ts} +3 -3
- package/dist/execution/context/dimension-selector.d.ts.map +1 -0
- package/dist/execution/{dimension-selector.js → context/dimension-selector.js} +1 -1
- package/dist/execution/context/dimension-selector.js.map +1 -0
- package/dist/execution/context/issue-context-fetcher.d.ts +19 -0
- package/dist/execution/context/issue-context-fetcher.d.ts.map +1 -0
- package/dist/execution/context/issue-context-fetcher.js +73 -0
- package/dist/execution/context/issue-context-fetcher.js.map +1 -0
- package/dist/execution/parallel-executor.js +1 -1
- package/dist/execution/parallel-executor.js.map +1 -1
- package/dist/execution/pipeline-executor.d.ts +1 -1
- package/dist/execution/pipeline-executor.d.ts.map +1 -1
- package/dist/execution/session-manager.d.ts +2 -2
- package/dist/execution/session-manager.d.ts.map +1 -1
- package/dist/execution/session-manager.js +4 -1
- package/dist/execution/session-manager.js.map +1 -1
- package/dist/execution/{task-approval-check.d.ts → task/task-approval-check.d.ts} +2 -2
- package/dist/execution/task/task-approval-check.d.ts.map +1 -0
- package/dist/execution/task/task-approval-check.js.map +1 -0
- package/dist/execution/{task-approval.d.ts → task/task-approval.d.ts} +3 -3
- package/dist/execution/task/task-approval.d.ts.map +1 -0
- package/dist/execution/{task-approval.js → task/task-approval.js} +1 -1
- package/dist/execution/task/task-approval.js.map +1 -0
- package/dist/execution/{task-execution-types.d.ts → task/task-execution-types.d.ts} +2 -2
- package/dist/execution/task/task-execution-types.d.ts.map +1 -0
- package/dist/execution/{task-execution-types.js → task/task-execution-types.js} +1 -1
- package/dist/execution/task/task-execution-types.js.map +1 -0
- package/dist/execution/{task-executor.d.ts → task/task-executor.d.ts} +6 -6
- package/dist/execution/task/task-executor.d.ts.map +1 -0
- package/dist/execution/{task-executor.js → task/task-executor.js} +1 -1
- package/dist/execution/task/task-executor.js.map +1 -0
- package/dist/execution/{task-generation.d.ts → task/task-generation.d.ts} +8 -8
- package/dist/execution/task/task-generation.d.ts.map +1 -0
- package/dist/execution/{task-generation.js → task/task-generation.js} +12 -4
- package/dist/execution/task/task-generation.js.map +1 -0
- package/dist/execution/task/task-health-check.d.ts.map +1 -0
- package/dist/execution/task/task-health-check.js.map +1 -0
- package/dist/execution/{task-lifecycle.d.ts → task/task-lifecycle.d.ts} +21 -21
- package/dist/execution/task/task-lifecycle.d.ts.map +1 -0
- package/dist/execution/{task-lifecycle.js → task/task-lifecycle.js} +7 -4
- package/dist/execution/task/task-lifecycle.js.map +1 -0
- package/dist/execution/{task-pipeline-cycle.d.ts → task/task-pipeline-cycle.d.ts} +15 -15
- package/dist/execution/task/task-pipeline-cycle.d.ts.map +1 -0
- package/dist/execution/{task-pipeline-cycle.js → task/task-pipeline-cycle.js} +3 -3
- package/dist/execution/task/task-pipeline-cycle.js.map +1 -0
- package/dist/execution/{task-prompt-builder.d.ts → task/task-prompt-builder.d.ts} +1 -1
- package/dist/execution/task/task-prompt-builder.d.ts.map +1 -0
- package/dist/execution/{task-prompt-builder.js → task/task-prompt-builder.js} +30 -1
- package/dist/execution/task/task-prompt-builder.js.map +1 -0
- package/dist/execution/task/task-verifier-llm 2.d.ts +24 -0
- package/dist/execution/task/task-verifier-llm 2.d.ts.map +1 -0
- package/dist/execution/task/task-verifier-llm 2.js +160 -0
- package/dist/execution/task/task-verifier-llm 2.js.map +1 -0
- package/dist/execution/task/task-verifier-llm.d.ts +24 -0
- package/dist/execution/task/task-verifier-llm.d.ts.map +1 -0
- package/dist/execution/task/task-verifier-llm.js +160 -0
- package/dist/execution/task/task-verifier-llm.js.map +1 -0
- package/dist/execution/task/task-verifier-rules 2.d.ts +31 -0
- package/dist/execution/task/task-verifier-rules 2.d.ts.map +1 -0
- package/dist/execution/task/task-verifier-rules 2.js +207 -0
- package/dist/execution/task/task-verifier-rules 2.js.map +1 -0
- package/dist/execution/task/task-verifier-rules.d.ts +31 -0
- package/dist/execution/task/task-verifier-rules.d.ts.map +1 -0
- package/dist/execution/task/task-verifier-rules.js +207 -0
- package/dist/execution/task/task-verifier-rules.js.map +1 -0
- package/dist/execution/task/task-verifier-types 2.d.ts +78 -0
- package/dist/execution/task/task-verifier-types 2.d.ts.map +1 -0
- package/dist/execution/task/task-verifier-types 2.js +9 -0
- package/dist/execution/task/task-verifier-types 2.js.map +1 -0
- package/dist/execution/task/task-verifier-types.d.ts +78 -0
- package/dist/execution/task/task-verifier-types.d.ts.map +1 -0
- package/dist/execution/task/task-verifier-types.js +9 -0
- package/dist/execution/task/task-verifier-types.js.map +1 -0
- package/dist/execution/task/task-verifier.d.ts +48 -0
- package/dist/execution/task/task-verifier.d.ts.map +1 -0
- package/dist/execution/{task-verifier.js → task/task-verifier.js} +18 -398
- package/dist/execution/task/task-verifier.js.map +1 -0
- package/dist/goal/goal-decomposer.d.ts +1 -1
- package/dist/goal/goal-decomposer.d.ts.map +1 -1
- package/dist/goal/goal-dependency-graph.d.ts +1 -1
- package/dist/goal/goal-dependency-graph.d.ts.map +1 -1
- package/dist/goal/goal-negotiator.d.ts +1 -1
- package/dist/goal/goal-negotiator.d.ts.map +1 -1
- package/dist/goal/goal-refiner.d.ts +1 -1
- package/dist/goal/goal-refiner.d.ts.map +1 -1
- package/dist/goal/goal-refiner.js +1 -1
- package/dist/goal/goal-refiner.js.map +1 -1
- package/dist/goal/goal-suggest.d.ts +8 -8
- package/dist/goal/goal-tree-manager.d.ts +1 -1
- package/dist/goal/goal-tree-manager.d.ts.map +1 -1
- package/dist/goal/goal-tree-manager.js +6 -0
- package/dist/goal/goal-tree-manager.js.map +1 -1
- package/dist/goal/goal-tree-pruner.d.ts +1 -1
- package/dist/goal/goal-tree-pruner.d.ts.map +1 -1
- package/dist/goal/refiner-prompts.d.ts.map +1 -1
- package/dist/goal/refiner-prompts.js +5 -1
- package/dist/goal/refiner-prompts.js.map +1 -1
- package/dist/goal/state-aggregator.d.ts +1 -1
- package/dist/goal/state-aggregator.d.ts.map +1 -1
- package/dist/goal/tree-loop-orchestrator.d.ts +4 -2
- package/dist/goal/tree-loop-orchestrator.d.ts.map +1 -1
- package/dist/goal/tree-loop-orchestrator.js +4 -4
- package/dist/goal/tree-loop-orchestrator.js.map +1 -1
- package/dist/index 2.js +77 -0
- package/dist/index.d 2.ts +97 -0
- package/dist/index.d.ts +20 -20
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -16
- package/dist/index.js.map +1 -1
- package/dist/knowledge/knowledge-decisions.d.ts +1 -1
- package/dist/knowledge/knowledge-decisions.d.ts.map +1 -1
- package/dist/knowledge/knowledge-manager-query 2.d.ts +87 -0
- package/dist/knowledge/knowledge-manager-query 2.d.ts.map +1 -0
- package/dist/knowledge/knowledge-manager-query 2.js +287 -0
- package/dist/knowledge/knowledge-manager-query 2.js.map +1 -0
- package/dist/knowledge/knowledge-manager-query.d.ts +87 -0
- package/dist/knowledge/knowledge-manager-query.d.ts.map +1 -0
- package/dist/knowledge/knowledge-manager-query.js +287 -0
- package/dist/knowledge/knowledge-manager-query.js.map +1 -0
- package/dist/knowledge/knowledge-manager.d.ts +2 -19
- package/dist/knowledge/knowledge-manager.d.ts.map +1 -1
- package/dist/knowledge/knowledge-manager.js +7 -269
- package/dist/knowledge/knowledge-manager.js.map +1 -1
- package/dist/knowledge/knowledge-revalidation.d.ts +1 -1
- package/dist/knowledge/knowledge-revalidation.d.ts.map +1 -1
- package/dist/knowledge/knowledge-search.d.ts +1 -1
- package/dist/knowledge/knowledge-search.d.ts.map +1 -1
- package/dist/knowledge/{learning-cross-goal.d.ts → learning/learning-cross-goal.d.ts} +2 -2
- package/dist/knowledge/learning/learning-cross-goal.d.ts.map +1 -0
- package/dist/knowledge/{learning-cross-goal.js → learning/learning-cross-goal.js} +1 -1
- package/dist/knowledge/learning/learning-cross-goal.js.map +1 -0
- package/dist/knowledge/{learning-exports.d.ts → learning/learning-exports.d.ts} +1 -1
- package/dist/knowledge/learning/learning-exports.d.ts.map +1 -0
- package/dist/knowledge/learning/learning-exports.js.map +1 -0
- package/dist/knowledge/{learning-feedback.d.ts → learning/learning-feedback.d.ts} +3 -3
- package/dist/knowledge/learning/learning-feedback.d.ts.map +1 -0
- package/dist/knowledge/{learning-feedback.js → learning/learning-feedback.js} +1 -1
- package/dist/knowledge/learning/learning-feedback.js.map +1 -0
- package/dist/knowledge/{learning-pipeline-prompts.d.ts → learning/learning-pipeline-prompts.d.ts} +7 -7
- package/dist/knowledge/learning/learning-pipeline-prompts.d.ts.map +1 -0
- package/dist/knowledge/{learning-pipeline-prompts.js → learning/learning-pipeline-prompts.js} +1 -1
- package/dist/knowledge/learning/learning-pipeline-prompts.js.map +1 -0
- package/dist/knowledge/{learning-pipeline.d.ts → learning/learning-pipeline.d.ts} +6 -6
- package/dist/knowledge/learning/learning-pipeline.d.ts.map +1 -0
- package/dist/knowledge/{learning-pipeline.js → learning/learning-pipeline.js} +2 -2
- package/dist/knowledge/learning/learning-pipeline.js.map +1 -0
- package/dist/knowledge/{memory-compression.d.ts → memory/memory-compression.d.ts} +5 -5
- package/dist/knowledge/memory/memory-compression.d.ts.map +1 -0
- package/dist/knowledge/{memory-compression.js → memory/memory-compression.js} +1 -1
- package/dist/knowledge/memory/memory-compression.js.map +1 -0
- package/dist/knowledge/{memory-distill.d.ts → memory/memory-distill.d.ts} +3 -3
- package/dist/knowledge/memory/memory-distill.d.ts.map +1 -0
- package/dist/knowledge/memory/memory-distill.js.map +1 -0
- package/dist/knowledge/{memory-exports.d.ts → memory/memory-exports.d.ts} +1 -1
- package/dist/knowledge/memory/memory-exports.d.ts.map +1 -0
- package/dist/knowledge/memory/memory-exports.js.map +1 -0
- package/dist/knowledge/{memory-index.d.ts → memory/memory-index.d.ts} +1 -1
- package/dist/knowledge/memory/memory-index.d.ts.map +1 -0
- package/dist/knowledge/{memory-index.js → memory/memory-index.js} +1 -1
- package/dist/knowledge/memory/memory-index.js.map +1 -0
- package/dist/knowledge/{memory-lifecycle.d.ts → memory/memory-lifecycle.d.ts} +7 -7
- package/dist/knowledge/memory/memory-lifecycle.d.ts.map +1 -0
- package/dist/knowledge/{memory-lifecycle.js → memory/memory-lifecycle.js} +2 -2
- package/dist/knowledge/memory/memory-lifecycle.js.map +1 -0
- package/dist/knowledge/{memory-persistence.d.ts → memory/memory-persistence.d.ts} +1 -1
- package/dist/knowledge/memory/memory-persistence.d.ts.map +1 -0
- package/dist/knowledge/memory/memory-persistence.js.map +1 -0
- package/dist/knowledge/{memory-query.d.ts → memory/memory-query.d.ts} +1 -1
- package/dist/knowledge/memory/memory-query.d.ts.map +1 -0
- package/dist/knowledge/{memory-query.js → memory/memory-query.js} +1 -1
- package/dist/knowledge/memory/memory-query.js.map +1 -0
- package/dist/knowledge/{memory-selection.d.ts → memory/memory-selection.d.ts} +3 -3
- package/dist/knowledge/memory/memory-selection.d.ts.map +1 -0
- package/dist/knowledge/{memory-selection.js → memory/memory-selection.js} +3 -3
- package/dist/knowledge/memory/memory-selection.js.map +1 -0
- package/dist/knowledge/{memory-stats.d.ts → memory/memory-stats.d.ts} +1 -1
- package/dist/knowledge/memory/memory-stats.d.ts.map +1 -0
- package/dist/knowledge/{memory-stats.js → memory/memory-stats.js} +1 -1
- package/dist/knowledge/memory/memory-stats.js.map +1 -0
- package/dist/knowledge/{memory-tier.d.ts → memory/memory-tier.d.ts} +1 -1
- package/dist/knowledge/memory/memory-tier.d.ts.map +1 -0
- package/dist/knowledge/memory/memory-tier.js.map +1 -0
- package/dist/knowledge/{knowledge-transfer-apply.d.ts → transfer/knowledge-transfer-apply.d.ts} +6 -6
- package/dist/knowledge/transfer/knowledge-transfer-apply.d.ts.map +1 -0
- package/dist/knowledge/{knowledge-transfer-apply.js → transfer/knowledge-transfer-apply.js} +2 -2
- package/dist/knowledge/transfer/knowledge-transfer-apply.js.map +1 -0
- package/dist/knowledge/{knowledge-transfer-detect.d.ts → transfer/knowledge-transfer-detect.d.ts} +5 -5
- package/dist/knowledge/transfer/knowledge-transfer-detect.d.ts.map +1 -0
- package/dist/knowledge/{knowledge-transfer-detect.js → transfer/knowledge-transfer-detect.js} +1 -1
- package/dist/knowledge/transfer/knowledge-transfer-detect.js.map +1 -0
- package/dist/knowledge/{knowledge-transfer-evaluate.d.ts → transfer/knowledge-transfer-evaluate.d.ts} +2 -2
- package/dist/knowledge/transfer/knowledge-transfer-evaluate.d.ts.map +1 -0
- package/dist/knowledge/{knowledge-transfer-evaluate.js → transfer/knowledge-transfer-evaluate.js} +1 -1
- package/dist/knowledge/transfer/knowledge-transfer-evaluate.js.map +1 -0
- package/dist/knowledge/{knowledge-transfer-meta.d.ts → transfer/knowledge-transfer-meta.d.ts} +6 -6
- package/dist/knowledge/transfer/knowledge-transfer-meta.d.ts.map +1 -0
- package/dist/knowledge/{knowledge-transfer-meta.js → transfer/knowledge-transfer-meta.js} +2 -2
- package/dist/knowledge/transfer/knowledge-transfer-meta.js.map +1 -0
- package/dist/knowledge/{knowledge-transfer-prompts.d.ts → transfer/knowledge-transfer-prompts.d.ts} +1 -1
- package/dist/knowledge/transfer/knowledge-transfer-prompts.d.ts.map +1 -0
- package/dist/knowledge/transfer/knowledge-transfer-prompts.js.map +1 -0
- package/dist/knowledge/{knowledge-transfer-types.d.ts → transfer/knowledge-transfer-types.d.ts} +3 -3
- package/dist/knowledge/transfer/knowledge-transfer-types.d.ts.map +1 -0
- package/dist/knowledge/transfer/knowledge-transfer-types.js.map +1 -0
- package/dist/knowledge/{knowledge-transfer.d.ts → transfer/knowledge-transfer.d.ts} +9 -9
- package/dist/knowledge/transfer/knowledge-transfer.d.ts.map +1 -0
- package/dist/knowledge/transfer/knowledge-transfer.js.map +1 -0
- package/dist/knowledge/{transfer-trust.d.ts → transfer/transfer-trust.d.ts} +3 -3
- package/dist/knowledge/transfer/transfer-trust.d.ts.map +1 -0
- package/dist/knowledge/{transfer-trust.js → transfer/transfer-trust.js} +1 -1
- package/dist/knowledge/transfer/transfer-trust.js.map +1 -0
- package/dist/llm/base-llm-client.d.ts +13 -0
- package/dist/llm/base-llm-client.d.ts.map +1 -1
- package/dist/llm/base-llm-client.js +35 -0
- package/dist/llm/base-llm-client.js.map +1 -1
- package/dist/llm/llm-client.d.ts +22 -2
- package/dist/llm/llm-client.d.ts.map +1 -1
- package/dist/llm/llm-client.js +49 -11
- package/dist/llm/llm-client.js.map +1 -1
- package/dist/llm/ollama-client.d.ts +1 -0
- package/dist/llm/ollama-client.d.ts.map +1 -1
- package/dist/llm/ollama-client.js +15 -5
- package/dist/llm/ollama-client.js.map +1 -1
- package/dist/llm/openai-client.d.ts +1 -0
- package/dist/llm/openai-client.d.ts.map +1 -1
- package/dist/llm/openai-client.js +15 -5
- package/dist/llm/openai-client.js.map +1 -1
- package/dist/llm/provider-factory.js +6 -6
- package/dist/llm/provider-factory.js.map +1 -1
- package/dist/loop/checkpoint-manager-loop.d.ts +1 -1
- package/dist/loop/checkpoint-manager-loop.d.ts.map +1 -1
- package/dist/loop/core-loop-phases-c 2.d.ts +27 -0
- package/dist/loop/core-loop-phases-c 2.d.ts.map +1 -0
- package/dist/loop/core-loop-phases-c 2.js +72 -0
- package/dist/loop/core-loop-phases-c 2.js.map +1 -0
- package/dist/loop/core-loop-phases-c.d.ts +27 -0
- package/dist/loop/core-loop-phases-c.d.ts.map +1 -0
- package/dist/loop/core-loop-phases-c.js +72 -0
- package/dist/loop/core-loop-phases-c.js.map +1 -0
- package/dist/loop/core-loop-phases.d.ts +1 -1
- package/dist/loop/core-loop-phases.d.ts.map +1 -1
- package/dist/loop/core-loop-phases.js +9 -3
- package/dist/loop/core-loop-phases.js.map +1 -1
- package/dist/loop/core-loop-types.d.ts +7 -7
- package/dist/loop/core-loop-types.d.ts.map +1 -1
- package/dist/{core-loop.d.ts → loop/core-loop.d.ts} +5 -15
- package/dist/loop/core-loop.d.ts.map +1 -0
- package/dist/{core-loop.js → loop/core-loop.js} +46 -111
- package/dist/loop/core-loop.js.map +1 -0
- package/dist/loop/tree-loop-runner.d.ts.map +1 -1
- package/dist/loop/tree-loop-runner.js +10 -7
- package/dist/loop/tree-loop-runner.js.map +1 -1
- package/dist/mcp-server/index.js +1 -1
- package/dist/mcp-server/index.js.map +1 -1
- package/dist/mcp-server/tools.d.ts +1 -1
- package/dist/mcp-server/tools.d.ts.map +1 -1
- package/dist/observation/capability-dependencies.d.ts +1 -1
- package/dist/observation/capability-dependencies.d.ts.map +1 -1
- package/dist/observation/capability-detector.d.ts +2 -2
- package/dist/observation/capability-detector.d.ts.map +1 -1
- package/dist/observation/capability-registry.d.ts +2 -2
- package/dist/observation/capability-registry.d.ts.map +1 -1
- package/dist/observation/context-provider.d.ts +15 -0
- package/dist/observation/context-provider.d.ts.map +1 -1
- package/dist/observation/context-provider.js +157 -22
- package/dist/observation/context-provider.js.map +1 -1
- package/dist/observation/observation-apply.d.ts +1 -1
- package/dist/observation/observation-apply.d.ts.map +1 -1
- package/dist/observation/observation-engine.d.ts +1 -1
- package/dist/observation/observation-engine.d.ts.map +1 -1
- package/dist/observation/observation-engine.js +1 -0
- package/dist/observation/observation-engine.js.map +1 -1
- package/dist/observation/observation-helpers.d.ts +2 -2
- package/dist/observation/observation-llm.d.ts.map +1 -1
- package/dist/observation/observation-llm.js +7 -3
- package/dist/observation/observation-llm.js.map +1 -1
- package/dist/observation/workspace-context.d.ts.map +1 -1
- package/dist/observation/workspace-context.js +59 -12
- package/dist/observation/workspace-context.js.map +1 -1
- package/dist/prompt/context-assembler.d.ts +1 -1
- package/dist/prompt/context-assembler.d.ts.map +1 -1
- package/dist/prompt/context-assembler.js +14 -4
- package/dist/prompt/context-assembler.js.map +1 -1
- package/dist/prompt/formatters.d.ts +3 -3
- package/dist/prompt/formatters.d.ts.map +1 -1
- package/dist/prompt/formatters.js +2 -2
- package/dist/prompt/formatters.js.map +1 -1
- package/dist/prompt/purposes/capability.d.ts +2 -2
- package/dist/prompt/purposes/ethics.d.ts +4 -4
- package/dist/prompt/purposes/goal-decomposition.d.ts +4 -4
- package/dist/prompt/purposes/knowledge.d.ts +4 -4
- package/dist/prompt/purposes/strategy-template.d.ts +4 -4
- package/dist/prompt/purposes/strategy.d.ts +3 -78
- package/dist/prompt/purposes/strategy.d.ts.map +1 -1
- package/dist/prompt/purposes/strategy.js +2 -18
- package/dist/prompt/purposes/strategy.js.map +1 -1
- package/dist/prompt/purposes/verification.d.ts +2 -2
- package/dist/reflection/dream-consolidation.d.ts +2 -2
- package/dist/reflection/dream-consolidation.d.ts.map +1 -1
- package/dist/reflection/evening-catchup.d.ts +1 -1
- package/dist/reflection/evening-catchup.d.ts.map +1 -1
- package/dist/reflection/morning-planning.d.ts +1 -1
- package/dist/reflection/morning-planning.d.ts.map +1 -1
- package/dist/reflection/types.d.ts +4 -4
- package/dist/reflection/weekly-review.d.ts +1 -1
- package/dist/reflection/weekly-review.d.ts.map +1 -1
- package/dist/reporting/report-formatters 2.d.ts +12 -0
- package/dist/reporting/report-formatters 2.d.ts.map +1 -0
- package/dist/reporting/report-formatters 2.js +166 -0
- package/dist/reporting/report-formatters 2.js.map +1 -0
- package/dist/reporting/report-formatters.d.ts +12 -0
- package/dist/reporting/report-formatters.d.ts.map +1 -0
- package/dist/reporting/report-formatters.js +166 -0
- package/dist/reporting/report-formatters.js.map +1 -0
- package/dist/{reporting-engine.d.ts → reporting/reporting-engine.d.ts} +6 -5
- package/dist/reporting/reporting-engine.d.ts.map +1 -0
- package/dist/{reporting-engine.js → reporting/reporting-engine.js} +13 -170
- package/dist/reporting/reporting-engine.js.map +1 -0
- package/dist/runtime/daemon-health 2.d.ts +31 -0
- package/dist/runtime/daemon-health 2.d.ts.map +1 -0
- package/dist/runtime/daemon-health 2.js +113 -0
- package/dist/runtime/daemon-health 2.js.map +1 -0
- package/dist/runtime/daemon-health.d.ts +31 -0
- package/dist/runtime/daemon-health.d.ts.map +1 -0
- package/dist/runtime/daemon-health.js +113 -0
- package/dist/runtime/daemon-health.js.map +1 -0
- package/dist/runtime/daemon-runner.d.ts +11 -16
- package/dist/runtime/daemon-runner.d.ts.map +1 -1
- package/dist/runtime/daemon-runner.js +20 -116
- package/dist/runtime/daemon-runner.js.map +1 -1
- package/dist/runtime/daemon-signals 2.d.ts +17 -0
- package/dist/runtime/daemon-signals 2.d.ts.map +1 -0
- package/dist/runtime/daemon-signals 2.js +31 -0
- package/dist/runtime/daemon-signals 2.js.map +1 -0
- package/dist/runtime/daemon-signals.d.ts +17 -0
- package/dist/runtime/daemon-signals.d.ts.map +1 -0
- package/dist/runtime/daemon-signals.js +31 -0
- package/dist/runtime/daemon-signals.js.map +1 -0
- package/dist/runtime/event-server.d.ts +1 -1
- package/dist/runtime/event-server.d.ts.map +1 -1
- package/dist/runtime/hook-manager.d.ts.map +1 -1
- package/dist/runtime/hook-manager.js +7 -0
- package/dist/runtime/hook-manager.js.map +1 -1
- package/dist/{state-manager.d.ts → state/state-manager.d.ts} +8 -6
- package/dist/state/state-manager.d.ts.map +1 -0
- package/dist/{state-manager.js → state/state-manager.js} +62 -67
- package/dist/state/state-manager.js.map +1 -0
- package/dist/state/state-persistence 2.d.ts +12 -0
- package/dist/state/state-persistence 2.d.ts.map +1 -0
- package/dist/state/state-persistence 2.js +58 -0
- package/dist/state/state-persistence 2.js.map +1 -0
- package/dist/state/state-persistence.d.ts +12 -0
- package/dist/state/state-persistence.d.ts.map +1 -0
- package/dist/state/state-persistence.js +58 -0
- package/dist/state/state-persistence.js.map +1 -0
- package/dist/strategy/cross-goal-portfolio.d.ts +1 -1
- package/dist/strategy/cross-goal-portfolio.d.ts.map +1 -1
- package/dist/strategy/portfolio-allocation.d.ts +33 -0
- package/dist/strategy/portfolio-allocation.d.ts.map +1 -1
- package/dist/strategy/portfolio-allocation.js +49 -0
- package/dist/strategy/portfolio-allocation.js.map +1 -1
- package/dist/{portfolio-manager.d.ts → strategy/portfolio-manager.d.ts} +4 -4
- package/dist/strategy/portfolio-manager.d.ts.map +1 -0
- package/dist/{portfolio-manager.js → strategy/portfolio-manager.js} +5 -36
- package/dist/strategy/portfolio-manager.js.map +1 -0
- package/dist/{portfolio-rebalance.d.ts → strategy/portfolio-rebalance.d.ts} +2 -2
- package/dist/strategy/portfolio-rebalance.d.ts.map +1 -0
- package/dist/strategy/portfolio-rebalance.js.map +1 -0
- package/dist/strategy/strategy-helpers.d.ts +8 -8
- package/dist/strategy/strategy-helpers.d.ts.map +1 -1
- package/dist/strategy/strategy-helpers.js +35 -5
- package/dist/strategy/strategy-helpers.js.map +1 -1
- package/dist/strategy/strategy-manager-base.d.ts +1 -1
- package/dist/strategy/strategy-manager-base.d.ts.map +1 -1
- package/dist/traits/character-config.d.ts +1 -1
- package/dist/traits/character-config.d.ts.map +1 -1
- package/dist/traits/curiosity-engine.d.ts +2 -2
- package/dist/traits/curiosity-engine.d.ts.map +1 -1
- package/dist/traits/curiosity-proposals.d.ts +1 -1
- package/dist/traits/curiosity-proposals.d.ts.map +1 -1
- package/dist/traits/curiosity-transfer.d.ts +1 -1
- package/dist/traits/curiosity-transfer.d.ts.map +1 -1
- package/dist/traits/ethics-gate.d.ts +1 -1
- package/dist/traits/ethics-gate.d.ts.map +1 -1
- package/dist/{guardrail-runner.d.ts → traits/guardrail-runner.d.ts} +2 -2
- package/dist/traits/guardrail-runner.d.ts.map +1 -0
- package/dist/traits/guardrail-runner.js.map +1 -0
- package/dist/traits/trust-manager.d.ts +1 -1
- package/dist/traits/trust-manager.d.ts.map +1 -1
- package/dist/tui/actions.d.ts +2 -2
- package/dist/tui/actions.d.ts.map +1 -1
- package/dist/tui/app.d.ts +2 -2
- package/dist/tui/app.d.ts.map +1 -1
- package/dist/tui/entry.d.ts.map +1 -1
- package/dist/tui/entry.js +24 -6
- package/dist/tui/entry.js.map +1 -1
- package/dist/tui/use-loop.d.ts +2 -2
- package/dist/tui/use-loop.d.ts.map +1 -1
- package/dist/types/a2a.d.ts +8 -8
- package/dist/types/agent-profile.d.ts +3 -3
- package/dist/types/capability.d.ts +28 -28
- package/dist/types/checkpoint.d.ts +16 -16
- package/dist/types/core.d.ts +14 -14
- package/dist/types/cross-portfolio.d.ts +29 -29
- package/dist/types/curiosity.d.ts +27 -27
- package/dist/types/daemon.d.ts +2 -2
- package/dist/types/daemon.js +1 -1
- package/dist/types/daemon.js.map +1 -1
- package/dist/types/data-source.d.ts +36 -36
- package/dist/types/dependency.d.ts +12 -12
- package/dist/types/drive.d.ts +2 -2
- package/dist/types/embedding.d.ts +4 -4
- package/dist/types/ethics.d.ts +6 -6
- package/dist/types/goal-refiner.d.ts +15 -12
- package/dist/types/goal-refiner.d.ts.map +1 -1
- package/dist/types/goal-refiner.js +1 -0
- package/dist/types/goal-refiner.js.map +1 -1
- package/dist/types/goal-tree.d.ts +2 -2
- package/dist/types/goal.d.ts +74 -74
- package/dist/types/guardrail.d.ts +3 -3
- package/dist/types/hook.d.ts +10 -10
- package/dist/types/knowledge.d.ts +76 -76
- package/dist/types/learning.d.ts +24 -24
- package/dist/types/mcp.d.ts +9 -9
- package/dist/types/memory-lifecycle.d.ts +39 -39
- package/dist/types/negotiation.d.ts +44 -44
- package/dist/types/notification.d.ts +74 -74
- package/dist/types/pipeline.d.ts +12 -12
- package/dist/types/plugin.d.ts +39 -39
- package/dist/types/report.d.ts +16 -16
- package/dist/types/satisficing.d.ts +10 -10
- package/dist/types/session.d.ts +11 -11
- package/dist/types/session.d.ts.map +1 -1
- package/dist/types/session.js +1 -0
- package/dist/types/session.js.map +1 -1
- package/dist/types/stall.d.ts +4 -4
- package/dist/types/state.d.ts +10 -10
- package/dist/types/strategy.d.ts +48 -48
- package/dist/types/task-group.d.ts +4 -4
- package/dist/types/task.d.ts +2 -2
- package/dist/utils/execFileNoThrow.d.ts +20 -0
- package/dist/utils/execFileNoThrow.d.ts.map +1 -0
- package/dist/utils/execFileNoThrow.js +33 -0
- package/dist/utils/execFileNoThrow.js.map +1 -0
- package/package.json +2 -2
- package/dist/adapter-layer.d.ts +0 -67
- package/dist/adapter-layer.d.ts.map +0 -1
- package/dist/adapter-layer.js +0 -50
- package/dist/adapter-layer.js.map +0 -1
- package/dist/adapters/a2a-adapter.d.ts.map +0 -1
- package/dist/adapters/a2a-adapter.js.map +0 -1
- package/dist/adapters/a2a-client.d.ts.map +0 -1
- package/dist/adapters/a2a-client.js.map +0 -1
- package/dist/adapters/agent-profile-loader.d.ts.map +0 -1
- package/dist/adapters/agent-profile-loader.js.map +0 -1
- package/dist/adapters/browser-use-cli.d.ts.map +0 -1
- package/dist/adapters/browser-use-cli.js.map +0 -1
- package/dist/adapters/claude-api.d.ts.map +0 -1
- package/dist/adapters/claude-api.js.map +0 -1
- package/dist/adapters/claude-code-cli.d.ts.map +0 -1
- package/dist/adapters/claude-code-cli.js.map +0 -1
- package/dist/adapters/file-existence-datasource.d.ts.map +0 -1
- package/dist/adapters/file-existence-datasource.js.map +0 -1
- package/dist/adapters/github-issue-datasource.d.ts.map +0 -1
- package/dist/adapters/github-issue-datasource.js.map +0 -1
- package/dist/adapters/mcp-datasource.d.ts.map +0 -1
- package/dist/adapters/mcp-datasource.js.map +0 -1
- package/dist/adapters/openai-codex.d.ts.map +0 -1
- package/dist/adapters/openai-codex.js.map +0 -1
- package/dist/adapters/openclaw-acp.d.ts.map +0 -1
- package/dist/adapters/openclaw-acp.js.map +0 -1
- package/dist/adapters/openclaw-datasource.d.ts.map +0 -1
- package/dist/adapters/openclaw-datasource.js.map +0 -1
- package/dist/adapters/shell-datasource.d.ts.map +0 -1
- package/dist/adapters/shell-datasource.js.map +0 -1
- package/dist/capability-detector.d.ts +0 -124
- package/dist/capability-detector.d.ts.map +0 -1
- package/dist/capability-detector.js +0 -576
- package/dist/capability-detector.js.map +0 -1
- package/dist/character-config.d.ts +0 -34
- package/dist/character-config.d.ts.map +0 -1
- package/dist/character-config.js +0 -53
- package/dist/character-config.js.map +0 -1
- package/dist/cli-runner.d.ts.map +0 -1
- package/dist/cli-runner.js +0 -458
- package/dist/cli-runner.js.map +0 -1
- package/dist/codex-llm-client.d.ts +0 -47
- package/dist/codex-llm-client.d.ts.map +0 -1
- package/dist/codex-llm-client.js +0 -193
- package/dist/codex-llm-client.js.map +0 -1
- package/dist/context-provider.d.ts +0 -16
- package/dist/context-provider.d.ts.map +0 -1
- package/dist/context-provider.js +0 -107
- package/dist/context-provider.js.map +0 -1
- package/dist/context-providers/workspace-context.d.ts +0 -8
- package/dist/context-providers/workspace-context.d.ts.map +0 -1
- package/dist/context-providers/workspace-context.js +0 -217
- package/dist/context-providers/workspace-context.js.map +0 -1
- package/dist/core/suggest/repo-context.d.ts +0 -8
- package/dist/core/suggest/repo-context.d.ts.map +0 -1
- package/dist/core/suggest/repo-context.js +0 -154
- package/dist/core/suggest/repo-context.js.map +0 -1
- package/dist/core-loop.d.ts.map +0 -1
- package/dist/core-loop.js.map +0 -1
- package/dist/cross-goal-portfolio.d.ts +0 -153
- package/dist/cross-goal-portfolio.d.ts.map +0 -1
- package/dist/cross-goal-portfolio.js +0 -790
- package/dist/cross-goal-portfolio.js.map +0 -1
- package/dist/curiosity-engine.d.ts +0 -177
- package/dist/curiosity-engine.d.ts.map +0 -1
- package/dist/curiosity-engine.js +0 -736
- package/dist/curiosity-engine.js.map +0 -1
- package/dist/daemon-runner.d.ts +0 -109
- package/dist/daemon-runner.d.ts.map +0 -1
- package/dist/daemon-runner.js +0 -389
- package/dist/daemon-runner.js.map +0 -1
- package/dist/data-source-adapter.d.ts +0 -42
- package/dist/data-source-adapter.d.ts.map +0 -1
- package/dist/data-source-adapter.js +0 -223
- package/dist/data-source-adapter.js.map +0 -1
- package/dist/drive-scorer.d.ts +0 -96
- package/dist/drive-scorer.d.ts.map +0 -1
- package/dist/drive-scorer.js +0 -235
- package/dist/drive-scorer.js.map +0 -1
- package/dist/drive-system.d.ts +0 -92
- package/dist/drive-system.d.ts.map +0 -1
- package/dist/drive-system.js +0 -325
- package/dist/drive-system.js.map +0 -1
- package/dist/embedding-client.d.ts +0 -49
- package/dist/embedding-client.d.ts.map +0 -1
- package/dist/embedding-client.js +0 -141
- package/dist/embedding-client.js.map +0 -1
- package/dist/ethics-gate.d.ts +0 -70
- package/dist/ethics-gate.d.ts.map +0 -1
- package/dist/ethics-gate.js +0 -567
- package/dist/ethics-gate.js.map +0 -1
- package/dist/event-server.d.ts +0 -23
- package/dist/event-server.d.ts.map +0 -1
- package/dist/event-server.js +0 -69
- package/dist/event-server.js.map +0 -1
- package/dist/execution/context-budget.d.ts.map +0 -1
- package/dist/execution/context-budget.js.map +0 -1
- package/dist/execution/context-builder.d.ts.map +0 -1
- package/dist/execution/context-builder.js.map +0 -1
- package/dist/execution/dimension-selector.d.ts.map +0 -1
- package/dist/execution/dimension-selector.js.map +0 -1
- package/dist/execution/task-approval-check.d.ts.map +0 -1
- package/dist/execution/task-approval-check.js.map +0 -1
- package/dist/execution/task-approval.d.ts.map +0 -1
- package/dist/execution/task-approval.js.map +0 -1
- package/dist/execution/task-execution-types.d.ts.map +0 -1
- package/dist/execution/task-execution-types.js.map +0 -1
- package/dist/execution/task-executor.d.ts.map +0 -1
- package/dist/execution/task-executor.js.map +0 -1
- package/dist/execution/task-generation.d.ts.map +0 -1
- package/dist/execution/task-generation.js.map +0 -1
- package/dist/execution/task-health-check.d.ts.map +0 -1
- package/dist/execution/task-health-check.js.map +0 -1
- package/dist/execution/task-lifecycle.d.ts.map +0 -1
- package/dist/execution/task-lifecycle.js.map +0 -1
- package/dist/execution/task-pipeline-cycle.d.ts.map +0 -1
- package/dist/execution/task-pipeline-cycle.js.map +0 -1
- package/dist/execution/task-prompt-builder.d.ts.map +0 -1
- package/dist/execution/task-prompt-builder.js.map +0 -1
- package/dist/execution/task-verifier.d.ts +0 -115
- package/dist/execution/task-verifier.d.ts.map +0 -1
- package/dist/execution/task-verifier.js.map +0 -1
- package/dist/gap-calculator.d.ts +0 -80
- package/dist/gap-calculator.d.ts.map +0 -1
- package/dist/gap-calculator.js +0 -218
- package/dist/gap-calculator.js.map +0 -1
- package/dist/goal-dependency-graph.d.ts +0 -112
- package/dist/goal-dependency-graph.d.ts.map +0 -1
- package/dist/goal-dependency-graph.js +0 -291
- package/dist/goal-dependency-graph.js.map +0 -1
- package/dist/goal-negotiator.d.ts +0 -109
- package/dist/goal-negotiator.d.ts.map +0 -1
- package/dist/goal-negotiator.js +0 -1044
- package/dist/goal-negotiator.js.map +0 -1
- package/dist/goal-tree-manager.d.ts +0 -120
- package/dist/goal-tree-manager.d.ts.map +0 -1
- package/dist/goal-tree-manager.js +0 -954
- package/dist/goal-tree-manager.js.map +0 -1
- package/dist/guardrail-runner.d.ts.map +0 -1
- package/dist/guardrail-runner.js.map +0 -1
- package/dist/knowledge/knowledge-transfer-apply.d.ts.map +0 -1
- package/dist/knowledge/knowledge-transfer-apply.js.map +0 -1
- package/dist/knowledge/knowledge-transfer-detect.d.ts.map +0 -1
- package/dist/knowledge/knowledge-transfer-detect.js.map +0 -1
- package/dist/knowledge/knowledge-transfer-evaluate.d.ts.map +0 -1
- package/dist/knowledge/knowledge-transfer-evaluate.js.map +0 -1
- package/dist/knowledge/knowledge-transfer-meta.d.ts.map +0 -1
- package/dist/knowledge/knowledge-transfer-meta.js.map +0 -1
- package/dist/knowledge/knowledge-transfer-prompts.d.ts.map +0 -1
- package/dist/knowledge/knowledge-transfer-prompts.js.map +0 -1
- package/dist/knowledge/knowledge-transfer-types.d.ts.map +0 -1
- package/dist/knowledge/knowledge-transfer-types.js.map +0 -1
- package/dist/knowledge/knowledge-transfer.d.ts.map +0 -1
- package/dist/knowledge/knowledge-transfer.js.map +0 -1
- package/dist/knowledge/learning-cross-goal.d.ts.map +0 -1
- package/dist/knowledge/learning-cross-goal.js.map +0 -1
- package/dist/knowledge/learning-exports.d.ts.map +0 -1
- package/dist/knowledge/learning-exports.js.map +0 -1
- package/dist/knowledge/learning-feedback.d.ts.map +0 -1
- package/dist/knowledge/learning-feedback.js.map +0 -1
- package/dist/knowledge/learning-pipeline-prompts.d.ts.map +0 -1
- package/dist/knowledge/learning-pipeline-prompts.js.map +0 -1
- package/dist/knowledge/learning-pipeline.d.ts.map +0 -1
- package/dist/knowledge/learning-pipeline.js.map +0 -1
- package/dist/knowledge/memory-compression.d.ts.map +0 -1
- package/dist/knowledge/memory-compression.js.map +0 -1
- package/dist/knowledge/memory-distill.d.ts.map +0 -1
- package/dist/knowledge/memory-distill.js.map +0 -1
- package/dist/knowledge/memory-exports.d.ts.map +0 -1
- package/dist/knowledge/memory-exports.js.map +0 -1
- package/dist/knowledge/memory-index.d.ts.map +0 -1
- package/dist/knowledge/memory-index.js.map +0 -1
- package/dist/knowledge/memory-lifecycle.d.ts.map +0 -1
- package/dist/knowledge/memory-lifecycle.js.map +0 -1
- package/dist/knowledge/memory-persistence.d.ts.map +0 -1
- package/dist/knowledge/memory-persistence.js.map +0 -1
- package/dist/knowledge/memory-phases.d.ts +0 -14
- package/dist/knowledge/memory-phases.d.ts.map +0 -1
- package/dist/knowledge/memory-phases.js +0 -14
- package/dist/knowledge/memory-phases.js.map +0 -1
- package/dist/knowledge/memory-query.d.ts.map +0 -1
- package/dist/knowledge/memory-query.js.map +0 -1
- package/dist/knowledge/memory-selection.d.ts.map +0 -1
- package/dist/knowledge/memory-selection.js.map +0 -1
- package/dist/knowledge/memory-stats.d.ts.map +0 -1
- package/dist/knowledge/memory-stats.js.map +0 -1
- package/dist/knowledge/memory-tier.d.ts.map +0 -1
- package/dist/knowledge/memory-tier.js.map +0 -1
- package/dist/knowledge/transfer-trust.d.ts.map +0 -1
- package/dist/knowledge/transfer-trust.js.map +0 -1
- package/dist/knowledge-graph.d.ts +0 -70
- package/dist/knowledge-graph.d.ts.map +0 -1
- package/dist/knowledge-graph.js +0 -194
- package/dist/knowledge-graph.js.map +0 -1
- package/dist/knowledge-manager.d.ts +0 -110
- package/dist/knowledge-manager.d.ts.map +0 -1
- package/dist/knowledge-manager.js +0 -544
- package/dist/knowledge-manager.js.map +0 -1
- package/dist/knowledge-transfer.d.ts +0 -101
- package/dist/knowledge-transfer.d.ts.map +0 -1
- package/dist/knowledge-transfer.js +0 -484
- package/dist/knowledge-transfer.js.map +0 -1
- package/dist/learning-pipeline.d.ts +0 -107
- package/dist/learning-pipeline.d.ts.map +0 -1
- package/dist/learning-pipeline.js +0 -840
- package/dist/learning-pipeline.js.map +0 -1
- package/dist/llm-client.d.ts +0 -65
- package/dist/llm-client.d.ts.map +0 -1
- package/dist/llm-client.js +0 -151
- package/dist/llm-client.js.map +0 -1
- package/dist/logger.d.ts +0 -30
- package/dist/logger.d.ts.map +0 -1
- package/dist/logger.js +0 -121
- package/dist/logger.js.map +0 -1
- package/dist/memory-lifecycle.d.ts +0 -244
- package/dist/memory-lifecycle.d.ts.map +0 -1
- package/dist/memory-lifecycle.js +0 -1328
- package/dist/memory-lifecycle.js.map +0 -1
- package/dist/notification-dispatcher.d.ts +0 -36
- package/dist/notification-dispatcher.d.ts.map +0 -1
- package/dist/notification-dispatcher.js +0 -363
- package/dist/notification-dispatcher.js.map +0 -1
- package/dist/observation-engine.d.ts +0 -218
- package/dist/observation-engine.d.ts.map +0 -1
- package/dist/observation-engine.js +0 -711
- package/dist/observation-engine.js.map +0 -1
- package/dist/ollama-client.d.ts +0 -30
- package/dist/ollama-client.d.ts.map +0 -1
- package/dist/ollama-client.js +0 -112
- package/dist/ollama-client.js.map +0 -1
- package/dist/openai-client.d.ts +0 -40
- package/dist/openai-client.d.ts.map +0 -1
- package/dist/openai-client.js +0 -155
- package/dist/openai-client.js.map +0 -1
- package/dist/pid-manager.d.ts +0 -18
- package/dist/pid-manager.d.ts.map +0 -1
- package/dist/pid-manager.js +0 -64
- package/dist/pid-manager.js.map +0 -1
- package/dist/portfolio-manager.d.ts.map +0 -1
- package/dist/portfolio-manager.js.map +0 -1
- package/dist/portfolio-rebalance.d.ts.map +0 -1
- package/dist/portfolio-rebalance.js.map +0 -1
- package/dist/provider-config.d.ts +0 -43
- package/dist/provider-config.d.ts.map +0 -1
- package/dist/provider-config.js +0 -131
- package/dist/provider-config.js.map +0 -1
- package/dist/provider-factory.d.ts +0 -23
- package/dist/provider-factory.d.ts.map +0 -1
- package/dist/provider-factory.js +0 -83
- package/dist/provider-factory.js.map +0 -1
- package/dist/reporting-engine.d.ts.map +0 -1
- package/dist/reporting-engine.js.map +0 -1
- package/dist/satisficing-judge.d.ts +0 -113
- package/dist/satisficing-judge.d.ts.map +0 -1
- package/dist/satisficing-judge.js +0 -592
- package/dist/satisficing-judge.js.map +0 -1
- package/dist/session-manager.d.ts +0 -159
- package/dist/session-manager.d.ts.map +0 -1
- package/dist/session-manager.js +0 -458
- package/dist/session-manager.js.map +0 -1
- package/dist/stall-detector.d.ts +0 -100
- package/dist/stall-detector.d.ts.map +0 -1
- package/dist/stall-detector.js +0 -306
- package/dist/stall-detector.js.map +0 -1
- package/dist/state-aggregator.d.ts +0 -89
- package/dist/state-aggregator.d.ts.map +0 -1
- package/dist/state-aggregator.js +0 -290
- package/dist/state-aggregator.js.map +0 -1
- package/dist/state-manager.d.ts.map +0 -1
- package/dist/state-manager.js.map +0 -1
- package/dist/strategy-manager.d.ts +0 -128
- package/dist/strategy-manager.d.ts.map +0 -1
- package/dist/strategy-manager.js +0 -579
- package/dist/strategy-manager.js.map +0 -1
- package/dist/strategy-template-registry.d.ts +0 -80
- package/dist/strategy-template-registry.d.ts.map +0 -1
- package/dist/strategy-template-registry.js +0 -320
- package/dist/strategy-template-registry.js.map +0 -1
- package/dist/task-lifecycle.d.ts +0 -167
- package/dist/task-lifecycle.d.ts.map +0 -1
- package/dist/task-lifecycle.js +0 -1161
- package/dist/task-lifecycle.js.map +0 -1
- package/dist/tree-loop-orchestrator.d.ts +0 -79
- package/dist/tree-loop-orchestrator.d.ts.map +0 -1
- package/dist/tree-loop-orchestrator.js +0 -225
- package/dist/tree-loop-orchestrator.js.map +0 -1
- package/dist/trust-manager.d.ts +0 -67
- package/dist/trust-manager.d.ts.map +0 -1
- package/dist/trust-manager.js +0 -201
- package/dist/trust-manager.js.map +0 -1
- package/dist/vector-index.d.ts +0 -39
- package/dist/vector-index.d.ts.map +0 -1
- package/dist/vector-index.js +0 -111
- package/dist/vector-index.js.map +0 -1
- /package/dist/adapters/{openclaw-acp.js → agents/openclaw-acp.js} +0 -0
- /package/dist/adapters/{file-existence-datasource.js → datasources/file-existence-datasource.js} +0 -0
- /package/dist/adapters/{github-issue-datasource.js → datasources/github-issue-datasource.js} +0 -0
- /package/dist/adapters/{mcp-datasource.js → datasources/mcp-datasource.js} +0 -0
- /package/dist/adapters/{openclaw-datasource.js → datasources/openclaw-datasource.js} +0 -0
- /package/dist/adapters/{shell-datasource.js → datasources/shell-datasource.js} +0 -0
- /package/dist/{cli-runner.d.ts → cli/cli-runner.d.ts} +0 -0
- /package/dist/execution/{context-budget.js → context/context-budget.js} +0 -0
- /package/dist/execution/{task-approval-check.js → task/task-approval-check.js} +0 -0
- /package/dist/execution/{task-health-check.d.ts → task/task-health-check.d.ts} +0 -0
- /package/dist/execution/{task-health-check.js → task/task-health-check.js} +0 -0
- /package/dist/knowledge/{learning-exports.js → learning/learning-exports.js} +0 -0
- /package/dist/knowledge/{memory-distill.js → memory/memory-distill.js} +0 -0
- /package/dist/knowledge/{memory-exports.js → memory/memory-exports.js} +0 -0
- /package/dist/knowledge/{memory-persistence.js → memory/memory-persistence.js} +0 -0
- /package/dist/knowledge/{memory-tier.js → memory/memory-tier.js} +0 -0
- /package/dist/knowledge/{knowledge-transfer-prompts.js → transfer/knowledge-transfer-prompts.js} +0 -0
- /package/dist/knowledge/{knowledge-transfer-types.js → transfer/knowledge-transfer-types.js} +0 -0
- /package/dist/knowledge/{knowledge-transfer.js → transfer/knowledge-transfer.js} +0 -0
- /package/dist/{portfolio-rebalance.js → strategy/portfolio-rebalance.js} +0 -0
- /package/dist/{guardrail-runner.js → traits/guardrail-runner.js} +0 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { StateManager } from "../state/state-manager.js";
|
|
3
|
+
export declare const ChatMessageSchema: z.ZodObject<{
|
|
4
|
+
role: z.ZodEnum<["user", "assistant"]>;
|
|
5
|
+
content: z.ZodString;
|
|
6
|
+
timestamp: z.ZodString;
|
|
7
|
+
turnIndex: z.ZodNumber;
|
|
8
|
+
}, "strip", z.ZodTypeAny, {
|
|
9
|
+
timestamp: string;
|
|
10
|
+
content: string;
|
|
11
|
+
role: "user" | "assistant";
|
|
12
|
+
turnIndex: number;
|
|
13
|
+
}, {
|
|
14
|
+
timestamp: string;
|
|
15
|
+
content: string;
|
|
16
|
+
role: "user" | "assistant";
|
|
17
|
+
turnIndex: number;
|
|
18
|
+
}>;
|
|
19
|
+
export type ChatMessage = z.infer<typeof ChatMessageSchema>;
|
|
20
|
+
export declare const ChatSessionSchema: z.ZodObject<{
|
|
21
|
+
id: z.ZodString;
|
|
22
|
+
cwd: z.ZodString;
|
|
23
|
+
createdAt: z.ZodString;
|
|
24
|
+
messages: z.ZodArray<z.ZodObject<{
|
|
25
|
+
role: z.ZodEnum<["user", "assistant"]>;
|
|
26
|
+
content: z.ZodString;
|
|
27
|
+
timestamp: z.ZodString;
|
|
28
|
+
turnIndex: z.ZodNumber;
|
|
29
|
+
}, "strip", z.ZodTypeAny, {
|
|
30
|
+
timestamp: string;
|
|
31
|
+
content: string;
|
|
32
|
+
role: "user" | "assistant";
|
|
33
|
+
turnIndex: number;
|
|
34
|
+
}, {
|
|
35
|
+
timestamp: string;
|
|
36
|
+
content: string;
|
|
37
|
+
role: "user" | "assistant";
|
|
38
|
+
turnIndex: number;
|
|
39
|
+
}>, "many">;
|
|
40
|
+
compactionSummary: z.ZodOptional<z.ZodString>;
|
|
41
|
+
}, "strip", z.ZodTypeAny, {
|
|
42
|
+
id: string;
|
|
43
|
+
cwd: string;
|
|
44
|
+
createdAt: string;
|
|
45
|
+
messages: {
|
|
46
|
+
timestamp: string;
|
|
47
|
+
content: string;
|
|
48
|
+
role: "user" | "assistant";
|
|
49
|
+
turnIndex: number;
|
|
50
|
+
}[];
|
|
51
|
+
compactionSummary?: string | undefined;
|
|
52
|
+
}, {
|
|
53
|
+
id: string;
|
|
54
|
+
cwd: string;
|
|
55
|
+
createdAt: string;
|
|
56
|
+
messages: {
|
|
57
|
+
timestamp: string;
|
|
58
|
+
content: string;
|
|
59
|
+
role: "user" | "assistant";
|
|
60
|
+
turnIndex: number;
|
|
61
|
+
}[];
|
|
62
|
+
compactionSummary?: string | undefined;
|
|
63
|
+
}>;
|
|
64
|
+
export type ChatSession = z.infer<typeof ChatSessionSchema>;
|
|
65
|
+
export declare class ChatHistory {
|
|
66
|
+
private readonly stateManager;
|
|
67
|
+
private readonly sessionId;
|
|
68
|
+
private readonly session;
|
|
69
|
+
constructor(stateManager: StateManager, sessionId: string, cwd: string);
|
|
70
|
+
/** Append a user message and persist to disk BEFORE adapter execution. */
|
|
71
|
+
appendUserMessage(content: string): Promise<void>;
|
|
72
|
+
/** Append an assistant message. Fire-and-forget persistence is acceptable here. */
|
|
73
|
+
appendAssistantMessage(content: string): void;
|
|
74
|
+
/** Clear all messages and persist the empty state. */
|
|
75
|
+
clear(): void;
|
|
76
|
+
getMessages(): ChatMessage[];
|
|
77
|
+
getSessionData(): ChatSession;
|
|
78
|
+
persist(): Promise<void>;
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=chat-history.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-history.d.ts","sourceRoot":"","sources":["../../src/chat/chat-history.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAI9D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;EAK5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAI5D,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;gBAE1B,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAWtE,0EAA0E;IACpE,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvD,mFAAmF;IACnF,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAU7C,sDAAsD;IACtD,KAAK,IAAI,IAAI;IAKb,WAAW,IAAI,WAAW,EAAE;IAI5B,cAAc,IAAI,WAAW;IAIvB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAM/B"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
// ─── ChatHistory ───
|
|
2
|
+
//
|
|
3
|
+
// Manages conversation history for a chat session.
|
|
4
|
+
// Persists via StateManager.writeRaw (persist-before-execute principle).
|
|
5
|
+
import { z } from "zod";
|
|
6
|
+
// ─── Schemas ───
|
|
7
|
+
export const ChatMessageSchema = z.object({
|
|
8
|
+
role: z.enum(["user", "assistant"]),
|
|
9
|
+
content: z.string(),
|
|
10
|
+
timestamp: z.string(), // ISO 8601
|
|
11
|
+
turnIndex: z.number().int().min(0),
|
|
12
|
+
});
|
|
13
|
+
export const ChatSessionSchema = z.object({
|
|
14
|
+
id: z.string(),
|
|
15
|
+
cwd: z.string(), // git root at session start
|
|
16
|
+
createdAt: z.string(),
|
|
17
|
+
messages: z.array(ChatMessageSchema),
|
|
18
|
+
compactionSummary: z.string().optional(),
|
|
19
|
+
});
|
|
20
|
+
// ─── ChatHistory ───
|
|
21
|
+
export class ChatHistory {
|
|
22
|
+
stateManager;
|
|
23
|
+
sessionId;
|
|
24
|
+
session;
|
|
25
|
+
constructor(stateManager, sessionId, cwd) {
|
|
26
|
+
this.stateManager = stateManager;
|
|
27
|
+
this.sessionId = sessionId;
|
|
28
|
+
this.session = {
|
|
29
|
+
id: sessionId,
|
|
30
|
+
cwd,
|
|
31
|
+
createdAt: new Date().toISOString(),
|
|
32
|
+
messages: [],
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/** Append a user message and persist to disk BEFORE adapter execution. */
|
|
36
|
+
async appendUserMessage(content) {
|
|
37
|
+
this.session.messages.push({
|
|
38
|
+
role: "user",
|
|
39
|
+
content,
|
|
40
|
+
timestamp: new Date().toISOString(),
|
|
41
|
+
turnIndex: this.session.messages.length,
|
|
42
|
+
});
|
|
43
|
+
await this.persist();
|
|
44
|
+
}
|
|
45
|
+
/** Append an assistant message. Fire-and-forget persistence is acceptable here. */
|
|
46
|
+
appendAssistantMessage(content) {
|
|
47
|
+
this.session.messages.push({
|
|
48
|
+
role: "assistant",
|
|
49
|
+
content,
|
|
50
|
+
timestamp: new Date().toISOString(),
|
|
51
|
+
turnIndex: this.session.messages.length,
|
|
52
|
+
});
|
|
53
|
+
void this.persist();
|
|
54
|
+
}
|
|
55
|
+
/** Clear all messages and persist the empty state. */
|
|
56
|
+
clear() {
|
|
57
|
+
this.session.messages = [];
|
|
58
|
+
void this.persist();
|
|
59
|
+
}
|
|
60
|
+
getMessages() {
|
|
61
|
+
return [...this.session.messages];
|
|
62
|
+
}
|
|
63
|
+
getSessionData() {
|
|
64
|
+
return { ...this.session, messages: [...this.session.messages] };
|
|
65
|
+
}
|
|
66
|
+
async persist() {
|
|
67
|
+
await this.stateManager.writeRaw(`chat/sessions/${this.sessionId}.json`, this.session);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=chat-history.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-history.js","sourceRoot":"","sources":["../../src/chat/chat-history.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import type { StateManager } from "../state/state-manager.js";
|
|
2
|
+
import type { IAdapter } from "../execution/adapter-layer.js";
|
|
3
|
+
import type { ILLMClient } from "../llm/llm-client.js";
|
|
4
|
+
import type { EscalationHandler } from "./escalation.js";
|
|
5
|
+
import type { ApprovalLevel } from "./self-knowledge-mutation-tools.js";
|
|
6
|
+
import type { TrustManager } from "../traits/trust-manager.js";
|
|
7
|
+
import type { PluginLoader } from "../runtime/plugin-loader.js";
|
|
8
|
+
export interface ChatRunnerDeps {
|
|
9
|
+
stateManager: StateManager;
|
|
10
|
+
adapter: IAdapter;
|
|
11
|
+
/** Optional: reserved for future escalation support (Phase 1c). */
|
|
12
|
+
llmClient?: ILLMClient;
|
|
13
|
+
/** Optional: escalation handler for /track command (Phase 1c). */
|
|
14
|
+
escalationHandler?: EscalationHandler;
|
|
15
|
+
/** Optional: trust manager for self-knowledge tools and mutations. */
|
|
16
|
+
trustManager?: TrustManager | {
|
|
17
|
+
getBalance(domain: string): Promise<{
|
|
18
|
+
balance: number;
|
|
19
|
+
}>;
|
|
20
|
+
};
|
|
21
|
+
/** Optional: plugin loader for self-knowledge tools and mutations. */
|
|
22
|
+
pluginLoader?: PluginLoader | {
|
|
23
|
+
loadAll(): Promise<Array<{
|
|
24
|
+
name: string;
|
|
25
|
+
type?: string;
|
|
26
|
+
enabled?: boolean;
|
|
27
|
+
}>>;
|
|
28
|
+
};
|
|
29
|
+
/** Optional: approval handler for mutation tools. */
|
|
30
|
+
approvalFn?: (description: string) => Promise<boolean>;
|
|
31
|
+
/** Optional: per-tool approval level overrides. */
|
|
32
|
+
approvalConfig?: Record<string, ApprovalLevel>;
|
|
33
|
+
}
|
|
34
|
+
export interface ChatRunResult {
|
|
35
|
+
success: boolean;
|
|
36
|
+
output: string;
|
|
37
|
+
elapsed_ms: number;
|
|
38
|
+
}
|
|
39
|
+
export declare class ChatRunner {
|
|
40
|
+
private readonly deps;
|
|
41
|
+
private history;
|
|
42
|
+
private sessionCwd;
|
|
43
|
+
/** True when startSession() has been called — enables session persistence across execute() calls. */
|
|
44
|
+
private sessionActive;
|
|
45
|
+
/** Cached system prompt — built once per session, reused across turns. */
|
|
46
|
+
private cachedSystemPrompt;
|
|
47
|
+
constructor(deps: ChatRunnerDeps);
|
|
48
|
+
/**
|
|
49
|
+
* Initialize a persistent session for interactive (multi-turn) mode.
|
|
50
|
+
* Must be called before the first execute() to share history across turns.
|
|
51
|
+
* If not called, execute() auto-creates a new session per call (Phase 1a behavior).
|
|
52
|
+
*/
|
|
53
|
+
startSession(cwd: string): void;
|
|
54
|
+
private handleCommand;
|
|
55
|
+
private handleTrack;
|
|
56
|
+
/**
|
|
57
|
+
* Execute a single chat turn.
|
|
58
|
+
*
|
|
59
|
+
* Flow:
|
|
60
|
+
* 1. Intercept slash commands before adapter dispatch
|
|
61
|
+
* 2. Resolve git root → create ChatHistory
|
|
62
|
+
* 3. Build chat context and assemble prompt
|
|
63
|
+
* 4. Persist user message BEFORE calling adapter (crash-safe)
|
|
64
|
+
* 5. Execute via adapter
|
|
65
|
+
* 6. Verify changes (git diff + tests); retry up to MAX_VERIFY_RETRIES if tests fail
|
|
66
|
+
* 7. Persist assistant response (fire-and-forget)
|
|
67
|
+
*/
|
|
68
|
+
execute(input: string, cwd: string, timeoutMs?: number): Promise<ChatRunResult>;
|
|
69
|
+
/**
|
|
70
|
+
* Execute a chat turn using llmClient with self-knowledge tools (function calling).
|
|
71
|
+
* Loops up to MAX_TOOL_LOOPS times to resolve tool calls, then returns final text.
|
|
72
|
+
*/
|
|
73
|
+
private executeWithTools;
|
|
74
|
+
/** Build SelfKnowledgeDeps from ChatRunnerDeps. */
|
|
75
|
+
private buildSelfKnowledgeDeps;
|
|
76
|
+
/** Build MutationToolDeps from ChatRunnerDeps. */
|
|
77
|
+
private buildMutationToolDeps;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=chat-runner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-runner.d.ts","sourceRoot":"","sources":["../../src/chat/chat-runner.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAa,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAMzD,OAAO,KAAK,EAAoB,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAKhE,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,QAAQ,CAAC;IAClB,mEAAmE;IACnE,SAAS,CAAC,EAAE,UAAU,CAAC;IACvB,kEAAkE;IAClE,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,sEAAsE;IACtE,YAAY,CAAC,EAAE,YAAY,GAAG;QAAE,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;YAAE,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;IAC3F,sEAAsE;IACtE,YAAY,CAAC,EAAE,YAAY,GAAG;QAAE,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC,CAAA;KAAE,CAAC;IAChH,qDAAqD;IACrD,UAAU,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACvD,mDAAmD;IACnD,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AA0BD,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IACtC,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,UAAU,CAAuB;IACzC,qGAAqG;IACrG,OAAO,CAAC,aAAa,CAAS;IAC9B,0EAA0E;IAC1E,OAAO,CAAC,kBAAkB,CAAuB;gBAErC,IAAI,EAAE,cAAc;IAIhC;;;;OAIG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;YAQjB,aAAa;YA4Bb,WAAW;IAgCzB;;;;;;;;;;;OAWG;IACG,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,SAAqB,GAAG,OAAO,CAAC,aAAa,CAAC;IAoGjG;;;OAGG;YACW,gBAAgB;IAiD9B,mDAAmD;IACnD,OAAO,CAAC,sBAAsB;IAS9B,kDAAkD;IAClD,OAAO,CAAC,qBAAqB;CAa9B"}
|
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
// ─── ChatRunner ───
|
|
2
|
+
//
|
|
3
|
+
// Central coordinator for 1-shot chat execution (Tier 1).
|
|
4
|
+
// Bypasses TaskLifecycle — calls adapter.execute() directly.
|
|
5
|
+
import { execFile } from "node:child_process";
|
|
6
|
+
import { ChatHistory } from "./chat-history.js";
|
|
7
|
+
import { buildChatContext, resolveGitRoot } from "../observation/context-provider.js";
|
|
8
|
+
import { buildSystemPrompt } from "./grounding.js";
|
|
9
|
+
import { verifyChatAction } from "./chat-verifier.js";
|
|
10
|
+
import { getSelfKnowledgeToolDefinitions, handleSelfKnowledgeToolCall } from "./self-knowledge-tools.js";
|
|
11
|
+
import { getMutationToolDefinitions, handleMutationToolCall } from "./self-knowledge-mutation-tools.js";
|
|
12
|
+
const DEFAULT_TIMEOUT_MS = 120_000;
|
|
13
|
+
const MAX_VERIFY_RETRIES = 2;
|
|
14
|
+
const MAX_TOOL_LOOPS = 5;
|
|
15
|
+
// ─── Command help text ───
|
|
16
|
+
const COMMAND_HELP = `Available commands:
|
|
17
|
+
/help Show this help message
|
|
18
|
+
/clear Clear conversation history
|
|
19
|
+
/exit Exit chat mode
|
|
20
|
+
/track Promote session to Tier 2 goal pursuit (not yet implemented)`;
|
|
21
|
+
// ─── Helpers ───
|
|
22
|
+
function checkGitChanges(cwd) {
|
|
23
|
+
return new Promise((resolve) => {
|
|
24
|
+
execFile("git", ["diff", "HEAD", "--stat"], { cwd, timeout: 5_000 }, (err, stdout, stderr) => {
|
|
25
|
+
resolve(err ? null : (stdout + stderr).trim());
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
// ─── ChatRunner ───
|
|
30
|
+
export class ChatRunner {
|
|
31
|
+
deps;
|
|
32
|
+
history = null;
|
|
33
|
+
sessionCwd = null;
|
|
34
|
+
/** True when startSession() has been called — enables session persistence across execute() calls. */
|
|
35
|
+
sessionActive = false;
|
|
36
|
+
/** Cached system prompt — built once per session, reused across turns. */
|
|
37
|
+
cachedSystemPrompt = null;
|
|
38
|
+
constructor(deps) {
|
|
39
|
+
this.deps = deps;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Initialize a persistent session for interactive (multi-turn) mode.
|
|
43
|
+
* Must be called before the first execute() to share history across turns.
|
|
44
|
+
* If not called, execute() auto-creates a new session per call (Phase 1a behavior).
|
|
45
|
+
*/
|
|
46
|
+
startSession(cwd) {
|
|
47
|
+
const gitRoot = resolveGitRoot(cwd);
|
|
48
|
+
const sessionId = crypto.randomUUID();
|
|
49
|
+
this.history = new ChatHistory(this.deps.stateManager, sessionId, gitRoot);
|
|
50
|
+
this.sessionCwd = gitRoot;
|
|
51
|
+
this.sessionActive = true;
|
|
52
|
+
}
|
|
53
|
+
async handleCommand(input) {
|
|
54
|
+
const trimmed = input.trim();
|
|
55
|
+
if (!trimmed.startsWith("/"))
|
|
56
|
+
return null;
|
|
57
|
+
const cmd = trimmed.toLowerCase().split(/\s+/)[0];
|
|
58
|
+
const start = Date.now();
|
|
59
|
+
if (cmd === "/help") {
|
|
60
|
+
return { success: true, output: COMMAND_HELP, elapsed_ms: Date.now() - start };
|
|
61
|
+
}
|
|
62
|
+
if (cmd === "/clear") {
|
|
63
|
+
this.history?.clear();
|
|
64
|
+
return { success: true, output: "Conversation history cleared.", elapsed_ms: Date.now() - start };
|
|
65
|
+
}
|
|
66
|
+
if (cmd === "/exit") {
|
|
67
|
+
return { success: true, output: "Exiting chat mode.", elapsed_ms: Date.now() - start };
|
|
68
|
+
}
|
|
69
|
+
if (cmd === "/track") {
|
|
70
|
+
return this.handleTrack(start);
|
|
71
|
+
}
|
|
72
|
+
return {
|
|
73
|
+
success: false,
|
|
74
|
+
output: `Unknown command: ${input.trim()}. Type /help for available commands.`,
|
|
75
|
+
elapsed_ms: Date.now() - start,
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
async handleTrack(start) {
|
|
79
|
+
if (!this.deps.escalationHandler) {
|
|
80
|
+
return {
|
|
81
|
+
success: false,
|
|
82
|
+
output: "Escalation not available — missing LLM configuration",
|
|
83
|
+
elapsed_ms: Date.now() - start,
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
if (!this.history || this.history.getMessages().length === 0) {
|
|
87
|
+
return {
|
|
88
|
+
success: false,
|
|
89
|
+
output: "No conversation to escalate. Chat first, then /track.",
|
|
90
|
+
elapsed_ms: Date.now() - start,
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
try {
|
|
94
|
+
const result = await this.deps.escalationHandler.escalateToGoal(this.history);
|
|
95
|
+
return {
|
|
96
|
+
success: true,
|
|
97
|
+
output: `Goal created: ${result.title} (ID: ${result.goalId})\nRun: pulseed run --goal ${result.goalId} --yes`,
|
|
98
|
+
elapsed_ms: Date.now() - start,
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
catch (err) {
|
|
102
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
103
|
+
return {
|
|
104
|
+
success: false,
|
|
105
|
+
output: `Escalation failed: ${message}`,
|
|
106
|
+
elapsed_ms: Date.now() - start,
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Execute a single chat turn.
|
|
112
|
+
*
|
|
113
|
+
* Flow:
|
|
114
|
+
* 1. Intercept slash commands before adapter dispatch
|
|
115
|
+
* 2. Resolve git root → create ChatHistory
|
|
116
|
+
* 3. Build chat context and assemble prompt
|
|
117
|
+
* 4. Persist user message BEFORE calling adapter (crash-safe)
|
|
118
|
+
* 5. Execute via adapter
|
|
119
|
+
* 6. Verify changes (git diff + tests); retry up to MAX_VERIFY_RETRIES if tests fail
|
|
120
|
+
* 7. Persist assistant response (fire-and-forget)
|
|
121
|
+
*/
|
|
122
|
+
async execute(input, cwd, timeoutMs = DEFAULT_TIMEOUT_MS) {
|
|
123
|
+
// Intercept commands before any adapter call
|
|
124
|
+
const commandResult = await this.handleCommand(input);
|
|
125
|
+
if (commandResult !== null) {
|
|
126
|
+
return commandResult;
|
|
127
|
+
}
|
|
128
|
+
// Reuse session (interactive mode) or create a fresh one per call (1-shot mode)
|
|
129
|
+
if (!this.sessionActive) {
|
|
130
|
+
const gitRoot = resolveGitRoot(cwd);
|
|
131
|
+
const sessionId = crypto.randomUUID();
|
|
132
|
+
this.history = new ChatHistory(this.deps.stateManager, sessionId, gitRoot);
|
|
133
|
+
}
|
|
134
|
+
const gitRoot = this.sessionCwd ?? resolveGitRoot(cwd);
|
|
135
|
+
// history is always assigned by this point (either by startSession or the block above)
|
|
136
|
+
const history = this.history;
|
|
137
|
+
// Persist-before-execute: user message written to disk first
|
|
138
|
+
await history.appendUserMessage(input);
|
|
139
|
+
// Build grounding system prompt on first turn, cache for session
|
|
140
|
+
if (this.cachedSystemPrompt === null) {
|
|
141
|
+
try {
|
|
142
|
+
this.cachedSystemPrompt = await buildSystemPrompt({ stateManager: this.deps.stateManager });
|
|
143
|
+
}
|
|
144
|
+
catch {
|
|
145
|
+
this.cachedSystemPrompt = "";
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
// Build conversation history from prior turns (last 10)
|
|
149
|
+
const messages = history.getMessages();
|
|
150
|
+
const priorTurns = messages.slice(0, -1).slice(-10);
|
|
151
|
+
let historyBlock = "";
|
|
152
|
+
if (priorTurns.length > 0) {
|
|
153
|
+
const lines = priorTurns.map((m) => `${m.role === "user" ? "User" : "Assistant"}: ${m.content}`).join("\n");
|
|
154
|
+
historyBlock = `Previous conversation:\n${lines}\n\nCurrent message:\n`;
|
|
155
|
+
}
|
|
156
|
+
const context = await buildChatContext(input, gitRoot);
|
|
157
|
+
const basePrompt = context ? `${context}\n\n${input}` : input;
|
|
158
|
+
const prompt = historyBlock ? `${historyBlock}${basePrompt}` : basePrompt;
|
|
159
|
+
const start = Date.now();
|
|
160
|
+
// Use llmClient with self-knowledge tools when available (function calling path)
|
|
161
|
+
if (this.deps.llmClient) {
|
|
162
|
+
const toolResult = await this.executeWithTools(prompt, this.cachedSystemPrompt ?? undefined);
|
|
163
|
+
const elapsed_ms = Date.now() - start;
|
|
164
|
+
await history.appendAssistantMessage(toolResult);
|
|
165
|
+
return { success: true, output: toolResult, elapsed_ms };
|
|
166
|
+
}
|
|
167
|
+
const task = {
|
|
168
|
+
prompt,
|
|
169
|
+
timeout_ms: timeoutMs,
|
|
170
|
+
adapter_type: this.deps.adapter.adapterType,
|
|
171
|
+
cwd,
|
|
172
|
+
...(this.cachedSystemPrompt ? { system_prompt: this.cachedSystemPrompt } : {}),
|
|
173
|
+
};
|
|
174
|
+
let result = await this.deps.adapter.execute(task);
|
|
175
|
+
const elapsed_ms = Date.now() - start;
|
|
176
|
+
// Verification loop: check if git has uncommitted changes; if so, run tests
|
|
177
|
+
const gitChanges = await checkGitChanges(gitRoot);
|
|
178
|
+
if (gitChanges !== null && gitChanges !== "") {
|
|
179
|
+
let retries = 0;
|
|
180
|
+
let verification = await verifyChatAction(gitRoot);
|
|
181
|
+
while (!verification.passed && retries < MAX_VERIFY_RETRIES) {
|
|
182
|
+
retries++;
|
|
183
|
+
const retryPrompt = `The previous changes caused test failures. Please fix them.\n\nTest output:\n${verification.testOutput ?? verification.errors.join("\n")}`;
|
|
184
|
+
const retryTask = { ...task, prompt: retryPrompt };
|
|
185
|
+
result = await this.deps.adapter.execute(retryTask);
|
|
186
|
+
verification = await verifyChatAction(gitRoot);
|
|
187
|
+
}
|
|
188
|
+
if (!verification.passed) {
|
|
189
|
+
// Fire-and-forget: persist assistant response
|
|
190
|
+
history.appendAssistantMessage(result.output);
|
|
191
|
+
return {
|
|
192
|
+
success: false,
|
|
193
|
+
output: `Changes applied but tests are still failing after ${MAX_VERIFY_RETRIES} retries. Please intervene manually.\n\nTest output:\n${verification.testOutput ?? verification.errors.join("\n")}`,
|
|
194
|
+
elapsed_ms: Date.now() - start,
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
// Fire-and-forget: persist assistant response after completion
|
|
199
|
+
history.appendAssistantMessage(result.output);
|
|
200
|
+
return {
|
|
201
|
+
success: result.success,
|
|
202
|
+
output: result.output,
|
|
203
|
+
elapsed_ms,
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Execute a chat turn using llmClient with self-knowledge tools (function calling).
|
|
208
|
+
* Loops up to MAX_TOOL_LOOPS times to resolve tool calls, then returns final text.
|
|
209
|
+
*/
|
|
210
|
+
async executeWithTools(prompt, systemPrompt) {
|
|
211
|
+
const llmClient = this.deps.llmClient;
|
|
212
|
+
const tools = [...getSelfKnowledgeToolDefinitions(), ...getMutationToolDefinitions()];
|
|
213
|
+
const skDeps = this.buildSelfKnowledgeDeps();
|
|
214
|
+
const mutDeps = this.buildMutationToolDeps();
|
|
215
|
+
const messages = [{ role: "user", content: prompt }];
|
|
216
|
+
const mutationToolNames = new Set([
|
|
217
|
+
"set_goal", "update_goal", "archive_goal", "delete_goal",
|
|
218
|
+
"toggle_plugin", "update_config", "reset_trust",
|
|
219
|
+
]);
|
|
220
|
+
for (let loop = 0; loop < MAX_TOOL_LOOPS; loop++) {
|
|
221
|
+
let response;
|
|
222
|
+
try {
|
|
223
|
+
response = await llmClient.sendMessage(messages, {
|
|
224
|
+
tools,
|
|
225
|
+
...(systemPrompt ? { system: systemPrompt } : {}),
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
catch {
|
|
229
|
+
return "Sorry, I encountered an error processing your request.";
|
|
230
|
+
}
|
|
231
|
+
// No tool calls — return the text content
|
|
232
|
+
if (!response.tool_calls || response.tool_calls.length === 0) {
|
|
233
|
+
return response.content || "(no response)";
|
|
234
|
+
}
|
|
235
|
+
// Append assistant message, then process tool calls
|
|
236
|
+
messages.push({ role: "assistant", content: response.content || "" });
|
|
237
|
+
for (const tc of response.tool_calls) {
|
|
238
|
+
let args = {};
|
|
239
|
+
try {
|
|
240
|
+
args = JSON.parse(tc.function.arguments || "{}");
|
|
241
|
+
}
|
|
242
|
+
catch {
|
|
243
|
+
// ignore parse errors, use empty args
|
|
244
|
+
}
|
|
245
|
+
const toolResult = mutationToolNames.has(tc.function.name)
|
|
246
|
+
? await handleMutationToolCall(tc.function.name, args, mutDeps)
|
|
247
|
+
: await handleSelfKnowledgeToolCall(tc.function.name, args, skDeps);
|
|
248
|
+
messages.push({ role: "user", content: `Tool result for ${tc.function.name}:\n${toolResult}` });
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
// Max loops reached — return last assistant content or fallback
|
|
252
|
+
const lastAssistant = [...messages].reverse().find(m => m.role === "assistant");
|
|
253
|
+
return lastAssistant?.content || "I was unable to complete the request within the allowed tool call limit.";
|
|
254
|
+
}
|
|
255
|
+
/** Build SelfKnowledgeDeps from ChatRunnerDeps. */
|
|
256
|
+
buildSelfKnowledgeDeps() {
|
|
257
|
+
return {
|
|
258
|
+
stateManager: this.deps.stateManager,
|
|
259
|
+
trustManager: this.deps.trustManager,
|
|
260
|
+
pluginLoader: this.deps.pluginLoader,
|
|
261
|
+
homeDir: process.env.HOME ?? process.env.USERPROFILE ?? "/tmp",
|
|
262
|
+
};
|
|
263
|
+
}
|
|
264
|
+
/** Build MutationToolDeps from ChatRunnerDeps. */
|
|
265
|
+
buildMutationToolDeps() {
|
|
266
|
+
const tm = this.deps.trustManager;
|
|
267
|
+
const pl = this.deps.pluginLoader;
|
|
268
|
+
return {
|
|
269
|
+
stateManager: this.deps.stateManager,
|
|
270
|
+
trustManager: tm && "setOverride" in tm ? tm : undefined,
|
|
271
|
+
pluginLoader: pl && "getPluginState" in pl && "updatePluginState" in pl
|
|
272
|
+
? pl
|
|
273
|
+
: undefined,
|
|
274
|
+
approvalFn: this.deps.approvalFn,
|
|
275
|
+
approvalConfig: this.deps.approvalConfig,
|
|
276
|
+
};
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
//# sourceMappingURL=chat-runner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-runner.js","sourceRoot":"","sources":["../../src/chat/chat-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface ChatVerificationResult {
|
|
2
|
+
passed: boolean;
|
|
3
|
+
errors: string[];
|
|
4
|
+
testOutput?: string;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Verify a chat-mode code action:
|
|
8
|
+
* 1. Check git diff HEAD — if no changes, skip.
|
|
9
|
+
* 2. Run vitest — return failure if tests break.
|
|
10
|
+
* Gracefully degrades (returns passed=true) if git/vitest are unavailable.
|
|
11
|
+
*/
|
|
12
|
+
export declare function verifyChatAction(cwd: string): Promise<ChatVerificationResult>;
|
|
13
|
+
//# sourceMappingURL=chat-verifier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-verifier.d.ts","sourceRoot":"","sources":["../../src/chat/chat-verifier.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAUD;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAkBnF"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
// Lightweight post-execution verification for chat mode (git diff + vitest).
|
|
2
|
+
import { execFile } from "node:child_process";
|
|
3
|
+
function runCmd(cmd, args, cwd, timeoutMs) {
|
|
4
|
+
return new Promise((resolve) => {
|
|
5
|
+
execFile(cmd, args, { cwd, timeout: timeoutMs }, (err, stdout, stderr) => {
|
|
6
|
+
resolve(err ? null : stdout + stderr);
|
|
7
|
+
});
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Verify a chat-mode code action:
|
|
12
|
+
* 1. Check git diff HEAD — if no changes, skip.
|
|
13
|
+
* 2. Run vitest — return failure if tests break.
|
|
14
|
+
* Gracefully degrades (returns passed=true) if git/vitest are unavailable.
|
|
15
|
+
*/
|
|
16
|
+
export async function verifyChatAction(cwd) {
|
|
17
|
+
const diffOut = await runCmd("git", ["diff", "HEAD", "--stat"], cwd, 5_000);
|
|
18
|
+
if (diffOut === null)
|
|
19
|
+
return { passed: true, errors: [] };
|
|
20
|
+
if (diffOut.trim() === "")
|
|
21
|
+
return { passed: true, errors: [] };
|
|
22
|
+
const testOut = await runCmd("npx", ["vitest", "run", "--reporter=dot"], cwd, 30_000);
|
|
23
|
+
if (testOut === null)
|
|
24
|
+
return { passed: true, errors: [] };
|
|
25
|
+
const failed = /\d+ failed/i.test(testOut) || / fail /i.test(testOut);
|
|
26
|
+
if (failed) {
|
|
27
|
+
return {
|
|
28
|
+
passed: false,
|
|
29
|
+
errors: ["Tests failed after applying changes."],
|
|
30
|
+
testOutput: testOut.split("\n").slice(-30).join("\n"),
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
return { passed: true, errors: [] };
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=chat-verifier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-verifier.js","sourceRoot":"","sources":["../../src/chat/chat-verifier.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAQ9C,SAAS,MAAM,CAAC,GAAW,EAAE,IAAc,EAAE,GAAW,EAAE,SAAiB;IACzE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YACvE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAW;IAChD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC5E,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAE/D,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,gBAAgB,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IACtF,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAE1D,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtE,IAAI,MAAM,EAAE,CAAC;QACX,OAAO;YACL,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,CAAC,sCAAsC,CAAC;YAChD,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;SACtD,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AACtC,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { StateManager } from "../state/state-manager.js";
|
|
2
|
+
import type { ILLMClient } from "../llm/llm-client.js";
|
|
3
|
+
import type { GoalNegotiator } from "../goal/goal-negotiator.js";
|
|
4
|
+
import type { ChatHistory } from "./chat-history.js";
|
|
5
|
+
export interface EscalationDeps {
|
|
6
|
+
stateManager: StateManager;
|
|
7
|
+
llmClient: ILLMClient;
|
|
8
|
+
goalNegotiator: GoalNegotiator;
|
|
9
|
+
}
|
|
10
|
+
export interface EscalationResult {
|
|
11
|
+
goalId: string;
|
|
12
|
+
title: string;
|
|
13
|
+
description: string;
|
|
14
|
+
}
|
|
15
|
+
export declare class EscalationHandler {
|
|
16
|
+
private readonly deps;
|
|
17
|
+
constructor(deps: EscalationDeps);
|
|
18
|
+
/**
|
|
19
|
+
* Convert conversation history to a tracked PulSeed Goal.
|
|
20
|
+
*
|
|
21
|
+
* Steps:
|
|
22
|
+
* 1. Build LLM messages from conversation history
|
|
23
|
+
* 2. Call LLM to extract goal description
|
|
24
|
+
* 3. GoalNegotiator.negotiate(description) — feasibility + threshold refinement
|
|
25
|
+
* 4. Goal is saved inside negotiate() — no separate saveGoal call needed
|
|
26
|
+
* 5. Return EscalationResult
|
|
27
|
+
*/
|
|
28
|
+
escalateToGoal(history: ChatHistory): Promise<EscalationResult>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=escalation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"escalation.d.ts","sourceRoot":"","sources":["../../src/chat/escalation.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIrD,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,YAAY,CAAC;IAC3B,SAAS,EAAE,UAAU,CAAC;IACtB,cAAc,EAAE,cAAc,CAAC;CAChC;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AASD,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,cAAc;IAEjD;;;;;;;;;OASG;IACG,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAgCtE"}
|