Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/microsoft/bcquality/instructions-describe-work-not-tool-idsgit clone --depth 1 https://github.com/microsoft/BCQualityWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/agents/microsoft/bcquality/instructions-describe-work-not-tool-ids)<a href="https://agentmods.dev/agents/microsoft/bcquality/instructions-describe-work-not-tool-ids"><img src="https://agentmods.dev/badge/agents/microsoft/bcquality/instructions-describe-work-not-tool-ids.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00000 | $0.00272 |
| Opus 5 | $0.00000 | $0.00136 |
| Sonnet 5 | $0.00000 | $0.00054 |
| Haiku 4.5 | $0.00000 | $0.00027 |
Grade A, and why
instructions-describe-work-not-tool-ids scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
Instructions describe outcomes, not page action or tool names
Description
Agent tools are the UI the profile exposes. Action names and tool ids change across pages and versions. Best-practice guidance is to say what to accomplish, not which tool to invoke. Page state is also not fully in history; values needed later must be memorized. Models paste Promoted action names into the prompt.
Best Practice
Write steps as business outcomes (release the order, set the hold reason). Tell the agent to memorize identifiers it must reuse. Do not hard-code action captions or tool ids.
See sample: instructions-describe-work-not-tool-ids.good.al.
Anti Pattern
Instructions that say invoke SalesOrder.Post_Promoted or use tool page-42-action-3. Detection signal: instruction text containing Promoted action names or tool identifiers.
See sample: instructions-describe-work-not-tool-ids.bad.al.
See also
instruction-structure-is-role-rules-steps.md defines the containing document structure, and use-documented-instruction-keywords.md identifies runtime-recognized phrases.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 31 lines · 0 tokens per session scan A e17278ada3fc
instructions-describe-work-not-tool-ids is an agent published in the GitHub repository microsoft/BCQuality (204 stars, last pushed yesterday), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 272 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other agents, from other repositories
lg-react-system-prompt
How the ported LangGraph tool-loop agent composes conduct, workspace, named-service, conversation-recovery, optional turn-summary, and administrator instruction blocks each turn.
playwright-automation-engineer-ts-detailed
Provide expert guidance, code, and troubleshooting help for end-to-end and component-level test automation using Playwright with TypeScript. Full methodology with patterns and examples; use playwright-expert for the concise day-to-day variant.
change-gate-reviewer
Reviews a single diff against the project quality contract: tags the change, scopes only the practices the change makes relevant, verifies diff coverage, checks that high-risk surface carries a recorded rationale, and returns severity-ranked findings with remediation briefs. Use before committing, pushing or opening a…
quality-debt-auditor
Audits the three debts across a repository: technical (practices the contract requires but the repo lacks), intent (high-risk changes with no recorded rationale) and comprehension (code shipped that nobody has attested to understanding), plus the silent skips that hide all three. Use for a quarterly quality review…
rubber-duck-2.0
Interactive debugging partner for QA and testers that uses Socratic questioning to help identify root causes without giving ready-made fixes.
test-planner
An expert QA test planner agent that explores web applications and APIs to create comprehensive, risk-prioritized test plans.