Skip to content

Agents

An agent is a named persona living inside an APC project. It has a name, a description, an optional model override, a language preference, and an optional set of skills. Its canonical definition is a single Markdown file at .apc/agents/<slug>.md.

---
name: reviewer
model: inherit
description: Reviews PRs and pushes back on hand-wavy diffs.
role: Code reviewer
language: es
tools: read,write,run
skills: code-review,git
color: indigo
emoji: 🔍
vibe: Concrete feedback, no hand-waving.
---

name and description are required. Use model: inherit unless the project truly requires a specific model — this lets each runtime (Codex, Claude Code, Cursor, APX) apply its own configured default.

  • Directory.apc/
    • Directoryagents/
      • reviewer.md agent definition

Agent runtime data is local and uncommitted:

~/.apx/projects/<project_id>/agents/reviewer/memory.md
FieldRequiredPurpose
nameYesStable agent slug used in commands and file name
modelYesUse inherit unless the project truly requires a specific model
descriptionYesSemantic activation trigger and responsibility summary
roleNoHuman-readable job title shown in prompts and listings
languageNoResponse language preference (e.g. es, en)
toolsNoComma-separated tool grants
skillsNoAPC skills the agent commonly uses
is_backgroundNoWhether compatible runtimes may run the agent asynchronously
color, emoji, vibeNoUI and personality hints for runtimes that support them

APC should not tie one vendor’s model as the default. Use inherit and let each runtime (Codex, Claude Code, Cursor, APX) apply its configured default. A specific provider:model-id is only appropriate when it is an explicit part of the project contract.

Terminal window
apx agent list # agents in the current directory's project
apx agent list --project my-app # agents in a named project
apx
$ apx agent list
  orchestrator   super-agent (Roby)   inherit
frontend       UI engineer          inherit
backend        API engineer         inherit
researcher     web researcher       openai:gpt-4o
sofia          backend reviewer     ollama:llama3.2:3b
apx agent list — slug, role, model for every agent in the project
Terminal window
apx agent add reviewer \
--description "Reviews PRs and pushes back on hand-wavy diffs." \
--role "Code reviewer" \
--model inherit \
--language es \
--tools read,write,run \
--skills code-review,git

This writes .apc/agents/reviewer.md and regenerates AGENTS.md.

Terminal window
apx agent get reviewer # full definition + memory excerpt
apx agent show reviewer # alias

The vault is a global library of reusable agent templates kept in ~/.apx/agents/. APX ships bundled defaults (a cody code assistant, a doc writer, and so on); you can add your own.

Terminal window
apx agent vault list # see bundled defaults + your overrides
apx agent import cody # register the vault template in this project
apx agent import cody --copy # copy the .md into .apc/agents/ for local edits
apx agent import cody --force # overwrite an existing local definition

Vault management:

Terminal window
apx agent vault add <slug> # create a new template in ~/.apx/agents/
apx agent vault rm <slug> # hide a bundled default (tombstone)
apx agent vault restore <slug> # un-hide a tombstoned bundled default

The recommended value is model: inherit — the agent uses whichever model the runtime has configured as its default. Set a specific provider:model-id only when the project contract explicitly requires it:

---
name: reviewer
model: inherit
---
---
name: cheap-summarizer
model: ollama:llama3.2:3b
---

Any provider:model-id string that your configured engines support works here — for example openai:gpt-4o or ollama:llama3.2:3b.

When you call apx exec <slug> or an agent runs inside a routine, APX composes the system prompt in this order:

  1. Identity block — You are <slug> + project name
  2. Description from AGENTS.md
  3. Role and Language fields
  4. Invocation channel — engine | telegram | routine | runtime
  5. Memory from ~/.apx/projects/<project_id>/agents/<slug>/memory.md (if it exists)
  6. Skills declared in the agent’s skills: field
  7. The apx meta-skill
  8. Fixed action-discipline footer
AspectSuper-agent (APX itself)Project agent
Has tools?Yes — full tool registryNo — text-in / text-out only
Execution loopMulti-iteration tool loopSingle LLM call
System promptsuper-agent-base.md + channel template + identityBuilt per-agent as above
Configured viasuper_agent.* in config.apc/agents/<slug>.md

When in doubt: the super-agent is APX itself; project agents are specialized personas you define.

  • Memory — curating durable facts for an agent.
  • Sessions — how agent invocations are tracked.
  • Agent vault — deep dive on the bundled templates.