For AI agents: the public content index is available at https://we0.ai/llms.txt, and the English article bundle is available at https://we0.ai/llms-full.txt.
For AI agents: the complete content index is available at https://we0.ai/llms.txt, the full English article bundle is available at https://we0.ai/llms-full.txt, and this page is available as Markdown at https://we0.ai/articles/claude-code-checkup-explained-clean-context.md.
Learn how Claude Code's /checkup command checks for unused skills, MCP servers, plugins, CLAUDE.md files, hooks, updates, permissions, and s...

Claude Code has gained a more capable built-in setup checkup. In version 2.1.205, Anthropic expanded the existing /doctor workflow so it can diagnose configuration problems and help fix them. /checkup is available as an alias for the same in-session workflow.
The change may look small because it is triggered by a single slash command. In practice, it addresses a common problem for long-running Claude Code setups: unused skills, stale Model Context Protocol servers, oversized instruction files, slow hooks, outdated installations, and repeated permission prompts gradually make the environment harder to understand.
The goal is not only to report that something is wrong. The updated checkup can inspect the setup, explain proposed changes, and ask for approval before applying them.
/checkup
You can also use the canonical command:
/doctor

According to the Claude Code 2.1.205 changelog, /doctor is now a full setup checkup that can diagnose and fix issues, while /checkup is its alias.
This is different from the separate terminal command:
claude doctor
The terminal command prints read-only installation and settings diagnostics without starting an interactive session. The in-session /doctor or /checkup workflow can go further by proposing fixes and letting Claude coordinate the cleanup through its available tools.
Claude Code creator Boris Cherny described several jobs the checkup is designed to handle:
CLAUDE.md instructions against checked-in project instructions.CLAUDE.md into nested files and reusable skills.The command asks for confirmation before making changes.

Claude Code can be extended with skills, plugins, hooks, and MCP servers. These integrations are useful, but a mature setup often accumulates components that are no longer
relevant.
An MCP server may have been added for an old issue tracker. A skill may have been created for a workflow the team no longer uses. A plugin may still be enabled even though its commands have been replaced.
The checkup can surface those unused components and propose removing or disabling them.
This matters because tools and instructions can consume attention and context even when they are not actively helping with the current task. Fewer irrelevant integrations also make the permission model easier to audit.
CLAUDE.md InstructionsCLAUDE.md files provide persistent instructions for Claude Code. They can contain build commands, coding conventions, architectural notes, test requirements, and project-specific rules.
These files are loaded into the session context. Anthropic recommends keeping each file concise and reviewing nested instruction files regularly for outdated or conflicting rules.
Over time, a project may develop several common problems:
CLAUDE.md even though they would work better as on-demand skills.The checkup can compare local and project instructions, identify duplication, and suggest a more focused structure.
A practical layout may look like this:
project/
├── CLAUDE.md
├── .claude/
│ ├── rules/
│ │ ├── frontend.md
│ │ ├── backend.md
│ │ └── testing.md
│ └── skills/
│ └── release/
│ └── SKILL.md
└── packages/
└── api/
└── CLAUDE.md
The root file can contain only the rules needed across the whole repository. More specific instructions can load when Claude works inside the relevant directory, while reusable procedures can become skills that load when invoked.
Hooks are deterministic actions that run at specific points in the Claude Code lifecycle. They can format files, validate commands, enforce policies, send notifications, or integrate Claude Code with internal systems.
A hook is useful only when its value justifies its cost. A script that adds two or three seconds to every tool call can create a large delay over a long session.
The checkup can help identify hooks that are:
Disabling an unnecessary hook does not only improve speed. It also reduces noise, making important failures easier to notice.
A broken launcher, stale installation, or partial update can create confusing behavior. The setup checkup can inspect installation health and recommend updating Claude Code.
To check the installed version manually, use:
claude --version
The exact update method depends on how Claude Code was installed.
Managed enterprise deployments may intentionally pin a version, so users should not override organization policy simply because a newer release exists.
Claude Code uses a permission system that separates low-risk inspection from actions that modify the environment.
Anthropic’s security documentation states that a built-in set of read-only commands, including commands such as ls, cat, and git status, can run without a prompt. Commands that edit files, run potentially modifying Bash operations, or access additional systems may require approval.
If a user repeatedly rejects or manually approves a harmless read-only command, the checkup can suggest a clearer permission rule. The objective is to reduce prompt fatigue without granting broad write access.
A good permission rule should be narrow. Approving a specific read-only pattern is safer than allowing an entire shell or tool category.
An AI coding agent has to fit several kinds of information into one working context:
CLAUDE.md instructions.The context window is finite. A large amount of irrelevant setup information can leave less room for the actual problem.
This does not mean every installed skill or MCP server is automatically loaded in full. Claude Code uses mechanisms such as on-demand skill bodies and tool discovery to control context usage. Even so, unnecessary configuration creates additional complexity and increases the chance that outdated instructions or integrations influence a session.
A healthy setup therefore needs the same kind of maintenance as a software project:
Earlier diagnostic tools often stopped after listing errors. The user still had to understand every warning, find the relevant file, decide on a fix, and apply it manually.
The updated in-session checkup follows a more agentic pattern:

