Skip to content

Document /hooks as the real hook-status verification method - #54

Merged
jsirish merged 2 commits into
mainfrom
claude/hooks-tui-verification
Aug 26, 2026
Merged

Document /hooks as the real hook-status verification method#54
jsirish merged 2 commits into
mainfrom
claude/hooks-tui-verification

Conversation

@jsirish

Copy link
Copy Markdown
Member

Summary

Follow-up to #53, based on live testing in a real Codex session (Jason). The in-TUI /hooks command turns out to be a genuine, sanctioned status view — not something we need to infer from grepping config files.

  • Confirms a trusted throughline hook shows Source: Plugin - throughline@throughline, Trust: Trusted, and the exact resolved command path.
  • Resolves the discovery-mechanism question PR Document unsupported Codex hook-trust workaround #53 left open: the Command field shows Codex resolving each hook straight from the installed plugin's cache path with no plugin.json "hooks" key declared — confirmed convention-based discovery.
  • Left open, noted as unknown rather than assumed: whether toggling an untrusted hook in /hooks can grant trust (only tested against an already-trusted profile).

Test plan

  • /local-ci — 167/167 pass, manifest checks pass
  • /hooks behavior verified live by Jason in a real Codex session (~/Sites/skanaaluminum, screenshots)

🤖 Generated with Claude Code

https://claude.ai/code/session_013cG9PVNGundwPjNB4Yz5AS

jsirishand others added 2 commits August 25, 2026 19:15
Tested live: the in-TUI /hooks command shows a real status table (event,
installed/active counts) and, per-hook, Source/Command/Mode/Timeout/Trust -
a genuine sanctioned view, not something to infer from grepping config
files. Confirms a trusted throughline hook reads
"Source: Plugin - throughline@throughline", "Trust: Trusted", and shows the
exact resolved command path.
This also resolves the discovery-mechanism question the previous doc pass
left open: the Command field shows Codex resolving each hook straight from
the installed plugin's cache path
(~/.codex/plugins/cache/throughline/throughline/<version>/hooks/*.sh) with
no plugin.json "hooks" key declared - confirmed convention-based discovery,
not inferred.
Left open: whether toggling an untrusted hook in /hooks can grant trust
(only tested against an already-trusted profile so far) - noted as unknown
rather than assumed either way.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013cG9PVNGundwPjNB4Yz5AS
/review-pr on PR #54 found:
- A line-initial "- " broke the intro paragraph into a stray bullet list
under GFM (a bullet item CAN interrupt a paragraph, confirmed by rendering
through GitHub's own markdown API) - swallowed "What's confirmed working
today:" into the bullet as a side effect. Moved the hyphen to a comma at
the end of the prior line instead. Re-verified via gh api /markdown: now
a single clean <p>, no stray <ul>.
- "confirmed rather than inferred" overclaimed relative to the evidence -
the /hooks detail view shows *where* a hook resolved from, not *which*
matching rule Codex actually applies. Softened to "observed rather than
assumed" and restored the residual-unknown clause the previous revision
had dropped, matching this section's existing hedging style elsewhere.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013cG9PVNGundwPjNB4Yz5AS
@jsirish
jsirish merged commit 4926c72 into mainAug 26, 2026
2 checks passed
@jsirish
jsirish deleted the claude/hooks-tui-verification branch August 26, 2026 00:18
jsirish added a commit that referenced this pull request Aug 26, 2026
Corrects the README, promo site, and CHANGELOG to reflect actual current
Codex behavior, confirmed live from a genuinely reverted, out-of-the-box
config: Codex CLI shows a native "Hooks need review" dialog on first use
(choose "Trust all and continue"); Codex Desktop grants trust silently.
Both platforms get full automatic capture, same as Claude Code, gated only
by that one-time step. No code changed - this was always true of the
shipped plugin.
Replaces the "Advanced: enabling automatic capture (unsupported)" section
from #53/#54 (obsolete) and corrects v0.13.0's CHANGELOG entry, which
asserted "skills only, not automatic capture" about the currently-shipped
release - via an [Unreleased] correction and bracketed inline notes,
without rewriting released history.
/review-pr found and fixed: the CHANGELOG contradiction above, a paragraph
narrating investigation history rather than stating current behavior
(violates a writing-style rule added this session), an overclaimed "isn't
asked again" permanence statement, and a missing jq requirement note on
both the README and promo site's Codex sections.
Closes#52.
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@jsirish