Cómo usar las habilidades de los agentes de IA (con la CLI de Antigravity y Agent Skills para Firebase)

1. Introducción

Foto de portada del lab de Agent Skills

En este lab, aprenderás a crear Agent Skills para proporcionar a los agentes de IA acceso a conocimientos y flujos de trabajo personalizados. Lo crearás como una habilidad local a la que se puede acceder desde la CLI de Antigravity.

Actividades

  • Crea tus propias Agent Skills para tus cosas favoritas.
  • Usa la CLI de Antigravity para consultar tu habilidad.
  • Instala Agent Skills oficiales para Firebase y úsalas para compilar e implementar una app.

Qué aprenderás

  • Cómo estructurar una habilidad
  • Cómo escribir un archivo SKILL.md
  • Cómo usar habilidades locales con la CLI de Antigravity

2. Configuración del proyecto

  1. Si aún no tienes una Cuenta de Google, debes crear una Cuenta de Google.
    • Usa una cuenta personal en lugar de una cuenta de trabajo o institución educativa. Las cuentas de trabajo y de instituciones educativas pueden tener restricciones que te impidan habilitar las APIs necesarias para este lab.
  2. Accede a la consola de Google Cloud.
  3. Habilita la facturación en Cloud Console.
    • Completar este lab debería costar menos de USD 1 en recursos de Cloud.
    • Puedes seguir los pasos al final de este lab para borrar recursos y evitar cargos adicionales.
    • Los usuarios nuevos pueden acceder a la prueba gratuita de USD 300.
  4. Crea un proyecto nuevo o elige reutilizar uno existente.
    • Si ves un error sobre la cuota del proyecto, reutiliza un proyecto existente o bórralo para crear uno nuevo.

3. Abre el editor de Cloud Shell

  1. Haz clic en este vínculo para navegar directamente al editor de Cloud Shell.
  2. Si se te solicita autorización en algún momento, haz clic en Autorizar para continuar. Haz clic para autorizar Cloud Shell
  3. Si la terminal no aparece en la parte inferior de la pantalla, ábrela:
    • Haz clic en Ver.
    • Haz clic en TerminalAbre una terminal nueva en el editor de Cloud Shell
  4. En la terminal, configura tu proyecto con este comando:
    • Formato:
      gcloud config set project [PROJECT_ID]
      
    • Ejemplo:
      gcloud config set project lab-project-id-example
      
    • Si no recuerdas el ID de tu proyecto, haz lo siguiente:
      • Puedes enumerar todos los IDs de tus proyectos con lo siguiente:
        gcloud projects list | awk '/PROJECT_ID/{print $2}'
        
      Establece el ID del proyecto en la terminal del editor de Cloud Shell
  5. Deberías ver el siguiente mensaje:
    Updated property [core/project].
    
    Si ves una WARNING y se te pregunta Do you want to continue (Y/n)?, es probable que hayas ingresado el ID del proyecto de forma incorrecta. Presiona n, presiona Enter y vuelve a ejecutar el comando gcloud config set project.

4. Crea tu habilidad personalizada

Agent Skills son directorios que contienen, como mínimo, un archivo SKILL.md que proporciona instrucciones y conocimientos a un agente de IA. En esta sección, crearás una habilidad que le enseñe a la CLI de Antigravity sobre tus cosas favoritas.

  1. Crea un directorio para este lab y navega hasta él:
    mkdir ~/agent-skills-lab && cd ~/agent-skills-lab
    
  2. Crea un directorio para la habilidad de tu proyecto:
    mkdir -p ~/agent-skills-lab/.agents/skills/my-favorite-things
    
  3. Crea y abre un archivo SKILL.md nuevo para tu habilidad:
    cloudshell edit ~/agent-skills-lab/.agents/skills/my-favorite-things/SKILL.md
    
    El comando cloudshell edit abrirá el archivo SKILL.md en el editor sobre la terminal.
  4. Agrega el siguiente contenido al archivo SKILL.md:
    ---
    name: my-favorite-things
    description: Provides personal information about my favorite color, food, and programming language. Use this skill when the user asks questions about my personal preferences or favorite things.
    ---
    
    # Knowledge
    
    - **Favorite Color:** Blue
    - **Favorite Food:** Pizza
    - **Favorite Programming Language:** Python
    
    If asked about one of my favorite things, please respond with the information provided above.
    

Con solo un archivo SKILL.md, creaste tu primera habilidad. Es hora de usar esta habilidad en la CLI de Antigravity.

5. Usa tu habilidad desde la CLI de Antigravity

