Skip to content

AgentDefinition CRD

Group/Version: agents.re-cinq.com/v1alpha1 · Kind: AgentDefinition · Scope: Namespaced · Short names: agentdef, ad

The recipe. It has a spec and no status.

FieldTypeDefaultNotes
descriptionstringHuman summary for operators.
modelstringruntime defaultModel id, e.g. claude-sonnet-4-6. Selects the tool adapter.
promptstringTask template; {placeholder} tokens filled from Agent parameters.
allowed_tools[]stringPermission rules, e.g. Bash(npm run test:*).
disallowed_tools[]stringScoped denials, e.g. Bash(rm *).
permission_modeenumautoauto enforces allow/deny lists; bypass grants all.
max_turnsintAgentic turn cap; omit for uncapped.
resourcesobjectRun inputs; see below.
outputobjectResult contract; see below.
tool_configobjectRaw passthrough for tool-specific knobs; unknown fields preserved.
FieldTypeNotes
env[] {name, value}Plain environment variables.
secrets[] {name, ref}name is the env var; ref is an allowlisted secret-store key.
mcp_servers[] object{name, transport(stdio|http|sse), command?, args?, url?, headers_secret?}.
repos[] object{name, url, ref?, path?, token_secret?}.
skills[]stringSkill names staged into the run’s $HOME/.claude/skills, fetched from skills_source as <source>/<name>.tar.gz. The recipe declares intent; each adapter realizes it.
skills_sourcestringBase URL of the skill/settings registry. The init also fetches <source>/settings.json (session hooks) from it. Empty means no fetch — the cloned repo’s own .claude/skills is still staged.
conversationobject{source, id?, pin?, headers_secret?} — a previous run this one continues. The init restores its state before the agent starts; the supervisor saves this run’s own state as pin. id is opaque to the subsystem.
FieldTypeNotes
formatenumtext, json, or stream-json.
schemaJSON SchemaOptional validation of the result.
select[] objectEvent filters: {event(tool_call|message|tool_result|result|usage), tool?, role?, contains?}.
sinks[] object{type(stdout|http|file), url?, headers_secret?, path?}.
watch[] object{event, path} — files the run is expected to produce; each is raised as a named kind:"file" event once the agent exits. Relative paths resolve against WORKSPACE_DIR.

The events delivered to these sinks — their envelope, lifecycle and stream-json payloads, and the HTTP delivery contract — are documented in the Notification API reference.