@ccsuite/guard-core
v0.0.1-alpha.0
Published
门禁核心
Readme
@ccsuite/guard-core
Claude Code 远程审批桥核心引擎。
功能
- Claude Code permission hook 拦截,通过 HTTP 回调实现远程审批
- 审批状态机(pending / approved / rejected / expired / callback_completed)
- 内嵌 HTTP 服务(原生 Node.js http 模块,零外部依赖)
- 移动端适配 Web 审批页面
- 插件体系:支持微信/飞书/钉钉等通知渠道
安装
npm install @ccsuite/guard-core配置
在项目根目录创建 .ccsuite/guard-core.json:
{
"server": {
"port": 11434,
"host": "127.0.0.1"
},
"plugins": [],
"approval": {
"timeoutMs": 300000,
"whitelist": ["Read", "Grep", "Glob"],
"baseUrl": "http://your-server:11434"
}
}环境变量
| 变量 | 说明 |
|---|---|
| CC_GUARD_PORT | 覆盖服务端口 |
| CC_GUARD_HOST | 覆盖绑定地址 |
| CC_GUARD_URL | 覆盖审批 URL 前缀 |
| CC_GUARD_LOG | 日志级别:debug / info / warn / error |
使用
启动审批服务
cc-guard serve作为 Claude Code Hook
在 Claude Code 的 settings.json 中配置:
{
"hooks": {
"beforeToolUse": [
{
"command": "cc-guard intercept",
"tools": ["Bash", "Write", "Edit"]
}
]
}
}查询审批状态
cc-guard status <审批ID>插件
接口
import type { INotifierPlugin } from "@ccsuite/guard-core/plugin";微信通知插件
npm install @ccsuite/guard-notifier-wechat在 .ccsuite/guard-core.json 中配置:
{
"plugins": [
{
"name": "wechat",
"package": "@ccsuite/guard-notifier-wechat",
"enabled": true,
"config": {
"webhookUrl": "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxx"
}
}
]
}API 端点
| 方法 | 路径 | 说明 |
|---|---|---|
| GET | /health | 健康检查 |
| GET | /approval/:id | Web 审批页面 |
| POST | /api/approve/:id | 审批批准 |
| POST | /api/reject/:id | 审批拒绝 |
| GET | /api/status/:id | 查询审批状态 |
| POST | /api/requests | 创建审批请求(内部) |
| POST | /api/callback/:id | 标记回调完成(内部) |
许可证
MIT
