Authenticated use-case identity
One agent.talon.yaml binds one AI use case to one active vault-bound Talon key.
Talon resolves organization intent and one explicit agent override before provider access. The same immutable policy snapshot governs models, providers, cost, sensitive data, visible tools, egress and fallback—and its identity is recorded in signed evidence.
presented agent key
→ resolve agent + tenant
→ load organization policy
→ apply one agent override
→ resolve effective policy snapshot
→ evaluate primary and fallback candidates
→ record signed policy digestsThe operating problem
A support bot, coding agent and internal assistant should not each invent their own answer to sensitive data, model access, budget and egress. Talon centralizes identity and enforcement on paths it can actually intercept.
One agent.talon.yaml binds one AI use case to one active vault-bound Talon key.
The organization baseline and the agent override are resolved once rather than reinterpreted by every runtime surface.
Signed evidence carries the organization, agent, provider and resolved effective-policy digests behind the decision.
Shipped identity model
Each AI use case has one agent file and one encrypted key reference. Talon resolves the presented key to the agent, derives the tenant, and rejects unknown keys or attempts to claim another agent or tenant. A key collision with the admin key fails startup.
# agent.talon.yaml
agent:
name: support-slack-bot
tenant_id: default
key:
secret_name: support-bot-talon-key
# one file = one AI use case
# one vault secret = one traffic identityOne effective policy
The gateway owns providers and organization_policy. The agent file owns one explicit use-case override. Talon deep-copies both into an effective snapshot used by the primary route, every fallback candidate, cost reporting, budget APIs and evidence.
# talon.config.yaml
gateway:
organization_policy:
default_pii_action: warn
allowed_providers: [openai, ollama]
max_data_tier: 2
# agent.talon.yaml
policies:
allowed_providers: [ollama]
models:
allowed: [llama3.2]
data_classification:
input_scan: trueMonotonic organization boundaries
| Policy domain | Resolution rule | Operator question |
|---|---|---|
| PII actions | The organization action is a minimum floor; an agent may tighten it but a weaker action is ignored. | May this data leave in this form? |
| Provider/model access | Organization restrictions remain binding; agent and provider restrictions are added to the decision. | May this agent call this provider and model? |
| Data tier | The organization ceiling is hard; an agent may only lower its own maximum tier. | Is this data class allowed on the selected path? |
| Egress | Organization and agent boundaries are intersected; the destination must satisfy both. | May this traffic go there? |
| Cost | Positive agent caps replace organization defaults for that use case and feed the same enforcement/reporting calculation. | Should the next call be allowed to spend? |
| Reliability | Every explicit fallback candidate is evaluated against the same resolved constraints before dispatch. | Can availability recover without bypassing controls? |
Fail-closed configuration
The gateway block is strictly decoded, invalid policy actions and negative limits fail validation, unknown agent-policy fields fail the gateway preflight, and wildcard allow entries are rejected where they would otherwise create ambiguous behavior.
invalid field or enum
→ startup / doctor failure
unknown agent key
→ HTTP 401
agent key claims another identity
→ HTTP 403
organization hard constraint fails
→ provider call never happensTool and action boundary
Tool schemas visible in LLM requests can be filtered or blocked. MCP calls routed through Talon can be governed. Local shell commands, file edits, browser actions and direct APIs that bypass Talon are outside the control plane.
organization forbids: delete_*
agent allows: search, update, delete_customer
through Talon:
search → allowed
update → allowed if policy passes
delete_customer → blocked
local shell bypass → invisible to TalonEvidence under policy
Evidence is the proof layer under operation: the reason a request was allowed, denied, redacted, routed, failed over or stopped by budget can be inspected and verified later.
Authenticated agent, derived tenant, team and session context where present.
Organization, agent, provider and resolved effective-policy digests are signed with the record.
Allow, deny, redact, filter, route or fail-closed result with the decisive reason and layer.
Current boundary
A gateway process currently loads one default agent.talon.yaml. The agent identity and effective-policy contract is live now. Discovering and safely reloading many agent files in one process remains tracked product work.
Start small
Create its agent file, mint the vault-bound key, route the application through Talon, and inspect the resulting policy decision before expanding to the next use case.