Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -373,6 +373,7 @@ GUARDEX_ON=1
- Work from an `agent/*` branch and worktree, never directly on the protected base branch.
- Claim files before edits.
- Use Colony for coordination before falling back to OMX state/notepad.
- Prefer fff MCP tools for file search whenever available; do not route file search through RTK when fff can answer it.
- Use OpenSpec for durable behavior contracts and change-driven work.
- Keep outputs compact: less word, same proof.
- Commit, push, and open/update a PR for completed work unless the user explicitly says to keep it local.
Expand Down Expand Up @@ -480,6 +481,12 @@ Default: less word, same proof.
- Treat local edit/commit, remote publish/PR, CI diagnosis, and cleanup as bounded phases.
- Do not spend fresh narration or approval turns on obvious safe follow-ons inside an already authorized phase unless the risk changes.

### FFF file search

Use the fff MCP tools for all file search operations instead of default tools, including RTK shell wrappers.

If fff MCP tools are unavailable in the current client, fall back to `rtk grep`, `rtk find`, `rtk ls`, or `rg` and keep output compact.

### Caveman style

Commentary and progress updates use smart-caveman `ultra` by default:
Expand Down
8 changes: 4 additions & 4 deletions templates/AGENTS.multiagent-safety.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ GUARDEX_ON=1
- Work from an `agent/*` branch and worktree, never directly on the protected base branch.
- Claim files before edits.
- Use Colony for coordination before falling back to OMX state/notepad.
- Use the fff MCP tools for all file search operations instead of default tools.
- Prefer fff MCP tools for file search whenever available; do not route file search through RTK when fff can answer it.
- Use OpenSpec for durable behavior contracts and change-driven work.
- Keep outputs compact: less word, same proof.
- Commit, push, and open/update a PR for completed work unless the user explicitly says to keep it local.
Expand Down Expand Up @@ -137,7 +137,7 @@ Default: less word, same proof.

### RTK command compression

When `rtk` is available, prefer it for noisy shell discovery and verification.
When `rtk` is available, prefer it for noisy shell discovery and verification. For file search, fff MCP takes precedence whenever available.

- Files: `rtk ls .`, `rtk read <file>`, `rtk read <file> -l aggressive`, `rtk smart <file>`, `rtk find "<glob>" .`, `rtk grep "<pattern>" .`, `rtk diff <a> <b>`.
- Git and GitHub: `rtk git status`, `rtk git diff`, `rtk git log -n 10`, `rtk gh pr list`, `rtk gh pr view <id>`.
Expand All @@ -150,9 +150,9 @@ When `rtk` is available, prefer it for noisy shell discovery and verification.

### FFF file search

Use the fff MCP tools for all file search operations instead of default tools.
Use the fff MCP tools for all file search operations instead of default tools, including RTK shell wrappers.

If fff MCP tools are unavailable in the current client, fall back to `rtk grep`, `rtk ls`, or `rg` and keep output compact.
If fff MCP tools are unavailable in the current client, fall back to `rtk grep`, `rtk find`, `rtk ls`, or `rg` and keep output compact.

### Caveman style

Expand Down
3 changes: 2 additions & 1 deletion test/prompt.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,8 @@ test('prompt --snippet prints the managed AGENTS template with token budget and
assert.match(result.stdout, /rtk git status/);
assert.match(result.stdout, /Do not wrap machine-readable commands with RTK/);
assert.match(result.stdout, /### FFF file search/);
assert.match(result.stdout, /Use the fff MCP tools for all file search operations instead of default tools\./);
assert.match(result.stdout, /For file search, fff MCP takes precedence whenever available\./);
assert.match(result.stdout, /Use the fff MCP tools for all file search operations instead of default tools, including RTK shell wrappers\./);
assert.match(result.stdout, /If fff MCP tools are unavailable in the current client/);
assert.match(result.stdout, /### Caveman style/);
assert.match(result.stdout, /Answer order stays fixed: answer first, cause next, fix or next step last\./);
Expand Down
Loading