Offer Grok Build as a skill install target - #213
Conversation
Add "Grok (Global)" to the skill install wizard's location list beside "Codex (Global)". Grok Build keeps its home at ~/.grok, overridable by GROK_HOME, and reads user skills from ~/.grok/skills/ -- the same shape Codex has with ~/.codex and CODEX_HOME. The Codex helper is generalized into agentGlobalSkillPath(homeEnv, homeDir) and called for both agents rather than copied. Grok also reads the cross-agent ~/.agents/skills/, so the shared baseline already reaches it; this row is the agent-local copy a user can choose, exactly as the Codex row is. Nothing more is added -- no detection, harness entry or setup handler -- because Codex has none of those in fizzy-cli either. README's list of agents gains Grok. A table-driven test covers both helpers' env override, blank override and default.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
🟢 Approved
The implementation matches the stated Codex-peer scope and includes appropriate path-resolution coverage.
Pull request overview
Adds Grok Build as a global skill installation target alongside Codex.
Changes:
- Adds Grok to the interactive skill wizard and README.
- Generalizes agent-global skill path resolution.
- Tests defaults, environment overrides, and blank overrides.
[!TIP]
If you aren't ready for review, convert to a draft PR. Click "Convert to draft" or rungh pr ready --undo. Click "Ready for review" or rungh pr readyto reengage.
File summaries
| File | Description |
|---|---|
README.md |
Lists Grok as a supported agent. |
internal/commands/skill.go |
Adds and resolves the Grok global target. |
internal/commands/skill_test.go |
Covers Codex and Grok path resolution. |
Review details
- Files reviewed: 3/3 changed files
- Comments generated: 0
- Review effort level: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Origin: basecamp/hey-cli#344 by @shawnyeager — this carries that design (Shawn's) to fizzy-cli at the depth fizzy gives Codex.
What it does
fizzy skill(the interactive install wizard) gains a Grok (Global) location beside Codex (Global), resolving to$GROK_HOME/skills/fizzy/SKILL.mdwhenGROK_HOMEis set (trimmed), otherwise~/.grok/skills/fizzy/SKILL.md. README's list of agents gains Grok.The Codex path helper differed from the Grok one only in env var and home directory, so it becomes
agentGlobalSkillPath(homeEnv, homeDir)called twice;codexGlobalSkillPath()keeps its name and behavior.Why only a skill-path row
In fizzy-cli, Codex is a skill-copy destination and nothing more: no detection, no harness registration (
internal/harnessknows only Claude), nosetup codex, no doctor check. Grok is added at exactly that depth — a peer of Codex everywhere Codex appears, and nowhere Codex does not. hey-cli has a full agent framework that this repo lacks; only the facts and the "peer of Codex" bar are borrowed from #344, not the harness.Grok facts
grok.~/.grok, overridden byGROK_HOME— docs.x.ai/build/settings;xai-dirscrate in xai-org/grok-build.~/.grok/skills/and also from the cross-agent~/.agents/skills/— docs.x.ai/build/features/skills-plugins-marketplaces, "Agents.md compatibility". So the shared Agents (Shared) baseline already reaches Grok; Grok (Global) is the user-chosen agent-local copy, exactly as Codex (Global) is.Tests
TestAgentGlobalSkillPath, table-driven over both agents: default,*_HOMEoverride, and whitespace-only override falling back to the default.make check(fmt-check, vet, lint, tidy-check, race-test) andmake surface-checkgreen.SURFACE.txtis unchanged — the wizard's location list is not part of the command structure it snapshots.Summary by cubic
Adds Grok Build as a skill install target in the
fizzy skillwizard, giving users the same agent-local copy option they already have for Codex.$GROK_HOME/skills/fizzy/SKILL.mdwhen set, otherwise~/.grok/skills/fizzy/SKILL.md.agentGlobalSkillPath; Codex behavior stays the same.~/.agents/skills/baseline, so this adds the agent-local copy without changing that shared path.Written for commit 841f744. Summary will update on new commits.