Claude Code-only features — Skills, Subagents, Hooks, Plan Mode explained

Series part 6

Ever wondered what those extra menu items in Claude Code actually do — and quietly never used them?

Part 5 covered five instruction techniques. This post is about Claude Code–specific features, and how to decide which one to reach for when.

Feature list

From the official docs:

FeatureWhat it does
SkillsInject reusable how-to guides / domain knowledge
SubagentsSpawn a separate agent to run a subtask in isolation
HooksAuto-run scripts on tool invocations
Plan ModeForce Claude to plan without writing code
Auto ModeRun non-interactively
Slash Commands/clear, /compact, /rewind, etc.

Let Claude interview you — the reverse-interview trick

Surprisingly underused, and explicitly recommended by Anthropic:

When starting a complex task, ask Claude to ask you clarifying questions before implementation.

Instead of front-loading all context, ask Claude to list its questions first:

I want to implement {{goal}}.
Before we start, please list up to 5 questions you'd want me to answer first.

I use this every time I design a new feature. It surfaces assumptions I never spelled out.

Offload research to Subagents

For heavy exploration, delegate to a subagent so the main session’s context stays focused.

Delegate exploratory research to subagents so the main agent’s context stays focused on execution.

“Find every instance of pattern X in the codebase” is the perfect Subagent task — you only want the summary back in your main session.

The Writer / Reviewer pattern

Officially recommended collaboration mode:

Have one Claude session write code, then start a fresh Claude session to review it.

Separate the session that writes from the session that reviews.

RoleSession
WriterDedicated to generation; done when tests pass
ReviewerA fresh /cleared session; reviews the code from the outside

An outsider’s eye catches things the Writer couldn’t.

Non-interactive automation

With the --print flag, Claude Code runs without interaction — ideal for CI.

Use --print flag for non-interactive automation.

I’m designing a CI flow where “Claude auto-reviews every PR and posts comments” based on this. If it ships, human review load drops another tier.

Anti-patterns the docs explicitly warn against

❌ Anti-patternWhy
Working for hours in the same sessionContext pollution → /clear
Vague “make it nice” asksViolates the Golden Rule
Marking tasks done without verificationHallucination breeding ground
Skipping Plan ModeRight solution to the wrong problem
Giant CLAUDE.mdIronically, more context pressure

The giant CLAUDE.md pitfall is easy to fall into. The official guidance: keep it around 150 lines, and push details to Skills.

How I combine features on HomePage

ToolHow I use it
CLAUDE.md (rules only)~150 lines, project-wide guardrails
.claude/skills/”Add a blog post” / “SEO check” procedures
HooksStop-hook runs tests + pre-commit checks automatically
Plan ModeMandatory for any multi-file change
/clearAlways after each task

The net effect: “repeating the same instructions” has disappeared from my workflow.

Cost-reduction priority (my interpretation)

Ranked by impact on Claude’s token usage:

RankLeverEffect
1Disciplined /clearKills context pollution at the source
2Plan ModePrevents wasted rewrites
3Well-maintained CLAUDE.mdEliminates repeat instructions
4Subagents for researchKeeps the main agent focused
5Upfront verification criteriaFewer iteration cycles

Which feature for which problem

ProblemFeature
Repeating the same instructionsCLAUDE.md
Complex tasks going off the railsPlan Mode
Session feels like it’s lost its edge/clear
Huge investigation taskSubagents
Want to review what Claude wroteWriter / Reviewer
Need to run inside CIAuto Mode

If you’ve been working in a single, ever-growing session for weeks, you might try just one disciplined /clear tomorrow morning. The contrast can be surprisingly stark.

Contact

Feel free to reach out with any questions or feedback.

Get in touch