Repository navigation
docs(matrix): goose spawns every plugin hook with sh -c, on Windows too (GOOSE-NOTE) - #213
Merged
Merged
Conversation
goose's matrix notes now record the spawn mechanism from vendor source:
hook_command() runs Command::new("sh") -c <command> on every platform, the
hooks module never reads GOOSE_SHELL, and a spawn error becomes "the hook
command failed to run" (aaif-goose/goose v1.55.0 = 2bcb858,
crates/goose/src/hooks/mod.rs:1093-1098, :725-738, :45, :127-133). So on
Windows sh must be on PATH or, under the on_failure: block agentseam writes,
every tool call is denied; no per-platform hook field exists to work around
it the way codex_cli's commandWindows does.
The note also records the 2026-10-18 owner run (goose 1.55.0, Windows 11,
chock's own goose plugin): every call denied without sh on PATH; with Git for
Windows' sh on PATH, guard and gate refused and a benign call ran (org-plan
witness/results/witness-goose-2026-10-18.md at 6316fd3). Notes only: the
vendor schema's `witnessed` field is for Claude Code plugins, so nothing is
marked witnessed. No adapter or capability change; examples regenerated.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Jothi Mani Rajendran <250249270+jothimani-rajendran@users.noreply.github.com>
jothimani-rajendran
marked this pull request as ready for review
October 18, 2026 00:31
8 tasks done
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.
What this changes
goose's matrix
notesnow record how goose spawns plugin hooks, from vendor source:hook_command()runsCommand::new("sh")with-c <command>on every platform. There is no Windows branch, and the hooks module never readsGOOSE_SHELL. A spawn error becomes "the hook command failed to run" (aaif-goose/goose v1.55.0 = 2bcb858,crates/goose/src/hooks/mod.rs:1093-1098,:725-738,:45, and:127-133for the action fields; re-read 2026-10-18).So on Windows
shmust be on PATH. Without it, theon_failure: blockthat agentseam writes denies every tool call. goose has no per-platform hook field, so the codex_clicommandWindowsroute does not apply.The note also records the owner run of 2026-10-18 (goose 1.55.0, Windows 11, chock's own goose plugin):
Source: org-plan
witness/results/witness-goose-2026-10-18.mdat 6316fd3.examples/generated/goose.mdwas regenerated withexamples/generate.py.Claim check
MATRIXrow keeps itsverifiedrecord. It is untouched (vendor-docs, v1.54.0); the new facts carry their own source and date inline.Nothing is marked witnessed. The vendor schema's
witnessedfield (underloads_claude_plugins) is for a Claude Code plugin running in the agent, and this run used goose's own plugin format. agentseam has no field for a witness of a vendor's own plugin hook.Checks
pytest -qpasses: 2626 passed, 6 skippedruff check .andruff format --check .passgit commit -s)python examples/generate.py --check: examples up to date (18 files)Notes for the reviewer
Should a field for a vendor's own plugin-hook witness exist? That is a schema decision and is left out of this PR.
Generated by Claude Code