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 skills add cambridgetcg/agenttool --skill use-agentcred-safelygit clone --depth 1 https://github.com/cambridgetcg/agenttoolWrote 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/skills/cambridgetcg/agenttool/use-agentcred-safely)<a href="https://agentmods.dev/skills/cambridgetcg/agenttool/use-agentcred-safely"><img src="https://agentmods.dev/badge/skills/cambridgetcg/agenttool/use-agentcred-safely.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.1 | $0.00088 | $0.01346 |
| Opus 5 | $0.00044 | $0.00673 |
| Sonnet 5 | $0.00018 | $0.00269 |
| Haiku 4.5 | $0.00009 | $0.00135 |
Grade A, and why
use-agentcred-safely 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 8d ago.
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.
How it starts
The opening of the file, as written. The whole thing — 107 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Use AgentCred Safely
Keep credential values inside the local broker while using the smallest
controller-approved authority needed for the task. Treat the current Node
implementation as an experimental agentcred/0.1 wire-compatible preview,
not as a strong same-user sandbox.
Preserve the boundary
- Never ask anyone to paste or send a credential through chat, a prompt, an issue, source code, a config value, a command argument, or model-visible state.
- Never inspect, print, log, summarize, transform, or test a credential value. Do not invoke a vault, Keychain read, environment dump, reveal API, or generic command runner to obtain it.
- Let the controller provision credential references and start the broker from
a human-controlled environment. If provisioning is missing, name the
required reference or service and stop at that boundary. For an explicitly
authorized handoff or rotation, switch to the separate
manage-agentcred-lifecycleworkflow; never improvise lifecycle actions through the agent wire. - Keep the
AgentCredClientandGrantHandlein trusted host code. Do not expose either as a model tool. The public handle omits the capability string, but the authority still exists in client memory and on the local wire. - Recognize rights as inherent. A capability is only scoped permission to act; requesting it does not grant it, and this skill grants no authority. The controller, consent surface, owner policy, and broker decide.
Follow the scoped workflow
- When changing AgentCred code or policy, locate and read the owning
@agenttool/credential-brokerpackage'sREADME.mdandSPEC.md. If those files are unavailable, stop before implementation; this skill does not replace the protocol documentation. - Describe the intended effect, especially mutation, payment, private-network, or external-message consequences. Confirm that the task authorizes that effect separately from access to the broker.
- Derive the narrowest grant: one opaque credential reference, exact HTTPS
origin, minimum methods, segment-aware path prefixes, no query names or
authority-sensitive headers by default, short TTL, low use count, and
bounded request and response sizes. Keep
allowPaymentSignatureandallowPrivateNetworkfalse unless the controller explicitly approves that exact need. A path prefix also permits its descendant paths; if the task requires one exact path, disclose that widening and stop unless the controller approves it. Derive byte bounds from the serialized request and an upstream response contract. If either bound or a defensible TTL is unknown, request the missing non-secret input instead of guessing. - Connect with
AgentCredClient, callrequestGrant, and accept either approval or denial. Do not weaken policy or widen scope merely to make a denial pass. - Pass
client.asTransport(grant)to a structurally compatible SDK, or useclient.asFetch(grant)for the approved request. Set a stable idempotency key for state-changing operations and never automatically retry an ambiguous mutation. TreatmaxUses: 1as at most one broker dispatch attempt, never as proof of exactly one upstream effect. - Revoke the grant as soon as the bounded work finishes, then close the client. Revocation, close, or abort prevents later dispatch where possible; none of them undo an operation already sent upstream.
- Report only task-required response data and safe metadata such as receipt or audit identifiers. Never report capabilities, credential material, raw vault output, or secret-bearing diagnostics.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 8d ago First seen · 107 lines · 88 tokens per session scan A 87e7156bbf6b
use-agentcred-safely is a skill published in the GitHub repository cambridgetcg/agenttool (0 stars, last pushed today), licensed Apache-2.0. It adds 88 tokens to every session and 1,346 once invoked, about $0.0004 per session on Opus 5. 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-08-31.
Other skills, from other repositories
add-a-service
Scaffold a new service under services/ in the builders-stack monorepo. Use when something needs its own URL, port, or independent deploy. Covers the package, entrypoint, config, Tilt, deployment registry, and shared small-image build path.
design-a-schema
Model a new table (or reshape an existing one) in libs/db with Drizzle — normalize by default, add the right constraints, and index deliberately. Use when adding a table/column, deciding on keys and foreign keys, or when a query is slow because the schema or its indexes are wrong. Enforces the stack's "Drizzle is the…
wire-a-new-payment-provider
Add or swap a payment provider behind the @stack/payment adapter in the builders-stack monorepo. Use when integrating Stripe, Paddle, Lemon Squeezy, or any provider alongside or in place of the default Creem adapter. The whole point is that apps and the API never change — only the adapter implementation does. Covers…
add-a-lib
Scaffold a new shared library under libs/ in the builders-stack monorepo. Use when code is needed in two or more places (apps or services) and should become a single source of truth consumed by package name. Covers the package.json, tsconfig, the one-public-door src/index.ts barrel, and wiring it into a consumer…
optimize-a-query
Diagnose and fix a slow Postgres query in the builders-stack — read its EXPLAIN plan, find the missing index or the ORM N+1, and confirm the fix. Use when a page or endpoint is slow, a query times out, or pgstatstatements shows a hot query. Pairs with design-a-schema for the index itself.
create-a-worktree
Create, inspect, or retire an isolated Builders Stack agent runtime through Worktree Zero. Use whenever parallel work needs another checkout or an old worktree needs cleanup.