<feed xmlns='http://www.w3.org/2005/Atom'>
<title>claudomator.git/internal/executor/preamble.go, branch fix/dockersandbox-gitpush-host-security</title>
<subtitle>claudomator — task automation server
</subtitle>
<id>https://git.terst.org/claudomator.git/atom?h=fix%2Fdockersandbox-gitpush-host-security</id>
<link rel='self' href='https://git.terst.org/claudomator.git/atom?h=fix%2Fdockersandbox-gitpush-host-security'/>
<link rel='alternate' type='text/html' href='https://git.terst.org/claudomator.git/'/>
<updated>2026-05-24T17:38:53+00:00</updated>
<entry>
<title>feat(executor): MCP-oriented planning preamble, applied by ContainerRunner (Phase 2)</title>
<updated>2026-05-24T17:38:53+00:00</updated>
<author>
<name>Claude</name>
<email>noreply@anthropic.com</email>
</author>
<published>2026-05-24T17:38:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/claudomator.git/commit/?id=473d80224880dd718cb2612fd49b987cd6097b2c'/>
<id>urn:sha1:473d80224880dd718cb2612fd49b987cd6097b2c</id>
<content type='text'>
Rewrites the planning preamble to point the agent at the four MCP tools
(ask_user/report_summary/spawn_subtask/record_progress) instead of the
CLAUDOMATOR_QUESTION_FILE / CLAUDOMATOR_SUMMARY_FILE conventions: ask_user ends
the turn, report_summary replaces the summary file, spawn_subtask replaces the
POST-to-/api/tasks planning step. Git discipline is retained.

ContainerRunner previously applied no preamble at all; it now prepends this
preamble (via buildAgentInstructions) when the MCP back-channel is active and
skip_planning is false, so the in-container agent is actually guided to use the
tools. Gemini agents (no MCP) are unaffected.

https://claude.ai/code/session_01SESwn7kQ7oP62trWw6pc39
</content>
</entry>
<entry>
<title>fix: hide deployment badge when not deployed and trim notification button label</title>
<updated>2026-03-16T21:30:36+00:00</updated>
<author>
<name>Peter Stone</name>
<email>thepeterstone@gmail.com</email>
</author>
<published>2026-03-16T21:30:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/claudomator.git/commit/?id=1b6b27357c817359574605b854f6468917da314d'/>
<id>urn:sha1:1b6b27357c817359574605b854f6468917da314d</id>
<content type='text'>
- Deployment badge now returns null (hidden) when includes_fix is false instead of showing "Not deployed" noise
- Badge also suppressed when fix_commits is empty (no tracked commits to check)
- Notification button label trimmed to just the bell emoji
- Preamble: warn agents not to use absolute paths in git commands (sandbox bypass)

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat: fix task failures via sandbox improvements and display commits in Web UI</title>
<updated>2026-03-15T03:39:49+00:00</updated>
<author>
<name>Peter Stone</name>
<email>thepeterstone@gmail.com</email>
</author>
<published>2026-03-15T03:39:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/claudomator.git/commit/?id=6ff67a57d72317360cacd4b41560395ded117d20'/>
<id>urn:sha1:6ff67a57d72317360cacd4b41560395ded117d20</id>
<content type='text'>
- Fix ephemeral sandbox deletion issue by passing $CLAUDOMATOR_PROJECT_DIR to agents and using it for subtask project_dir.
- Implement sandbox autocommit in teardown to prevent task failures from uncommitted work.
- Track git commits created during executions and persist them in the DB.
- Display git commits and changestats badges in the Web UI execution history.
- Add badge counts to Web UI tabs for Interrupted, Ready, and Running states.
- Improve scripts/next-task to handle QUEUED tasks and configurable DB path.
</content>
</entry>
<entry>
<title>fix: cancel blocked tasks + auto-complete completion reports</title>
<updated>2026-03-14T00:33:46+00:00</updated>
<author>
<name>Peter Stone</name>
<email>thepeterstone@gmail.com</email>
</author>
<published>2026-03-14T00:33:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/claudomator.git/commit/?id=6ac15be438e3692cbc2ae2f36ab2d69468fc6372'/>
<id>urn:sha1:6ac15be438e3692cbc2ae2f36ab2d69468fc6372</id>
<content type='text'>
Two fixes for BLOCKED task issues:

1. Allow BLOCKED → CANCELLED state transition so users can cancel tasks
   stuck waiting for input. Adds Cancel button to BLOCKED task cards in
   the UI alongside the question/answer controls.

