docs: Grok Build install support — verified on grok 1.0.5 - #95
Merged
Conversation
Verified live: grok plugin marketplace add SELAT-AI/selat-plugins + grok plugin install selat --trust work as-is — Grok reads the .claude-plugin/ manifests natively, the selat plugin and selat-discovery skill load (grok inspect confirms), and the marketplace may auto-import from Claude Code's config on shared machines. Found and documented a real limitation: in grok 1.0.5, plugin-bundled SessionStart hooks do not execute (verified with a minimal probe plugin across headless and TUI, auto-trusted paths, manifest-declared hooks, and config-enabled state; only global ~/.grok/hooks fire). So the hook that installs the locked runner elsewhere does not run under Grok — the section adds an explicit npm install -g @selat-ai/selat-cli runner step and states plainly that Grok gets the floating npm runner, not the reviewed pin+lock, until Grok runs plugin hooks. Grok is deliberately NOT added to the locked-runner harness list in the Gemini caveat.
Full evidence file behind install.md's Grok npm-install caveat: environment, expected-vs-actual, minimal probe-plugin repro, the control experiment (global ~/.grok/hooks fire, plugin hooks never load — hook_count excludes them), the ruled-out variable matrix (trust, folder trust, plugin location, enablement, manifest-declared hooks, headless vs TUI), key debug-log excerpts, impact on hook-provisioned runtimes, workaround, and upstream asks. Written to double as a ready-to-file xAI report.
Grok Build (1.0.5) installs via the native plugin flow but needs an explicit npm install -g @selat-ai/selat-cli runner step — plugin SessionStart hooks don't execute yet, so Grok gets the floating npm runner, not the reviewed pin + lock.
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.
Adds Grok Build as a documented install target, verified end-to-end on grok 1.0.5.
What's in here
install.md— new "Grok Build" section (between Codex and Gemini CLI). Grok reads this repo's.claude-plugin/manifests natively, so install is the native plugin flow plus one explicit runner step:SessionStarthooks do not execute, so the session-start hook that installs the reviewed, locked runner on other harnesses never fires under Grok: theselat-discoveryskill loads, butselatitself would be missing without the explicit install. This was reproduced with a minimal probe plugin (headless and TUI, auto-trusted paths, manifest-declared hooks, config-enabled state); global~/.grok/hooks/hooks DO fire, which isolates the failure to the plugin hook layer specifically.guides/grok-plugin-hook-gap.md— the full evidence file for the gap: probe setup, matrix of conditions tested, and observed behavior. It doubles as a ready-to-file upstream bug report for xAI.README.md— Grok Build added to the "Install per harness" table with the same three commands and a parenthetical noting the floating-npm-runner caveat, linking the evidence file.Deliberate omission
Grok is intentionally not added to the locked-runner harness list (Claude Code / Cursor / OpenClaw / Hermes). Until Grok executes plugin hooks, it gets the floating
npm install -grunner rather than the reviewed pin + lock (npm ci --ignore-scripts); the docs say so plainly instead of implying parity.🤖 Generated with Claude Code