Configuración

Reglas personalizadas

Las reglas personalizadas influyen en cómo Bob responde a tus solicitudes, alineando la salida con tus preferencias específicas y requisitos del proyecto. Configura reglas personalizadas para controlar el estilo de codificación, el enfoque de documentación y los procesos de toma de decisiones de Bob.

¿Qué son las reglas personalizadas?

Las reglas personalizadas extienden el comportamiento predeterminado de Bob definiendo preferencias, restricciones y directrices que determinan cómo Bob aborda las tareas para satisfacer tus necesidades.

Los usos comunes incluyen:

  • Preferencias de estilo de codificación (indentación, convenciones de nomenclatura)
  • Formatos y estándares de documentación
  • Metodologías y requisitos de pruebas
  • Flujos de trabajo y procesos del proyecto
  • Convenciones específicas del equipo

Agregar reglas personalizadas para un modo

Puedes agregar reglas personalizadas a los modos de dos maneras:

A través de la interfaz de usuario

Configura reglas que se apliquen a todos tus proyectos:

  1. Haz clic en los tres puntos en la esquina superior derecha de la barra lateral de Bob.
  2. Haz clic en Modos.
  3. Selecciona el modo para el que deseas editar reglas.
  4. Haz clic en Editar.
  5. Desplázate hasta Instrucciones personalizadas específicas del modo (opcional).
  6. Ingresa tus reglas.
  7. Haz clic en Guardar.

A través de archivos de reglas específicos del modo

Los modos también pueden tener archivos de reglas adicionales almacenados en directorios bajo .bob/rules-{mode-slug}/:

01-style-guide.md
02-formatting.txt

Los archivos en el directorio se cargan alfabéticamente y se combinan con la propiedad customInstructions de tu configuración de modo. Para más detalles, consulta Modos personalizados.

Aprende más sobre estandarizar el comportamiento de Bob usando reglas a nivel de proyecto.

Alcances de reglas

Bob soporta dos alcances de reglas que determinan dónde se aplican tus reglas:

  • Reglas globales: Se aplican automáticamente a todos tus proyectos
  • Reglas de espacio de trabajo: Se aplican solo dentro de tu proyecto actual

Usa reglas globales para estándares personales u organizacionales. Usa reglas de espacio de trabajo para requisitos específicos del proyecto.

Métodos de configuración

Configuración basada en directorios

Usa directorios bajo .bob/ en la raíz de tu espacio de trabajo:

Estructura del espacio de trabajo:

coding-style.md
typescript.md
  • rules/ - Reglas generales para todos los modos
  • rules-agent/ - Reglas específicas del modo Agent

Estructura global:

Linux/macOS: ~/.bob/rules/ Windows: %USERPROFILE%\.bob\rules\

Crear reglas de espacio de trabajo:

mkdir -p .bob/rules
echo "# Estándares del proyecto" > .bob/rules/coding-style.md

Crear reglas globales:

# Linux/macOS
mkdir -p ~/.bob/rules
echo "# Estándares globales" > ~/.bob/rules/coding-standards.md

# Windows
mkdir %USERPROFILE%\.bob\rules
echo # Estándares globales > %USERPROFILE%\.bob\rules\coding-standards.md

Prioridad de reglas

Bob combina reglas de múltiples fuentes en este orden:

  1. Reglas globales (~/.bob/rules/)
  2. Reglas de espacio de trabajo (.bob/rules/)

Dentro de cada nivel, las reglas específicas del modo se cargan antes que las reglas generales. Las reglas del espacio de trabajo pueden sobrescribir las reglas globales.

Escribir reglas efectivas

Sé específico y accionable

Bueno: "Usa 4 espacios para la indentación en archivos JavaScript"

Evita: "Formatea el código bonito"

Usa una estructura clara

Organiza las reglas por tema:

# Estilo de código
- Usa camelCase para variables
- Usa PascalCase para clases

# Pruebas
- Escribe pruebas unitarias para todas las funciones públicas
- Usa Jest como framework de pruebas

# Documentación
- Agrega comentarios JSDoc para APIs públicas

Ejemplos de reglas efectivas

  • "Usa siempre espacios para la indentación con un ancho de 4 espacios"
  • "Usa camelCase para nombres de variables"
  • "Escribe pruebas unitarias para todas las nuevas funciones"
  • "Explica tu razonamiento antes de proporcionar código"
  • "Al agregar funciones a sitios web, asegúrate de que sean responsivas y accesibles"

Configuración avanzada

Reglas específicas del modo

Apunta a modos específicos con directorios dedicados:

DirectorioPropósito
rules/Reglas generales para todos los modos
rules-agent/Solo modo Agent
rules-plan/Solo modo Plan
rules-ask/Solo modo Ask
rules-{mode}/Cualquier modo personalizado

Uso de archivos AGENTS.md

Para estandarización del equipo, puedes usar un archivo AGENTS.md en la raíz de tu espacio de trabajo:

# Estándares del equipo
- Sigue las directrices de codificación de la empresa
- Usa solo bibliotecas aprobadas
- Documenta todos los cambios de API

Detalles importantes:

  • Cargado automáticamente por defecto
  • Control de versiones con tu proyecto
  • Desactiva con "bob-code.useAgentRules": false en la configuración
  • Cargado después de reglas específicas del modo, pero antes de reglas generales del espacio de trabajo

Comportamiento de archivos

  • Lectura recursiva: Bob lee todos los archivos en directorios de reglas, incluyendo subdirectorios
  • Orden alfabético: Los archivos se procesan en orden alfabético por nombre de archivo
  • Filtrado automático: Excluye archivos de caché (.DS_Store, *.bak, *.cache, *.log, *.tmp, Thumbs.db)
  • Enlaces simbólicos: Soportados con profundidad máxima de 5
  • Archivos vacíos: Omitidos silenciosamente

Estandarización del equipo

Estándares a nivel de proyecto

Usa directorios .bob/rules/ del espacio de trabajo bajo control de versiones:

# Agregar al control de versiones
git add .bob/rules/
git commit -m "Agregar reglas personalizadas de Bob"

Esto asegura un comportamiento consistente entre los miembros del equipo para proyectos específicos.

Estándares organizacionales

Distribuye reglas globales a los miembros del equipo:

  1. Crea un repositorio de reglas compartidas
  2. Los miembros del equipo clonan en ~/.bob/rules/
  3. Actualiza regularmente para consistencia

Enfoque híbrido

Puedes combinar ambos enfoques:

  • Reglas globales para estándares organizacionales
  • Reglas de espacio de trabajo para requisitos específicos del proyecto
  • Las reglas del espacio de trabajo sobrescriben las reglas globales cuando sea necesario
¿Cómo es este tema?