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:
- Haz clic en los tres puntos en la esquina superior derecha de la barra lateral de Bob.
- Haz clic en Modos.
- Selecciona el modo para el que deseas editar reglas.
- Haz clic en Editar.
- Desplázate hasta Instrucciones personalizadas específicas del modo (opcional).
- Ingresa tus reglas.
- 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}/:
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:
rules/- Reglas generales para todos los modosrules-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.mdCrear 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.mdPrioridad de reglas
Bob combina reglas de múltiples fuentes en este orden:
- Reglas globales (
~/.bob/rules/) - 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úblicasEjemplos 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:
| Directorio | Propó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 APIDetalles importantes:
- Cargado automáticamente por defecto
- Control de versiones con tu proyecto
- Desactiva con
"bob-code.useAgentRules": falseen 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:
- Crea un repositorio de reglas compartidas
- Los miembros del equipo clonan en
~/.bob/rules/ - 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
Personas de agentes
Crea archivos de persona reutilizables que definen el rol, el enfoque y el acceso a tools de un subagent. Define en qué se fija un subagent, cómo formatea su salida y qué no puede hacer.
Datos de telemetría
Conozca los datos de telemetría que IBM Bob recopila, cómo se utilizan para mejorar el producto y cómo habilitar o deshabilitar la recopilación de datos.