jinen-project/wedge-case-0
GitHub: jinen-project/wedge-case-0
一个极简的概念演示项目,展示了 AI agent 操作被暂停后如何以人类可读的方式说明原因和恢复条件,填补了 agent 安全机制中「恢复」这一缺失的环节。
Stars: 0 | Forks: 0
# wedge-case-0 — 解释为何某事被暂停,以及如何恢复
一个包含四个文件的 MIT 演示。**30 秒即可运行,无需注册,无需依赖项。**
一个脚本尝试发送一条包含嵌入凭证的外部消息。
边界检查暂停了该操作,并**用通俗易懂的英文进行了解释**:
谁做出的决定,为什么暂停,以及需要更改什么才能恢复。
修改一行代码,加上 `--continue` 运行,即可看到操作被恢复。
就是这么简单。约 50 行代码,仅输出终端结果。
无需 agent 框架,无需 policy DSL,无需 SDK。场景为硬编码。
这是一个**关于可恢复事件可能样貌的草图**,此时边界条件能够用人类语言阅读。
凭证检查是一个刻意简化的占位符。它并不旨在作为生产环境的防御手段;它仅仅是用来替代任何可能处于该位置的 policy 引擎或验证机制。
## 30 秒内查看效果
```
node demo.mjs # → ⛔ HELD · reason · resume condition
node demo.mjs --continue # → ✅ RESUMED · after one line changed
```
可选:使用 `--prevention` 展示“可能发生”的设定,使用 `--play` 控制输出节奏。
```
⛔ HELD
Reason : credential detected
Resume condition : remove the credential · human approval required
Without this check : the credential would have been emailed to the customer.
```
## 为什么是草图而不是框架
大多数 agent 安全机制都有针对 **blocked(已拦截)** 和 **logged(已记录)** 的术语。
很少有针对 **resumed(已恢复)** 的术语。这个草图试图让这缺失的一半变得可读:
- **谁做出的决定?** — 人类(示例展示了角色;没有接入 agent 或 LLM)。
- **为什么暂停?** — 明确的原因 + 产生该决定的证据。
- **为什么恢复?** — *改变了什么*(例如凭证被移除,哈希值 `A → B`)— 以及谁批准了它。
这是一个草图,而不是一个产品。没有 SDK,没有 policy 引擎,没有 runtime。
## 运行它
无需注册,无需联网,无需依赖项。克隆仓库并运行:
```
node demo.mjs
```
## 运行过这个演示?
提交一个 issue 并留下一句话。
*接下来发生了什么?*
*MIT 许可的草图。四个文件。无依赖项。*
标签:GNU通用公共许可证, MITM代理, Node.js, 人工智能安全, 代码演示, 合规性, 大语言模型代理, 策略执行引擎, 自定义脚本