This file adapts Karpathy's autoresearch pattern to shipping software in UEAgentForge. The human edits the mission and constraints here. The coding agent executes the loop.
To start a fresh overnight run, work through this sequence:
- Read
AGENTS.md,UEAGENTFORGE_V050_ADDENDUM_A.md,UEAGENTFORGE_V050_GAMEPLAN.md,PythonClient/mcp_server/knowledge_base/building_guide.md,docs/07_architecture.md,README.md,PythonClient/ueagentforge_client.py, andagent/review_inbox.md. - Create or continue a dedicated branch using the exact date in the name. Recommended pattern:
autoresearch/ueagentforge-v050-YYYY-MM-DD. - Create these local runtime artifacts if missing:
agent/results.tsvagent/run.logagent/logs/
- Initialize
agent/results.tsvwith this header if the file is new:
commit workstream verification status description- Confirm what can be validated on the current machine:
- Python is available for
py_compileand MCP/client checks - Unreal build tooling is available if compilation is expected
- Remote Control API smoke tests are only possible if the editor is running
- Prefer
agent/tools/launch_runtime_host.ps1for unattended RuntimeHost launches because it clears stale restore prompts before waiting on Remote Control
- Python is available for
- Start work. Do not wait for the human once the loop has begun.
Deliver the addendum and v0.5.0 scope in this order:
UEAGENTFORGE_V050_ADDENDUM_A.mdpriority order first,- then
UEAGENTFORGE_V050_GAMEPLAN.md.
That means the overnight path starts with granular scene commands, asset discovery, material application, lighting, compound building tools, and MCP guidance before the LLM subsystem phases.
The output must feel like a production-quality extension of the current plugin, not a sidecar prototype.
Fixed context:
UEAGENTFORGE_V050_ADDENDUM_A.mdUEAGENTFORGE_V050_GAMEPLAN.mddocs/07_architecture.mddocs/10_roadmap.mdREADME.mdPythonClient/mcp_server/knowledge_base/building_guide.md
Primary implementation frontier:
Source/UEAgentForge/Public/LLM/Source/UEAgentForge/Private/LLM/PythonClient/mcp_server/Content/AgentForge/Schemas/PythonClient/examples/- the existing bridge files named in the game plan
- Do not bypass
ExecuteCommandJson. - Do not weaken verification, rollback, or constitution behavior.
- Do not add new external dependencies beyond what the game plan requires.
- Do not persist secrets to disk.
- Do not rework unrelated subsystems just because they could be cleaner.
- Do not stop and wait for routine approval once the overnight run is active.
- You may compile the plugin and launch Unreal Editor when the current slice needs real validation.
- If a tool or command is too vague to work reliably, make it more explicit in code, docs, and MCP descriptions.
LOOP UNTIL MANUALLY STOPPED:
- Inspect git state and the remaining items in
UEAGENTFORGE_V050_GAMEPLAN.md. - Inspect the remaining items in
UEAGENTFORGE_V050_ADDENDUM_A.md. - Choose the smallest critical-path slice that creates forward progress. Start with Addendum A priority-1 commands before MCP, then continue to the main v0.5.0 phases.
- Implement the slice directly in the repo.
- Run the narrowest useful validation for the edited files. Redirect long output to
agent/run.logoragent/logs/<timestamp>-<topic>.log. - When the slice touches editor behavior, commands, screenshots, or viewport workflows, compile and launch Unreal if that is the shortest credible proof. Prefer
agent/tools/launch_runtime_host.ps1for the scratch host. - If the slice is good, commit it and append one line to
agent/results.tsv. - If the slice fails, either fix it immediately or revert to the last good commit and log the attempt as
discardorblocked. - If human judgment is required, write a short entry in
agent/review_inbox.mdand continue with other unblocked work. - Repeat.
Keep a change only if it clearly advances the shipped product:
- a planned file exists and is wired correctly,
- validation coverage improves,
- a real blocker is removed,
- or complexity drops without losing capability.
If two solutions both work, prefer the simpler one that fits the existing architecture.
Verify in this order:
- Build and syntax correctness
- Addendum A priority-1 command coverage and behavior
- New command dispatch coverage for
llm_chat,llm_structured,llm_stream,llm_set_key,llm_get_models,vision_analyze, andvision_quality_score - Python MCP server import/startup sanity
- Python client method coverage for the new commands
- No obvious regressions to existing v0.4.0 commands
- Documentation alignment with the actual code
Stop only when:
- the user interrupts,
- the repo reaches the best coherent completion point available on the current machine,
- or a hard external dependency prevents safe progress.
In every case, leave a complete handoff in agent/review_inbox.md.