1. Introducción
En este codelab, te mostraremos cómo configurar un divertido equipo de desarrolladores de IA autónomos asistido por IA directamente en tu computadora con el IDE de Antigravity. Para ello, guiarás un requisito a través de todo su ciclo de vida, desde la especificación técnica hasta la implementación final, con un potente flujo de trabajo skills.md y agents.md.
En lugar de estar bloqueados en una pila tecnológica específica o escribir secuencias de comandos de organización complejas de Python, usaremos un enfoque amigable sin código en el que tus requisitos fluyen a través de un ciclo automatizado potenciado por tres principios fundamentales de Antigravity:
agents.md: Para definir exactamente quién está en tu equipo de IA (administrador de productos, frontend, QA, DevOps).- Skills y skills.md: Un directorio dedicado en el que defines capacidades técnicas sólidas y reglas de transferencia de artefactos como archivos modulares
.md. - Workflows (workflows/): Para definir comandos de barra personalizados que encadenen sin problemas a los miembros de tu equipo de IA en una canalización autónoma.
Si combinas estos tres elementos de forma nativa en Antigravity, guiarás a Gemini para que automatice por completo el desarrollo de una aplicación lista para producción de principio a fin.
Qué aprenderás
- Inicializar el lugar de trabajo: Configura tu proyecto para que Antigravity lo comprenda en profundidad.
- Definir el equipo: Crea un archivo
agents.mdpara establecer tus arquetipos de IA especializados. - Programar las habilidades: Crea archivos
.mddetallados en un directorioskills/para definir reglas técnicas estrictas y bucles de reelaboración iterativos. - Definir flujos de trabajo personalizados: Crea un comando de barra
/startcyclepara automatizar el flujo de trabajo del estudio. - Iniciar la reacción en cadena: Usa un solo comando para ejecutar automáticamente toda la canalización de varios agentes de manera eficiente.
Qué probarás
- Cómo separar la ingeniería de instrucciones de IA del código de la aplicación
- Cómo construir un agente que se detenga de forma activa para interpretar los comentarios y las ediciones del usuario dentro de los archivos Markdown generados
- Cómo crear habilidades dinámicas de generación e implementación de código independientes del lenguaje
- Cómo construir comandos de macro personalizados (flujos de trabajo) en un IDE de agente
Requisitos
- Antigravity
- Navegador Chrome
- Node.js (v18+) o Python 3.14 instalados de forma local
- CLI de gcloud instalada de forma local (opcional)
Antes de comenzar
- Asegúrate de tener instalado el IDE de Antigravity (disponible en antigravity.google).
- Abre el IDE de Antigravity y asegúrate de tener inicializado un lugar de trabajo nuevo y exclusivo.
- Ten una terminal abierta mientras trabajas en el modo Editor.
2. Inicializar el lugar de trabajo
Como Antigravity comprende de forma nativa los archivos de flujo de trabajo colocados en el directorio .agents, configurar tu canalización de desarrolladores autónomos es tan simple como crear algunas carpetas estándar.
Puedes configurar tu lugar de trabajo de la siguiente manera:
- Abre el IDE de Antigravity.
- Abre el Administrador de agentes . En cualquier momento, puedes alternar entre el Administrador de agentes y el editor presionando CMD+E (Mac) o CTRL+E (Windows), o bien a través de los botones Abrir editor y Abrir administrador de agentes en la parte superior derecha de la barra de menú. .
- Haz clic en + Abrir lugar de trabajo.
Para iniciar una conversación nueva en un lugar de trabajo, selecciona el lugar de trabajo deseado en la pestaña Iniciar conversación o presiona el botón Más junto al nombre del lugar de trabajo en la barra lateral.

- Haz clic en Abrir lugar de trabajo nuevo, asígnale el nombre
skills-codelaby selecciona un directorio local. Esto garantiza que el agente tenga una carpeta raíz específica para crear archivos sin desordenar otros proyectos. Una vez que termines, ve a la vista Editor y, luego, a los pasos (5), (6) y (7).