Ahora que creaste correctamente una habilidad, la CLI de Antigravity ya puede detectarla porque se encuentra en el directorio .agents/skills.

  1. Inicia la CLI de Antigravity:
    agy
    
  1. Autentica con la CLI de Antigravity: Durante el inicio inicial, se requiere autenticación. Selecciona OAuth (presiona Enter).Pantalla de autenticación de Antigravity
  2. Haz clic en el vínculo (si no se puede hacer clic, destaca la URL en Cloud Shell para copiarla y, luego, pégala en tu navegador).
  3. Accede a tu Cuenta de Google
  4. Copia el código
  5. Pega el código en la terminal del editor de Cloud Shell.
  6. Presiona Enter.Mensaje de código de seguridad de Antigravity
  7. Presiona Enter para aceptar algunos parámetros de configuración predeterminados.
  8. Haz que la CLI de Antigravity enumere las habilidades disponibles en su contexto.
    /skills
    
    Deberías ver my-favorite-things en la lista de habilidades disponibles.Mensaje de código de seguridad de Antigravity
  9. Presiona ESC para salir de la vista de habilidades.
  10. Pregúntale a la CLI de Antigravity sobre tu color favorito:
    What is my favorite color?
    
    La CLI de Antigravity debería usar la habilidad my-favorite-things para responder tu pregunta. Si se te solicita, permite que la CLI de Antigravity use la habilidad.

El resultado debería mostrar que la CLI de Antigravity usó tu habilidad y respondió con algo como "Azul" o "Mi color favorito es el azul".

¡Lo hiciste! Creaste correctamente una habilidad y la probaste con la CLI de Antigravity.

Cuando estés listo para finalizar la sesión, escribe /exit y, luego, presiona Enter para salir de la CLI de Antigravity.

6. (Opcional) Compila e implementa una aplicación en Firebase Hosting

Además de crear tus propias habilidades, puedes instalar habilidades creadas por otros. Esto demuestra el uso de habilidades portátiles, módulos autónomos de conocimiento, instrucciones y flujos de trabajo que se pueden compartir y reutilizar fácilmente.

Agent Skills para Firebase son un excelente ejemplo de estos módulos portátiles. Están diseñados para ayudar a los asistentes de IA a comprender las prácticas recomendadas de Firebase y ejecutar tareas complejas con mayor precisión y un menor costo de tokens.

Ahora usa Agent Skills para Firebase para crear una aplicación web "To Do", con autenticación de usuario y una base de datos, y, luego, impleméntala en Firebase Hosting.

Configura tu proyecto

  1. Si aún estás en la CLI de Antigravity, escribe /exit para salir.
  2. Crea un directorio nuevo para tu proyecto y navega hasta él:
    mkdir ~/todo-app && cd ~/todo-app
    
  3. Accede a Firebase con tu Cuenta de Google. Usa la marca --no-localhost, ya que estás en Cloud Shell:
    firebase login --no-localhost
    
    1. Interactúa con los mensajes de la CLI:
      • Cuando se te pregunte Enable Gemini in Firebase features?, escribe Y (para Sí) y presiona Enter.
      • Cuando se te pregunte Allow Firebase to collect CLI and Emulator Suite usage and error reporting information?, escribe Y (para Sí) y presiona Enter.
    2. Autoriza en el navegador:
      • Verás una URL en la terminal. Haz clic en el vínculo (si no se puede hacer clic, destaca la URL en Cloud Shell para copiarla y, luego, pégala en tu navegador) para abrir la página de acceso en una pestaña nueva del navegador.
      • Paso 1 de 3 (Confirmar comando): Haz clic en Yes, I just ran this command.
      • Paso 2 de 3 (Confirmar ID de sesión): Asegúrate de que el ID de sesión coincida con lo que se muestra en tu terminal y, luego, haz clic en Yes, this is my session ID.
      • Paso 3 de 3 (Copiar código): Haz clic en Copiar para copiar el código de autorización en el portapapeles.
    3. Completa el acceso:
      • Vuelve a la terminal de Cloud Shell y pega el código de autorización en el mensaje ? Enter authorization code:.
      • Presiona Enter.
    Deberías ver un mensaje de éxito: ✔ Success! Logged in as .

Instala Agent Skills para Firebase

Ahora que creaste el directorio de tu proyecto, debes instalar Agent Skills para Firebase en él.

Puedes instalar Agent Skills para Firebase con la CLI de habilidades en tu terminal:

npx skills add firebase/agent-skills

Durante la instalación, se te pedirá que selecciones las habilidades que deseas instalar. Usa las teclas de flecha para navegar por la lista y la barra espaciadora para seleccionar estas habilidades.

  • firebase-auth-basics
  • firebase-basics
  • firebase-firestore
  • firebase-hosting-basics
  • firebase-security-rules-auditor

Seleccionar cinco habilidades de Firebase

Para los mensajes posteriores, puedes aceptar los valores predeterminados de forma segura presionando Enter.

Este comando descargará e instalará habilidades, incluidas firebase-basics y firebase-hosting-basics, lo que las hará disponibles para su uso en la CLI de Antigravity junto con tu habilidad my-favorite-things.

Para obtener más información sobre Agent Skills para Firebase, consulta las habilidades disponibles.

