Merge branch 'master' into fix/worker-timer-clamp

This commit is contained in:
Chinesezjc
2026-07-28 01:12:16 +08:00
committed by GitHub
109 changed files with 227 additions and 408 deletions

View File

@@ -1,6 +1,6 @@
# Bilingual-pair consistency record (docs/i18n/README.md): the git blob hash of each
# side as of the last confirmed-consistent state. Both languages carry equal authority;
# after editing either side, bring the other along and re-record with:
# pnpm run verify-translation-pairing --write
README.md: b9d6337d2145d279758f5494c2ad51ed5e00154f
README.zh.md: 99190c262b015bf28627debd68e67f6c64618a09
# pnpm run verify-translation-pairing --write packages/guard/repeat-tool-guard/README.md
README.md: 226dba10239031e8e79bd5698e77c213688ce579
README.zh.md: 8e22a5e67d3700024934437c5c9c1a5e969b740d

View File

@@ -2,7 +2,7 @@
English | [中文](README.zh.md)
An advisory loop-breaker, not a model-facing tool: it never appears in the tool list, never vetoes or rewrites a call, and adds exactly one behavior — it watches each agent's stream of tool calls, counts runs of consecutive calls to the same tool with identical canonicalized arguments, and at configured run lengths injects an escalating advisory reminder telling the model to stop repeating itself, re-read the last result, and either change approach or conclude. The decision (retry differently, gather more evidence, or finish) stays entirely with the model: a legitimately repeated call is delayed by nothing and blocked by nothing. Decision record: [the repeat-tool-guard Agent Note](../../../.agents/notes/implemented/feature/2026-07-08-repeat-tool-guard.md).
An advisory loop-breaker, not a model-facing tool: it never appears in the tool list, never vetoes or rewrites a call, and adds exactly one behavior — it watches each agent's stream of tool calls, counts runs of consecutive calls to the same tool with identical canonicalized arguments, and at configured run lengths injects an escalating advisory reminder telling the model to stop repeating itself, re-read the last result, and either change approach or conclude. The decision (retry differently, gather more evidence, or finish) stays entirely with the model: a legitimately repeated call is delayed by nothing and blocked by nothing. Decision record: [the repeat-tool-guard Agent Note](../../../.agents/notes/archived/feature/2026-07-08-repeat-tool-guard.md).
## Config

View File

@@ -2,7 +2,7 @@
[English](README.md) | 中文
这是一个仅提供建议的循环中断器,而非面向模型的工具:它不会出现在工具列表中,不会否决或改写调用,只增加一种行为。它监视每个 agent智能体的工具调用流统计以完全相同的规范化参数连续调用同一工具的次数达到所配置的连续次数时它会注入逐级增强的提示要求模型停止重复、重新阅读上一次结果并改用其他方案或结束任务。究竟是换一种方式重试、收集更多证据还是完成任务仍完全由模型决定合理的重复调用既不会延迟也不会受阻。决策记录见 [repeat-tool-guard Agent Note](../../../.agents/notes/implemented/feature/2026-07-08-repeat-tool-guard.md)。
这是一个仅提供建议的循环中断器,而非面向模型的工具:它不会出现在工具列表中,不会否决或改写调用,只增加一种行为。它监视每个 agent智能体的工具调用流统计以完全相同的规范化参数连续调用同一工具的次数达到所配置的连续次数时它会注入逐级增强的提示要求模型停止重复、重新阅读上一次结果并改用其他方案或结束任务。究竟是换一种方式重试、收集更多证据还是完成任务仍完全由模型决定合理的重复调用既不会延迟也不会受阻。决策记录见 [repeat-tool-guard Agent Note](../../../.agents/notes/archived/feature/2026-07-08-repeat-tool-guard.md)。
## 配置