Closed
Conversation
sync fork w/upstream
Introduces the AgentRuntime foundation for supporting multiple runtime
backends (Pi Agent, Claude Agent SDK):
Core abstraction:
- agent-runtime.ts: AgentRuntime interface and AgentRuntimeRunParams type
- runtime-result-types.ts: Shared result types (AgentRunResult, AgentRunMeta)
Pi runtime wrapper:
- pi-agent-runtime.ts: Wraps runEmbeddedPiAgent to AgentRuntime interface
Runtime factory and resolution:
- main-agent-runtime-factory.ts: Runtime resolution based on config
- Supports per-agent and default runtime configuration
Unified failover:
- unified-agent-runner.ts: Runtime-outer, model-inner failover composition
- unified-runtime-adapter.ts: Cross-runtime failover with auth profile rotation
Session adapters (Pi-only):
- sessions/types.ts: Normalized session message types
- sessions/session-adapter.ts: Abstract SessionAdapter interface
- sessions/pi-session-adapter.ts: Pi-Agent SessionManager wrapper
Config types:
- AgentRuntimeKind type ("pi" | "ccsdk")
- AgentCcSdkConfig and CcSdkModelTiers for CCSDK configuration
- runtime and ccsdk fields on AgentConfig
Includes test coverage for new components.
https://claude.ai/code/session_01DC8i6Tf7a7obzpXGLb3hm9
…ce design Remove the src/agents/sessions/ directory and its session adapter abstraction. The session adapters were solving the wrong problem. Session reading is not needed because: 1. Pi-Agent: The @mariozechner/pi-coding-agent library internally manages session persistence via SessionManager.appendMessage(). Moltbot passes the sessionFile path, and the library handles writing. 2. CCSDK: When implemented, the runtime wrapper will write to Moltbot's session format directly (translating SDK events to SessionManager calls), not reading from CCSDK's internal session storage. The callbacks (onBlockReply, onToolResult, etc.) are for streaming output to messaging channels, NOT for session persistence. Updated agent-runtime.ts with documentation explaining the session persistence design for both runtimes. https://claude.ai/code/session_01DC8i6Tf7a7obzpXGLb3hm9
dgarson
added a commit
that referenced
this pull request
Feb 2, 2026
chore: more touchup finishing the work
dgarson
added a commit
that referenced
this pull request
Feb 7, 2026
…#208) * feat: added work-queue workflow workers and a worker manager, integrate w/cron * fix: address 12 logic flaws in workflow engine, adapter, phases, and cron types - engine: capture phase before clobbering in catch handler (#1) - engine: remove dead `state.plan ?? plan` fallback (#2) - engine: mark workflow failed when all execution nodes fail (#6) - adapter: fix retry count off-by-one (attemptNumber vs retryCount) (#3) - adapter: clean up abort listener in sleep on timeout (#10) - discover: fix batch/entries index mismatch when spawns fail (#4) - execute: add cycle detection to topological sort (#5) - review: add autoApproved flag to distinguish fallback approvals (#7) - plan: add comment clarifying sessionKey reuse across repair attempts (#8) - decompose: remove unused model/maxPhases/maxTasksPerPhase/maxSubtasksPerTask opts (#9) - types: add autoApproved to ReviewIteration (#7) - cron/state: use discriminated union for CronEvent (CronJobEvent | CronHealthEvent) (#12) - tests: add WorkflowWorkerAdapter test suite (8 tests) (#11) https://claude.ai/code/session_01L8kquwpmUh5zmU9S4MHgPu --------- Co-authored-by: Claude <[email protected]>
dgarson
added a commit
that referenced
this pull request
Feb 7, 2026
…cron types (openclaw#217) - engine: capture phase before clobbering in catch handler (#1) - engine: remove dead `state.plan ?? plan` fallback (#2) - engine: mark workflow failed when all execution nodes fail (#6) - adapter: fix retry count off-by-one (attemptNumber vs retryCount) (#3) - adapter: clean up abort listener in sleep on timeout (#10) - discover: fix batch/entries index mismatch when spawns fail (#4) - execute: add cycle detection to topological sort (#5) - review: add autoApproved flag to distinguish fallback approvals (#7) - plan: add comment clarifying sessionKey reuse across repair attempts (#8) - decompose: remove unused model/maxPhases/maxTasksPerPhase/maxSubtasksPerTask opts (#9) - types: add autoApproved to ReviewIteration (#7) - cron/state: use discriminated union for CronEvent (CronJobEvent | CronHealthEvent) (#12) - tests: add WorkflowWorkerAdapter test suite (8 tests) (#11) https://claude.ai/code/session_01L8kquwpmUh5zmU9S4MHgPu Co-authored-by: Claude <[email protected]>
Owner
Author
|
Superseded by completed AgentRuntime/ExecutionKernel refactor (Phases 1-9 all merged). |
dgarson
added a commit
that referenced
this pull request
Feb 9, 2026
… calls (openclaw#260) The gateway's exec.approvals.set and exec.approvals.node.set RPCs expect the parameter to be named 'baseHash' but apps/web was sending 'hash'. This caused the RPC to fail with a validation error. Fixes parity report item #3.
dgarson
added a commit
that referenced
this pull request
Feb 9, 2026
… calls (openclaw#268) The gateway's exec.approvals.set and exec.approvals.node.set RPCs expect the parameter to be named 'baseHash' but apps/web was sending 'hash'. This caused the RPC to fail with a validation error. Fixes parity report item #3.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.