CommandCodeAI / CommandCodeAI/command-code

grep tool passes empty file type to ripgrep

Abierto Apto para principiantes
#655 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Lenguaje dominante
Sin datos de lenguaje
Estrellas
4k
Forks
350
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

I asked Command Code to search my project log files for errors using its built-in search tools. Command Code invoked its grep tool, but the search failed before it searched anything.

What I expected

When I ask Command Code to search matching log files with a pattern such as:

  • Glob: **/*.log
  • Pattern: error|exception|failed|failure|fatal|critical|warning|stack trace|traceback

I expect Command Code's search tool to search the matching files. If no file type is selected, the tool should search based on the glob alone.

What happened

Command Code's grep tool returned:

grep: rg: unrecognized file type:

This indicates that the tool is passing an empty type value to ripgrep, effectively invoking something like:

rg --type '' ...

Command Code also tried using type: "text", which returned:

grep: rg: unrecognized file type: text

text is not a registered ripgrep file type.

I did not run grep, rg, or the file search manually. Command Code invoked the search tool as part of handling my request.

How to reproduce

  1. Run Command Code 1.14.0 on macOS.
  2. Ask Command Code to search project log files for errors.
  3. Command Code invokes the built-in grep tool with a valid project path, glob: "**/*.log", and an error pattern.
  4. Leave the file type empty or unset.
  5. Observe rg: unrecognized file type:.
  6. Setting the type to text produces rg: unrecognized file type: text instead.

Environment

  • Command Code: 1.14.0
  • macOS 26.4, ARM64
  • zsh (/bin/zsh)

Workaround

Command Code worked around the problem by using its glob tool to locate log files and then opening the files individually with read_file. That worked, but it is inconvenient for large or numerous log files and does not provide the normal search/context behavior.

I was asking Command Code to investigate real application failures in the logs, including database connection errors, missing database tables, missing PHP classes, an unknown ActiveRecord property, and audit-log schema errors. I have not included any credentials or tokens that were present in those logs.

Possible fix

The type field should be optional, and an empty value should not be passed to ripgrep. The tool could also validate file types against ripgrep's registered types and return a clear validation error for unsupported values.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Comienza por la implementación de la herramienta grep integrada y el punto de entrada que construye sus argumentos de ripgrep. Reproduce el problema con un glob y un type sin establecer y, a continuación, verifica que no se pase ningún type vacío y que los type no compatibles reciban un error claro. Ejecuta las pruebas existentes de la herramienta grep, si las hay, y añade cobertura para ambos casos.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
cli
Área
cli, tooling
Tipo de issue
Error
Dificultad
2/5
Tiempo estimado
1-3 horas
Estado de actividad
Activo
Claridad
Bastante claro
Aptitud para principiantes
68/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.