Menciones de contexto
Haz referencia a elementos específicos de tu proyecto directamente en las conversaciones con Bob utilizando @mentions para una asistencia precisa y consciente del contexto.
Tipos de menciones
Con las menciones de contexto, puedes hacer referencia a varios elementos de tu proyecto:
| Tipo de mención | Formato | Descripción | Ejemplo de uso |
|---|---|---|---|
| Archivo | @/path/to/file.ts | Incluye el contenido del archivo en el contexto de la solicitud | Explica la función en @/src/utils.ts |
| Carpeta | @/path/to/folder | Incluye el contenido de todos los archivos directamente en la carpeta (no recursivo) | Analiza el código en @/src/components |
| Problemas | @problems | Incluye los diagnósticos del panel de problemas de IBM Bob | @problems Corrige todos los errores de mi código |
| Terminal | @terminal | Incluye el comando de terminal reciente y su salida | Corrige los errores mostrados en @terminal |
| Git commit | @a1b2c3d | Hace referencia a un commit específico por su hash | ¿Qué cambió en el commit @a1b2c3d? |
| Git changes | @git-changes | Muestra los cambios no committeados | Sugiere un mensaje para @git-changes |
| URL | @https://example.com | Importa el contenido de un sitio web | Resume @https://docusaurus.io/ |
Menciones de archivo
Las menciones de archivo son el tipo más utilizado, permitiéndote incluir el contenido de archivos específicos en tu conversación con Bob.
| Capacidad | Detalles |
|---|---|
| Formato | @/path/to/file.ts (siempre comienza con / desde la raíz del espacio de trabajo) |
| Proporciona | Contenido completo del archivo con números de línea |
| Funciona con | Archivos de texto, PDFs y archivos DOCX (con extracción de texto) |
| Funciona en | Solicitudes iniciales, respuestas de feedback y mensajes de seguimiento |
| Limitaciones | Los archivos muy grandes pueden ser truncados; los archivos binarios no están soportados |
Para archivos grandes, puedes mencionar secciones específicas usando la ruta del archivo seguida de números de línea, como @/src/app.js:10-20 para incluir solo las líneas 10-20.
Menciones de carpeta
Con las menciones de carpeta, puedes hacer referencia a varios archivos a la vez, proporcionando un contexto más amplio desde un directorio.
| Capacidad | Detalles |
|---|---|
| Formato | @/path/to/folder (sin barra final) |
| Proporciona | Contenido completo de todos los archivos dentro del directorio |
| Incluye | Contenido de archivos de texto no binarios directamente dentro de la carpeta (no recursivo) |
| Ideal para | Proporcionar contexto de múltiples archivos en un directorio |
| Consejo | Ten en cuenta los límites del context window al mencionar directorios grandes |
Las menciones de carpeta no son recursivas, lo que significa que solo incluyen los archivos directamente en la carpeta especificada, no en las subcarpetas.
Mención de problemas (problems)
La mención de problemas importa diagnósticos del panel de problemas de IBM Bob, ayudándote a resolver múltiples problemas a la vez.
| Capacidad | Detalles |
|---|---|
| Formato | @problems |
| Proporciona | Todos los errores y advertencias del panel de problemas de IBM Bob |
| Incluye | Rutas de archivos, números de línea y mensajes de diagnóstico |
| Agrupa | Problemas organizados por archivo para mayor claridad |
| Ideal para | Corregir errores sin tener que copiarlos manualmente |
Ejemplo de uso: @problems ¿Puedes ayudarme a corregir todos estos problemas?
Mención de terminal
Las menciones de terminal capturan la salida de comandos reciente, ayudándote a depurar errores de compilación o analizar resultados de comandos.
| Capacidad | Detalles |
|---|---|
| Formato | @terminal |
| Captura | El último comando y su salida completa |
| Preserva | El estado de la terminal (no limpia la terminal) |
| Limitación | Limitado al contenido visible del búfer de la terminal |
| Ideal para | Depurar errores de compilación o analizar la salida de comandos |
Al solucionar un fallo de compilación, intenta
¿Qué pasa con @terminal? para obtener información inmediata sobre el error sin tener que copiar manualmente la salida.
Menciones de Git
Las menciones de Git te ayudan a trabajar con el control de versiones haciendo referencia a commits y cambios.
| Tipo | Formato | Proporciona | Limitaciones |
|---|---|---|---|
| Commit | @a1b2c3d | Mensaje de commit, autor, fecha y diff completo | Solo funciona en repositorios Git |
| Working changes | @git-changes | Salida de git status y diff de cambios no committeados | Solo funciona en repositorios Git |
Ejemplo de uso: ¿Cuál es el propósito de @a1b2c3d? o Sugiere un mensaje de commit para @git-changes
Menciones de URL
Las menciones de URL te permiten hacer referencia a contenido web externo en tus conversaciones con Bob.
| Capacidad | Detalles |
|---|---|
| Formato | @https://example.com |
| Procesamiento | Utiliza un navegador headless para obtener el contenido |
| Limpieza | Elimina scripts, estilos y elementos de navegación |
| Salida | Convierte el contenido a Markdown para mejorar la legibilidad |
| Limitación | Es posible que las páginas complejas no se conviertan perfectamente |
Las menciones de URL son útiles para hacer referencia a documentación.
Prueba con ¿Puedes explicarme @https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise para obtener ayuda para entender un concepto con la documentación oficial como contexto.
Usar menciones de contexto
Escribe @ en la entrada del chat para activar el dropdown de sugerencias.
Sigue escribiendo para filtrar las sugerencias o utiliza las teclas de dirección para navegar.
Selecciona con la tecla Enter o haciendo clic con el ratón.
Combina múltiples menciones en una solicitud: "Corrige @problems en @/src/component.ts"
Resalta texto y utiliza el atajo de teclado ⌘ + L para añadirlo al chat.
El dropdown sugiere automáticamente:
- Archivos abiertos recientemente
- Carpetas visibles
- Commits de git recientes
- Palabras clave especiales (
problems,terminal,git-changes) - Todos los archivos abiertos actualmente (independientemente de la configuración de ignorados o de los filtros de directorio)
El dropdown filtra automáticamente directorios comunes como node_modules, .git, dist y out para reducir el ruido, aunque puedes incluir su contenido si lo escribes manualmente.
Puedes combinar múltiples menciones en una sola solicitud. Prueba con Compara @/src/v1/api.js con @/src/v2/api.js y explica las diferencias.
Comportamientos importantes
Interacciones con archivos ignorados
Las menciones de contexto tienen comportamientos específicos cuando interactúan con archivos ignorados:
| Comportamiento | Descripción |
|---|---|
Evitar .bobignore | Las @mentions de archivos y carpetas omiten las comprobaciones de .bobignore al recuperar contenido para el contexto. El contenido de los archivos ignorados se incluirá si se menciona directamente. |
Evitar .gitignore | Del mismo modo, las @mentions de archivos y carpetas no respetan las reglas de .gitignore al recuperar contenido. |
| Respeto de comandos Git | Las menciones relacionadas con Git (@git-changes, @commit-hash) sí respetan .gitignore ya que dependen de los comandos de Git. |
Las menciones de contexto omiten las reglas de ignorados, por lo que puedes hacer referencia a archivos específicos que normalmente serían ignorados por Bob o Git. Esta capacidad es particularmente útil cuando necesitas discutir archivos generados u otro contenido que típicamente se ignora.
Poniéndolo todo junto
Las menciones de contexto mejoran tus interacciones con Bob al proporcionar referencias precisas a los elementos de tu proyecto. En lugar de copiar y pegar código o describir ubicaciones de archivos, puedes hacer referencia directa a aquello de lo que estás hablando.
Combinaciones efectivas de diferentes tipos de menciones:
Corrige @problems en @/src/components y explica qué estaba malRevisa @git-changes y sugiere mejorasCompara @/v1/api.js con @https://api-docs.example.com y busca inconsistencias
Al utilizar las menciones de contexto de manera efectiva, puedes comunicarte con mayor precisión con Bob y recibir una asistencia más dirigida.
Subagents
Aprende cómo Bob usa subagents para manejar tareas enfocadas y autónomas en contextos aislados sin contaminar la conversación principal.
Consejos de Bob
Los consejos de Bob detectan problemas de calidad del código en tiempo real con sugerencias de refactorización impulsadas por IA para funciones complejas. Reduce la deuda técnica mientras programas.