Skills, Plugins & Hooks

Skills = saved playbooks. Plugins = installable packs. Hooks = automatic scripts at key moments.

Know what AGENTS.md is for
Modules connecting to a core
Think Lego pieces you snap onto Grok.

Skills = saved playbooks

A skill is a folder with a file named SKILL.md that teaches Grok a repeatable procedure (“how we commit,” “how we ship a game slice”). When your request matches the skill’s description, Grok loads those instructions.

Why bother? So you do not retype a 20-line process every Friday.

~/.grok/skills/hello-skill/SKILL.md
---
name: hello-skill
description: Demo skill. Use when the user says hello-skill practice.
user-invocable: true
---

# Hello skill
1. Reply with a cheerful greeting
2. Ask what project folder we are in
3. Stop — do not edit files

If user-invocable: true (the usual default when you create a skill), you can also run it like /hello-skill from the slash menu.

Important on Grok Build 1.0.13

Not every skill is a slash command. Some bundled specialist skills ship with user-invocable: false. Grok can still load them when your task matches (game art pipelines, office-doc helpers, and similar), but they do not appear as /skill-name in the / menu. On recent installs that often includes bundled names like game-asset-core, game-tilesets, docx, pdf, and pptx—unless you override them with your own copy under ~/.grok/skills/.

If a skill you expected as /something is missing, check its SKILL.md frontmatter and trust in-product /skills / /help for your build. Built-in commands always win over a skill with the same name; use /user:name or /local:name when you need to force a skill scope.

Project skills can live in .grok/skills/ inside a repo so teammates share them.

Coming from Claude, Cursor, or Codex?

Official product onboarding (/tutorial) points at skills that continue a recent session from another agent tool—when those skills are installed and invocable on your machine:

  • /resume-claude — pick up a recent Claude Code session
  • /resume-codex — pick up a recent Codex session
  • /resume-cursor — pick up a recent Cursor session

These are skills (not core session builtins like /resume). If they are missing from your menu, install or enable them via /skills, or ask Grok to help migrate settings with /import-claude (Claude settings import) and project rules/MCP discovery. For a full inventory of what Grok found in a repo, run grok inspect from a normal terminal when your install supports it.

Plugins = packs of extras

A plugin is an installable bundle that may include skills, commands, hooks, agents, and MCP connections. A marketplace is a catalog of plugins (like an app store listing).

Beginners: use /plugins (alias /plugin) and /marketplace only when you trust the source. Read descriptions before enabling anything that runs code on your machine.

Hooks = automatic reactions

A hook runs a small script when something happens (session start, before a tool, after a tool, when Grok tries to stop). Examples:

  • Block obviously dangerous shell commands
  • Auto-format code after edits
  • Refuse to “finish” until tests pass

Manage with /hooks (extensions modal). Project hooks only run after you trust the folder (/hooks-trust, modal Trust, or launch with --trust). Trust is stored in the unified folder-trust list (often ~/.grok/trusted_folders.toml on your machine—same gate as repo-local MCP/LSP). The shell also has /hooks-list, /hooks-add, /hooks-remove, and /hooks-untrust—in the pager those are mostly folded into the modal. A hook can allow, deny, or ask you to confirm a tool call. Creating hooks means writing JSON/config and scripts—optional until you need automation seatbelts. Official hooks guide has full schemas.

Tiny lab

Create the hello-skill above under ~/.grok/skills/, restart Grok, and run /hello-skill or ask “run hello-skill practice.” Then open /skills and notice which installed skills appear as slash entries vs model-only.

Quick check

1. A skill is mainly…
2. Hooks are for…
3. A skill with user-invocable: false