Claude Code 高级配置与自动化
适合进阶用户的深度定制技巧
一、自定义斜杠命令(Custom Commands)
1. 创建项目级命令
在项目中创建 .claude/commands/ 目录,每个 .md 文件就是一个命令:
mkdir -p .claude/commands示例:创建一个 /review 命令
# .claude/commands/review.md
请对当前 Git 暂存区的代码进行 Code Review:
1. 检查代码质量和可读性
2. 检查潜在的 Bug 和安全问题
3. 检查是否符合项目的代码规范
4. 给出改进建议
输出格式:
- 严重问题(必须修复)
- 建议改进(可选)
- 总体评价使用:在 Claude Code 中输入 /review 即可。
2. 创建全局命令
mkdir -p ~/.claude/commands
# ~/.claude/commands/daily.md
帮我总结今天在当前项目中的所有 Git 提交:
1. 列出所有 commit 及其内容
2. 统计修改的文件数和代码行数
3. 给出一段简短的日报文字3. 带参数的命令
命令文件中可以使用 $ARGUMENTS 占位符:
# .claude/commands/explain.md
请详细解释以下代码或概念:$ARGUMENTS
用通俗易懂的语言,假设我是一个初级开发者。
如果涉及代码,请给出示例。使用:/explain Kotlin 协程的 structured concurrency
二、Skills 技能系统
4. 创建自定义技能(Issue #9716, 67 reactions)
mkdir -p .claude/skills/android-debug# .claude/skills/android-debug/skill.md
---
name: android-debug
description: Android 调试助手,帮助分析 logcat、ANR、crash 日志
trigger: 当用户提到 logcat、ANR、crash、崩溃、调试 时自动触发
---
## Android 调试技能
当用户需要调试 Android 问题时:
1. 首先确认问题类型(crash / ANR / 性能 / UI)
2. 请求相关日志(logcat / tombstone / trace)
3. 分析日志中的关键信息
4. 给出排查方向和修复建议
### 常用命令
- `adb logcat -b crash` — 查看 crash 日志
- `adb bugreport` — 生成完整 bug 报告
- `adb shell dumpsys activity activities` — 查看 Activity 栈三、Hooks 自动化
5. 什么是 Hooks
Hooks 是在特定事件触发时自动执行的 Shell 命令。配置在 settings.json 中:
// ~/.claude/settings.json
{
"hooks": {
"PreToolUse": [
{
"matcher": "Edit",
"command": "echo '正在编辑文件...'"
}
],
"PostToolUse": [
{
"matcher": "Write",
"command": "npx prettier --write $CLAUDE_FILE_PATH"
}
]
}
}6. 实用 Hook 示例
编辑后自动格式化:
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"command": "npx prettier --write $CLAUDE_FILE_PATH 2>/dev/null || true"
}
]
}
}阻止编辑敏感文件:
{
"hooks": {
"PreToolUse": [
{
"matcher": "Edit|Write",
"command": "echo $CLAUDE_FILE_PATH | grep -qE '\\.(env|key|pem)$' && echo 'BLOCKED: 不允许编辑敏感文件' && exit 1 || exit 0"
}
]
}
}四、Token 成本控制
7. 成本优化策略一览
| 策略 | 节省效果 | 操作 |
|---|---|---|
| 精简 MCP 工具 | 减少 30-85% | 移除不用的 MCP Server |
| 定期 /compact | 减少 20-40% | 长会话中每 30 分钟压缩 |
| 新开会话 | 避免缓存失效 | 每个独立任务新开会话 |
| 精确提问 | 减少来回 | 一次说清楚需求 |
| 善用 CLAUDE.md | 减少重复说明 | 把常用上下文写入文件 |
| 模型选择 | 性价比优化 | 简单任务用 Sonnet |
8. 监控用量
/status # 查看当前会话用量
遇到频率限制时(Issue #16157, 688 reactions):
- 等待冷却后继续
- 拆分大任务到多个会话
- 考虑使用 API Key 模式(按量计费更可控)
五、多环境配置
9. XDG 目录规范(Issue #1455, 332 reactions)
Linux 用户可以自定义配置目录位置:
# 在 ~/.bashrc 或 ~/.zshrc 中添加
export CLAUDE_CONFIG_DIR="$HOME/.config/claude"10. 多账户管理(Issue #18435, 301 reactions)
目前没有内置的多账户切换,但可以通过环境变量变通:
# 创建别名
alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'
alias claude-personal='CLAUDE_CONFIG_DIR=~/.claude-personal claude'六、终端体验优化
11. 解决终端闪烁问题(Issue #3648, 837 reactions)
如果在 VS Code/Cursor 内置终端中遇到闪烁或滚动异常:
方案 1:使用独立终端 推荐的终端应用:
- Ghostty — 性能最好
- iTerm2 — macOS 经典
- Windows Terminal — Windows 推荐
- Warp — 现代化设计
方案 2:调整设置
// VS Code settings.json
{
"terminal.integrated.scrollback": 10000,
"terminal.integrated.gpuAcceleration": "on"
}12. 关闭花哨的进度提示(Issue #6814, 218 reactions)
很多用户反感 “Sparkling…”、“Blooping…” 等花哨状态词。可以在 settings 中调整输出风格。
下一篇: 04-实战场景与最佳实践