代理门
打开你的特工的门 并保存他们的往返旅行。 编码代理在评论中为工作找借口,写一个承诺信息,没有人可以扫描,执行未格式化的代码,将一个密钥粘入文件,或者用可以移动的标签来拉出一个GitHub动作,而读取diff的审阅者倾向于接受. 代理出品门安装拒绝本地这种承诺的git钩子,对于每个贡献者,以及拒绝不良主体的GitHub工作流程,添加评论,添加秘密或再次在CI中被无固定动作,或者仅CI分钟花费钱的钩子. 它只判断承诺,而将代理人的工作方式和记录内容留给其他工具.
agent-gates install将门写入工程中, 将门写入, 因此, 贡献者和 CI 被打开而不安装代理门 .agent-gates doctor判断他们的健康状况.- 一个可选的 Claude 代码插件格式,每个编辑,向代理显示编辑所添加的注释并停止跳过闸门;没有它,闸门就站住.
安装
安装 agent-gates 命令在x64的苹果硅上或Linux上通过其中的一条通道.
与发行安装器:
curl -fsSL https://github.com/cniska/agent-gates/releases/latest/download/install.sh | sh
与本乡人:
brew install cniska/tap/agent-gates
以 npm 为单位 :
npm install -g @cniska/agent-gates
与 Bun 键 :
bun add -g @cniska/agent-gates
卷曲线安装 ~/.local/bin/agent-gates 而当目录不在您 PATH,将其添加到 ~/.zshrc 用于zsh或已存在的 ~/.bashrc 或者说 ~/.bash_profile 并请求你添加。 每个频道更新其安装方式: brew upgrade agent-gates, (中文(简体) ), npm update -g @cniska/agent-gates, (中文(简体) ), bun update -g @cniska/agent-gates,或者卷曲线再次运行.
更新
通过一个频道安装, agent-gates 要求该频道每天最多发布一次,一秒后放弃. 当一个更新的发行版本出炉时,每个命令都会在stderr上打印出一行,只留下它的stdout和退出状态:
agent-gates 0.9.1 is out (running 0.9.0): run brew upgrade agent-gates; if you cannot, tell the user.
该行命名频道自己的更新命令. 设定 AGENT_GATES_NO_UPDATE_CHECK 到任何值以关闭检查和行;或 CI 或用手放的二进制。 检查保持状态 $XDG_STATE_HOME/agent-gates/,默认情况下 ~/.local/state/agent-gates/。 。 。 .
打开工程门
在您要加闸的工程中, 在自己的线路上安装每个加闸:
agent-gates install commit-subject
agent-gates install no-comments
agent-gates install format --command "npm run lint:fix"
agent-gates install no-secrets
agent-gates install pinned-actions
agent-gates doctor
每个 install 取出一扇门, 并更新所有已经安装的门 . no-comments 为项目跟踪文件的每种语言安装闸门. format 需要项目自己的格式命令.
安装让每个寄存器都拥有钩子和闸门的工作流程,无论它的能见度如何:一个工作流程也会评判从未安装过钩子的贡献者. 一个其GitHub Actions分数被计费的项目,其中一个工作流程只重复了在推前已经判断的钩子,选择退出. 添加 --workflows off 到任何拥有单独安装钩子的工作流程的闸门,例如 agent-gates install commit-subject --workflows off。工程记录了选择,后来安装了它并删除了已经在那里的门的工作流程,以及 agent-gates install --workflows on 把他们带回来无工作流程的钩子) (中文(简体) ).
然后,每台机器安装 Claude 代码插件:
claude plugin marketplace add cniska/agent-skills
claude plugin install cniska-gates@cniska
插件只在安装的门的检出中起作用 .
盖茨
| 门 | 拒绝 |
|---|---|
commit-subject | 不属于允许类型、超过50个字符或不属于ASCII的题目,以及任何信息体;在推力和CI中,a fixup!, (中文(简体) ), squash! 或者说 amend! 承诺 |
format | 输入工程格式命令失败, 并部分预发命令更改文件, 将其它命令格式化为输入 |
no-comments-javascript | 在 JavaScript 或 TypeScript 中添加的注释, 文件 Babel 无法解析 |
no-comments-dart | 在 Dart 中添加的注释和不解析的文件 |
no-comments-sql | 在 PostgreSQL 中添加的注释, 和一个不解析的文件 |
no-comments-shell | 外壳中添加的注释, 和不解析的文件 |
no-comments-rust | 在 Rust 中添加的注释和不解析的文件 |
no-comments-python | 在 Python 中添加的注释和不解析的文件 |
no-comments-yaml | 在 YAML 中添加的注释, GitHub 工作流程包含, 和一个不解析的文件 |
no-comments-swift | 在 Swift 中添加的注释和不解析的文件 |
no-comments-lua | Lua 中新增的注释和不解析的文件 |
no-secrets | 附加的秘密:一键、令牌或私人密钥,其中一键与gitleaks的规则相匹配,或一键指定的字面价值 *_TOKEN 或者说 *_SECRET 名称 |
pinned-actions | 一个工作流程或 action.yml 谁 uses: 命名动作、可重复使用的工作流程或 docker:// 除了完全承诺的SHA或图像文摘外,其他图像; a ./ 或者说 $/ 通往寄存器自身动作通道的路径 |
每道门都拒绝承诺 commit-subject, (中文(简体) ), no-comments, (中文(简体) ), no-secrets 财务报告和审定财务报表 pinned-actions 并且,除非项目关闭工作流程,否则在CI中再次出现. format 从未以 CI 运行:它的格式,所以它运行在代码被写入的地方,项目自己的检查拒绝在那里未格式化的代码. 每个 no-comments 闸门还拒绝每个添加的 doc 注释、 压制、 问题提示、 工具设置和测试预期; 只有一行解译行和注释中的项目列表 .no-comments-keep 保留.
Claude 代码插件
可选 插件 在会话开始时告诉代理商, 测试安装的门和每个门是如何拒绝的, 格式化为每个编辑 format 闸门命令, 显示编辑后添加的注释, 并屏蔽跳过闸门的 git 命令 : git commit 或者说 git push 与 --no-verify, (中文(简体) ), git commit -n,以及 core.hooksPath 设置或未设定到任何东西,但 .githooks。该块只为安装了插件的 Claude 代码代理.
文档
- 盖茨:文件安装会写出,钩子是如何运行的,以及承诺主体和格式门的细节.
- 无评论:无评论门的法官,拒绝,项目保存的评论,以及每个评论是如何读取的.
- 没有秘密:什么是无机密门的判断,它的规则,拒绝和如何允许被审查的假阳性.
- 固定动作:什么被钉住的动作门判断,什么经过,以及拒绝.
- 图标数字 :
install财务报告和审定财务报表doctor,它们的输出, 和一个门文件的状态. - Claude 代码插件:插件做什么和如何安装.
- 发展: 设置,检查,布局和添加一个语言,用于此回波的工作.
- 释放:发布工作流程,什么是发布保障,如何检查下载,主人公的一次性设置和每个发布步骤.
相关
代理出入口在任何代理工作流程中独立工作,是可选添加到 代理技能编码员的工程技能 其他加词: