Improve CLI help text clarity and accuracy#831
Conversation
|
Note Other AI code review bot(s) detectedCodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review. Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughDocumentation for CLI options was extensively rewritten across README and multilingual website guides. Help texts in src/cli/cliRun.ts were updated to more explicit semantics, including defaults and examples, and a new MCP option was documented. No exported signatures changed; edits are descriptive and surface-level. Changes
Sequence Diagram(s)Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Pre-merge checks (3 passed)✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull Request Overview
This PR comprehensively improves CLI help text clarity and accuracy by correcting default values and enhancing descriptions across all documentation. The changes address user feedback about confusing CLI descriptions and ensure perfect consistency between CLI help, README.md, and website documentation in all 12 supported languages.
Key changes include:
- Fixed incorrect default values for several options (output file, style, top-files-len, token-count-encoding)
- Enhanced option descriptions to be more self-explanatory and actionable
- Updated documentation across all 12 language versions for global consistency
Reviewed Changes
Copilot reviewed 14 out of 14 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| src/cli/cliRun.ts | Updated CLI help text with corrected defaults and improved descriptions |
| README.md | Updated Command Line Options section to match CLI improvements |
| website/client/src/*/guide/command-line-options.md | Updated documentation in all 12 languages (en, ja, zh-cn, zh-tw, ko, de, fr, es, vi, hi, id, pt-br) for consistency |
There was a problem hiding this comment.
Summary of Changes
Hello @yamadashy, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
This pull request focuses on a comprehensive update to the command-line interface documentation. The primary goal is to improve the clarity, accuracy, and consistency of all CLI option descriptions and their associated default values across the application's help text, README, and multi-language website documentation. These changes aim to provide users with a more intuitive and reliable understanding of the CLI's functionality.
Highlights
- Improved CLI Option Descriptions: Enhanced clarity and accuracy for numerous CLI options, including --verbose, --quiet, --stdout, --stdin, --parsable-style, --compress, and --no-security-check.
- Corrected Default Values: Updated default values for --output, --style, --top-files-len, and --token-count-encoding to reflect actual behavior.
- Global Documentation Consistency: Synchronized CLI help text across src/cli/cliRun.ts, README.md, and website documentation in all 12 supported languages.
- Enhanced User Experience: Made CLI descriptions more self-explanatory, added practical examples, and clarified technical concepts for better accessibility.
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.
| Feature | Command | Description |
|---|---|---|
| Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
| Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
| Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in issue comments and review comments. |
| Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #831 +/- ##
==========================================
- Coverage 87.36% 87.29% -0.07%
==========================================
Files 113 113
Lines 6626 6661 +35
Branches 1372 1372
==========================================
+ Hits 5789 5815 +26
- Misses 837 846 +9 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Code Review
This pull request does a great job of improving the clarity and accuracy of the CLI help texts across the project's documentation. The new descriptions are much more informative and user-friendly. I've found a couple of minor inconsistencies regarding placeholder names and description casing that, once fixed, will make the documentation perfectly consistent as intended. My review includes specific suggestions to address these points.
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (44)
website/client/src/es/guide/command-line-options.md (6)
16-17: Alineemos la semántica de stdout y evitemos confusión con --stdout.Propuesta: explicitar que hay dos formas equivalentes de volcar a stdout:
--stdouto-o -. Mantiene consistencia con la nota de incompatibilidad de--stdouty--output.Aplica este diff:
- - `-o, --output <file>`: Ruta del archivo de salida (por defecto: repomix-output.xml, usar "-" para stdout) - - `--style <type>`: Formato de salida: xml, markdown o plain (por defecto: xml) + - `-o, --output <file>`: Ruta del archivo de salida (por defecto: repomix-output.xml; para stdout usa `-o -` o la opción `--stdout`) + - `--style <type>`: Formato de salida: xml, markdown o plain (por defecto: xml)
51-51: Matiz de redacción sobre datos sensibles.Leve mejora de estilo y ejemplo explícito.
Aplica este diff:
- - `--no-security-check`: Omitir escaneo de datos sensibles como claves API y contraseñas + - `--no-security-check`: Omitir el análisis de datos confidenciales (p. ej., claves API y contraseñas)
56-58: Clarificar phrasing de MCP y (si aplica) enlazar/nombrar parámetros relacionados.Pequeño ajuste de español técnico y contexto de uso. Si existen flags como host/port, conviene referenciarlos.
Aplica este diff para el copy:
-## Opciones MCP -- `--mcp`: Ejecutar como servidor Model Context Protocol para integración de herramientas de IA +## Opciones MCP +- `--mcp`: Inicia un servidor MCP (Model Context Protocol) para integrarlo como herramienta en clientes de IA compatiblesAdemás, confirma si existen opciones asociadas (p. ej., puerto/host) para listarlas aquí.
65-66: Ejemplo más útil mostrando un estilo no predeterminado.El default ya es
xml; mostrarmarkdownenseña mejor el efecto de--style.Aplica este diff:
-# Archivo de salida y formato personalizados -repomix -o my-output.xml --style xml +# Archivo de salida y formato personalizados +repomix -o my-output.md --style markdown
77-78: Cita con comillas simples para evitar globbing del shell y coherencia en patrones.Menos sorpresas en zsh/bash y se mantiene la coma como separador dentro de una sola cadena.
Aplica este diff:
-repomix --include "src/**/*.ts,*.md" --ignore "*.test.js,docs/**" +repomix --include 'src/**/*.ts,*.md' --ignore '*.test.js,docs/**'
16-17: Consistencia terminológica: “por defecto” vs. “predeterminado”.En esta página aparecen ambas formas. Sugiero elegir una (recomiendo “predeterminado”) y usarla en todo el documento.
¿Prefieres que envíe un parche de consistencia en ES y lo replique en las demás locales?
Also applies to: 32-32, 43-43, 51-51, 54-54
website/client/src/id/guide/command-line-options.md (4)
13-13: Clarify what “terbesar” measures (bytes vs tokens).State whether “terbesar” refers to file size in bytes, token count, or another metric to avoid ambiguity with the token-count features.
16-17: Clarify stdout behavior and mutual exclusivity with --output.Make it explicit that using
-o -is equivalent to--stdout, and clarify the mutual exclusivity to reduce confusion.Apply within this section:
- - `-o, --output <file>`: Jalur file output (default: repomix-output.xml, gunakan "-" untuk stdout) + - `-o, --output <file>`: Jalur file output (default: repomix-output.xml; gunakan "-" untuk stdout, setara dengan `--stdout`)Additionally, consider updating the earlier
--stdoutline (outside this hunk) for consistency:- - `--stdout`: Output ke stdout alih-alih menulis ke file (tidak dapat digunakan dengan opsi `--output`) + - `--stdout`: Output ke stdout alih-alih menulis ke file (saling eksklusif dengan `--output`; sebagai alternatif Anda dapat menggunakan `-o -`)
51-51: Minor Indonesian style fix.Use “Melewati” for consistency with descriptive phrasing used elsewhere.
- - `--no-security-check`: Lewati pemindaian data sensitif seperti kunci API dan kata sandi + - `--no-security-check`: Melewati pemindaian data sensitif seperti kunci API dan kata sandi
65-66: Use a non-default style in the example to better demonstrate the flag.Since XML is the default, show
markdownto illustrate effect.-# File output dan format kustom -repomix -o my-output.xml --style xml +# File output dan format kustom +repomix -o my-output.md --style markdownwebsite/client/src/zh-cn/guide/command-line-options.md (13)
7-11: Clarify precedence among --verbose/--quiet/--stdout.Please state which flag wins when combined (e.g., --quiet vs --stdout vs --verbose), to avoid ambiguity in scripts.
Apply this diff to add an explicit note:
@@ - `--stdin`: 从标准输入逐行读取文件路径(指定的文件直接处理) - `--copy`: 处理后将生成的输出复制到系统剪贴板 - `--token-count-tree [threshold]`: 显示带有令牌计数的文件树;可选阈值仅显示≥N令牌的文件(例如:--token-count-tree 100) - `--top-files-len <number>`: 摘要中显示的最大文件数(默认:5,例如:--top-files-len 20) +提示:日志优先级建议明确:--quiet > (抑制日志的)--stdout > --verbose。请在实现中确认并于此处注明。Also applies to: 14-14
16-18: Document -o - interaction with --stdout.If
-o -is equivalent to writing to stdout, say so and clarify logging behavior.-`-o, --output <file>`: 输出文件路径(默认:repomix-output.xml,使用"-"输出到标准输出) +`-o, --output <file>`: 输出文件路径(默认:repomix-output.xml;指定 "-" 等价于输出到标准输出) -`--style <type>`: 输出格式:xml、markdown或plain(默认:xml) +`--style <type>`: 输出格式:xml、markdown 或 plain(默认:xml)
19-19: Scope of --parsable-style.Note it only affects XML/Markdown; plain has nothing to escape.
-`--parsable-style`: 转义特殊字符以确保有效的XML/Markdown(当输出包含破坏格式的代码时需要) +`--parsable-style`: 转义特殊字符以确保有效的 XML/Markdown(当输出包含破坏格式的代码时需要;对 plain 无效)
20-20: Set expectations for --compress coverage.Briefly call out that supported languages depend on available Tree-sitter grammars.
-`--compress`: 使用Tree-sitter解析提取基本代码结构(类、函数、接口) +`--compress`: 使用 Tree-sitter 解析提取基本代码结构(类、函数、接口;受支持语言取决于内置语法)
30-33: Defaults around Git-related options.
- Verify that “按更改频率排序文件”为默认行为再记录为默认值。
- Consider stating the default commit count directly on --include-logs for quick scanning.
-`--no-git-sort-by-changes`: 不按git更改频率排序文件(默认:最常更改的文件优先) +`--no-git-sort-by-changes`: 不按 Git 更改频率排序文件(默认:最常更改的文件优先) -`--include-logs`: 添加包含消息和更改文件的git提交历史 +`--include-logs`: 添加包含消息和更改文件的 Git 提交历史(默认展示 50 条,等同于 `--include-logs-count 50`) -`--include-logs-count <count>`: 与--include-logs一起包含的最新提交数(默认:50) +`--include-logs-count <count>`: 与 --include-logs 一起包含的最新提交数(默认:50)
36-39: Explain include/ignore precedence and quoting caveats.Add a short note on evaluation order and shell quoting, especially on Windows.
`--include <patterns>`: 仅包含与这些glob模式匹配的文件(逗号分隔,例如:"src/**/*.js,*.md") `-i, --ignore <patterns>`: 要排除的附加模式(逗号分隔,例如:"*.test.js,docs/**") `--no-gitignore`: 不使用.gitignore规则过滤文件 `--no-default-patterns`: 不应用内置忽略模式(node_modules、.git、构建目录等) +注意:请在此说明匹配优先级(例如:默认模式 → .gitignore → --include → --ignore,或实际实现顺序),并建议在 Shell 中为通配符加引号;Windows 路径分隔符请使用 `/` 或对 `\` 进行转义。
42-44: Verify supported remote URL forms and auth.Examples use /tree/ and /commit/; confirm parser accepts these forms and document private repo auth (e.g., GH token) if applicable.
-`--remote-branch <name>`: 要使用的特定分支、标签或提交(默认:仓库的默认分支) +`--remote-branch <name>`: 要使用的特定分支、标签或提交(默认:仓库的默认分支;支持分支名、标签名或提交 SHA) @@ -# 带分支的远程仓库 -repomix --remote https://github.com/user/repo/tree/main +# 带分支的远程仓库 +repomix --remote https://github.com/user/repo/tree/main @@ -# 带提交的远程仓库 -repomix --remote https://github.com/user/repo/commit/836abcd7335137228ad77feb28655d85712680f1 +# 带提交的远程仓库 +repomix --remote https://github.com/user/repo/commit/836abcd7335137228ad77feb28655d85712680f1 +提示:如需访问私有仓库,请说明如何提供凭据(例如环境变量中的 GitHub Token)。Also applies to: 87-94
46-49: Clarify precedence: CLI vs config vs defaults.State how conflicts resolve to help users predict behavior.
`-c, --config <path>`: 使用自定义配置文件而不是repomix.config.json `--init`: 使用默认设置创建新的repomix.config.json文件 `--global`: 与--init一起使用,在主目录而不是当前目录中创建配置 +优先级:命令行参数 > 配置文件 > 默认值。
51-51: Add a safety warning for --no-security-check.Disabling secret scanning is risky; flag this prominently.
-`--no-security-check`: 跳过扫描API密钥和密码等敏感数据 +`--no-security-check`: 跳过扫描 API 密钥和密码等敏感数据 +警告:禁用后,输出可能包含凭据与敏感信息;仅在受控环境下使用。
54-55: List accepted encodings and defaults.Provide quick-reference for common tokenizer names.
`--token-count-encoding <encoding>`: 用于计数的分词器模型:o200k_base(GPT-4o)、cl100k_base(GPT-3.5/4)等(默认:o200k_base) +常见取值:o200k_base、cl100k_base、p50k_base、r50k_base(实际支持以实现为准)。
56-58: MCP usage pointers.Add a pointer to the MCP guide and any flags (host/port) if available.
-`--mcp`: 作为AI工具集成的Model Context Protocol服务器运行 +`--mcp`: 作为 AI 工具集成的 Model Context Protocol 服务器运行(参见“集成 / MCP”文档了解配置与端口参数)
66-68: Use non-default style in example to demonstrate effect.Since xml is already the default, show switching to markdown.
-# 自定义输出文件和格式 -repomix -o my-output.xml --style xml +# 自定义输出文件和格式 +repomix -o my-output.md --style markdown
31-33: Capitalize “Git” consistently.Minor style consistency across bullets and examples.
-(默认:最常更改的文件优先) -`--include-diffs`: 添加显示工作树和暂存更改的git diff部分 -`--include-logs`: 添加包含消息和更改文件的git提交历史 +(默认:最常更改的文件优先) +`--include-diffs`: 添加显示工作树和暂存更改的 Git diff 部分 +`--include-logs`: 添加包含消息和更改文件的 Git 提交历史 @@ -repomix --include-logs # 包含git日志(默认50个提交) -repomix --include-logs --include-logs-count 10 # 包含最近10个提交 -repomix --include-diffs --include-logs # 同时包含差异和日志 +repomix --include-logs # 包含 Git 日志(默认 50 个提交) +repomix --include-logs --include-logs-count 10 # 包含最近 10 个提交 +repomix --include-diffs --include-logs # 同时包含差异和日志Also applies to: 79-82
website/client/src/pt-br/guide/command-line-options.md (4)
13-13: Portuguese phrasing + example punctuation nit"Quantidade de maiores arquivos a exibir" soa mais natural em PT-BR e "ex.:" é a forma canônica.
-- `--top-files-len <number>`: Número dos maiores arquivos para exibir no resumo (padrão: 5, ex: --top-files-len 20) +- `--top-files-len <number>`: Quantidade de maiores arquivos a exibir no resumo (padrão: 5; ex.: --top-files-len 20)
51-51: Add safety warning to --no-security-checkDeixar explícito o risco ajuda a prevenir vazamento acidental de segredos em CI/PRs.
-`--no-security-check`: Pular verificação de dados sensíveis como chaves de API e senhas +`--no-security-check`: Pular verificação de dados sensíveis como chaves de API e senhas (use com cautela; pode expor segredos na saída)
65-67: Use a non-default style in the exampleMostrar
markdowndemonstra o efeito da flag--style.-# Arquivo de saída e formato personalizados -repomix -o my-output.xml --style xml +# Arquivo de saída e formato personalizados +repomix -o my-output.md --style markdown
16-17: Esclarecer interação entre --stdout e -o '-' e confirmar literais válidos de --styleFile: website/client/src/pt-br/guide/command-line-options.md
Substituir o trecho por clarificar que usar "-" com -o/--output envia a saída para stdout (é alternativa ao --stdout) e que os valores válidos de --style são exatamente xml, markdown e plain.-`-o, --output <file>`: Caminho do arquivo de saída (padrão: repomix-output.xml, usar "-" para stdout) +`-o, --output <file>`: Caminho do arquivo de saída (padrão: repomix-output.xml; usar "-" para stdout — alternativa ao `--stdout`)Verificado: src/cli/cliRun.ts (detecta
options.output === '-'e defineoptions.stdout = true; existe--stdoutque conflita com--output), src/config/configSchema.ts (repomixOutputStyleSchema = z.enum(['xml','markdown','plain'])).website/client/src/hi/guide/command-line-options.md (6)
16-17: Clarify stdout usage and avoid contradiction with Line 9.Doc currently offers both
--stdoutand-o -, but Line 9 says "--outputविकल्प के साथ उपयोग नहीं किया जा सकता". Tighten wording to show two alternative ways and their mutual exclusivity.Apply this diff:
- - `-o, --output <file>`: आउटपुट फ़ाइल पथ (डिफ़ॉल्ट: repomix-output.xml, stdout के लिए "-" का उपयोग करें) - - `--style <type>`: आउटपुट फ़ॉर्मेट: xml, markdown या plain (डिफ़ॉल्ट: xml) + - `-o, --output <file>`: आउटपुट फ़ाइल पथ (डिफ़ॉल्ट: repomix-output.xml)। stdout के लिए या तो `-o -` दें या `--stdout` उपयोग करें; `--stdout` और `-o <path>` एक साथ न दें। + - `--style <type>`: आउटपुट फ़ॉर्मेट: xml, markdown या plain (डिफ़ॉल्ट: xml)Additionally (outside this hunk), consider rewording Line 9 to mirror the above: “फ़ाइल में लिखने के बजाय stdout पर आउटपुट (विकल्प:
-o -;--outputके साथ संयोजन न करें)”.
13-13: Specify what “largest” means (tokens vs bytes).If this list is based on token count, say so to avoid ambiguity.
- - `--top-files-len <number>`: सारांश में दिखाने वाली सबसे बड़ी फ़ाइलों की संख्या (डिफ़ॉल्ट: 5, उदाहरण: --top-files-len 20) + - `--top-files-len <number>`: सारांश में दिखाने वाली सबसे बड़ी (टोकन के आधार पर) फ़ाइलों की संख्या (डिफ़ॉल्ट: 5; उदाहरण: --top-files-len 20)
51-51: Add a caution for disabling security checks.Readers should see the risk up front.
- - `--no-security-check`: API कीज़ और पासवर्ड जैसे संवेदनशील डेटा की स्कैनिंग छोड़ें + - `--no-security-check`: API कीज़ और पासवर्ड जैसे संवेदनशील डेटा की स्कैनिंग छोड़ें। ध्यान दें: केवल भरोसेमंद/स्थानीय वातावरण में उपयोग करें—अनजाने में सीक्रेट लीक हो सकते हैं।
56-58: Mark MCP as experimental (if applicable) and hint at usage scope.If MCP is not GA, label it to set expectations.
- ## MCP विकल्प - - `--mcp`: AI टूल एकीकरण के लिए Model Context Protocol सर्वर के रूप में चलाएं + ## MCP विकल्प + - `--mcp`: AI टूल एकीकरण के लिए Model Context Protocol सर्वर के रूप में चलाएं (प्रायोगिक)Optional: add a short example in a future pass if flags/ports are configurable.
65-66: Use a non-default style in the example to better demonstrate the flag effect.Default is xml; show markdown to make the change visible.
- # कस्टम आउटपुट फ़ाइल और फ़ॉर्मेट - repomix -o my-output.xml --style xml + # कस्टम आउटपुट फ़ाइल और फ़ॉर्मेट + repomix -o my-output.md --style markdown
56-58: Minor language nit (outside this hunk): prefer “छाँटना/ट्रंकेट” over “कटाई” for Base64 truncation.Improves clarity for technical readers.
No change required here; consider updating the
--truncate-base64bullet to: “base64 डेटा स्ट्रिंग्स को छाँटें (truncate)”.src/cli/cliRun.ts (4)
76-88: Make token-count-tree threshold parsing strict (reject “100k”, “1_000”).parseInt silently accepts partial numbers. Validate full-string integers and bounds to avoid surprising behavior.
Apply:
- .option( - '--token-count-tree [threshold]', - 'show file tree with token counts; optional threshold to show only files with ≥N tokens (e.g., --token-count-tree 100)', - (value: string | boolean) => { - if (typeof value === 'string') { - const parsed = Number.parseInt(value, 10); - if (Number.isNaN(parsed)) { - throw new RepomixError(`Invalid token count threshold: '${value}'. Must be a valid number.`); - } - return parsed; - } - return value; - }, - ) + .option( + '--token-count-tree [threshold]', + 'show file tree with token counts; optional threshold to show only files with ≥N tokens (e.g., --token-count-tree 100)', + (value: string | boolean) => { + if (typeof value === 'string') { + if (!/^\d+$/.test(value)) { + throw new RepomixError(`Invalid token count threshold: '${value}'. Must be a non-negative integer.`); + } + return Number(value); + } + return value; + }, + )
90-93: Validate top-files-len input (prevent NaN/negatives).Use a strict parser similar to token-count-tree for predictable behavior.
- .option( - '--top-files-len <number>', - 'number of largest files to show in summary (default: 5, e.g., --top-files-len 20)', - Number.parseInt, - ) + .option( + '--top-files-len <number>', + 'number of largest files to show in summary (default: 5, e.g., --top-files-len 20)', + (v: string) => { + if (!/^\d+$/.test(v)) { + throw new RepomixError(`Invalid number for --top-files-len: '${v}'. Must be a non-negative integer.`); + } + return Number(v); + }, + )
97-101: Constrain --style to known values via Commander choices.Prevents typos and aligns help with actual support.
- .option('--style <type>', 'output format: xml, markdown, or plain (default: xml)') + .addOption( + new Option('--style <type>', 'output format: xml, markdown, or plain (default: xml)') + .choices(['xml', 'markdown', 'plain']), + )
123-126: Validate include-logs-count as positive integer.Avoids silent NaN or zero.
- .option( - '--include-logs-count <count>', - 'number of recent commits to include with --include-logs (default: 50)', - Number.parseInt, - ) + .option( + '--include-logs-count <count>', + 'number of recent commits to include with --include-logs (default: 50)', + (v: string) => { + if (!/^\d+$/.test(v) || Number(v) <= 0) { + throw new RepomixError(`Invalid --include-logs-count: '${v}'. Must be a positive integer.`); + } + return Number(v); + }, + )README.md (1)
547-547: Unify placeholder to "" for --style (matches CLI help and website docs).
README.md:547 — replace--style <style>with--style <type>.website/client/src/de/guide/command-line-options.md (6)
13-13: Klareres Wording + Korrekte Abkürzung “z. B.”Formulierung präzisieren und deutsche Typografie beachten.
- - `--top-files-len <number>`: Anzahl der größten Dateien in der Zusammenfassung (Standard: 5, z.B. --top-files-len 20) + - `--top-files-len <number>`: Anzahl der größten Dateien, die in der Zusammenfassung aufgeführt werden (Standard: 5; z. B. --top-files-len 20)
51-51: Leicht verständlicher machenKürzer und idiomatischer, mit Beispielnennung in Klammern.
- - `--no-security-check`: Scannen nach sensiblen Daten wie API-Schlüsseln und Passwörtern überspringen + - `--no-security-check`: Scan nach sensiblen Daten (z. B. API‑Schlüssel, Passwörter) überspringen
54-54: Deutschsprachige Typografie + flüssiger Satzbau“etc.” → “z. B.”/“usw.” und klare Default-Nennung.
- - `--token-count-encoding <encoding>`: Tokenizer-Modell für Zählung: o200k_base (GPT-4o), cl100k_base (GPT-3.5/4), etc. (Standard: o200k_base) + - `--token-count-encoding <encoding>`: Tokenizer‑Modell für die Zählung, z. B. o200k_base (GPT‑4o) oder cl100k_base (GPT‑3.5/4) (Standard: o200k_base)
56-57: Hyphenation und Terminologie (DE: “KI”)Leichtes Sprach-Finish; MCP-Akronym integrieren.
-## MCP-Optionen -- `--mcp`: Als Model Context Protocol Server für AI-Tool-Integration ausführen +## MCP-Optionen +- `--mcp`: Als Model Context Protocol‑Server (MCP) für KI‑Tool‑Integrationen ausführen
65-66: Beispiel zeigt besser den Nutzen der OptionDa xml der Standard ist, demonstriert markdown den Effekt deutlicher.
-# Benutzerdefinierte Ausgabedatei und Format -repomix -o my-output.xml --style xml +# Benutzerdefinierte Ausgabedatei und Format (abweichend vom Standard) +repomix -o my-output.md --style markdown
16-17: Stdout‑Konsistenz und zulässige Werte präzisierenDatei: website/client/src/de/guide/command-line-options.md (Zeilen 16–17). Defaults verifiziert: output = repomix-output.xml und style = xml (gesetzt in src/config/configSchema.ts). CLI deklariert --stdout und markiert es als Konflikt mit --output (src/cli/cliRun.ts); die Hilfe erwähnt '-' für stdout (–o '-' wird also unterstützt) — Kombination mit --stdout ist nicht erlaubt. Vorschlag (Diff):
- - `-o, --output <file>`: Ausgabedateipfad (Standard: repomix-output.xml, "-" für stdout) + - `-o, --output <file>`: Ausgabedateipfad (Standard: repomix-output.xml; '-' für stdout; nicht mit `--stdout` kombinieren) - - `--style <type>`: Ausgabeformat: xml, markdown oder plain (Standard: xml) + - `--style <type>`: Ausgabeformat: xml | markdown | plain (Standard: xml)
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (14)
README.md(1 hunks)src/cli/cliRun.ts(2 hunks)website/client/src/de/guide/command-line-options.md(3 hunks)website/client/src/en/guide/command-line-options.md(2 hunks)website/client/src/es/guide/command-line-options.md(3 hunks)website/client/src/fr/guide/command-line-options.md(3 hunks)website/client/src/hi/guide/command-line-options.md(3 hunks)website/client/src/id/guide/command-line-options.md(3 hunks)website/client/src/ja/guide/command-line-options.md(3 hunks)website/client/src/ko/guide/command-line-options.md(3 hunks)website/client/src/pt-br/guide/command-line-options.md(3 hunks)website/client/src/vi/guide/command-line-options.md(3 hunks)website/client/src/zh-cn/guide/command-line-options.md(3 hunks)website/client/src/zh-tw/guide/command-line-options.md(3 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: Build and run (windows-latest, 22.x)
- GitHub Check: Test with Bun (windows-latest, latest)
🔇 Additional comments (18)
website/client/src/es/guide/command-line-options.md (2)
13-13: Aclaremos “más grandes”: ¿por tamaño de archivo o por conteo de tokens?“Archivos más grandes” es ambiguo. Si el resumen se basa en tokens, sugiero decir “con mayor conteo de tokens”; si es por bytes, “de mayor tamaño (bytes)”.
¿Puedes confirmar cómo se calcula en el código (src/cli/cliRun.ts)? Si es por tokens, cambiaría el texto a “con mayor conteo de tokens”.
54-54: Verificar default y lista de codificadores de tokens.Confirmemos que el valor por defecto real en el código es
o200k_basey qué encodings están soportados para evitar desalineaciones con la ayuda.Puedes validar corriendo un grep en
src/cli/cliRun.tsy cualquier módulo de conteo de tokens para localizartoken-count-encodingy su valor por defecto.website/client/src/id/guide/command-line-options.md (3)
54-54: Looks good — default and examples match PR objectives.
77-78: Example LGTM.Patterns and quoting look correct and consistent with earlier description.
56-57: Verified:--mcpCLI flag is implemented and wiredDeclared in src/cli/cliRun.ts (.option('--mcp', 'run as Model Context Protocol server for AI tool integration')), typed in src/cli/types.ts, and handled at runtime (if options.mcp -> runMcpAction) with the action in src/cli/actions/mcpAction.ts.
website/client/src/pt-br/guide/command-line-options.md (3)
77-79: LGTM on include/ignore patterns exampleGlobs corretos, sem espaços após vírgulas e com citação para evitar expansão no shell.
56-58: Keep MCP as-is — it's implemented and documented.
Search shows the --mcp flag and a dedicated MCP server guide (README.md and website/client/src/en/guide/mcp-server.md plus translations); do not mark it "experimental".
54-54: Esclarecer que a codificação só afeta a estimativa de tokens — default confirmado (o200k_base)Ajuste de redação sugerido; default confirmado em src/config/configSchema.ts (.default('o200k_base')) e a opção está em src/cli/cliRun.ts.
-`--token-count-encoding <encoding>`: Modelo tokenizador para contagem: o200k_base (GPT-4o), cl100k_base (GPT-3.5/4), etc. (padrão: o200k_base) +`--token-count-encoding <encoding>`: Tokenizador do modelo para contagem de tokens: o200k_base (GPT‑4o), cl100k_base (GPT‑3.5/4), etc. (padrão: o200k_base). Afeta apenas a estimativa de contagem, não o conteúdo gerado.website/client/src/hi/guide/command-line-options.md (2)
77-78: Example looks good and aligns with comma-separated patterns.Clear, practical include/ignore demo.
54-54: Confirm --token-count-encoding default and accepted values.Docs (website/client/src/*/guide/command-line-options.md) list default "o200k_base" and show "o200k_base" / "cl100k_base", but repository search did not reveal a CLI validation/choices list for encodings. Confirm and state explicitly:
- the actual default in code (file/location),
- the complete set of supported encodings (e.g., o200k_base, cl100k_base, p50k_base, r50k_base, …),
- whether values are case-sensitive.
If the CLI does not validate allowed values, either add validation in the option parsing or adjust the docs to avoid implying a fixed set.website/client/src/vi/guide/command-line-options.md (1)
13-13: Docs look consistent with CLI behavior and defaults.Accurate defaults (top-files-len=5, output default, style default xml, token-count-encoding=o200k_base) and examples are clear. Nice inclusion of "-" for stdout and MCP section.
Also applies to: 16-18, 51-55, 56-58, 65-67, 77-79
website/client/src/ko/guide/command-line-options.md (1)
13-14: Korean localization matches semantics and defaults.Good clarity on conflicts (stdout vs output), token threshold usage, and MCP wording.
Also applies to: 16-18, 51-55, 56-58, 65-67, 82-84, 99-102
website/client/src/zh-tw/guide/command-line-options.md (1)
4-4: TW doc updates are aligned and precise.Defaults and option semantics match code; examples cover key flows (stdout piping, patterns, git).
Also applies to: 7-14, 16-18, 50-52, 53-55, 56-58, 65-67, 77-79, 100-103
website/client/src/fr/guide/command-line-options.md (1)
13-14: French doc: consistent and clear.No discrepancies spotted with CLI help; good callouts on parsing/size trade-offs.
Also applies to: 16-18, 50-52, 53-55, 56-58, 65-67, 77-79, 100-103
website/client/src/en/guide/command-line-options.md (1)
4-14: English guide is thorough and matches the implemented help.Defaults and conflicts are correctly described; token-count-tree threshold example and “use '-' for stdout” are helpful.
Also applies to: 16-34, 36-44, 46-49, 51-55, 56-58, 64-66, 76-78, 99-102
website/client/src/ja/guide/command-line-options.md (1)
4-14: JP localization is accurate and consistent with CLI behavior.Good clarity on Tree-sitter compression and stdout semantics.
Also applies to: 16-34, 36-44, 46-49, 51-55, 56-58, 66-68, 83-85, 100-103
src/cli/cliRun.ts (1)
196-205: Stdout mode handling is solid.Mapping
-o -tostdout=trueand silencing logs matches docs and avoids noisy pipes.Also applies to: 216-219
website/client/src/de/guide/command-line-options.md (1)
77-78: LGTM: Musterlisten sind klar und praxisnahDie Beispiele sind korrekt quotiert und verdeutlichen die kommagetrennten Listen.
Address PR review feedback by implementing comprehensive improvements: ## Documentation Consistency Fixes - Standardize all CLI option descriptions to use sentence case (uppercase first letter) - Fix --style placeholder from <type> to <style> for consistency with README - Apply capitalization fixes across CLI, English docs, and affected language docs - Add security warning to --no-security-check option with usage caution ## CLI Input Validation Improvements - Enhance token-count-tree threshold parsing with strict integer validation - Improve top-files-len input validation to reject invalid values - Strengthen include-logs-count validation for non-negative integers - Replace parseInt with regex-based validation to prevent partial number acceptance ## Example Improvements - Update style example to use markdown instead of xml to demonstrate non-default behavior These changes address review feedback from Gemini Code Assist and CodeRabbit AI, ensuring better user experience through clearer help text and robust input handling. Fixes issues raised in PR #831 review comments.
Update CLI option descriptions to be more clear and self-explanatory, making them easier for users to understand without consulting external documentation. Key changes include: - Fix default values to match actual implementation (xml format, repomix-output.xml filename) - Clarify actual behavior vs. stated behavior (e.g., stdin file processing, stdout logging suppression) - Remove misleading claims about token reduction percentages - Add missing default values and examples - Improve technical descriptions to be more accessible - Make option purposes and use cases clearer This addresses user feedback about confusing CLI help text and ensures descriptions accurately reflect the code implementation.
Update CLI option descriptions across all 12 supported languages to match the improved CLI help text and README.md. This ensures complete consistency between CLI help, README, and website documentation worldwide. Key improvements applied to all languages: - Fix default values to match implementation (xml format, repomix-output.xml filename, etc.) - Add missing MCP option and proper descriptions - Improve clarity and accuracy of all option descriptions - Update examples to be more practical and realistic - Ensure consistent feature coverage across all languages Languages updated: en, ja, zh-cn, zh-tw, ko, de, fr, es, vi, hi, id, pt-br This completes the documentation accuracy initiative, providing users with reliable and consistent information regardless of their preferred language.
Address PR review feedback by implementing comprehensive improvements: ## Documentation Consistency Fixes - Standardize all CLI option descriptions to use sentence case (uppercase first letter) - Fix --style placeholder from <type> to <style> for consistency with README - Apply capitalization fixes across CLI, English docs, and affected language docs - Add security warning to --no-security-check option with usage caution ## CLI Input Validation Improvements - Enhance token-count-tree threshold parsing with strict integer validation - Improve top-files-len input validation to reject invalid values - Strengthen include-logs-count validation for non-negative integers - Replace parseInt with regex-based validation to prevent partial number acceptance ## Example Improvements - Update style example to use markdown instead of xml to demonstrate non-default behavior These changes address review feedback from Gemini Code Assist and CodeRabbit AI, ensuring better user experience through clearer help text and robust input handling. Fixes issues raised in PR #831 review comments.
3191ec6 to
702f7f1
Compare
Summary
This PR comprehensively improves the CLI help text clarity and accuracy across all documentation. The changes address user feedback about confusing CLI descriptions and ensure perfect consistency between CLI help, README.md, and website documentation in all 12 supported languages.
Key Improvements
🔧 Fixed Default Values
-o, --output: Corrected default fromrepomix-output.txttorepomix-output.xml--style: Corrected default fromplaintoxml--top-files-len: Corrected default from10to5--token-count-encoding: Added missing defaulto200k_base📝 Improved Descriptions
--verbose: Enhanced to explain what detailed debug logging includes--quiet: Clarified usage for scripting scenarios--stdout: Added important note about logging suppression--stdin: Corrected behavioral description (files processed directly, not filtered)--parsable-style: Made clearer when this option is needed--compress: Removed misleading percentage claims, focused on Tree-sitter functionality--no-security-check: More specific about what it skips🌍 Global Consistency
src/cli/cliRun.ts🎯 User Experience
Technical Details
The improvements were based on:
All changes maintain backward compatibility and only affect documentation/help text.
Checklist
npm run testnpm run lint