The short version
Put each Claude Code instruction in the control surface where it naturally belongs. The practical decision is not “how do I phrase this prompt?” It is: should this be always-on context, a scoped rule, a repeatable skill, an isolated subagent task, or a deterministic hook/permission?
Editorial analysis
The useful lesson is not a single prompt formula. It is a way to reduce ambiguity: state the outcome, supply only the context that changes the answer, demonstrate the pattern when format matters, and test whether the result remains reliable across several inputs.
A useful way to read this study is as a decision guide: identify the problem it solves, the conditions where it works, the tradeoffs it introduces, and the evidence you would need before relying on it.
Source context
Key concept
Put each Claude Code instruction in the control surface where it naturally belongs.
The practical decision is not “how do I phrase this prompt?” It is: should this be always-on context, a scoped rule, a repeatable skill, an isolated subagent task, or a deterministic hook/permission?
Why it matters
Claude Code supports multiple ways to shape behavior: CLAUDE.md files, rules, skills, subagents, hooks, output styles, and appending the system prompt. Each method differs by when it loads, whether it survives compaction, how much context it costs, and how much authority it carries.
That matters because teams often overload a single CLAUDE.md file with every convention, checklist, preference, and warning. This makes Claude carry irrelevant context, weakens important instructions, and turns hard controls into soft suggestions.
How it works
Think of Claude Code customization like designing a small operating system for work:
- CLAUDE.md is the always-visible map: repo layout, build commands, team conventions, and facts Claude should hold throughout a session.
- Path-scoped rules are local signs: constraints that only matter in certain folders or file types.
- Skills are playbooks: repeatable procedures such as code review, release checks, contract review, or financial close validation.
- Hooks and permissions are guardrails: deterministic automation for things that must happen or must be blocked, such as running a linter, denying risky commands, or preventing edits to protected files.
The best setup loads the smallest useful instruction at the latest possible moment.
Where it matters
Legal
Use path-scoped rules for clause libraries, contract templates, or jurisdiction-specific folders. Use a legal-review skill for a consistent redline process. Use hooks to prevent accidental modification of executed agreements.
Research and document review
Use subagents for source gathering, extraction, contradiction checks, and citation verification. Keep the main thread clean by receiving only summaries and flagged issues.
Enterprise AI governance
Use managed settings, permissions, and hooks for hard controls. A prompt saying “never do X” is weaker than a deterministic policy that blocks X.
Implementation examples
Weak setup
Putting everything in CLAUDE.md:
- Always run tests.
- Never touch payroll exports.
- Follow the security review checklist.
- Use the legal review process.
- Summarize every risk.
- Validate API input.
- Run formatting after every edit.
Why weak: too much always-on context, procedures mixed with facts, and critical controls still depend on model obedience.
Strong setup
- CLAUDE.md: repo layout, build commands, core team conventions.
- Path-scoped rules: “All API handlers under
src/api/**must validate input before processing.” - Hooks/permissions: block protected commands, run formatter after edits, deny changes to locked folders.
Why strong: lower context cost, better relevance, more repeatable workflows, and deterministic guardrails for high-risk actions.
Implementation checklist
- Keep always-on context short and owned.
- Move long procedures out of CLAUDE.md and into skills.
- Scope rules by path whenever possible.
- Use subagents for side investigations that would clutter the main conversation.
- Use hooks and permissions for must-happen or must-not-happen controls.
- Treat instruction design as workflow architecture, not prompt decoration.
Try it in practice
Pick one recurring workflow you want Claude to help with, such as month-end close review, contract review, research synthesis, code review, or policy compliance checking.
Write five instructions for that workflow. For each one, label it as one of:
- CLAUDE.md
- Path-scoped rule
- Skill
- Subagent
- Hook / permission
Then ask: “Am I loading this instruction only when it is useful, and enforcing it when it truly matters?”