fix: Cleaner output of rg commands for LLM readability (#328)

This commit is contained in:
Brace Sproul 2025-06-27 16:12:09 -06:00 • committed by GitHub
parent b88db80b26
commit 6cb5dcfe04
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -146,10 +146,29 @@ export type RipgrepCommand = z.infer<typeof _tmpRgToolSchema>;
export function formatRgCommand(cmd: RipgrepCommand): string[] {
const args = ["rg"];
// Always include these flags
const requiredFlags = ["--color", "never", "--line-number", "--heading"];
// Add user-provided flags, ensuring we don't duplicate the required ones
if (cmd.flags) {
args.push(...cmd.flags);
// Filter out any flags that would duplicate our required flags
const filteredFlags = cmd.flags.filter((flag) => {
// Check for exact matches or flags that start with our required prefixes
return (
!requiredFlags.includes(flag) &&
!flag.startsWith("--color=") &&
flag !== "--line-number" &&
flag !== "-n" &&
flag !== "--heading"
);
});
args.push(...filteredFlags);
}
// Add the required flags
args.push(...requiredFlags);
if (cmd.pattern) {
args.push(cmd.pattern);
}