affaan-m/ECC

gateguard

强制事实的门控,阻止编辑/写入/Bash(包括MultiEdit),并要求在允许操作之前进行具体调查(导入器、数据模式、用户指令)。与无门控代理相比,可测量地将输出质量提高2.25分。

72Collecting
See how to use itView GitHub source
npx skills add https://github.com/affaan-m/ECC --skill "docs/zh-CN/skills/gateguard"
Automated source guide

Source checked Jul 28, 2026·Refresh due Oct 26, 2026

Reorganized from the pinned upstream SKILL.md

Turn gateguard's source instructions into a guide you can follow

According to the pinned SKILL.md from affaan-m/ECC: 一个 PreToolUse 钩子,强制 Claude 在编辑前进行调查。不同于自我评估("你确定吗?"),它要求具体的事实。调查行为本身创造了自我评估永远无法带来的认知。

npx skills add https://github.com/affaan-m/ECC --skill "docs/zh-CN/skills/gateguard"
Check the pinned source

Best fit

  • 强制事实的门控,阻止编辑/写入/Bash(包括MultiEdit),并要求在允许操作之前进行具体调查(导入器、数据模式、用户指令)。与无门控代理相比,可测量地将输出质量提高2.25分。

Bring this context

  • A concrete task that matches the documented purpose of gateguard.
  • The files, examples, or context the task depends on.
  • Your constraints, target environment, and definition of done.

Expected outputs

  • A result that follows the pinned gateguard instructions.
  • A concise record of assumptions, inputs used, and unresolved questions.
  • A final check against the source workflow and relevant permission signals.

Key source sections

Read gateguard through these 5 source sections

Sections are extracted automatically from the pinned SKILL.md and link back to the source.

01

何时激活

处理任何文件编辑会影响多个模块的代码库时 项目包含具有特定模式或日期格式的数据文件时 团队要求 AI 生成的代码必须匹配现有模式时 任何 Claude 倾向于猜测而非调查的工作流程中

SKILL.md · 何时激活
处理任何文件编辑会影响多个模块的代码库时项目包含具有特定模式或日期格式的数据文件时团队要求 AI 生成的代码必须匹配现有模式时
02

核心概念

LLM 的自我评估不起作用。问"你是否违反了任何策略?"答案永远是"没有"。这已通过实验验证。

SKILL.md · 核心概念
LLM 的自我评估不起作用。问"你是否违反了任何策略?"答案永远是"没有"。这已通过实验验证。但问"列出所有导入此模块的文件"会迫使 LLM 运行 Grep 和 Read。调查本身创造了改变输出的上下文。没有竞争对手能同时做到这三步。大多数止步于拒绝。
03

证据

两个独立的 A/B 测试,相同的代理,相同的任务:

SKILL.md · 证据
两个独立的 A/B 测试,相同的代理,相同的任务:两个代理生成的代码都能运行并通过测试。区别在于设计深度。
04

门控类型

多编辑的处理方式相同——批次中的每个文件都单独进行门控。

SKILL.md · 门控类型
多编辑的处理方式相同——批次中的每个文件都单独进行门控。触发条件:rm -rf、git reset --hard、git push --force、drop table 等。

SkillSignal prompt templates

Provide the task, context, and acceptance criteria

These prompts were written by SkillSignal from the source structure; they are not upstream text.

Task-start prompt

Confirm source fit, inputs, and outputs before acting.

Use gateguard to help me with: [specific task]. Context: [files, data, or background]. Constraints: [environment, scope, and prohibited actions]. Before acting, check the pinned SKILL.md and explain which sections apply, what inputs are still missing, and what you will deliver.

Source-guided execution

Make the Agent explicitly follow the key extracted sections.

Apply the pinned gateguard source to [task]. Pay particular attention to these source sections: “何时激活”, “核心概念”, “证据”, “门控类型”, “编辑/多编辑门控(每个文件的首次编辑)”. Preserve the important decision at each step. Mark facts not covered by the source as “needs confirmation” instead of inventing them. Then verify the result against my acceptance criteria: [criteria].

