agent-trust-boundaries SKILL.md skillA
agent-trust-boundaries from annatchijova/skills is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add annatchijova/skills/agent-trust-boundaries@git:20260815.2390440Pins git:20260815.2390440 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- annatchijova/skills
- Path
agent-trust-boundaries/SKILL.md- Versions recorded
- 1
- Latest version
- git:20260815.2390440, committed Aug 15, 2026
- Size
- 12,224 bytes
- Repository stars
- 9
- License
- a license file GitHub does not identify
Design LLM and agentic systems so that retrieved content is data and never instruction — instruction authority comes from the channel, tool authority is granted by deterministic policy before the model runs, and the untrusted-content + private-data + external-egress trifecta is never unmediated. Use whenever an LLM reads something it did not write: RAG over documents, web browsing, email/ticket/PR triage, tool or MCP output, file contents, another agent's output, or user-supplied text that…
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# Agent Trust Boundaries Prompt injection is not a bug in a model; it is a **category error in the architecture**. A language model consumes one undifferentiated stream of tokens. "System prompt", "user message", "retrieved document", and "tool output" are labels a framework applies to slices of that stream — they are not enforced channels, and no amount of instruction-following training makes them one. So the security property cannot live inside the model. It lives in what the model is *able to cause*. Design accordingly. The governing rule: > **Instruction authority derives from the channel, never from the content.** > Nothing that arrives through a data channel can grant itself authority, > no matter what it says, who it claims to be from, or how urgent it sounds. Composes with: `llm-out-of-the-loop` (the model narrates, the policy decides), `validate-at-the-boundary` (the same discipline for non-model inputs), `irreversible-action-gate` (which actions require a gate at all), `secure-by-construction`, `falsifiable-testing` (the injection corpus is a test suite), `tamper-evident-audit-chain` (what the agent did, and on whose word). --- …
Read the whole file at its exact version.
How to install
mdr add annatchijova/skills/agent-trust-boundaries@sha256:4d8b853663107b59The line at the top of this page pins the label git:20260815.2390440, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_y3ugnwdd223xrq2s)
4 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 1 version of this file, committed on Aug 15, 2026.
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (12224 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
annatchijova/skills · 9 stars · license a license file GitHub does not identify · pushed 2026-11-02 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_y3ugnwdd223xrq2s GET https://markdownregistry.com/api/v1/resolve?ref=annatchijova/skills/agent-trust-boundaries GET https://markdownregistry.com/api/v1/blob/4d8b853663107b59ac9944232917cf98b3db5a32a1bf10c353f60b6eb7d70120
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.