2. Detect when agents write completion reports to $CLAUDOMATOR_QUESTION_FILE
   instead of real questions. If the question JSON has no options and no "?"
   in the text, treat it as a summary (stored on the execution) and fall
   through to normal completion + sandbox teardown rather than blocking.
   Also tightened the preamble to make the distinction explicit.

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>merge: resolve conflicts with local/master (stats tab + summary styles)</title>
<updated>2026-03-13T03:17:04+00:00</updated>
<author>
<name>Peter Stone</name>
<email>thepeterstone@gmail.com</email>
</author>
<published>2026-03-13T03:17:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/claudomator.git/commit/?id=fe414fac958330c2302d9175d66e1b338e5b1864'/>
<id>urn:sha1:fe414fac958330c2302d9175d66e1b338e5b1864</id>
<content type='text'>
Keep file-based summary approach (CLAUDOMATOR_SUMMARY_FILE) from HEAD.
Combine Q&amp;A History and Stats tab CSS from both branches.

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat: resume support, summary extraction, and task state improvements</title>
<updated>2026-03-13T03:14:40+00:00</updated>
<author>
<name>Peter Stone</name>
<email>thepeterstone@gmail.com</email>
</author>
<published>2026-03-13T03:14:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/claudomator.git/commit/?id=5303a68d67e435da863353cdce09fa2e3a8c2ccd'/>
<id>urn:sha1:5303a68d67e435da863353cdce09fa2e3a8c2ccd</id>
<content type='text'>
- Extend Resume to CANCELLED, FAILED, and BUDGET_EXCEEDED tasks
- Add summary extraction from agent stdout stream-json output
- Fix storage: persist stdout/stderr/artifact_dir paths in UpdateExecution
- Clear question_json on ResetTaskForRetry
- Resume BLOCKED tasks in preserved sandbox so Claude finds its session
- Add planning preamble: CLAUDOMATOR_SUMMARY_FILE env var + summary step
- Update ADR-002 with new state transitions
- UI style improvements

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat: require agents to write a final summary before exiting</title>
<updated>2026-03-11T11:01:21+00:00</updated>
<author>
<name>Claudomator Agent</name>
<email>agent@claudomator</email>
</author>
<published>2026-03-11T11:01:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/claudomator.git/commit/?id=ed94896372686ce3a032e8f3d76144eb83e2d8cc'/>
<id>urn:sha1:ed94896372686ce3a032e8f3d76144eb83e2d8cc</id>
<content type='text'>
Add a mandatory '## Final Summary' section to planningPreamble
instructing agents to output a 2-5 sentence summary paragraph
(headed by '## Summary') as their last output before exiting.
Adds three tests to verify the section and its required content
are present in the preamble.

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>executor: add git discipline section to agent preamble</title>
<updated>2026-03-08T22:11:05+00:00</updated>
<author>
<name>Peter Stone</name>
<email>thepeterstone@gmail.com</email>
</author>
<published>2026-03-08T22:11:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/claudomator.git/commit/?id=dfa232540afdd4caaaaa5a835f205c34802c4e04'/>
<id>urn:sha1:dfa232540afdd4caaaaa5a835f205c34802c4e04</id>
<content type='text'>
Agents running in a sandbox must commit all changes before exiting.
The teardown rejects any dirty working tree. Add an explicit section
to the planning preamble making this requirement clear.

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>refactor(executor): update runners and tests for generic agents</title>
<updated>2026-03-08T06:33:02+00:00</updated>
<author>
<name>Peter Stone</name>
<email>thepeterstone@gmail.com</email>
</author>
<published>2026-03-08T03:34:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/claudomator.git/commit/?id=f887a6387946c8fc54f83a1f11a86d6c9d68dc50'/>
<id>urn:sha1:f887a6387946c8fc54f83a1f11a86d6c9d68dc50</id>
<content type='text'>
</content>
</entry>
<entry>
<title>agent: lower breakdown threshold to 3min; use claudomator create CLI for subtasks</title>
<updated>2026-03-07T08:30:13+00:00</updated>
<author>
<name>Peter Stone</name>
<email>thepeterstone@gmail.com</email>
</author>
<published>2026-03-07T08:30:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/claudomator.git/commit/?id=cad057fd64fbf44f953bc2784f70ce344f3389cf'/>
<id>urn:sha1:cad057fd64fbf44f953bc2784f70ce344f3389cf</id>
<content type='text'>
Replaces the API POST instructions with the claudomator create command,
which is simpler and consistent with how operators queue tasks.
--start is explicitly omitted so subtasks are queued but not auto-started.

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
</feed>
