Ir al contenido

Agentes

Un agente es una persona con nombre que vive dentro de un proyecto APC. Tiene un nombre, una descripción, un override opcional de modelo, una preferencia de idioma y un conjunto opcional de skills. Su definición canónica es un único archivo Markdown en .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 y description son obligatorios. Usá model: inherit salvo que el proyecto realmente requiera un modelo específico — esto le permite a cada runtime (Codex, Claude Code, Cursor, APX) aplicar su propio default configurado.

  • Directorio.apc/
    • Directorioagents/
      • reviewer.md definición del agente

Los datos de runtime del agente son locales y no se commitean:

~/.apx/projects/<project_id>/agents/reviewer/memory.md
CampoObligatorioPropósito
nameSlug estable del agente usado en comandos y nombre de archivo
modelUsá inherit salvo que el proyecto realmente requiera un modelo específico
descriptionDisparador semántico de activación y resumen de responsabilidad
roleNoTítulo legible mostrado en prompts y listados
languageNoPreferencia de idioma de las respuestas (p. ej. es, en)
toolsNoPermisos de herramientas separados por coma
skillsNoSkills de APC que el agente suele usar
is_backgroundNoSi los runtimes compatibles pueden correr el agente de forma asíncrona
color, emoji, vibeNoPistas de UI y personalidad para los runtimes que las soportan

APC no debería atar el modelo de un proveedor como default. Usá inherit y dejá que cada runtime (Codex, Claude Code, Cursor, APX) aplique su default configurado. Un provider:model-id específico sólo es apropiado cuando es una parte explícita del contrato del proyecto.

Ventana de terminal
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, rol y modelo de cada agente del proyecto
Ventana de terminal
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

Esto escribe .apc/agents/reviewer.md y regenera AGENTS.md.

Ventana de terminal
apx agent get reviewer # full definition + memory excerpt
apx agent show reviewer # alias

El vault es una biblioteca global de plantillas de agentes reutilizables que se guarda en ~/.apx/agents/. APX trae defaults incluidos (un asistente de código cody, un escritor doc, etc.); podés agregar los tuyos.

Ventana de terminal
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

Gestión del vault:

Ventana de terminal
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

El valor recomendado es model: inherit — el agente usa el modelo que el runtime tenga configurado como default. Configurá un provider:model-id específico sólo cuando el contrato del proyecto lo requiera explícitamente:

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

Cualquier string provider:model-id que soporten tus engines configurados funciona acá — por ejemplo openai:gpt-4o u ollama:llama3.2:3b.

Cuando llamás a apx exec <slug> o un agente corre dentro de una rutina, APX compone el system prompt en este orden:

  1. Bloque de identidad — You are <slug> + nombre del proyecto
  2. Descripción desde AGENTS.md
  3. Campos de rol e idioma
  4. Canal de invocación — engine | telegram | routine | runtime
  5. Memoria desde ~/.apx/projects/<project_id>/agents/<slug>/memory.md (si existe)
  6. Skills declarados en el campo skills: del agente
  7. La meta-skill apx
  8. Footer fijo de disciplina de acción
AspectoSuper-agente (APX en sí)Agente del proyecto
¿Tiene herramientas?Sí — registro completo de herramientasNo — sólo texto de entrada / texto de salida
Loop de ejecuciónLoop de herramientas multi-iteraciónUna única llamada al LLM
System promptsuper-agent-base.md + plantilla de canal + identidadConstruido por agente como arriba
Configurado víasuper_agent.* en la config.apc/agents/<slug>.md

Ante la duda: el super-agente es APX en sí; los agentes del proyecto son personas especializadas que vos definís.

  • Memoria — curar hechos durables para un agente.
  • Sesiones — cómo se rastrean las invocaciones de los agentes.
  • Vault de agentes — análisis profundo de las plantillas incluidas.