Repository navigation
feat(opencode): integrate native goals and clearing - #512
Merged
Merged
Conversation
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.
Route OpenCode /goal messages to its native command endpoint and map its plugin RPC updates onto Artisan’s goal strip. Goals support pause, resume, completion and clearing; the clear control works during a run and while the session is idle. Active goals keep their server alive while background work finishes, and child goals stay under their agent.
Synchronize command snapshots with their streamed changes so queued older events cannot end a resumed goal. Ordinary prompts continue to work with older OpenCode builds.
Requires an OpenCode release containing native /goal support; the fork sync is artisanstreet/opencode#2.
Validation: 30 OpenCode-related adapter tests and all 95 Forge run tests passed from a clean checkout based on origin/master. Clippy passed for both crates with warnings denied.
Need help on this PR? Tag
@codesmith-botwith what you need.Summary by cubic
Routes OpenCode
/goalmessages to its native command endpoint and maps its plugin RPC updates onto Artisan's goal strip. Goals support pause, resume, completion, and clearing; clear works during a run and while the session is idle. Active goals keep their server alive while background work finishes, and child goals stay under their agent.Synchronizes command snapshots with streamed changes so queued older events can't end a resumed goal. Ordinary prompts keep working with older OpenCode builds that lack native
/goalsupport. This requires an OpenCode release containing native/goalsupport (fork sync:artisanstreet/opencode#2).Written for commit afa26ef. Summary will update on new commits.