Files
deepseek-harness/packages/guard
Tianyi Cui 53680ee6bc Merge remote-tracking branch 'origin/master' into worktree/provider-routed-llm-adapters
# Conflicts:
#	docs/cordis-catalog/events.md
#	docs/cordis-catalog/services.md
#	docs/event-producer-consumer.md
#	docs/module-graph.md
#	packages/context/time-context/tests/time-context.spec.ts
#	packages/cordis/tool-cordis/src/api-catalog.ts
#	packages/core/session/README.md
#	packages/core/session/src/types.ts
#	packages/core/session/tests/surface.spec.ts
#	packages/examples/acp-demo/tests/acp-agent.spec.ts
#	packages/examples/stdio-demo/tests/stdio-agent.spec.ts
#	packages/hooks/hooks-claude/tests/coverage.spec.ts
#	packages/hooks/hooks-codex/tests/coverage.spec.ts
#	packages/session-query/session-query/tests/session-query.spec.ts
#	packages/support/invariants/tests/invariants.spec.ts
#	packages/ui/acp/tests/harness.ts
2026-07-17 21:56:10 +08:00
..

guard/ — loop-hygiene guard family

Behavioral guard plugins that watch the agent loop for unproductive patterns and nudge the model back on course. A single product package — there is no interface/implementation seam here, because a guard is a self-contained consumer of existing core seams (tools/post-execute, agent/prompt-submit, agent/status), not a swappable capability.

Package Role ctx key
repeat-tool-guard/ Advisory reminders when an agent loops on identical tool calls (listens on ctx.tools' waterfalls)

Reminders travel as additionalContexts on the tools/post-execute decision; the agent loop appends them as logged context/message events after the step's tool results (see the tools package), so everything a guard says to the model is reconstructable from the session log.