Result-review prompt

Check omissions, permissions, and source drift before delivery.

Review the current gateguard result: (1) does it satisfy the original task; (2) were any applicable steps or limits in the pinned SKILL.md missed; (3) did it perform any unauthorized file, command, network, or data action; and (4) which conclusions remain unverified? List issues first, then fix only what the source or user authorization supports.

Output checklist

Verify each item before delivery

The task matches the purpose documented in the SKILL.md.

The source section “何时激活” has been checked.

The source section “核心概念” has been checked.

The source section “证据” has been checked.

The source section “门控类型” has been checked.

Inputs, constraints, and acceptance criteria are explicit.

Unverified facts, compatibility, and outcome claims are clearly marked.

Any file, command, network, or data action has been reviewed.

Choose a different workflow

When another Skill is the better fit

FAQ

What does gateguard do?

一个 PreToolUse 钩子,强制 Claude 在编辑前进行调查。不同于自我评估("你确定吗?"),它要求具体的事实。调查行为本身创造了自我评估永远无法带来的认知。

How do I start using gateguard?

The catalog detected this source-specific install command: npx skills add https://github.com/affaan-m/ECC --skill "docs/zh-CN/skills/gateguard". Inspect the command and pinned source before running it.

Which Agent platforms does it declare?

No dedicated Agent platform is declared in the pinned source record.

Repository stars
234,327
Repository forks
35,711
Quality
72/100
Source repository last pushed

Quality breakdown

Based on traceable docs and repository signals; stars are not treated as quality.

72/100
Documentation21/30
Specificity14/25
Maintenance20/20
Trust signals17/25

Compare before choosing

Related Agent Skills and source variants

These links are selected from shared tasks, functions, stacks, platforms, and same-name variants. Compare the source owner, documentation, permissions, and maintenance signals.

gateguard by affaan-m

Fact-forcing gate that blocks Edit/Write/Bash (including MultiEdit) and demands concrete investigation (importers, data schemas, user instruction) before allowing the action. Measurably improves output quality by +2.25 points vs ungated agents.

gateguard by affaan-m

API、エージェント、およびLLMエンドポイントのアクセス制御と認可パターン。

ab-testing by coreyhaines31

When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program

churn-prevention by coreyhaines31

When the user wants to reduce churn, build cancellation flows, set up save offers, recover failed payments, or implement retention strategies. Also use when the user mentions 'churn,' 'cancel flow,' 'offboarding,' 'save offer,' 'dunning,' 'failed payment recovery,' 'win-back,' 'retention,' 'exit survey,' 'pause subscription,' 'involuntary churn,' 'people keep canceling,' 'churn rate is too high,' 'how do I keep users,' or 'customers are leaving.' Use this whenever someone is losing subscribers o

design-intelligence by event4u-app

Grounded design brief from the adopted corpus — style, WCAG-checked color tokens, typography, layout pattern, anti-patterns. Use on ui-design-brief or any which-style/palette/font/chart decision.

View original Skill.mdThis page is parsed directly from the repository SKILL.md without editorial rewriting. Collected: Jul 28, 2026 · about 1 min

GateGuard — 事实驱动的前置操作门控

一个 PreToolUse 钩子,强制 Claude 在编辑前进行调查。不同于自我评估("你确定吗?"),它要求具体的事实。调查行为本身创造了自我评估永远无法带来的认知。

何时激活

  • 处理任何文件编辑会影响多个模块的代码库时
  • 项目包含具有特定模式或日期格式的数据文件时
  • 团队要求 AI 生成的代码必须匹配现有模式时
  • 任何 Claude 倾向于猜测而非调查的工作流程中

核心概念

LLM 的自我评估不起作用。问"你是否违反了任何策略?"答案永远是"没有"。这已通过实验验证。

