Summary
The ReactAgent currently has a minimal constructor interface compared to the existing plan-based Agent. When wiring ReactAgent into the runtime (issue #348), we deliberately chose to wrap the simpler interface rather than modify ReactAgent, but this leaves 5 runtime features unsupported when using --engine react.
Missing Parameters
| Parameter |
Purpose |
Priority |
dry_run |
Preview changes without applying |
High |
verbose |
Print detailed progress to stdout |
High |
on_event |
Emit workspace events for monitoring |
Medium |
debug |
Write debug log to workspace |
Medium |
output_logger |
Enable cf work follow streaming |
Medium |
event_publisher |
Enable SSE streaming for web UI |
Low |
fix_coordinator |
Global fix coordination for parallel execution |
Low |
Acceptance Criteria
Implementation Notes
- The ReAct loop architecture may not map 1:1 to all plan-based Agent features (e.g.,
fix_coordinator assumes step-based execution)
dry_run and verbose should be straightforward to add
on_event callbacks may need different event types for the ReAct loop (tool calls vs plan steps)
- Consider whether ReactAgent should return
AgentState directly instead of AgentStatus to remove the wrapper in runtime.py
Dependencies
Reference
codeframe/core/react_agent.py — ReactAgent constructor (lines 75-85)
codeframe/core/runtime.py — execute_agent() engine branch with TODO comment
Summary
The ReactAgent currently has a minimal constructor interface compared to the existing plan-based Agent. When wiring ReactAgent into the runtime (issue #348), we deliberately chose to wrap the simpler interface rather than modify ReactAgent, but this leaves 5 runtime features unsupported when using
--engine react.Missing Parameters
dry_runverboseon_eventdebugoutput_loggercf work followstreamingevent_publisherfix_coordinatorAcceptance Criteria
dry_run,verbose,on_event,debug,output_logger,event_publisher,fix_coordinatorparametersengine="react"(currently only passesworkspaceandllm_provider)Implementation Notes
fix_coordinatorassumes step-based execution)dry_runandverboseshould be straightforward to addon_eventcallbacks may need different event types for the ReAct loop (tool calls vs plan steps)AgentStatedirectly instead ofAgentStatusto remove the wrapper in runtime.pyDependencies
Reference
codeframe/core/react_agent.py— ReactAgent constructor (lines 75-85)codeframe/core/runtime.py— execute_agent() engine branch with TODO comment