Conversation
A TinyHarness that accepts a prompt, runs model rounds against a scripted adapter, projects AG-UI events onto a durable stream, and settles. No tools, no workspace, no HTTP, no UI -- those stack on top. turn.ts carries the whole loop and is the bulk of this PR. It survives without tools because tool execution enters through one injected deps.runTool seam; harness.ts supplies a bundle of host-registered tools only, and later PRs add the built-in layers. approval.ts ships whole but idle. ApprovalMode's 'auto' kind returns without touching the journal, so nothing parks yet. Its tests need a tool to gate, so they arrive with exec rather than here -- the plan assumed otherwise and was wrong about it. Two seams exist only so the stack can be reviewed in order, and both are reverted by later PRs: workspace seeding and the AGENTS.md default are dropped from onStart, and #systemPrompt returns a minimal string instead of calling buildSystemPrompt.
|
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.
A sketch of a very basic harness based on top of Tasks as the durable alarm loop. It uses AG-UI events as the basis for the message stream.
The task loop is captured in turn.ts, though I'm exploring replacing this with a state-machine based on discussion with @mattzcarey.
There is also a sketch of an approval gate based on top of #2314, to ensure it fits the pattern.