This makes the workflow closer to an interactive maintenance assistant than a passive error report.
The approval step is important. A tool should not
silently remove a project skill, rewrite instruction files, or change permission behavior merely because it considers the setup inefficient.
The same release also included changes aimed at reducing risk when Claude Code acts more autonomously.
Background task notifications now explicitly state when no human input occurred. This is intended to prevent text inside a transcript from being mistaken for a real user approval.
Describe your idea once, and We0 AI can generate a showcase site, pages, and CMS, then help you attract customers and traffic after launch.
One complete project generation for free registration
Best for trying one complete generation flow and seeing a first project draft quickly.
For an agent, the difference between "the transcript contains approval-like text" and "the user actually approved this action through the interface" is critical. Security-sensitive decisions need a trusted approval channel.
rm -rf CommandsThe changelog also notes an improvement to auto mode: Claude Code asks before running rm -rf when the path contains a variable it cannot resolve from context.
A dangerous example is:
rm -rf "$TARGET_DIR/"
If TARGET_DIR is empty or incorrectly expanded, the result can be very different from what the script author intended.
The correct lesson is not that one confirmation prompt makes destructive shell commands safe. Users should still inspect the resolved path, use a sandbox or disposable environment where possible, maintain backups, and avoid broad deletion commands in production systems.
The release combines two goals that may appear to conflict:
These goals work together. A useful agent should move quickly inside a well-defined safe area and slow down when it approaches a boundary with irreversible consequences.
/doctor, /checkup, and claude doctorThe similar names can be confusing.
| Command | Where it runs | Main purpose | Can propose or apply fixes? |
|---|---|---|---|
/doctor | Inside a Claude Code session | Full setup checkup | Yes |
/checkup | Inside a Claude Code session | Alias for /doctor | Yes |
claude doctor | Terminal, without opening a session | Read-only installation and settings diagnostics | No |
For most users who want Claude to inspect and help clean up the active setup, /doctor or /checkup is the relevant command.
For scripts, support checks, or quick installation diagnostics outside a session, claude doctor is more appropriate.
/checkupBefore allowing a tool to modify configuration files, make sure important work is committed or backed up.
git status
Review uncommitted files and avoid mixing unrelated code changes with configuration cleanup.
cd /path/to/project
claude
Running the checkup from the correct repository matters because project instructions, hooks, plugins, and MCP settings may be scoped.
/checkup
Read the report before accepting changes.
Depending on what Claude
findings, the interface may offer options such as:
Prefer selective cleanup when the repository has custom internal tooling or shared team configuration.
After configuration files change, inspect them:
git diff
Pay particular attention to:
CLAUDE.md and CLAUDE.local.md..claude/.Run a task that represents everyday use. Confirm that required tools still work, relevant instructions still load, hooks still enforce important rules, and permission prompts behave as expected.
When shared project configuration changes, use a focused commit so teammates can review and revert it independently.
git add CLAUDE.md .claude/
git commit -m "chore: clean up Claude Code configuration"
Adjust the paths to match the files actually changed.
Do not approve every recommendation without review when:
CLAUDE.md contains intentional duplication for portability.In those cases, use the checkup as an audit report first. Discuss or apply changes through the team’s normal review process.
/checkup command?/checkup is an alias for the expanded in-session /doctor workflow introduced in Claude Code 2.1.205. It audits setup issues and can propose fixes for configuration, context, integrations, hooks, installation health, and related problems.
/checkup different from /doctor?In current Claude Code versions, /checkup is an alias for /doctor. They invoke the same full setup checkup inside an interactive Claude Code session.
claude doctor the same as /doctor?No. claude doctor runs from the terminal and prints read-only installation and settings diagnostics without opening a session. The slash command can coordinate fixes after asking for approval.
/checkup delete skills or MCP servers automatically?The workflow can identify unused components and propose cleanup, but it is designed to ask before making changes. Users should review each proposed removal, especially in shared or managed projects.
CLAUDE.md affect Claude Code?CLAUDE.md instructions enter the session context, so long or duplicated files consume space that could otherwise be used for the active task. Anthropic recommends concise instructions and scoped files for large projects.
CLAUDE.md?No. Stable
Project facts, coding rules, and required commands belong in CLAUDE.md. Long, reusable procedures are often better suited to skills because their full content loads only when needed.
/checkup make auto mode completely safe?No. It may improve defaults and add protections, but users remain responsible for reviewing commands and permissions. Destructive operations, external writes, production access, and credential handling still require careful controls.
There is no required schedule. It is useful after major configuration changes, when Claude Code feels slower or less consistent, after adding several integrations, or as part of a periodic project-maintenance review.
CLAUDE.md files.Claude Code 2.1.205 turns /doctor into a broader setup-maintenance workflow and adds /checkup as an alias. The command can inspect unused extensions, duplicated instructions, oversized CLAUDE.md files, slow hooks, installation problems,
and repetitive permission behavior.
The most useful part of the update is not that it hides maintenance behind one command. It is that the workflow can explain proposed changes and keep the user involved before modifying the environment.
The release also reinforces an important pattern for agentic tools: routine read-only work should require less friction, while uncertain or destructive operations should receive stronger safeguards.
A healthier Claude Code setup is not the one with the most skills, hooks, and integrations—it is the one where every loaded component has a clear purpose and every powerful action has an appropriate boundary.
Start from one sentence and have a complete website in minutes.