- Haz clic con el botón derecho y crea una carpeta
skills-codelab. - Dentro de ella, crea dos directorios:
production_artifactsyapp_build. - Crea un directorio
.agentsy, dentro de él, crea carpetasworkflowsyskills.
(Como alternativa) Si prefieres usar la terminal, puedes generar esta estructura de inmediato ejecutando lo siguiente:
mkdir skills-codelab && cd skills-codelab
mkdir -p .agents/workflows .agents/skills
mkdir production_artifacts app_build
Asegúrate de que tu carpeta se vea así:

¿Qué hacen estas carpetas nuevas?
.agents/: Es un directorio especial reconocido de forma nativa por Antigravity. Si colocas archivos aquí, extiendes el comportamiento de IA integrado de Antigravity.skills/: Esta carpeta se usa para almacenar manuales de instrucciones técnicas específicas (archivos.md) para tu IA. Esto le indica a la IA cómo realizar tareas específicas, como escribir código o implementar apps, y reemplaza una instrucción masiva y confusa por pasos modulares.production_artifacts/: Esta es nuestra carpeta compartida en la que los miembros de nuestro equipo automatizado dejarán archivos de forma intencional para que los lea el siguiente agente.app_build/: Es el lugar de trabajo designado para el código de la aplicación real. El agente de ingeniero de pila completa generará todo el código (comopackage.json,app.py, componentes de React) y lo guardará directamente en esta carpeta, lo que aísla la fuente de la aplicación de las instrucciones de la IA.
3. Definir el equipo (agents.md)
Primero, debemos indicarle a Antigravity quién está trabajando en este proyecto. En lugar de mantener las instrucciones en cuatro carpetas de proyecto anidadas diferentes, centralizamos la identidad de nuestro equipo. Crea un archivo en .agents/agents.md:
¿Por qué necesitamos diferentes arquetipos?
Cuando le pides a una IA que cree una aplicación completa desde cero, puede abrumarse fácilmente si la obligas a ser el arquitecto, el codificador, el evaluador y el líder de implementación al mismo tiempo. Si centralizas estas funciones en agents.md, evitas que la IA se confunda. El PM se enfoca solo en los requisitos, el ingeniero solo en la generación de código y el QA solo en la corrección de errores. Obtienes expertos especializados para cada etapa de tu canalización.
El archivo agents.md resuelve este problema centralizando los diferentes arquetipos de tu equipo:
- El administrador de productos (
@pm): Se enfoca solo en el panorama general. Escribe el archivo Technical_Specification.md y administra el proceso de aprobación de ida y vuelta contigo (el humano). - El ingeniero de pila completa (
@engineer): No se preocupa por la planificación; solo toma la especificación del PM y se enfoca por completo en escribir código de alta calidad en el lenguaje que apruebes. - El ingeniero de QA (
@qa): Actúa como un conjunto de ojos nuevos. En lugar de escribir funciones nuevas, su único objetivo es encontrar dependencias faltantes, errores de sintaxis o errores de lógica en el código del ingeniero. - El maestro de DevOps (
@devops): Se enfoca estrictamente en el entorno de ejecución. Sabe cómo leer la terminal, instalar paquetes (npm install, pip install) y iniciar el servidor local.
# 🤖 The Autonomous Development Team
## The Product Manager (@pm)
You are a visionary Product Manager and Lead Architect with 15+ years of experience.
**Goal**: Translate vague user ideas into comprehensive, robust, and technology-agnostic Technical Specifications.
**Traits**: Highly analytical, user-centric, and structured. You never write code; you only design systems.
**Constraint**: You MUST always pause for explicit user approval before considering your job done. You are highly receptive to user feedback and will enthusiastically re-write specifications based on inline comments.
## The Full-Stack Engineer (@engineer)
You are a 10x senior polyglot developer capable of adapting to any modern tech stack.
**Goal**: Translate the PM's Technical Specification into a beautiful, perfectly structured, production-ready application.
**Traits**: You write clean, DRY, well-documented code. You care deeply about modern UI/UX and scalable backend logic.
**Constraint**: You strictly follow the approved architecture. You do not make assumptions—if the spec says Python, you use Python. You always save your code into the `app_build/` directory.
## The QA Engineer (@qa)
You are a meticulous Quality Assurance engineer and security auditor.
**Goal**: Scrutinize the Engineer's code to guarantee production-readiness.
**Traits**: Detail-oriented, paranoid about security, and relentless in finding edge cases.
**Focus Areas**: You aggressively hunt for missing dependencies in configurations, unhandled promises, syntax errors, and logic bugs. You proactively fix them.
## The DevOps Master (@devops)
You are the elite deployment lead and infrastructure wizard.
**Goal**: Take the final code in `app_build/` and magically bring it to life on a local server.
**Traits**: You excel at terminal commands and environment configurations.
**Expertise**: You fluently use tools like `npm`, `pip`, or native runners. You install all necessary modules seamlessly and provide the local URL directly to the user so they can see the final product!
Observa cómo definimos los objetivos, los rasgos y las restricciones para cada arquetipo.
- Los objetivos le indican al agente cuál es su responsabilidad exacta en la canalización.
- Los rasgos le dan una personalidad de comportamiento y le indican cómo actuar (p.ej., "desarrollador sénior 10x" o "paranoico sobre la seguridad").
- Las restricciones actúan como estrictas barreras de protección (p.ej., "nunca escribas código", "sigue estrictamente la arquitectura aprobada").
Si estructuras tus instrucciones de esta manera, se reducen drásticamente las alucinaciones de la IA y se garantiza que el agente cumpla estrictamente con el flujo de trabajo requerido.
Asegúrate de que tu carpeta se vea así:
4. Programar las habilidades especializadas (skills/)
La ingeniería de instrucciones detalladas es la clave de la magia sin código. Crearemos archivos de texto muy específicos para cada habilidad, lo que garantizará que el PM realice un bucle hacia atrás de forma activa si solicitas una reelaboración.
1. Habilidad de especificación
Esta habilidad actúa como punto de partida. El agente de PM la usa para entrevistarte y desarrollar la arquitectura antes de que se escriba cualquier código, lo que evita horas de codificación potencialmente desperdiciada.
Crea .agents/skills/write_specs.md:
# Skill: Write Specs
## Objective
Your goal as the Product Manager is to turn raw user ideas into rigorous technical specifications and **pause for user approval**.
## Rules of Engagement
- **Artifact Handover**: Save all your final output back to the file system.
- **Save Location**: Always output your final document to `production_artifacts/Technical_Specification.md`.
- **Approval Gate**: You MUST pause and actively ask the user if they approve the architecture before taking any further action.
- **Iterative Rework**: If the user leaves comments directly inside the `Technical_Specification.md` or provides feedback in chat, you must read the document again, apply the requested changes, and ask for approval again!
## Instructions
1. **Analyze Requirements**: Deeply analyze the user's initial idea request.
2. **Draft the Document**: Your specification MUST include:
- **Executive Summary**: A brief, high-level overview.
- **Requirements**: Functional and non-functional requirements.
- **Architecture & Tech Stack**: Suggest the absolute best framework (e.g., Python/Django, Node/Express, React/Next.js) for the job and outline the layout/API structure.
- **State Management**: Briefly outline how data should flow.
3. Save the document to disk.
4. **Halt Execution**: Explicitly ask the user: "Do you approve of this tech stack and specification? You can safely open `Technical_Specification.md` and add comments or modifications if you want me to rework anything!" Wait for their "Yes" or feedback before the sequence continues!
Observa la estricta "puerta de aprobación". En lugar de compilar toda la app de una sola vez y esperar que sea correcta, se le indica explícitamente a la IA que se detenga, espere tu decisión final y vuelva a leer el documento de forma activa si dejaste comentarios intercalados.
2. Habilidad de generación de pila completa
Esta habilidad es el compilador principal. El agente de ingeniero lee la pila tecnológica exacta de la especificación del PM y crea de forma dinámica todos los archivos de código de frontend y backend necesarios.
Crea .agents/skills/generate_code.md:
# Skill: Generate Code
## Objective
Your goal as the Full-Stack Engineer is to write the physical code based entirely on the PM's approved specification.
## Rules of Engagement
- **Dynamic Coding**: You are not limited to HTML/JS. You must write code in the exact language/framework defined in the approved `Technical_Specification.md`.
- **Save Location**: Save all your raw code, accurately retaining necessary folder structures, directly inside `app_build/`.
## Instructions
1. **Read the Spec**: Open and carefully study `production_artifacts/Technical_Specification.md`.
2. **Scaffold Structure**: Generate all core backend and frontend application files.
3. **Output**: Dump your code perfectly into the `app_build/` directory. Do not skip or summarize any code blocks. Ensure all `package.json` or `requirements.txt` files are present.
Esta habilidad no tiene una pila predefinida (como Next.js o Django). Se basa explícitamente en la pila tecnológica dinámica elegida por el PM. Esto significa que tu habilidad de generación de código único funciona para cualquier framework que hayas aprobado en la especificación.
3. Habilidad de auditoría
Esta habilidad proporciona una red de seguridad. El agente de QA actúa como un revisor independiente, con instrucciones específicas para buscar dependencias faltantes y errores de lógica en el código recién generado.
Crea .agents/skills/audit_code.md:
# Skill: Audit Code
## Objective
Your goal as the QA Engineer is to ensure the generated code is perfectly functional natively.
## Rules of Engagement
- **Target Context**: Your focus area is the `app_build/` directory.
## Instructions
1. **Assess Alignment**: Compare the raw code against the approved `Technical_Specification.md`.
2. **Bug Hunting**: Find and fix dependency mismatches, unhandled errors, and logic breaks.
3. **Commit Fixes**: Overwrite any flawed files in `app_build/` with your polished revisions.
GenAI comete errores sintácticos pequeños de forma natural cuando escribe grandes cantidades de código. Si tenemos una habilidad de auditoría separada cuyo único trabajo es buscar errores, aumentamos drásticamente la tasa de éxito de la ejecución de la aplicación final.
4. Habilidad de implementación dinámica
Esta habilidad le da vida a la aplicación. El agente de DevOps determina qué tipo de app se compiló (Node, Python, etc.) y ejecuta de forma segura los comandos de la terminal necesarios para instalar módulos y iniciar el servidor.
Crea .agents/skills/deploy_app.md:
# Skill: Deploy App
## Objective
Your goal as DevOps is to intelligently package the application and fire up a server based on the chosen stack.
## Instructions
1. **Stack Detection**: Inspect the `Technical_Specification.md` and the files in `app_build/` to figure out what stack is being used.
2. **Install Dependencies**: Use your native terminal to navigate into `app_build/` and run `npm install`, `pip install -r requirements.txt`, or whatever is appropriate!
3. **Host Locally**: Execute the appropriate native terminal command (e.g., `npm run dev`, `python3 app.py`) to start a background server.
4. **Report**: Output the clickable localhost link to the user and celebrate a successful launch!
Aprovechamos la capacidad del IDE para ejecutar comandos de terminal nativos de forma segura.
El agente actúa como un ingeniero de DevOps real y descubre de forma dinámica qué comando de instalación ejecutar en función de los archivos que realmente ve en la carpeta app_build/.
(Opcional) 5. Habilidad de implementación de Cloud Run
Si quieres llevar tu aplicación directamente a la producción en lugar de solo ejecutarla de forma local, puedes crear una habilidad de implementación alternativa. Como Antigravity opera directamente en tu máquina local, la IA puede usar sin problemas tu CLI de gcloud autenticada de forma local.
Crea .agents/skills/deploy_cloud_run.md:
# Skill: Deploy to Cloud Run
## Objective
Your goal as DevOps is to package the application into a container and deploy it to Google Cloud Run.
## Instructions
1. **Verify Environment**: Ensure the necessary files for the chosen tech stack are in `app_build/`.
2. **Containerize**: Use the IDE terminal to navigate to `app_build/` and run `gcloud run deploy --source .`.
3. **Configure**: If prompted by the CLI tool, automatically select the default region and allow unauthenticated invocations so the web app is public.
4. **Report**: Output the live production Google Cloud Run URL to the user!
5. Definir un comando de barra personalizado
¿Qué hace un comando de barra personalizado?
Si guardas este archivo de texto dentro de .agents/workflows/ , registras un comando nuevo directamente en la interfaz de chat de Antigravity.
En lugar de solicitarle a la IA de forma manual paso a paso ("Actúa como el PM y escribe una especificación..." y, luego, "Bien, ahora actúa como el ingeniero y escribe código..."), el comando /startcycle actúa como un organizador automatizado. Encadena sin problemas los arquetipos definidos y sus habilidades específicas en una secuencia continua y automatizada. Crearemos una sola macro que controle la transferencia entre agentes y administre de forma explícita el bucle de reelaboración para la fase de PM.
Crea .agents/workflows/startcycle.md:
---
description: Start the Autonomous AI Developer Pipeline sequence with a new idea
---
When the user types `/startcycle <idea>`, orchestrate the development process strictly using `.agents/agents.md` and `.agents/skills/`.
### Execution Sequence:
1. Act as the **Product Manager** and execute the `write_specs.md` skill using the `<idea>`.
*(Wait for the user to explicitly approve the spec. If the user provides feedback or adds comments directly to the Markdown file, act as the PM again to re-read and revise the document. Loop this step until they type "Approved").*
2. Shift context, act as the **Full-Stack Engineer**, and execute the `generate_code.md` skill.
3. Shift context, act as the **QA Engineer**, and execute the `audit_code.md` skill.
4. Shift context, act as the **DevOps Master**, and execute the `deploy_app.md` skill.
Asegúrate de que tu carpeta se vea así:

