About

Security

Provider output is data, credentials stay in the environment, and nothing a provider returns is treated as an instruction.

The libraries sit between a model and the open internet. A few rules follow from that.

Provider output is data

Titles, snippets, page content, commit messages, package READMEs and issue bodies were written by someone else. Every library hands them back as typed values and never interprets them. The docs sites render them as text, never as HTML. An agent host should do the same. What a tool returns is evidence, not a prompt.

Credentials stay in the environment

Providers read keys from the environment variables named in their docs. A library never writes a key to disk, a CLI never echoes it, and the libraries that raise an HTTPError redact it from the URL before the message is built.

Failures are explicit

A provider that isn't configured answers with a typed error, not with an empty list that looks like a real answer. A fan out reports which providers failed next to the results that did come back.

Reporting

Security reports for any @agntn/* package go to the maintainers through the repository on GitHub, using private vulnerability reporting where the repo has it enabled. Please don't open a public issue for a vulnerability.

agntn· Agnostic libraries for AI agents and humans ·GitHub·npm