Crea e implementa una app web básica

  1. Habilita las APIs obligatorias para tu proyecto:
    gcloud services enable \
      cloudresourcemanager.googleapis.com \
      firebase.googleapis.com
    
  2. Habilita Firebase en tu proyecto actual de Google Cloud:
    firebase projects:addfirebase ${GOOGLE_CLOUD_PROJECT}
    
  3. Inicia la CLI de Antigravity:
    agy
    
  4. Pídele a la CLI de Antigravity que genere un index.html básico:
    Generate an index.html file with the content "Hello Firebase Hosting" and
    deploy the application to Firebase Hosting using the current Google Cloud
    Project.
    
    La CLI de Antigravity solicitará permisos a medida que genere e implemente la aplicación. Presiona Enter para permitir que lo haga. Es posible que debas escribir "approve" y presionar Enter.La CLI de Antigravity debería usar Agent Skills para Firebase para crear e implementar tu sitio web. Guía al agente junto con las aprobaciones según sea necesario.

Cuando termine la implementación, debería proporcionar una URL para tu app web. Usa ctrl+click (Windows/Linux) o cmd+click (Mac) para abrir vínculos en la terminal del editor de Cloud Shell. Visita la URL de tu app implementada.

Agrega Firebase Authentication

  1. Inicia la CLI de Antigravity si aún no lo hiciste:
    agy
    
    La CLI de Antigravity puede hacer preguntas como "¿Confías en esta carpeta?". Presiona Enter para aceptar los valores predeterminados.
  2. Ahora, pídele a la CLI de Antigravity que agregue Acceso con Google:
    Generate HTML, CSS, and Javascript for a single page application.
    It should use Google Sign-in with Firebase Authentication.
    A user should be able to sign in with their Google Account.
    Deploy when you are done and give the URL to me.
    
    La CLI de Antigravity puede solicitar crear o actualizar archivos como index.html, style.css y script.js. Permite que lo haga. La CLI de Antigravity puede pedirte que realices algunas acciones en Firebase console. La CLI puede realizar la mayoría de estas acciones si le pides que lo intente, pero es posible que debas completar los pasos de forma manual (como habilitar Google OAuth) si tu instancia de Cloud Shell tiene instalada una versión anterior de Firebase CLI.

Cuando termine la implementación, debería proporcionar una URL para tu app web. Usa ctrl+click (Windows/Linux) o cmd+click (Mac) para abrir vínculos en la terminal del editor de Cloud Shell. Visita la URL de tu app implementada.

Para ver los cambios más recientes, es posible que debas realizar una "actualización forzada" con ctrl+shift+R (Windows/Linux) o cmd+shift+R (Mac).

Agrega Cloud Firestore

  1. Inicia la CLI de Antigravity si aún no lo hiciste:
    agy
    
    La CLI de Antigravity puede hacer preguntas como "¿Confías en esta carpeta?". Presiona Enter para aceptar los valores predeterminados.
  2. Pídele a la CLI de Antigravity que agregue Firestore para guardar tareas:
    Update the application to save tasks in Cloud Firestore for the signed-in user.
    A user should be able to add new tasks and see a list of their tasks.
    Deploy when you are done and give the URL to to me.
    
    La CLI de Antigravity actualizará los archivos. Permite que lo haga.

Cuando termine la implementación, debería proporcionar una URL para tu app web. Usa ctrl+click (Windows/Linux) o cmd+click (Mac) para abrir vínculos en la terminal del editor de Cloud Shell. Visita la URL de tu app implementada.

Para ver los cambios más recientes, es posible que debas realizar una "actualización forzada" con ctrl+shift+R (Windows/Linux) o cmd+shift+R (Mac).

Si tu aplicación no funciona como se espera, sigue trabajando con la CLI de Antigravity para obtener la funcionalidad que esperas. Ejemplo: shell Hide the task form when the user is logged out. Update the security rules so the user can see their TODOs.

Sigue experimentando con el lab para agregar las funciones que te gustaría ver en tu nueva aplicación de Firebase.

7. Conclusión

¡Felicitaciones! Creaste correctamente una habilidad y aprendiste a instalar habilidades adicionales para la CLI de Antigravity.

(Opcional) Liberar espacio

Si deseas realizar una limpieza, puedes borrar el proyecto de Cloud para evitar que se generen cargos adicionales.

Si lo deseas, borra el proyecto:

gcloud projects delete $GOOGLE_CLOUD_PROJECT

También puedes borrar los recursos innecesarios del disco de Cloud Shell para liberar espacio.

  1. Borra el directorio del lab (esto quita la habilidad y la app):
    rm -rf ~/agent-skills-lab
    
  2. Borra el directorio de la aplicación "To Do" (si lo creaste afuera):
    rm -rf ~/todo-app
    

Si alguna vez necesitas restablecer Cloud Shell a su estado predeterminado, puedes seguir la documentación oficial para obtener instrucciones sobre cómo hacerlo de forma segura.