6. Inicia la reacción en cadena
Con tu equipo y tus reglas definidos oficialmente en Antigravity, puedes activar todo el flujo de trabajo sin esfuerzo.
Solicita a Antigravity lo siguiente:
- En el cuadro de chat del Administrador de agentes, escribe / para abrir el menú de comandos personalizados. Selecciona o escribe
startcycle. - Dale tu idea:
/startcycle "I need a fast, real-time chat application for customer support on my ecommerce website."
Siéntate y colabora:
- Gemini se convierte en el PM, redacta una especificación sólida y te pide aprobación.
- Abre
Technical_Specification.mden el editor de tu IDE, agrega algunas notas (como "Usemos Python en lugar de Node") y dile al agente que lo reelabore. Revisará el archivo de forma autónoma. - Una vez que lo apruebes, Gemini cambiará de forma nativa el contexto al ingeniero y usará la especificación aprobada para escribir el código de backend o frontend.
- Se convierte en el ingeniero de QA, corrige cualquier error y guarda el código final.
- Por último, el maestro de DevOps instala módulos de forma dinámica y publica la aplicación en tu navegador.
Ejemplo de ejecución de Technical_Specification.md y espera de aprobaciones o comentarios

Después de la aprobación del usuario sobre la instrucción, comienza todo el flujo de trabajo.

7. Resumen y próximos pasos
¡Felicitaciones! Aprendiste a insertar bucles de iteración colaborativa y generación de aplicaciones dinámicas de pila completa en una canalización de agente.
En este codelab, abordamos lo siguiente:
- Cómo mapear arquetipos de IA con .agents/agents.md
- Cómo crear bucles de reelaboración colaborativa dentro de
.agents/skills/write_specs.mdpara que el agente lea tus comentarios intercalados de Markdown - Cómo construir habilidades
.mddinámicas que escriban código en cualquier framework (Python, React) según la especificación aprobada