但问"列出所有导入此模块的文件"会迫使 LLM 运行 Grep 和 Read。调查本身创造了改变输出的上下文。

三阶段门控:

1. DENY  — 阻止首次编辑/写入/Bash 尝试
2. FORCE — 明确告知模型需要收集哪些事实
3. ALLOW — 在事实呈现后允许重试

没有竞争对手能同时做到这三步。大多数止步于拒绝。

证据

两个独立的 A/B 测试,相同的代理,相同的任务:

任务有门控无门控差距
分析模块8.0/106.5/10+1.5
Webhook 验证器10.0/107.0/10+3.0
平均9.06.75+2.25

两个代理生成的代码都能运行并通过测试。区别在于设计深度。

门控类型

编辑/多编辑门控(每个文件的首次编辑)

多编辑的处理方式相同——批次中的每个文件都单独进行门控。

在编辑 {file_path} 之前,请先呈现以下事实:

1. 列出所有导入/引用此文件的文件(在代码树中搜索——Glob/Grep,或通过 Bash 用 find/grep)
2. 列出受此更改影响的公共函数/类
3. 如果此文件读取/写入数据文件,请显示字段名称、结构以及日期格式(使用脱敏或合成值,而非原始生产数据)
4. 逐字引用用户当前的指令

写入门控(首次创建新文件)

在创建 {file_path} 之前,请先说明以下事实:

1. 命名将调用此新文件的文件及行号
2. 确认没有现有文件具有相同功能(在代码树中搜索——Glob/Grep,或通过 Bash 用 find/grep)
3. 如果此文件读取/写入数据文件,请展示字段名称、结构及日期格式(使用脱敏或合成值,而非原始生产数据)
4. 逐字引用用户当前的指令

破坏性 Bash 门控(每个破坏性命令)

触发条件:rm -rfgit reset --hardgit push --forcedrop table 等。

1. 列出此命令将修改或删除的所有文件/数据
2. 编写一行回滚步骤
3. 逐字引用用户当前的指令

常规 Bash 门控(每个会话一次)

1. 当前用户请求的一句话概括
2. 此特定命令验证或生成的内容

快速开始

选项 A:使用 ECC 钩子(零安装)

scripts/hooks/gateguard-fact-force.js 处的钩子已包含在此插件中。通过 hooks.json 启用它。

如果 GateGuard 阻止了设置或修复工作,请使用 ECC_GATEGUARD=off 启动会话。如需钩子级别的控制,请继续使用 ECC_DISABLED_HOOKS 配合 GateGuard 钩子 ID。

选项 B:带配置的完整包

pip install gateguard-ai
gateguard init

这会添加 .gateguard.yml 用于按项目配置(自定义消息、忽略路径、门控开关)。

反模式

  • 不要使用自我评估替代。 "你确定吗?"总是得到"确定。"这已通过实验验证。
  • 不要跳过数据模式检查。 两个 A/B 测试代理都假设了 ISO-8601 日期,而实际数据使用的是 %Y/%m/%d %H:%M。检查数据结构(使用脱敏值)可以防止这类错误。
  • 不要对每个 Bash 命令都进行门控。 常规 bash 门控每个会话一次。破坏性 bash 门控每次执行。这种平衡避免了速度下降,同时捕获了真正的风险。

最佳实践

  • 让门控自然触发。不要试图预先回答门控问题——调查本身才是提高质量的关键。
  • 为你的领域自定义门控消息。如果你的项目有特定约定,请将其添加到门控提示中。
  • 使用 .gateguard.yml 忽略 .venv/node_modules/.git/ 等路径。

相关技能

  • safety-guard — 运行时安全检查(互补,不重叠)
  • code-reviewer — 编辑后审查(GateGuard 是编辑前调查)
Source repo
affaan-m/ECC
Skill path
docs/zh-CN/skills/gateguard/SKILL.md
Commit SHA
4e973d3eaf92
Repository license
MIT
Data collected