[{"data":1,"prerenderedAt":87},["ShallowReactive",2],{"guides-index":3},[4,10,14,19,23,29,33,37,42,46,50,55,59,63,67,71,75,79,83],{"_path":5,"title":6,"description":7,"tag":8,"date":9},"/guides/claude-code-plugins","Claude Code plugins: how they are really built","A plugin bundles skills, agents, hooks and MCP servers into one folder. Here is the structure, the manifest, and what 295 published plugins really ship.","Workflow","2026-09-13",{"_path":11,"title":12,"description":13,"tag":8,"date":9},"/guides/claude-code-skills","Claude Code skills: what makes one actually fire","A skill is a folder with a SKILL.md in it. Twenty frontmatter fields exist, one decides whether Claude ever loads yours. Here is what matters, measured.",{"_path":15,"title":16,"description":17,"tag":18,"date":9},"/guides/claude-code-statusline","Claude Code statusline: the data your script gets","Claude Code runs your statusline script with a JSON payload on stdin. Here is every field it carries, which ones can be missing, and the one that quietly goes stale.","Config",{"_path":20,"title":21,"description":22,"tag":18,"date":9},"/guides/claude-code-wsl","Claude Code in WSL: what breaks and why","Running Claude Code inside WSL on a Windows machine splits your config, your history and your networking in two. Here is every seam, measured on a real setup.",{"_path":24,"title":25,"description":26,"tag":27,"date":28},"/guides/claude-code-hook-not-firing","Your Claude Code hook is not firing: a checklist","Hooks fail quietly. Work through these eight checks in order, from the settings file Claude Code is actually reading to the exit code your command returns, and you will find it.","Hooks","2026-09-05",{"_path":30,"title":31,"description":32,"tag":27,"date":28},"/guides/claude-code-hooks-windows","Claude Code hooks on Windows: which shell actually runs them","A hook that works on your machine and does nothing on your colleague's is usually not your script. Claude Code picks Git Bash or PowerShell depending on what is installed, and the two disagree about your command line.",{"_path":34,"title":35,"description":36,"tag":8,"date":28},"/guides/claude-code-sessions-registry","What Claude Code knows about its own sessions","Claude Code keeps a small registry of every session it starts, with the pid, the working directory and the current status. It is undocumented, it is easy to read, and it lies unless you check one thing first.",{"_path":38,"title":39,"description":40,"tag":8,"date":41},"/guides/claude-code-git-worktrees","Claude Code with git worktrees","Git worktrees are the cleanest way to run several Claude Code agents on one repo at once, each on its own branch and folder, never stepping on each other.","2026-08-15",{"_path":43,"title":44,"description":45,"tag":27,"date":41},"/guides/claude-code-hook-events","What every Claude Code hook event means","A reference for each Claude Code hook event (SessionStart, PreToolUse, PostToolUse, Notification, Stop, SubagentStop, PreCompact and more), with when it fires and what to use it for.",{"_path":47,"title":48,"description":49,"tag":27,"date":41},"/guides/claude-code-hooks","Claude Code hooks: the complete guide","What Claude Code hooks are, every lifecycle event they fire on, how to configure them in settings.json, and practical examples you can copy.",{"_path":51,"title":52,"description":53,"tag":54,"date":41},"/guides/claude-code-notifications","How to get notified when Claude Code needs you (or finishes)","Stop tabbing back to check on Claude Code. Use the Notification and Stop hooks to get a desktop alert the moment a run needs your input or completes.","Notifications",{"_path":56,"title":57,"description":58,"tag":27,"date":41},"/guides/claude-code-pretooluse-hook","Gate tool calls with the Claude Code PreToolUse hook","The PreToolUse hook runs before Claude Code executes a tool, so it can inspect, log or block the call. Here is how to match tools and use it safely.",{"_path":60,"title":61,"description":62,"tag":18,"date":41},"/guides/claude-code-settings-json","Your Claude Code settings.json, explained","Where Claude Code reads settings from, and the two keys that matter most day to day: permissions (what the agent may do on its own) and hooks (what runs on each event).",{"_path":64,"title":65,"description":66,"tag":54,"date":41},"/guides/claude-code-slack-discord-notifications","Send Claude Code alerts to Slack or Discord","Wire a Claude Code hook to a Slack or Discord webhook so a run finishing, or needing you, pings a channel. Copy-paste curl examples included.",{"_path":68,"title":69,"description":70,"tag":54,"date":41},"/guides/claude-code-sound-when-done","Play a sound when Claude Code finishes","A one-line Claude Code hook that plays a sound the moment a run finishes, on macOS, Linux and Windows, so you can look away and still know when it is done.",{"_path":72,"title":73,"description":74,"tag":27,"date":41},"/guides/claude-code-stop-hook","The Claude Code Stop hook, explained","The Stop hook fires when Claude Code finishes a turn. Here is exactly when it runs, what it receives, and copy-paste examples to log, notify or chain the next step.",{"_path":76,"title":77,"description":78,"tag":8,"date":41},"/guides/claude-code-subagents","Understanding Claude Code subagents (the Task tool)","What subagents are in Claude Code, how the Task tool spawns them to work in parallel, and how the SubagentStop hook lets you track them finishing.",{"_path":80,"title":81,"description":82,"tag":8,"date":41},"/guides/claude-code-tips","Claude Code tips to work faster","Practical Claude Code tips: widen permissions for safe actions, run agents in parallel with worktrees, wire hooks for awareness, and stop babysitting the terminal.",{"_path":84,"title":85,"description":86,"tag":8,"date":41},"/guides/multiple-claude-code-sessions","Running multiple Claude Code sessions without losing track","Run several Claude Code agents in parallel with git worktrees and clear conventions, and keep tabs on which session needs you at any moment.",1]