一套给 Claude Code 准备的轻量增强配置,让它更适合跑长任务、批量修复和多轮产出。
Claude Code 很适合在项目里读代码、改代码、跑命令,但默认交互更偏“人一直盯着”。当任务变长时,经常会遇到几个问题:
- 一轮上下文结束后,目标、约束和进度容易散掉
- 修 lint、修测试、整理材料这类任务需要反复跑,而不是问一句答一句
- 频繁命令审批会打断长任务节奏
- 完全跳过权限又太危险,误删、强推、硬重置的成本很高
这个项目的定位是提供一个折中方案:让 Claude Code 可以在可信项目里更自主地连续推进,同时保留最低限度的危险命令拦截。它不是 Claude Code 的替代品,也不是安全沙箱,而是一套面向 Windows 日常开发的长任务运行配置。
适合经常让 Claude Code 做这些事的人:
- 阅读一个大项目并生成总结
- 连续修 lint / test / 构建问题
- 分析多个本地项目并生成申请材料、技术说明或评估报告
- 做一轮又一轮的代码整理,而不是每一步都手动确认
- 希望命令尽量自动审核,但仍拦住明显高危操作
不适合这些场景:
- 不信任的仓库或刚下载的陌生代码
- 生产数据库、生产服务器、真实客户数据目录
- 你希望完全无权限边界地执行所有命令
- 你只偶尔问 Claude 一两个问题
请先自行安装 Claude Code,并确认命令可用:
claude --version如果还没有安装,请按 Claude Code 官方方式安装。安装和账号登录不属于本仓库职责。
在 Windows PowerShell 中执行:
git clone https://github.com/huohuo-huo/claude-code-enhanced.git
cd claude-code-enhanced
powershell -NoProfile -ExecutionPolicy Bypass -File .\scripts\install.ps1安装脚本会:
- 备份你已有的
~\.claude配置 - 复制
commands\和scripts\ - 合并一份自动审核取向、但带最低安全保护的
settings.json - 自动把 Hook 路径改成当前用户目录
进入你的项目目录:
cd D:\Workspace\Projects
claude在 Claude Code 里输入:
/auto 阅读 huohuospace、SilverGuide、HBUYBConsole,帮我完成 AI Agent 成果问卷,最终在当前根目录生成多个 md 文档用于申请 --iterations 4
或者:
/overnight 修复当前项目的 lint 和测试失败,能修就修,完成后生成总结 --iterations 4
/auto 是短命令,等价于 /overnight。
/auto//overnight:把长任务整理成可重复执行的PROMPT.md- 多轮循环:通过
scripts\claude-safe-loop.ps1连续启动多轮claude -p - 进度沉淀:把任务状态写入
.claude\tasks\mission.md - 日志留存:每轮输出保存到
.claude\loop-logs\ - 自动审核:默认使用
--permission-mode auto和Bash(*) - 最小护栏:通过 PreToolUse Hook 拦截常见破坏性命令
命令会在当前项目里创建或使用:
PROMPT.md
.claude\tasks\mission.md
.claude\loop-logs\
然后调用:
scripts\claude-safe-loop.ps1
循环脚本会多轮执行 claude -p。每一轮都是一个新的 Claude Code 非交互任务,它会读 PROMPT.md,继续推进任务,并把日志写到 .claude\loop-logs\。
默认策略是:尽量别打断长任务。它不会因为预算提示、turns 提示或 DONE 文本就停。它只在两种情况下停:
- 连续失败 3 次
- 安全 Hook 拦截了高风险命令
权限上分两层:
- 启动
/auto或/overnight的当前交互会话,仍受 Claude Code 当前会话权限控制 - 启动后的循环子进程,默认使用
--permission-mode auto,让低风险命令尽量自动通过
因此它追求的是“少打断、可追踪、有底线”,不是无条件执行一切命令。
为了长任务顺畅,本项目默认放开了常用工具:
Read / Grep / Glob / Edit / Write / MultiEdit / WebSearch / Bash(*)
但保留一个最小安全 Hook,拦截高风险破坏操作:
rm -rfRemove-Item -Recurse -Forcerd /s /qgit reset --hardgit clean -fdxgit push --forcedrop databasetruncate tableformatdiskpartbcdeditcipher /w
这不是沙箱,也不是完整安全系统。它只是避免长任务里最常见、最危险的误操作。不要在不信任的仓库里直接开长任务。
如果你明确要完全跳过权限检查,可以手动把循环脚本参数改成 -PermissionMode bypassPermissions。不建议把它作为默认配置。
如果不想运行安装脚本,可以手动复制:
commands\auto.md -> %USERPROFILE%\.claude\commands\auto.md
commands\overnight.md -> %USERPROFILE%\.claude\commands\overnight.md
scripts\ -> %USERPROFILE%\.claude\scripts\
然后把 templates\settings.example.json 里的 Hook 路径改成你的用户名路径,再合并到:
%USERPROFILE%\.claude\settings.json
Apache-2.0