Skip to content

adeelahmad/agentrc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Agent Run Config — an open, Dockerfile-shaped specification for declaring, packaging, securing, and sharing portable AI agents.

agentrc.ai · Docs · Specification · Builder · Discord · GitHub

⚠️ Working Draft (0.1.0-draft.6). agentrc is an evolving specification draft, not a finished standard. Expect breaking changes.


What is agentrc?

agentrc (Agent Run Config — like bashrc/zshrc, but for an agent) is the contract an agent declares: what it is, how it starts, what resources it requests, and how those requests are governed. The Agentfile is Dockerfile-shaped — four new keywords (IDENTITY, CAPABILITY, SOP, POLICY) over the standard Dockerfile keywords you already know. The build emits namespaced ai.agentrc.* OCI labels; the platform reads those labels — never the Agentfile — and decides what to honour.

agentrc is not a runtime, sandbox, cloud platform, model provider, or agent framework. It is the neutral declaration, packaging, and governance layer above all of those.

A single reviewable Agentfile declares:

  • identity, capabilities, and objective — who the agent is (IDENTITY), what modalities it supports (CAPABILITY), and its system prompt / standard operating procedure (SOP, embedded at /mnt/SOP);
  • tools, skills, and MCP servers — files placed into the /mnt tree with COPY (local) or ADD --remote (remote); the destination path determines the resource type;
  • typed requestsPOLICY lines asking the platform for a model, network egress, or agent / substrate constraints (model.*, network, agent.*, substrate.*);
  • secretsdeferred; this draft defines no secret keyword/schema and leaves credential resolution to the platform;
  • packaging — the build translates intent into ai.agentrc.* OCI labels; the platform reads the labels and grants, narrows, or rejects each request. Enforcement is Cedar, platform-side (deny-by-default), and Cedar is never written in the Agentfile.

📖 Read the docs

Everything lives on agentrc.ai:

What is agentrc? The problem, the need, and what it solves
Quickstart Write, build, read the labels, push, and run your first Agentfile
Agentfile Builder Fill a form (or drag-drop tools) and watch the Agentfile + the agent's boundaries build live in the browser
Specification The full working draft
Core profile Parsing the four keywords + Dockerfile keywords into labels
Security Label-based boundaries and platform-side Cedar enforcement
Conformance Profiles and the adversarial test-suite outline
CLI The BuildKit frontend and the agentrc / arc CLI
Acknowledgements The open standards agentrc builds on

For LLMs: a machine-readable index is published at agentrc.ai/llms.txt, and every page is available as raw Markdown via its "View Markdown" link.

Example

# syntax=agentrc.agentfile/v0.1
FROM ghcr.io/acme/pii-redacted-base:1.4

IDENTITY name=code-reviewer version=1.0 author=acme
CAPABILITY text
CAPABILITY streaming

SOP <<EOF
Review pull requests for correctness and security.
Escalate anything ambiguous to a human.
EOF

CMD claude --print

COPY --chmod=755 ./tools/file_read /mnt/tools/file_read
ADD --remote --cached --fail-if-unavailable \
    https://registry.example.com/skills/code-review:1.2.3 /mnt/skills/code-review

POLICY model.name      claude-opus-4
POLICY model.fallback  claude-sonnet-4
POLICY agent.tool_timeout 30s
POLICY network dns:api.github.com:443

Build it with the BuildKit frontend (docker build -f Agentfile -t ghcr.io/acme/code-reviewer:1.0 .) or the native CLI (arc build -t ghcr.io/acme/code-reviewer:1.0 .) — both produce an identical OCI artifact whose ai.agentrc.* labels carry every request above.

This repository

This repo is the agentrc specification and the source for the agentrc.ai website (a Jekyll site published via GitHub Pages). It contains the spec, profiles, JSON schemas, grammar, examples, and docs, plus a Go reference implementation under tooling/: the agentrc CLI and a BuildKit frontend for Agentfiles. The reference implementation is a test harness, not the definition — agentrc the standard is independent of any one implementation. See Conformance for exactly which profiles it passes today.

Local preview and publishing notes are in README_DEV.md.

Acknowledgements

agentrc builds on Agent SOP (an influence on the SOP keyword), microsandbox (a reference for the deferred secrets design), UTCP, MCP (servers projected under /mnt/mcp/), Cedar (the platform-side enforcement engine and compilation target for typed POLICY requests, never an author surface), Agent Skills (SKILL.md bundles under /mnt/skills/), OCI (artifact + ai.agentrc.* labels), Sigstore, SLSA, OpenTelemetry, and A2A (a reference point for the deferred multi-agent workflow companion; the agent-to-agent protocol is out of scope this version). See Acknowledgements.

License

Apache License 2.0. Maintained by Adeel Ahmad.

About

Agent Run Config — an open specification for declaring, packaging, securing, and sharing portable, governed AI agents. Like a Dockerfile for agents: one reviewable Agentfile for identity, tools, boundaries, policy, and OCI packaging.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

4 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors