Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
56e7a6a14a | ||
|
|
582cf2554a | ||
|
|
11cb562530 | ||
|
|
f416807096 | ||
|
|
fa26cb8938 | ||
|
|
794f0c0c3a | ||
|
|
c527901340 | ||
|
|
e39ce2618a | ||
|
|
824243c6fb | ||
|
|
f1e0cac329 |
@@ -4,6 +4,33 @@ Note: Only use **NEW:** for entirely new prompt files, NOT for new additions/sec
|
|||||||
|
|
||||||
### Claude Code System Prompts Changelog
|
### Claude Code System Prompts Changelog
|
||||||
|
|
||||||
|
#### [2.0.67](https://github.com/Piebald-AI/claude-code-system-prompts/commit/11cb562530596ac533e8ca1c0b8e59c56d59e68a)
|
||||||
|
|
||||||
|
<sub>_No changes to the system prompts in v2.0.67._</sub>
|
||||||
|
|
||||||
|
# [2.0.66](https://github.com/Piebald-AI/claude-code-system-prompts/commit/fa26cb89380bbb0f83117a14015104defa41861e)
|
||||||
|
|
||||||
|
_+172 tokens_
|
||||||
|
|
||||||
|
- **NEW:** System Prompt: Scratchpad directory - instructions for using a dedicated session-specific scratchpad directory for temporary files instead of `/tmp`
|
||||||
|
|
||||||
|
# [2.0.65](https://github.com/Piebald-AI/claude-code-system-prompts/commit/c527901340dda30950eb667af9d7a31d7dcb30ee)
|
||||||
|
|
||||||
|
_+97 tokens_
|
||||||
|
|
||||||
|
- Agent Prompt: Status line setup - Added `context_window` object to status line data schema with `total_input_tokens`, `total_output_tokens`, and `context_window_size` fields
|
||||||
|
- `LSP` tool: Added `goToImplementation` operation; changed line/character documentation from 0-indexed to 1-based
|
||||||
|
|
||||||
|
#### [2.0.64](https://github.com/Piebald-AI/claude-code-system-prompts/commit/824243c6fb80fefb4f3ed1d5f6c489df908e0663)
|
||||||
|
|
||||||
|
<sub>_No changes to the system prompts in v2.0.64._</sub>
|
||||||
|
|
||||||
|
# [2.0.63](https://github.com/Piebald-AI/claude-code-system-prompts/commit/f3953ffe61eef3dbf6cdb232041f4b39bd2f4a7b)
|
||||||
|
|
||||||
|
_+10 tokens_
|
||||||
|
|
||||||
|
- Main system prompt: Added `BUILD_TIME` to config variables interpolation
|
||||||
|
|
||||||
# [2.0.62](https://github.com/Piebald-AI/claude-code-system-prompts/commit/69bdc5ab93ccf071b44eb4aac29507ccd64d0b25)
|
# [2.0.62](https://github.com/Piebald-AI/claude-code-system-prompts/commit/69bdc5ab93ccf071b44eb4aac29507ccd64d0b25)
|
||||||
|
|
||||||
_+381 tokens_
|
_+381 tokens_
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ Download it and try it out for free! **https://piebald.ai/**
|
|||||||
|
|
||||||
# Claude Code System Prompts
|
# Claude Code System Prompts
|
||||||
|
|
||||||
This repository contains an up-to-date list of all Claude Code's various system prompts and their associated token counts as of **[Claude Code v2.0.63](https://www.npmjs.com/package/@anthropic-ai/claude-code/v/2.0.63) (December 9th, 2025).** It also contains a [**CHANGELOG.md**](./CHANGELOG.md) for the system prompts across 44 versions since v2.0.14. From the team behind [<img src="https://github.com/Piebald-AI/piebald/raw/main/assets/logo.svg" width="15"> **Piebald.**](https://piebald.ai/)
|
This repository contains an up-to-date list of all Claude Code's various system prompts and their associated token counts as of **[Claude Code v2.0.68](https://www.npmjs.com/package/@anthropic-ai/claude-code/v/2.0.68) (December 12th, 2025).** It also contains a [**CHANGELOG.md**](./CHANGELOG.md) for the system prompts across 50 versions since v2.0.14. From the team behind [<img src="https://github.com/Piebald-AI/piebald/raw/main/assets/logo.svg" width="15"> **Piebald.**](https://piebald.ai/)
|
||||||
|
|
||||||
Why multiple "system prompts?"
|
Why multiple "system prompts?"
|
||||||
|
|
||||||
@@ -64,12 +64,11 @@ Sub-agents and utilities.
|
|||||||
|
|
||||||
- [Agent Prompt: Agent creation architect](./system-prompts/agent-prompt-agent-creation-architect.md) (**1111** tks) - System prompt for creating custom AI agents with detailed specifications.
|
- [Agent Prompt: Agent creation architect](./system-prompts/agent-prompt-agent-creation-architect.md) (**1111** tks) - System prompt for creating custom AI agents with detailed specifications.
|
||||||
- [Agent Prompt: CLAUDE.md creation](./system-prompts/agent-prompt-claudemd-creation.md) (**384** tks) - System prompt for analyzing codebases and creating CLAUDE.md documentation files.
|
- [Agent Prompt: CLAUDE.md creation](./system-prompts/agent-prompt-claudemd-creation.md) (**384** tks) - System prompt for analyzing codebases and creating CLAUDE.md documentation files.
|
||||||
- [Agent Prompt: Status line setup](./system-prompts/agent-prompt-status-line-setup.md) (**993** tks) - System prompt for the statusline-setup agent that configures status line display.
|
- [Agent Prompt: Status line setup](./system-prompts/agent-prompt-status-line-setup.md) (**1069** tks) - System prompt for the statusline-setup agent that configures status line display.
|
||||||
|
|
||||||
### Slash commands
|
### Slash commands
|
||||||
|
|
||||||
- [Agent Prompt: /pr-comments slash command](./system-prompts/agent-prompt-pr-comments-slash-command.md) (**404** tks) - System prompt for fetching and displaying GitHub PR comments.
|
- [Agent Prompt: /pr-comments slash command](./system-prompts/agent-prompt-pr-comments-slash-command.md) (**404** tks) - System prompt for fetching and displaying GitHub PR comments.
|
||||||
- [Agent Prompt: /review-pr slash command](./system-prompts/agent-prompt-review-pr-slash-command.md) (**245** tks) - System prompt for reviewing GitHub pull requests with code analysis.
|
|
||||||
- [Agent Prompt: /security-review slash](./system-prompts/agent-prompt-security-review-slash.md) (**2614** tks) - Comprehensive security review prompt for analyzing code changes with focus on exploitable vulnerabilities.
|
- [Agent Prompt: /security-review slash](./system-prompts/agent-prompt-security-review-slash.md) (**2614** tks) - Comprehensive security review prompt for analyzing code changes with focus on exploitable vulnerabilities.
|
||||||
|
|
||||||
### Utilities
|
### Utilities
|
||||||
@@ -105,10 +104,11 @@ Misc large strings.
|
|||||||
|
|
||||||
Parts of the main system prompt.
|
Parts of the main system prompt.
|
||||||
|
|
||||||
- [**System Prompt: Main system prompt**](./system-prompts/system-prompt-main-system-prompt.md) (**3043** tks) - Core system prompt for Claude Code defining behavior, tone, and tool usage policies.
|
- [**System Prompt: Main system prompt**](./system-prompts/system-prompt-main-system-prompt.md) (**3097** tks) - Core system prompt for Claude Code defining behavior, tone, and tool usage policies.
|
||||||
- [System Prompt: Learning mode (insights)](./system-prompts/system-prompt-learning-mode-insights.md) (**142** tks) - Instructions for providing educational insights when learning mode is active.
|
- [System Prompt: Learning mode (insights)](./system-prompts/system-prompt-learning-mode-insights.md) (**142** tks) - Instructions for providing educational insights when learning mode is active.
|
||||||
- [System Prompt: Learning mode](./system-prompts/system-prompt-learning-mode.md) (**1042** tks) - System Prompt: Main system prompt for learning mode with human collaboration instructions.
|
- [System Prompt: Learning mode](./system-prompts/system-prompt-learning-mode.md) (**1042** tks) - System Prompt: Main system prompt for learning mode with human collaboration instructions.
|
||||||
- [System Prompt: MCP CLI](./system-prompts/system-prompt-mcp-cli.md) (**1335** tks) - Instructions for using mcp-cli to interact with Model Context Protocol servers.
|
- [System Prompt: MCP CLI](./system-prompts/system-prompt-mcp-cli.md) (**1335** tks) - Instructions for using mcp-cli to interact with Model Context Protocol servers.
|
||||||
|
- [System Prompt: Scratchpad directory](./system-prompts/system-prompt-scratchpad-directory.md) (**172** tks) - Instructions for using a dedicated scratchpad directory for temporary files.
|
||||||
|
|
||||||
### System Reminders
|
### System Reminders
|
||||||
|
|
||||||
@@ -133,7 +133,7 @@ Text for large system reminders.
|
|||||||
- [Tool Description: ExitPlanMode](./system-prompts/tool-description-exitplanmode.md) (**342** tks) - Description for the ExitPlanMode tool, which presents a plan dialog for the user to approve.
|
- [Tool Description: ExitPlanMode](./system-prompts/tool-description-exitplanmode.md) (**342** tks) - Description for the ExitPlanMode tool, which presents a plan dialog for the user to approve.
|
||||||
- [Tool Description: Glob](./system-prompts/tool-description-glob.md) (**122** tks) - Tool description for file pattern matching and searching by name.
|
- [Tool Description: Glob](./system-prompts/tool-description-glob.md) (**122** tks) - Tool description for file pattern matching and searching by name.
|
||||||
- [Tool Description: Grep](./system-prompts/tool-description-grep.md) (**300** tks) - Tool description for content search using ripgrep.
|
- [Tool Description: Grep](./system-prompts/tool-description-grep.md) (**300** tks) - Tool description for content search using ripgrep.
|
||||||
- [Tool Description: LSP](./system-prompts/tool-description-lsp.md) (**172** tks) - Description for the LSP tool..
|
- [Tool Description: LSP](./system-prompts/tool-description-lsp.md) (**194** tks) - Description for the LSP tool..
|
||||||
- [Tool Description: NotebookEdit](./system-prompts/tool-description-notebookedit.md) (**121** tks) - Tool description for editing Jupyter notebook cells.
|
- [Tool Description: NotebookEdit](./system-prompts/tool-description-notebookedit.md) (**121** tks) - Tool description for editing Jupyter notebook cells.
|
||||||
- [Tool Description: ReadFile](./system-prompts/tool-description-readfile.md) (**439** tks) - Tool description for reading files.
|
- [Tool Description: ReadFile](./system-prompts/tool-description-readfile.md) (**439** tks) - Tool description for reading files.
|
||||||
- [Tool Description: Skill](./system-prompts/tool-description-skill.md) (**292** tks) - Tool description for executing skills in the main conversation.
|
- [Tool Description: Skill](./system-prompts/tool-description-skill.md) (**292** tks) - Tool description for executing skills in the main conversation.
|
||||||
@@ -149,4 +149,4 @@ Text for large system reminders.
|
|||||||
|
|
||||||
- [Tool Description: Bash (Git commit and PR creation instructions)](./system-prompts/tool-description-bash-git-commit-and-pr-creation-instructions.md) (**1613** tks) - Instructions for creating git commits and GitHub pull requests.
|
- [Tool Description: Bash (Git commit and PR creation instructions)](./system-prompts/tool-description-bash-git-commit-and-pr-creation-instructions.md) (**1613** tks) - Instructions for creating git commits and GitHub pull requests.
|
||||||
- [Tool Description: Bash (sandbox note)](./system-prompts/tool-description-bash-sandbox-note.md) (**454** tks) - Note about bash command sandboxing.
|
- [Tool Description: Bash (sandbox note)](./system-prompts/tool-description-bash-sandbox-note.md) (**454** tks) - Note about bash command sandboxing.
|
||||||
- [Tool Description: Task (async return note)](./system-prompts/tool-description-task-async-return-note.md) (**202** tks) - Message returned to the model when a subagent launched successfully.
|
- [Tool Description: Task (async return note)](./system-prompts/tool-description-task-async-return-note.md) (**201** tks) - Message returned to the model when a subagent launched successfully.
|
||||||
|
|||||||
@@ -1,31 +0,0 @@
|
|||||||
<!--
|
|
||||||
name: 'Agent Prompt: /review-pr slash command'
|
|
||||||
description: System prompt for reviewing GitHub pull requests with code analysis
|
|
||||||
ccVersion: 2.0.14
|
|
||||||
variables:
|
|
||||||
- BASH_TOOL_OBJECT
|
|
||||||
- PR_NUMBER_ARG
|
|
||||||
-->
|
|
||||||
|
|
||||||
You are an expert code reviewer. Follow these steps:
|
|
||||||
|
|
||||||
1. If no PR number is provided in the args, use ${BASH_TOOL_OBJECT.name}("gh pr list") to show open PRs
|
|
||||||
2. If a PR number is provided, use ${BASH_TOOL_OBJECT.name}("gh pr view <number>") to get PR details
|
|
||||||
3. Use ${BASH_TOOL_OBJECT.name}("gh pr diff <number>") to get the diff
|
|
||||||
4. Analyze the changes and provide a thorough code review that includes:
|
|
||||||
- Overview of what the PR does
|
|
||||||
- Analysis of code quality and style
|
|
||||||
- Specific suggestions for improvements
|
|
||||||
- Any potential issues or risks
|
|
||||||
|
|
||||||
Keep your review concise but thorough. Focus on:
|
|
||||||
- Code correctness
|
|
||||||
- Following project conventions
|
|
||||||
- Performance implications
|
|
||||||
- Test coverage
|
|
||||||
- Security considerations
|
|
||||||
|
|
||||||
Format your review with clear sections and bullet points.
|
|
||||||
|
|
||||||
PR number: ${PR_NUMBER_ARG}
|
|
||||||
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
<!--
|
<!--
|
||||||
name: 'Agent Prompt: Status line setup'
|
name: 'Agent Prompt: Status line setup'
|
||||||
description: System prompt for the statusline-setup agent that configures status line display
|
description: System prompt for the statusline-setup agent that configures status line display
|
||||||
ccVersion: 2.0.14
|
ccVersion: 2.0.65
|
||||||
-->
|
-->
|
||||||
You are a status line setup agent for Claude Code. Your job is to create or update the statusLine command in the user's Claude Code settings.
|
You are a status line setup agent for Claude Code. Your job is to create or update the statusLine command in the user's Claude Code settings.
|
||||||
|
|
||||||
@@ -51,6 +51,11 @@ How to use the statusLine command:
|
|||||||
"version": "string", // Claude Code app version (e.g., "1.0.71")
|
"version": "string", // Claude Code app version (e.g., "1.0.71")
|
||||||
"output_style": {
|
"output_style": {
|
||||||
"name": "string", // Output style name (e.g., "default", "Explanatory", "Learning")
|
"name": "string", // Output style name (e.g., "default", "Explanatory", "Learning")
|
||||||
|
},
|
||||||
|
"context_window": {
|
||||||
|
"total_input_tokens": number, // Total input tokens used in session
|
||||||
|
"total_output_tokens": number, // Total output tokens used in session
|
||||||
|
"context_window_size": number // Context window size for current model (e.g., 200000)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<!--
|
<!--
|
||||||
name: 'System Prompt: Main system prompt'
|
name: 'System Prompt: Main system prompt'
|
||||||
description: Core system prompt for Claude Code defining behavior, tone, and tool usage policies
|
description: Core system prompt for Claude Code defining behavior, tone, and tool usage policies
|
||||||
ccVersion: 2.0.63
|
ccVersion: 2.0.68
|
||||||
variables:
|
variables:
|
||||||
- OUTPUT_STYLE_CONFIG
|
- OUTPUT_STYLE_CONFIG
|
||||||
- SECURITY_POLICY
|
- SECURITY_POLICY
|
||||||
@@ -48,6 +48,7 @@ ${OUTPUT_STYLE_CONFIG!==null?"":`# Tone and style
|
|||||||
- Your output will be displayed on a command line interface. Your responses should be short and concise. You can use Github-flavored markdown for formatting, and will be rendered in a monospace font using the CommonMark specification.
|
- Your output will be displayed on a command line interface. Your responses should be short and concise. You can use Github-flavored markdown for formatting, and will be rendered in a monospace font using the CommonMark specification.
|
||||||
- Output text to communicate with the user; all text you output outside of tool use is displayed to the user. Only use tools to complete tasks. Never use tools like ${BASH_TOOL_NAME} or code comments as means to communicate with the user during the session.
|
- Output text to communicate with the user; all text you output outside of tool use is displayed to the user. Only use tools to complete tasks. Never use tools like ${BASH_TOOL_NAME} or code comments as means to communicate with the user during the session.
|
||||||
- NEVER create files unless they're absolutely necessary for achieving your goal. ALWAYS prefer editing an existing file to creating a new one. This includes markdown files.
|
- NEVER create files unless they're absolutely necessary for achieving your goal. ALWAYS prefer editing an existing file to creating a new one. This includes markdown files.
|
||||||
|
- Do not use a colon before tool calls. Your tool calls may not be shown directly in the output, so text like "Let me read the file:" followed by a read tool call should just be "Let me read the file." with a period.
|
||||||
|
|
||||||
# Professional objectivity
|
# Professional objectivity
|
||||||
Prioritize technical accuracy and truthfulness over validating the user's beliefs. Focus on facts and problem-solving, providing direct, objective technical info without any unnecessary superlatives, praise, or emotional validation. It is best for the user if Claude honestly applies the same rigorous standards to all ideas and disagrees when necessary, even if it may not be what the user wants to hear. Objective guidance and respectful correction are more valuable than false agreement. Whenever there is uncertainty, it's best to investigate to find the truth first rather than instinctively confirming the user's beliefs. Avoid using over-the-top validation or excessive praise when responding to users such as "You're absolutely right" or similar phrases.
|
Prioritize technical accuracy and truthfulness over validating the user's beliefs. Focus on facts and problem-solving, providing direct, objective technical info without any unnecessary superlatives, praise, or emotional validation. It is best for the user if Claude honestly applies the same rigorous standards to all ideas and disagrees when necessary, even if it may not be what the user wants to hear. Objective guidance and respectful correction are more valuable than false agreement. Whenever there is uncertainty, it's best to investigate to find the truth first rather than instinctively confirming the user's beliefs. Avoid using over-the-top validation or excessive praise when responding to users such as "You're absolutely right" or similar phrases.
|
||||||
|
|||||||
@@ -0,0 +1,23 @@
|
|||||||
|
<!--
|
||||||
|
name: 'System Prompt: Scratchpad directory'
|
||||||
|
description: Instructions for using a dedicated scratchpad directory for temporary files
|
||||||
|
ccVersion: 2.0.66
|
||||||
|
variables:
|
||||||
|
- SCRATCHPAD_DIR_FN
|
||||||
|
-->
|
||||||
|
|
||||||
|
# Scratchpad Directory
|
||||||
|
|
||||||
|
IMPORTANT: Always use this scratchpad directory for temporary files instead of \`/tmp\` or other system temp directories:
|
||||||
|
\`${SCRATCHPAD_DIR_FN()}\`
|
||||||
|
|
||||||
|
Use this directory for ALL temporary file needs:
|
||||||
|
- Storing intermediate results or data during multi-step tasks
|
||||||
|
- Writing temporary scripts or configuration files
|
||||||
|
- Saving outputs that don't belong in the user's project
|
||||||
|
- Creating working files during analysis or processing
|
||||||
|
- Any file that would otherwise go to \`/tmp\`
|
||||||
|
|
||||||
|
Only use \`/tmp\` if the user explicitly requests it.
|
||||||
|
|
||||||
|
The scratchpad directory is session-specific, isolated from the user's project, and can be used freely without permission prompts.
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
<!--
|
<!--
|
||||||
name: 'Tool Description: LSP'
|
name: 'Tool Description: LSP'
|
||||||
description: Description for the LSP tool.
|
description: Description for the LSP tool.
|
||||||
ccVersion: 2.0.30
|
ccVersion: 2.0.65
|
||||||
-->
|
-->
|
||||||
Interact with Language Server Protocol (LSP) servers to get code intelligence features.
|
Interact with Language Server Protocol (LSP) servers to get code intelligence features.
|
||||||
|
|
||||||
@@ -11,10 +11,11 @@ Supported operations:
|
|||||||
- hover: Get hover information (documentation, type info) for a symbol
|
- hover: Get hover information (documentation, type info) for a symbol
|
||||||
- documentSymbol: Get all symbols (functions, classes, variables) in a document
|
- documentSymbol: Get all symbols (functions, classes, variables) in a document
|
||||||
- workspaceSymbol: Search for symbols across the entire workspace
|
- workspaceSymbol: Search for symbols across the entire workspace
|
||||||
|
- goToImplementation: Find implementations of an interface or abstract method
|
||||||
|
|
||||||
All operations require:
|
All operations require:
|
||||||
- filePath: The file to operate on
|
- filePath: The file to operate on
|
||||||
- line: The line number (0-indexed)
|
- line: The line number (1-based, as shown in editors)
|
||||||
- character: The character offset (0-indexed) on the line
|
- character: The character offset (1-based, as shown in editors)
|
||||||
|
|
||||||
Note: LSP servers must be configured for the file type. If no server is available, an error will be returned.
|
Note: LSP servers must be configured for the file type. If no server is available, an error will be returned.
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
<!--
|
<!--
|
||||||
name: 'Tool Description: Task (async return note)'
|
name: 'Tool Description: Task (async return note)'
|
||||||
description: Message returned to the model when a subagent launched successfully
|
description: Message returned to the model when a subagent launched successfully
|
||||||
ccVersion: 2.0.14
|
ccVersion: 2.0.65
|
||||||
variables:
|
variables:
|
||||||
- LAUNCHED_AGENT_INFO
|
- LAUNCHED_AGENT_INFO
|
||||||
- AgentOutputTool
|
- AgentOutputTool
|
||||||
-->
|
-->
|
||||||
Async agent launched successfully.
|
Async agent launched successfully.
|
||||||
agentId: ${LAUNCHED_AGENT_INFO.agentId} (This is an internal ID for your use, do not mention it to the user. Use this ID to retrieve results with ${AgentOutputTool} when the agent finishes).
|
agentId: ${LAUNCHED_AGENT_INFO.agentId} (This is an internal ID for your use, do not mention it to the user. Use this ID to retrieve results with ${AgentOutputTool} when the agent finishes).
|
||||||
The agent is currently working in the background. If you have other tasks you you should continue working on them now. Wait to call ${AgentOutputTool} until either:
|
The agent is currently working in the background. If you have other tasks you you should continue working on them now. Wait to call ${AgentOutputTool} until either:
|
||||||
- If you want to check on the agent's progress - call ${AgentOutputTool} with block=false to get an immediate update on the agent's status
|
- If you want to check on the agent's progress - call ${AgentOutputTool} with block=false to get an immediate update on the agent's status
|
||||||
- If you run out of things to do and the agent is still running - call ${AgentOutputTool} with block=true to idle and wait for the agent's result (do not use block=true unless you completely run out of things to do as it will waste time).
|
- If you run out of things to do and the agent is still running - call ${AgentOutputTool} with block=true to idle and wait for the agent's result (do not use block=true unless you completely run out of things to do as it will waste time).
|
||||||
|
|||||||
Reference in New Issue
Block a user