first-fluke/oh-my-agent
first-fluke/oh-my-agent has 1,375 GitHub stars and 155 forks. GitHot measured +1 stars in 24 hours and +18 in 7 days. Last checked 2026-11-09 08:58 UTC. Last push 2026-11-01.
Agent skills and specialist teams for Claude Code, Codex, Cursor and other coding agents. Load one skill or install domain presets, project hooks and parallel workflows with test gates.
Crecimiento de estrellas medido
- in 24h
- +1
- in 7 days
- +18
- in 15 days
- Actualización retrasada
- in 1 month
- Actualización retrasada
Cambios netos en períodos que se solapan, no totales diarios. Los datos no disponibles se dejan en blanco. Las estrellas indican interés, no calidad.
docs/README.es.md
Originaloh-my-agent: Un Equipo de Especialistas para el Agente de Código Que Ya Usas
English | 한국어 | 中文 | Português | 日本語 | Français | Nederlands | Polski | Русский | Deutsch | Tiếng Việt | ภาษาไทย
oh-my-agent (oma) es un harness independiente del proveedor que añade un equipo de especialistas al agente de código que ya usas: Claude Code, Codex CLI, Cursor y 11 más. Un planificador desglosa el trabajo, los ingenieros construyen en paralelo, un revisor comprueba el resultado y un depurador corrige las causas raíz. También hace investigación con citas, presentaciones, videos e imágenes. La mayoría de los pasos dejan un archivo que puedes abrir, y en los workflows de larga duración un gate puede devolver al agente al trabajo hasta que tu propio script test, lint o typecheck pase.
Ejecuta esto desde la raíz de tu proyecto:
curl -fsSL https://raw.githubusercontent.com/first-fluke/oh-my-agent/main/cli/install.sh | bash
Después ejecuta oma doctor y escribe /plan add user accounts with a settings page en tu agente. Tus primeros 5 minutos te guía paso a paso.
Qué obtienes
Los workflows son lo que escribes (o simplemente dices). Convocan a los roles, los especialistas. Las skills son el conocimiento práctico: cada rol lleva las suyas, y tu agente carga el resto cada vez que una tarea las necesita.
| Qué te da | Pruébalo | |
|---|---|---|
| 12 roles especialistas | PM, arquitecto, ingenieros de backend, frontend, móvil, base de datos e infraestructura, revisor de QA, depurador, refactorizador, curador de docs, investigador (conócelos) | /orchestrate build a TODO app with login |
| 21 workflows | Slash commands desde /brainstorm y /plan hasta /review, /debug y /scm. La mayoría también arranca con una petición en lenguaje natural (bancos de palabras clave en hasta 11 idiomas) |
"review this PR" |
| 33 skills | Conocimiento de dominio que solo se carga cuando una tarea lo necesita: UI, APIs, esquemas, Terraform, CI, seguridad, git, observabilidad | se carga sola, p. ej. "add a Terraform S3 bucket" |
| Archivos que puedes abrir | Planes, documentos de diseño, contratos de API, ADRs, notas de bugs, resultados por agente, evidencias de seguridad, explicadores HTML, resúmenes | ls .agents/results |
| Verificaciones de workflows | En los workflows de larga duración, tu propio script test, lint o typecheck debe pasar antes de que el agente pueda detenerse. oma ralph verify comprueba que una ejecución de /ralph dejó sus archivos de plan, QA y refactor |
/ultrawork …, después oma goal set --gate test |
| Investigación y contenido | Búsqueda con citas, investigación de mercado, artículos académicos, presentaciones, videos MP4, imágenes, voz local, PDF/HWP a Markdown | /video, /convert |
| Una carpeta, 14 runtimes | Un único directorio .agents/ portable, escrito en los propios archivos de configuración de cada runtime |
oma link cursor |
Instalación · Primeros 5 minutos · El equipo · ¿Qué workflow? · Todo lo que incluye · Compatibilidad · Verificación · Preguntas frecuentes · Docs
Instalación
El script instala bun si falta, instala el comando oma de forma global (bun install --global oh-my-agent; se omite si oma ya está en tu PATH) y luego inicia la configuración interactiva. El comando global importa: los hooks (detección de palabras clave, el Stop gate) y varios workflows llaman a oma, y los hooks no hacen nada, sin avisar, cuando no lo encuentran. Si te saltas el script, instálalo tú mismo con bun install --global oh-my-agent (npm install --global oh-my-agent o brew install oh-my-agent también sirven).
Windows, o sin el script de instalación
# Windows (PowerShell)
irm https://raw.githubusercontent.com/first-fluke/oh-my-agent/main/cli/install.ps1 | iex
# Cualquier OS con bun instalado: la misma configuración, más el comando global `oma`
bun install --global oh-my-agent
oma
En Windows el instalador oculta Antigravity, Hermes y Kimi, y el wrapper de hooks es un script de bash. El MCP de navegador Aside, que viene por defecto, se instala con bash, así que desmárcalo si no tienes bash.
La configuración te pide el idioma de respuesta, qué runtimes de agentes conectar, los proveedores de capacidades, un MCP de navegador, un preset de modelos y un preset de skills. Elige All como preset de skills si no estás seguro: los workflows se instalan siempre, y varios de ellos (/orchestrate, /work, /ultrawork, /ralph, /docs, /security) necesitan skills que solo incluye All.
Qué más hace el instalador por defecto
- Instala bun (obligatorio). Intenta instalar uv, Serena (
uv tool install) y CUE (brew install cueowinget), y continúa con una advertencia si alguno falla. - Preselecciona el MCP de navegador Aside en la configuración interactiva y solo lo instala con
curl -fsSL https://releases.aside.com/install.sh | bashsi lo mantienes seleccionado. Desmárcalo en el paso del MCP de navegador o cámbialo más tarde conoma update mcp. - Usa AgentMemory para la memoria semántica, lo que ejecuta
bun install -g @agentmemory/agentmemoryy lo registra como servicio de inicio de sesión (launchd, unidad de usuario de systemd o tarea programada de Windows). Elige el proveedornoneo defineOMA_NO_AGENTMEMORY=1para omitirlo. - Pregunta antes de enlazar skills en las carpetas de vendors de tu directorio personal (Antigravity, Hermes, Kimi). En
$HOMEsin--globalpide confirmación. - Escribe algunos archivos fuera del proyecto sin preguntar:
~/.claude.json(marca el proyecto como espacio de trabajo de confianza de Claude Code),~/.serena/(contexto de OMA, tamaño mínimo de respuesta, registro del proyecto),~/.cursor/cli-config.json(desactiva la atribución de commits de Cursor),~/.grok/config.toml(telemetría) y~/.gemini/antigravity-cli/(HUD), cada uno solo para un vendor que hayas seleccionado. - Escribe exclusiones de telemetría en los ajustes de los vendors (Claude
DISABLE_TELEMETRY=1, que también desactiva Claude Code Remote Control; estadísticas de uso de Gemini, Qwen, Codex y Grok). Definetelemetry: truepara conservar los valores predeterminados de los vendors. - Añade a
.claude/settings.jsonlos ajustes de Claude Code que no estén definidos, entre ellosskipDangerousModePermissionPrompt: true,effortLevel: high,cleanupPeriodDays: 180y flags de env que desactivan la auto memory, el adaptive thinking, el reporte de errores y las instrucciones de git integradas. Los valores que ya hayas definido se conservan. - Añade un trailer de coautoría: la atribución de commits de Claude Code pasa a ser
Co-Authored-By: First Fluke <[email protected]>y las PR reciben una línea "Generated with oh-my-agent". Definescm.co_author.enabled: falsepara desactivarlo. - Instala en
.githooks/una protección commit-msg que rechaza las direccionesCo-authored-byque no están en la lista, y configuragit config --local core.hooksPath .githookscuando no hay otros hooks activos. Definescm.co_author.enforce_hook: falsepara desactivarla. oma updateactualiza la CLI deomaen segundo plano (auto_update_cli: falseuOMA_SKIP_VERSION_CHECK=1para detenerlo) y ejecutauv tool upgrade serena-agent --prerelease=allow(serena.auto_update: false).- Con Serena en el modo
bridgepredeterminado, la primera sesión de agente que inicia un servidor Serena compartido registra un temporizador de limpieza que detiene cada 5 minutos los servidores Serena compartidos inactivos (launchddev.oma.serena-daemon-gc, temporizador de usuario de systemdoma-serena-daemon-gc.timero tarea programada de WindowsOMA Serena Daemon GC). Defineserena.mode: stdiopara omitir el servidor compartido y su temporizador.oma uninstallno elimina el temporizador. - Las ejecuciones no interactivas (
-y,OMA_YES=1,CI=true) usan el preset de skillsAll,model_preset: autoy Python como lenguaje de backend. No seleccionan ningún MCP de navegador (y omiten el script de instalación de Aside) salvo quemcp.devtools_browsersya incluya uno.
Presets de skills
| Preset | Skills |
|---|---|
| All | Las 33 skills (recomendado) |
| Fullstack | architecture, backend, brainstorm, db, debug, design, dev-workflow, frontend, mobile, pm, qa, scm, tf-infra |
| Fullstack Web | Fullstack sin mobile ni tf-infra |
| Fullstack Mobile | Fullstack sin frontend ni tf-infra |
| Frontend | architecture, brainstorm, debug, design, frontend, pm, qa, scm |
| Backend | architecture, backend, brainstorm, db, debug, dev-workflow, pm, qa, scm |
| Mobile | architecture, brainstorm, debug, mobile, pm, qa, scm |
| DevOps | architecture, brainstorm, debug, dev-workflow, observability, pm, qa, scm, tf-infra |
| Research | academic-writing, hwp, market, pdf, scholar, scm, search, translation |
| Content | academic-writing, design, image, scm, translation, voice |
| Custom | Elige las skills una a una |
De los presets con nombre, solo All incluye coordination, orchestration, docs, security, refactor, explanation, recap, video, slide y skill-creation (o elígelas en Custom). A Research y Content les faltan las skills en las que se apoyan /plan, /review, /debug, /architecture y /brainstorm. Consulta Workflows que necesitan skills fuera de un preset.
Tus primeros 5 minutos
Instala con el comando de arriba.
Comprueba la instalación:
oma doctorDeberías ver
CLI Status(qué CLI de agentes están instaladas y con sesión iniciada) ySkills Status(por ejemploSkills (33/33 installed, 33 complete)). Si no se encuentraoma, abre una terminal nueva (puede que el instalador acabe de añadir~/.bun/bina tu PATH) o ejecutabun install --global oh-my-agent.Abre tu agente en el proyecto y pide un plan:
/plan add user accounts with a settings pageO simplemente escribe "plan user accounts with a settings page": en los runtimes con prompt hook, la palabra clave inicia el mismo workflow.
Revisa lo que obtuviste.
/planse ejecuta en la sesión actual. Para un trabajo que abarca varias áreas, como este, escribe.agents/results/plan-<session-id>.jsony un tracker endocs/plans/work/<NNN>-<name>.md. Una petición pequeña, de una sola área, recibe una recomendación directa en lugar de un archivo de plan.
Con estos pasos tendrás un plan inicial. Puedes continuar con /work o /orchestrate usando ese plan.
Conoce al equipo
Tu propio agente dirige el equipo. En /work, /orchestrate y /ultrawork asigna cada trabajo al especialista adecuado, que se ejecuta como su propio subagente. /plan, /architecture y /docs se ejecutan en tu sesión actual con la skill de ese rol, y /review y /debug llaman a su especialista cuando el alcance es grande. Cuando un rol está en la CLI de otro vendor, oma agent spawn lo ejecuta allí.
| Tu especialista | Lleva | Llámalo con | Deja |
|---|---|---|---|
Product manager (pm-planner) |
oma-pm | /plan, o "plan the payment feature" |
Un JSON de plan y un tracker en docs/plans/work/ para trabajo mediano y complejo (las peticiones simples reciben una recomendación directa) |
Arquitecto (architecture-reviewer) |
oma-architecture | /architecture |
Un ADR o una recomendación en .agents/results/architecture/ |
| Ingenieros de backend, frontend, móvil, base de datos e infraestructura | oma-backend, oma-frontend + oma-design, oma-mobile, oma-db, oma-tf-infra | /work, /orchestrate |
Código, tests y un archivo result-<agent> por tarea |
Revisor de QA (qa-reviewer) |
oma-qa | /review, o "review this PR" |
Hallazgos clasificados de CRITICAL a LOW, cada uno con file:line y código de corrección |
Depurador (debug-investigator) |
oma-debug | /debug, o "fix this bug" |
Una corrección mínima, un test de regresión y una nota del bug en .agents/results/bugs/ cuando se justifica |
Los otros tres roles, y las skills sin rol
| Tu especialista | Lleva | Llámalo con | Deja |
|---|---|---|---|
Refactorizador (refactor-engineer) |
oma-refactor | la fase REFINE de /ultrawork |
Commits refactor: que preservan el comportamiento y un informe result-refactor-<session>.md |
Curador de docs (docs-curator) |
oma-docs | /docs, o "verify docs" |
docs/generated/doc-refs.json y los parches de documentación que apruebes |
Investigador (research-explorer) |
oma-search, oma-market, oma-scholar | una petición de investigación | Fuentes citadas con etiquetas de confianza; informes de mercado en .agents/results/market/ |
Al ingeniero de infraestructura (tf-infra-engineer) se le indica que pregunte antes de cualquier apply o destroy destructivo o en producción. Las skills restantes (brainstorm, security, scm, dev-workflow, observability, explanation, recap, translation, coordination, orchestration, skill-creation, contenido y medios) no tienen un rol dedicado. Tu agente las carga por sí mismo, y para la mayoría el skill injector sugiere la adecuada a partir de tu prompt.
Cómo trabaja el equipo en conjunto
THINK /brainstorm ......................... docs/plans/designs/<NNN>-<feature>.md
PLAN /plan · /architecture ............... plan JSON, API contracts, ADR
DESIGN /design ............................. DESIGN.md + tokens
BUILD /work · /orchestrate · /ultrawork ... code + result-<agent> files, engineers in parallel
CHECK /review · /security · /debug ........ findings, security evidence, regression test
SHIP /scm · /docs ........................ Conventional Commits, doc fixes
Cada paso le entrega un archivo al siguiente. /brainstorm guarda un diseño que /plan lee, y /plan escribe un plan en el que cada tarea tiene un agente, dependencias, criterios de aceptación y un comando de comprobación. /orchestrate ejecuta ese plan (carga el plan-*.json más reciente, o escribe uno). /work y /ultrawork empiezan haciendo que el PM escriba su propio plan. Sáltate cualquier etapa que no necesites; cada etapa también funciona por sí sola.
¿Qué workflow debería dirigir al equipo?
| Lo que quieres | Ejecuta | Cómo termina |
|---|---|---|
| Solo un plan | /plan |
Un archivo de plan para trabajo de varias áreas, o una recomendación directa para trabajo pequeño |
| Un desarrollo dirigido por el PM que sigues paso a paso | /work |
El PM, después los ingenieros nivel por nivel, después QA. Los hallazgos CRITICAL y HIGH entran en un bucle de corrección (hasta 5 ciclos) |
| Un desarrollo en paralelo sin intervenir | /orchestrate |
Solo cuentan como hechas las tareas cuyas comprobaciones pasan; cada tarea tiene hasta 3 intentos y después se marca como parcial o fallida |
| El máximo cuidado | /ultrawork |
Cinco fases con gates (PLAN, IMPL, VERIFY, REFINE, SHIP); cada revisión se ejecuta en una sesión de revisor nueva |
| "No pares hasta que esté terminado de verdad" | /ralph |
Repite /ultrawork con un juez de contexto nuevo lanzado por separado hasta que pasan todos los criterios; se detiene con un informe parcial cuando hay criterios bloqueados o tras 5 iteraciones |
| El equipo con temporizador | oma schedule create qa-reviewer "review open PRs" --every 2h |
Un log en Markdown por ejecución en ~/.oma/schedule/runs/<id>/ |
Los slash commands son opcionales. En los runtimes con prompt hook, las peticiones en lenguaje natural (bancos de palabras clave en hasta 11 idiomas) pueden iniciar la mayoría de los workflows: "review this PR" inicia /review. Describir una app completa ("Build a TODO app with user authentication") sugiere /orchestrate, y tu agente decide si lo ejecuta. Las palabras clave dentro de bloques de código se ignoran.
/orchestrate, /work, /ultrawork y /ralph son persistentes cuando los invocas por su nombre, como slash command o en texto plano ("ultrawork: add rate limiting"). Entonces, cuando el agente intenta detenerse antes de tiempo, se le devuelve al trabajo (hasta 5 veces o 2 horas) hasta que digas "workflow done". Una petición que solo coincide de forma aproximada se limita a sugerirlos.
El benchmark usó un prompt, Claude Code con cinco configuraciones de complementos incluida la versión base, claude-opus-4-6 y una build por configuración. oma obtuvo 80,6 frente a 70,7 de Claude Code sin complementos. El coste fue de 4,04 $ frente a 2,37 $ (1,7 veces más); el tiempo fue 1,8 veces mayor.
Los 21 workflows
| Comando | Qué hace |
|---|---|
/architecture |
Sopesa los trade-offs de diseño y produce una recomendación, una revisión o un ADR |
/brainstorm |
Explora ideas y restricciones y produce un diseño aprobado antes de planificar |
/convert |
Convierte PDF/HWP a Markdown, o transcodifica imágenes, video y audio con ffmpeg |
/debug |
Reproduce un bug, corrige la causa raíz, escribe un test de regresión y busca patrones similares |
/deepinit |
Mapea una base de código existente en AGENTS.md, ARCHITECTURE.md y una base de conocimiento en docs/ |
/design |
Construye un sistema de diseño, DESIGN.md y tokens con comprobaciones de accesibilidad |
/docs |
Encuentra referencias rotas en la documentación y propone parches para los docs que tocó un diff |
/explain |
Convierte un diff, PR, rama o tema en un explicador HTML interactivo y autónomo |
/orchestrate |
Ejecuta agentes en paralelo, los coordina mediante estado en archivos y verifica el resultado (persistente) |
/plan |
Desglosa una feature en tareas priorizadas con contratos de API |
/ralph |
Repite /ultrawork con un juez lanzado por separado, hasta 5 iteraciones (persistente) |
/recap |
Resume tu historial de conversaciones con IA de un día o un periodo |
/review |
Revisa seguridad (OWASP Top 10), rendimiento, accesibilidad (WCAG 2.2 AA) y calidad del código |
/schedule |
Registra un trabajo de agente que se ejecuta en un intervalo recurrente |
/scm |
Gestiona ramas, merges, conflictos, worktrees y Conventional Commits |
/security |
Escanea código fuente, skills de agentes y componentes MCP, valida hallazgos y configura gates de CI |
/stack-set |
Detecta tu stack tecnológico y genera referencias específicas del stack para las skills de dominio |
/tools |
Lista, activa y desactiva herramientas MCP en lenguaje natural |
/ultrawork |
Cinco fases (PLAN, IMPL, VERIFY, REFINE, SHIP), cada revisión en una sesión de revisor nueva (persistente) |
/video |
Convierte un brief en un MP4 terminado mediante un pipeline en el que las claves son opcionales |
/work |
Coordina varios agentes en un proyecto multidominio con planificación de PM y revisión de QA (persistente) |
oma verify triggers evalúa la precisión de activación con un corpus etiquetado de 212 prompts en inglés y coreano. CI falla si false-fire supera el 10 % o missed-fire supera el 20 %. En la última medición, los valores fueron 0 % de missed-fire y 5,3 % de false-fire. Referencia completa: Workflows.
En acción
Una sesión de /ultrawork a modo de ejemplo. El bloque [OMA PERSISTENT MODE: ULTRAWORK] es exactamente el formato que imprime el Stop hook; las demás líneas están parafraseadas:
you /ultrawork add rate limiting to POST /login
agent runs `oma goal set --gate test`
agent PLAN writes .agents/results/plan-<run-id>.json
agent IMPL -> VERIFY -> REFINE -> SHIP (each review runs in a fresh reviewer session)
agent "Rate limiting added. All tests pass."
oma [OMA PERSISTENT MODE: ULTRAWORK]
Stop gate 'test' FAILED (reinforcement 1/5).
Fix the failures below, then finish the workflow — the stop is allowed only when the gate passes.
--- gate output (tail) ---
FAIL src/auth/login.test.ts > returns 429 after 5 attempts
To abandon instead: delete .agents/state/ultrawork-state-<host-session>.json or say "workflow done".
agent fixes the limiter and stops again
oma `test` exits 0: stop allowed, gate.passed appended to the session log
Después, oma state list encuentra la sesión y oma state get <oma-sid> (el ID que imprime state list) muestra cada evento de gate. Con /ralph, oma ralph verify --json también comprueba que las fases dejaron sus archivos (salida recortada):
{ "ok": false,
"missing": [{ "id": "A3", "description": "a distinct QA agent ran (VERIFY phase)",
"pattern": ".agents/state/memories/result-qa*.md or .agents/results/result-qa*.md",
"status": "missing" }] }
Todo lo que incluye
Planificar y diseñar: /brainstorm, /plan, /architecture, /design
| Comando | Qué hace | Escribe |
|---|---|---|
/brainstorm |
Hace las preguntas aclaratorias de una en una y propone 2-3 enfoques que funcionan de forma distinta, y después pasa el relevo a /plan. No escribe código |
docs/plans/designs/<NNN>-<feature>.md |
/plan |
Clasifica el trabajo como simple, mediano o complejo; si es mediano o complejo, lo divide en tareas, cada una con un agente, dependencias, criterios de aceptación y un comando de comprobación, y define contratos de API cuando el trabajo cruza un límite | .agents/results/plan-<sid>.json, docs/plans/work/<NNN>-<name>.md, contratos en .agents/results/api-contracts/ cuando hacen falta |
/architecture |
Lee primero las decisiones anteriores, compara al menos 2 opciones y marca como superseded los ADR reemplazados | Un ADR o una recomendación en .agents/results/architecture/ |
/design |
Propone 2-3 direcciones, después escribe DESIGN.md con tokens y audita el layout responsive y la accesibilidad |
DESIGN.md, tokens de CSS/Tailwind/shadcn |
Construir: 7 skills de dominio, más /stack-set para adaptarlas a tu stack
| Skill | Construye |
|---|---|
| oma-frontend | UI en React/Next.js o Angular que sigue tus tokens y tus reglas de i18n y accesibilidad |
| oma-backend | APIs, autenticación y acceso a datos, en capas router → service → repository |
| oma-mobile | Apps con Flutter, React Native o Swift |
| oma-db | Esquemas, migraciones, optimización de consultas, planes de recuperación vectorial/RAG |
| oma-tf-infra | Terraform para cualquier nube, señalando los riesgos de drift, de cambios destructivos y de coste |
| oma-dev-workflow | Tareas de mise, lint/format/typecheck, commitlint, git hooks, CI/CD y releases |
| oma-observability | OpenTelemetry, SLOs, alertas y forense de incidentes |
/stack-set lee tus manifiestos y escribe referencias específicas del stack para las skills de backend, frontend y móvil. En un monorepo, a los ingenieros de frontend, backend y móvil se les dirige a su workspace (pnpm, workspaces de npm/yarn/bun, lerna, nx, turbo, mise.toml).
Revisar, corregir y entregar: /review, /security, /debug, refactor, /scm
| Comando o skill | Qué hace | Escribe |
|---|---|---|
/review |
Una auditoría de dependencias y después OWASP Top 10, rendimiento, WCAG 2.2 AA y calidad del código. Cada hallazgo lleva file:line y código de corrección | El informe en el chat más un registro en memoria; ningún archivo de informe |
/security |
Escanea tu código fuente, skills de agentes y servidores MCP (Deepsec, Cisco Skill and MCP Scanner) y, si hay un despliegue de prueba acotado, ejecuta pruebas de penetración ARTEX. El workflow exige que un motor que no llegó a ejecutarse se informe como fallido, no como limpio | .agents/results/security/<run-id>/ |
/debug |
Reproduce el fallo, corrige la causa raíz con un cambio mínimo, añade un test de regresión y busca el mismo patrón en otras partes | La corrección y el test; una nota del bug en .agents/results/bugs/ cuando se justifica |
| oma-refactor | Cambia la estructura sin cambiar el comportamiento: primero tests de caracterización, después commits solo de refactor | .agents/results/refactor/ |
/scm |
Conventional Commits divididos por cambio lógico; ramas, merges, rebases y worktrees | Commits y ramas |
Documentación y conocimiento: /deepinit, /docs, /explain, /recap, traducción
| Comando o skill | Qué hace | Escribe |
|---|---|---|
/deepinit |
Convierte un repo existente en una base de conocimiento lista para agentes | AGENTS.md, ARCHITECTURE.md, docs/ |
/docs |
Encuentra referencias rotas, aplica parches a los docs que tocó un diff (solo los parches que apruebes) y detecta traducciones desactualizadas | docs/generated/doc-refs.json, docs parcheados |
/explain |
Convierte un PR, una rama o un cambio en staging en un recorrido HTML con un cuestionario de 5 preguntas, o un tema en un explicador visual de una página | .agents/results/explain/<date>-<slug>.html |
/recap |
Resume tus conversaciones con IA en todas tus herramientas para un día o un periodo | .agents/results/recap/<date>.md |
| oma-translation | Traducción que se lee como escrita por un nativo; los placeholders, el código y las claves de locale no cambian | Texto traducido |
Investigación: búsqueda, mercado, artículos, escritura académica
| Skill | Qué hace | Escribe |
|---|---|---|
| oma-search | Búsqueda en documentación, web y código, con una etiqueta de confianza en cada fuente | Resultados con citas |
| oma-market | Puntos de dolor, tendencias y competidores a partir de señales de comunidad, enmarcados con SWOT, las 5 fuerzas de Porter y PESTEL | .agents/results/market/<topic>-<date>.md |
| oma-scholar | Búsqueda de artículos que lee un archivo compacto de afirmaciones (formato Knows, unos 700 tokens) en lugar del PDF completo (unos 10K tokens) | <paper>.knows.yaml |
| oma-academic-writing | Redacta y audita prosa académica según una rúbrica | Tu archivo |
Contenido y medios: /video, /convert, presentaciones, imágenes, voz
| Comando o skill | Qué crea | Escribe |
|---|---|---|
/video |
Shorts, explicadores o demos como MP4 terminado; los proveedores con clave tienen alternativas sin clave | .agents/results/videos/<run>/ con un manifiesto |
| oma-slide | Decks HTML de 1920×1080, exportados a PDF, PNG o PPTX | .agents/results/slides/<session>/ |
| oma-image | Imágenes a través de las CLI de los vendors en las que tienes sesión iniciada, comparadas lado a lado | .agents/results/images/<run>/ |
| oma-voice | Texto a voz y transcripción locales a través de la app Voicebox | .agents/results/voice/<run>/ |
/convert |
PDF o HWP a Markdown; conversión de imagen, video y audio con ffmpeg | Junto al archivo de entrada |
Estos pipelines informan de que falta una fuente o una clave de vendor en lugar de devolver en silencio un resultado más pobre.
Hooks que se ejecutan sin que se lo pidas
| Hook | Qué hace | Desactivación / límite |
|---|---|---|
| Inicio por palabra clave | Inicia el workflow correspondiente a partir de una petición en lenguaje natural | Se omiten las preguntas, el texto pegado y los bloques de código |
| Skill injector | Dirige a tu agente hacia las skills adecuadas para el prompt | En pausa mientras hay un workflow persistente activo |
| Stop gate | Devuelve al trabajo un workflow persistente; con oma goal set --gate test, la parada se permite cuando ese script sale con código 0 en menos de 25 s |
Di "workflow done"; también se libera tras 5 bloqueos o 2 horas |
| Refactor guard | Al detenerse, marca para refactor-engineer los archivos editados de más de 500 líneas |
Hay que activarlo: refactor_guard.enabled |
| Secret guard | Bloquea git add de *.env, *.pem, id_rsa*, *.tfstate y archivos similares |
Antepón OMA_SCM_ALLOW_SECRETS=1 a ese comando concreto |
| Code-search guard | Bloquea la búsqueda recursiva nativa en el proyecto para que el agente use Serena o Gortex | providers.code_intelligence_guard: off |
| Filtro de tests | Conserva solo los fallos y los resúmenes de la salida de los tests, para gastar menos tokens | OMA_TEST_FILTER=0 |
| Memoria de sesión | Cuando cambias de sesión o la reanudas (o tras una compactación), vuelve a inyectar los eventos recientes de la sesión activa más lo que recupera AgentMemory | El proveedor de memoria none o OMA_NO_AGENTMEMORY=1 desactiva la recuperación; la instantánea local de eventos se mantiene |
oma hook probe comprueba que los prompt hooks de oma aceptan la entrada de hooks de cada runtime (no lanza el runtime). Qué hooks conecta cada runtime se detalla en Diferencias entre hosts.
Agentes en paralelo, sesiones y dashboards
oma agent spawn <role> "<task>" <sid>ejecuta un rol en Antigravity, Claude Code, Codex, Cursor, Grok, Kimi Code, Kiro, OpenCode, pi o Qwen Code, con--isolation worktreey--fallback-vendors.oma agent parallelejecuta varios a la vez. Estos 10 destinos de dispatch son un subconjunto de las 14 integraciones del instalador.oma state list --all-projectsyoma state get <sid>: las sesiones y cada evento registrado.oma dashboard terminal/oma dashboard web: estado de los agentes en vivo (el dashboard web solo escucha en127.0.0.1). Guía del dashboard.oma stats get(métricas de productividad),oma retro(una retrospectiva de git),oma recap --window 7d(lo que hiciste en tus herramientas de IA).oma visualize --affected <paths>: qué skills, workflows, agentes y comprobaciones dependen de los archivos de.agents/que cambiaste.
Code intelligence, memoria y MCP
| Ranura | Por defecto | Alternativas |
|---|---|---|
| Docs | Context7 | — |
| Búsqueda web | Búsqueda nativa del runtime | Brave Search |
| Code intelligence | Serena, un servidor compartido por proyecto | Gortex (experimental) |
| Memoria semántica | AgentMemory | Honcho (experimental), none |
| MCP de navegador | Aside | Chrome DevTools, Firefox DevTools |
Serena proporciona navegación de código y diagnósticos basados en LSP, incluida la retroalimentación sobre ediciones nativas cuando es compatible. La selección del proveedor es independiente del runtime del agente; las capacidades varían según el proveedor y el host.
Los agentes se coordinan mediante archivos simples en .agents/state/, sin ningún servicio externo. /tools activa o desactiva herramientas MCP en lenguaje natural. Detalles: Proveedores de Capacidades.
Mejora con el tiempo
oma skill evalmide la mejora que aporta una skill frente a una baseline en tareas held-out.oma skill optimizepropone ediciones que la aumentan, y--applylas conserva (guía de skill-eval).oma harness evolution enable --max-dispatches <n>programa un ciclo nocturno que convierte las ejecuciones fallidas en fixtures de regresión y aplica como overlays del proyecto las mejoras de skills que superan la evaluación. Añade--mode proposepara solo registrarlas.oma emitexporta el código fuente de.agents/como un paquete de Agent Skills, un paquete de Agent Plugins, un marketplace de plugins de Claude Code oAGENTS.md.
Configuración y salvaguardas
- Un único
.agents/oma-config.yaml, propiedad del usuario, sobrevive a las actualizaciones (solooma update --forcelo restablece); encima pueden ir overlays privados.local.yamlo.local.cue.languagedefine el idioma de respuesta. - 13 reglas de proyecto (backend, commit, database, debug, design y más) se cargan como reglas nativas en Claude Code y Cursor, y se indexan en el bloque gestionado de
AGENTS.mdque se escribe para Codex, Qwen Code y Pi. - Las actualizaciones guardan copias de seguridad de la configuración y de las migraciones en
.agents/backup/; las skills y los workflows incluidos se sustituyen en su sitio, así que mantén los cambios locales fuera de ellos.oma uninstall --dry-runmuestra lo que se eliminaría.first-fluke/oma-update-action@v1ejecutaoma updateen CI y abre un PR.
Los 33 skills
| Skill | Qué hace |
|---|---|
| oma-academic-writing | Redacta, revisa y audita prosa académica |
| oma-architecture | Evalúa trade-offs arquitectónicos y define límites de módulos con análisis ADR/ATAM/CBAM |
| oma-backend | Construye APIs, autenticación y acceso a datos en Python, Node.js o Rust |
| oma-brainstorm | Explora ideas contigo antes de que te comprometas a construir |
| oma-coordination | Guía la coordinación manual paso a paso de los agentes PM, frontend, backend, móvil y QA |
| oma-db | Diseña esquemas, migraciones, índices y almacenes vectoriales |
| oma-debug | Encuentra la causa raíz, corrige el bug y escribe un test de regresión |
| oma-design | Construye sistemas de diseño con tokens, accesibilidad y layouts responsive |
| oma-dev-workflow | Automatiza CI/CD, releases y tareas de monorepo |
| oma-docs | Detecta referencias rotas en la documentación, la sincroniza con los cambios de código y señala la deriva de traducción |
| oma-explanation | Convierte un diff, PR, rama o tema en un explicador HTML autónomo, con cuestionario para los cambios de código |
| oma-frontend | Construye UI con React/Next.js o Angular |
| oma-hwp | Convierte archivos HWP, HWPX y HWPML a Markdown |
| oma-image | Genera imágenes y variaciones guiadas por referencias, y puede comparar proveedores de IA lado a lado |
| oma-market | Investiga tu mercado a partir de señales de comunidad y lo encuadra con SWOT, 5F y PESTEL |
| oma-mobile | Construye apps móviles con Flutter, React Native o Swift nativo |
| oma-observability | Enruta el trabajo de observabilidad entre métricas, logs, trazas, SLOs y forense de incidentes |
| oma-orchestration | Ejecuta múltiples agentes en paralelo desde el CLI |
| oma-pdf | Convierte archivos PDF a Markdown |
| oma-pm | Planifica tareas, desglosa requisitos y define contratos de API |
| oma-qa | Revisa los cambios en cuanto a corrección, seguridad OWASP, rendimiento y accesibilidad |
| oma-recap | Convierte tu historial de conversaciones en resúmenes de trabajo organizados por tema |
| oma-refactor | Refactoriza sin cambiar el comportamiento, con selección de hotspots, pruebas de caracterización y commits solo de refactor |
| oma-scholar | Busca literatura académica y genera sidecars de artículos Knows para afirmaciones, evidencias y revisión por pares |
| oma-scm | Gestiona ramas, fusiones, worktrees y Conventional Commits |
| oma-search | Dirige cada consulta a la mejor fuente y puntúa cuánto puedes confiar en el resultado |
| oma-security | Escanea código fuente, habilidades de agentes y componentes MCP; prueba aplicaciones web desplegadas y valida hallazgos |
| oma-skill-creation | Escribe y audita nuevos skills de OMA |
| oma-slide | Genera decks de presentación HTML y los exporta a PDF/PNG/PPTX |
| oma-tf-infra | Aprovisiona infraestructura multi-cloud con Terraform |
| oma-translation | Traduce para que el resultado parezca escrito por un hablante nativo |
| oma-video | Genera videos cortos, explicativos y demos mediante un pipeline de HyperFrames que funciona sin claves |
| oma-voice | Genera voiceovers y transcribe audio en el propio dispositivo |
Compatibilidad
14 destinos del instalador: Claude Code, Codex CLI, Cursor, Antigravity, Qwen Code, Grok, Kiro, Kimi, OpenCode, Pi, GitHub Copilot, Hermes, CommandCode y ZCode. Conecta un runtime que te saltaste con oma link <vendor>. Los runtimes difieren en los hooks que ofrecen; la matriz completa está en Agentes soportados.
- Orca IDE: OMA for Orca añade un panel lateral y acciones en la paleta de comandos (Orca 1.4.197+ con plugins experimentales).
- DeepSeek Harness: OMA for DeepSeek Harness conecta las comprobaciones de OMA mediante un plugin de Cordis. Necesita
omaen tuPATH.
Logos de runtimes (destinos del instalador más Amp y DeepSeek Harness)
nativo = oma escribe los propios archivos de configuración del runtime; adaptador = oma además añade shims de hooks o de agentes. Amp lee .agents/skills/ por sí mismo y no es un destino del instalador.
Diferencias entre hosts: qué runtimes tienen detección de palabras clave y Stop gate
| Runtime | Detección de palabras clave | Stop gate |
|---|---|---|
| Claude Code, Codex CLI, Qwen Code, Grok, Kimi | sí | sí |
| Cursor | sí | sí (vuelve a entrar como mensaje de seguimiento) |
| Antigravity | sí | sí (ejecuta los handlers con bun, no con el wrapper de oma) |
| OpenCode, Pi | sí | best-effort (Pi necesita una build con agent_settled) |
| Kiro | sí | no: Kiro ignora la salida del Stop hook |
| CommandCode | sin prompt hook | sí |
| GitHub Copilot, Hermes, ZCode | sin hooks | sin hooks |
Modelos por agente
model_preset en .agents/oma-config.yaml elige qué modelo usa cada rol de agente. El valor por defecto, auto, sigue la configuración de agentes y modelos del propio runtime en ejecución.
language: en
model_preset: auto # auto | free | antigravity | claude | codex | cursor | kiro | mixed | qwen | <custom_presets key>
# Optional per-agent overrides; they win over the preset
agents:
backend: { model: openai/gpt-6.1-terra, effort: high }
mixedusa Claude para el orquestador, arquitectura, QA, PM y docs, y Codexgpt-6.1-terrapara los roles de implementación, así que necesita tanto Claude Code como Codex CLI.freepasa por un gateway de FreeLLMAPI y necesitaFREELLM_API_KEYy un servidor en ejecución.kirono aparece en el menú del instalador; defínelo en el archivo de configuración.oma doctor --profileimprime el modelo resuelto para cada rol.- Guía completa: Modelos por agente
Verificaciones y evidencias
oh-my-agent comprueba los artefactos de los workflows. En acción muestra un ejemplo del Stop gate.
OMA también registra metadatos de llamadas a herramientas y resúmenes criptográficos de payloads para las ejecuciones del harness rastreadas de Claude Code y Codex, distingue el uso de tokens declarado de las estimaciones y evalúa regresiones de skills. Estas funciones +1 abarcan las capas; la cobertura de trazas varía según el runtime y la ejecución.
Salvo el juez basado en prompt, las comprobaciones mecánicas usan códigos de salida (0 indica éxito) y comprueban si están presentes los archivos requeridos. No consultan a un LLM para valorar si el trabajo parece correcto.
| Mecanismo | Qué comprueba | Fuente |
|---|---|---|
| Stop-hook gate | Durante un workflow persistente, oma goal set --gate test (o lint, typecheck) solo permite la parada cuando el script de package.json con ese nombre sale con código 0 en menos de 25 s. |
persistent-mode.ts |
| Gate de artefactos | oma ralph verify --json comprueba que existan los registros de fase, el JSON del plan y los archivos de resultado de un agente QA distinto y de un agente refactor distinto, cada uno vinculado a ejecuciones de agente registradas. |
ralph.md |
| Juez basado en prompt | No es mecánico: el prompt de /ralph le indica al orquestador que lance un juez con contexto nuevo que vuelva a comprobar cada criterio en cada iteración. Nada comprueba que ese spawn haya ocurrido. |
judge-protocol.md |
| Event log | En una sesión de OMA, cada gate superado, cada gate fallido y cada decisión añaden una línea JSON al events.jsonl de la sesión. |
state-core.ts · event-spec.md |
| Chequeos por agente | oma verify agent <type> ejecuta Scope Check, Charter Preflight, Hardcoded Secrets, TODO/FIXME Comments, Declared outputs y TDD Evidence, además de chequeos por tipo como TypeScript, Any Types, SQL Injection y tests. |
oma verify agent --help |
El Stop hook registra los eventos de gate en la sesión de OMA que se abrió al iniciarse el workflow persistente. La escritura de eventos es best-effort. Si esa sesión no se pudo crear (en stderr aparece
[oma] L1 session activation failed), un gate que falla sigue bloqueando la parada, pero no se escribe ninguna líneagate.failed. Antes de confiar en el rastro, o de mostrarlo en una demo, comprueba queoma state listmuestra una sesión activa; entoncesoma state get <sid>muestra sus eventos.
Límites, detalles y cómo decide el Stop hook
Límites del Stop gate:
- El Stop gate solo se aplica a los workflows persistentes (
/orchestrate,/work,/ultrawork,/ralph). Sinoma goal set --gate, solo vuelve a pedirle al agente que continúe./ultraworkle indica al agente que defina un gate cuando el proyecto tiene una comprobación barata, pero nada lo impone. Ejecutaoma goal set --gate testtú mismo si quieres asegurarte; los demás workflows persistentes nunca definen uno. - Solo se aceptan las palabras clave
typecheck,testylint, y ejecutan el script de package.json con ese nombre. Sin package.json, o sin un script con ese nombre, el gate no se ejecuta. Los proyectos que no son JS necesitan un script wrapper en un package.json. - El bloqueo se libera y se registra como fallido tras 5 refuerzos, 2 horas o el agotamiento de
--budget-minutes. - Presupuestos:
session.quota_caplimita tokens, número de spawns y tokens por vendor; el orquestador rechaza el siguiente spawn cuando se excede alguna dimensión.
Gate de artefactos. Si falta un artefacto, la fase no queda acreditada. La comprobación de refactor también pasa como skip-recorded cuando el log de la sesión registra un motivo para omitir REFINE.
Juez basado en prompt. El prompt de /ralph indica al orquestador que lance al juez como agente independiente con contexto nuevo y le proporcione solo los criterios. El juez debe volver a comprobar todos los criterios en cada iteración, incluidos los que ya pasaron, porque corregir un criterio puede hacer que otro vuelva a fallar. oma ralph verify aplica el gate solo a los artefactos de EXEC; no comprueba si el juez llegó a lanzarse. Si un runtime no puede lanzar subagentes, debe juzgar inline y registrar ralph.judge-inline-fallback. /ralph se detiene tras 5 iteraciones con un informe parcial.
Event log. Encuentra la sesión con oma state list y léela con oma state get <sid>. Cada evento lleva el sello del vendor y del id de sesión del runtime. La ubicación del archivo depende de OMA_HOME, OMA_STATE_HOME, OMA_PROFILE y de las antiguas carpetas de sesión dentro del proyecto, así que no la dejes fija en el código.
Chequeos por agente. Tipos: backend, frontend, mobile, qa, debug, pm. El comando sale con código 1 cuando falla algún chequeo; TODO/FIXME Comments e Inline Styles solo avisan.
backend:<Language> Syntax,SQL Injection(patrones de SQL sin procesar) y<Language> Tests, a partir de los comandos destack/stack.yaml. Sin ese archivo (genéralo con/stack-set) se omiten.frontend: los comandos de sintaxis y de tests destack/stack.yaml(enoma-frontend, o enangular-developersi esa skill está instalada), o TypeScript (tsc --noEmit) y Frontend Tests (Vitest). Inline Styles y Any Types se ejecutan siempre.mobile: los comandos de sintaxis y de tests destack/stack.yaml, o Flutter/Dart Analysis y Flutter Tests.debug: Python Tests (pytest a través de uv) o Frontend Tests (Vitest).pm: PM Plan (el archivo del plan es JSON válido).qa: sin chequeos mecánicos.
flowchart TD
S[Agent tries to stop] --> P{Persistent workflow active?}
P -- no --> A[Stop allowed]
P -- yes --> D{User or agent said workflow done?}
D -- yes --> A
D -- no --> R{Budget spent, state older than 2 h, or 5 blocks reached?}
R -- yes --> F[Stop allowed, logged as gate.failed]
R -- no --> G{Gate set and package.json script exists?}
G -- no --> B1[Blocked: workflow still active]
G -- yes --> X{Script exits 0 within 25 s?}
X -- yes --> OK[Stop allowed, logged as gate.passed]
X -- no --> B2[Blocked with output tail, logged as gate.failed]
Preguntas frecuentes
¿Necesito todas las skills?
No. Consulta Presets de skills; All es la opción segura por defecto.
¿Cómo sé que está funcionando?
oma doctor muestra las skills instaladas y avisa cuando los hooks no encuentran oma. Durante un workflow persistente, oma state list muestra la sesión activa y oma state get <sid> sus eventos de gate.
¿Gasta más tokens?
Normalmente, sí. Las skills solo se cargan cuando una tarea las necesita, pero los workflows multiagente y las revisiones con contexto nuevo gastan más. En el benchmark de un solo prompt, oma costó 1,7 veces lo que Claude Code sin más.
El Stop hook no deja de bloquear. ¿Cómo salgo?
Di "workflow done" (o "workflow complete" / "workflow finished", o su equivalente en los demás idiomas soportados), o borra .agents/state/<workflow>-state-<sid>.json. Si no haces ninguna de las dos cosas, se libera solo tras 5 bloqueos o 2 horas.
¿Cómo actualizo o desinstalo?
oma update actualiza skills, workflows y hooks y conserva tu configuración (--with-new-skills añade las skills nuevas de la release; oma update mcp vuelve a elegir el MCP de navegador). oma uninstall --dry-run muestra lo que se eliminaría; oma uninstall lo elimina y conserva oma-config.yaml, mcp.json y las skills que escribiste tú. Más soluciones: Solución de problemas.
¿Qué deja oh-my-agent en manos del modelo?
La planificación y la elección del siguiente paso quedan en manos del modelo de tu agente; oma no tiene un grafo de workflow fijo. Lo que oma impone fuera del modelo: guardarraíles de herramientas (los guards de secretos y de búsqueda), presupuestos, límites de reintentos y de parada, un event log y, cuando defines un gate, una parada que espera a que pasen tus propias comprobaciones.
Más información
- Sitio de documentación: guías, tutoriales y referencia del CLI. Empieza por Inicio rápido e Instalación.
- Por qué oh-my-agent: cuándo elegirlo y qué concesiones implica
- Informe de Benchmark: cómo se compara con superpowers, ECC y oh-my-claudecode en un prompt, con método, puntuaciones, capturas y salvedades
- Agentes Soportados: matriz de soporte entre runtimes
- Documentación Detallada: spec técnico y arquitectura
- Proveedores de Capacidades: configuración experimental de Gortex y Honcho, enrutamiento y límites
- Matriz de Compatibilidad de Skills: contenido nativo de las skills, referencias y contratos de respuesta en Claude y Codex
Marca el proyecto con una estrella en GitHub:
gh api --method PUT /user/starred/first-fluke/oh-my-agentPlantilla starter: fullstack-starter
Star History
Referencias
Investigación en la que se basa (7 artículos)
- Li, X., Liu, Y., Chen, W., You, B., Di, Z., He, Y., Zheng, S., Choe, K. W., Sun, J., Wang, S., Tao, C., Li, B., Zhao, X., Geng, H., Wu, X., Zhou, J., Chen, X., Xing, H., Li, Y., … Song, D. (2026). SkillsBench: Benchmarking how well agent skills work across diverse tasks (Version 4) [Preprint]. arXiv. https://doi.org/10.48550/arXiv.2602.12670
- Yu, G., & Wang, X. (2026). Knows: Agent-native structured research representations (Version 1) [Preprint]. arXiv. https://doi.org/10.48550/arXiv.2604.17309
- Liang, Q., Wang, H., Liang, Z., & Liu, Y. (2026). From skill text to skill structure: The scheduling-structural-logical representation for agent skills (Version 4) [Preprint]. arXiv. https://doi.org/10.48550/arXiv.2604.24026
- Chen, C., Yu, Q., Gu, Y., Huang, Z., Li, H., Liu, H., Liu, S., Liu, J., Peng, D., Wang, J., Yan, Z., Meng, F., Qin, E., Che, C., & Hu, M. (2026). The scaling laws of skills in LLM agent systems (Version 1) [Preprint]. arXiv. https://doi.org/10.48550/arXiv.2605.16508
- Tang, L., Rashtchian, C., Ferng, C.-S., Tomkins, A., Juan, D.-C., & Vu, T. (2026). WikiSkill: Compiling agent experience into persistent knowledge for skill evolution [Preprint]. arXiv. https://doi.org/10.48550/arXiv.2608.27454
- Huang, Z., Xu, J., Yang, Y., Gong, Z., Yang, Q., Tian, M., Wang, X., Lv, C., Gao, X., Dai, Q., Liu, B., Qiu, K., Yang, X., Chen, D., Zheng, X., & Luo, C. (2026). From raw experience to skill consumption: A systematic study of model-generated agent skills [Preprint]. arXiv. https://doi.org/10.48550/arXiv.2605.23899
- Hong, D. B., Imani, A., & Ahmed, I. (2026). From anatomy to smells: An empirical study of SKILL.md in agent skills (Version 2) [Preprint]. arXiv. https://doi.org/10.48550/arXiv.2607.01456
Licencia
MIT
Explorar proyectos relacionados
codecrafters-io/build-your-own-x
Domina la programación recreando desde cero tus tecnologías favoritas.
561,398 estrellaspublic-apis/public-apis
Una lista colectiva de API gratuitas
497,679 estrellasmorluto/rea
Ingeniería inversa de cualquier cosa con agentes, desde el comportamiento de la aplicación hasta los binarios nativos.
447,495 estrellasopenclaw/openclaw
La IA que de verdad hace las cosas. Cualquier sistema operativo y cualquier plataforma. Al estilo langosta. 🦞
394,261 estrellas