Skip to content

docs: add stdin behavior explanation across all languages#702

Merged
yamadashy merged 1 commit intomainfrom
docs/update-stdin-explanation
Jun 30, 2025
Merged

docs: add stdin behavior explanation across all languages#702
yamadashy merged 1 commit intomainfrom
docs/update-stdin-explanation

Conversation

@yamadashy
Copy link
Owner

Summary

  • Add explanation about --stdin behavior to README.md and all website documentation
  • Clarify that files specified via stdin are added to include patterns and still subject to ignore rules

Changes

  • README.md: Added stdin behavior explanation
  • Website docs: Updated usage.md for all 12 supported languages (en, ja, de, es, fr, hi, id, ko, pt-br, vi, zh-cn, zh-tw)

Details

When using --stdin, users might expect that specifying files directly would bypass ignore patterns. This documentation update clarifies that:

  1. Files specified via --stdin are effectively added to include patterns
  2. Normal include and ignore behavior still applies
  3. Files specified via stdin will still be excluded if they match ignore patterns

This ensures users understand the consistent behavior across all file selection methods.

Test plan

  • Verify documentation renders correctly in all languages
  • Ensure consistency of explanation across all language versions
  • Confirm technical accuracy of the explanation

🤖 Generated with Claude Code

When using --stdin, specified files are effectively added to include patterns.
This means normal include and ignore behavior still applies - files specified
via stdin will still be excluded if they match ignore patterns.

Updates:
- README.md
- All 12 language versions of website/client/src/{lang}/guide/usage.md

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings June 30, 2025 16:04
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jun 30, 2025

Walkthrough

Documentation for the --stdin option in the Repomix CLI and its usage guides across multiple languages was updated. The new clarification specifies that files provided via --stdin are treated as additional include patterns and remain subject to the standard include and ignore rules, ensuring consistent filtering behavior.

Changes

Files Change Summary
README.md Clarified that --stdin files are subject to normal include and ignore filtering.
website/client/src/*/guide/usage.md Updated documentation in multiple languages to explain that --stdin files follow include and ignore rules.

Possibly related PRs

✨ Finishing Touches
🧪 Generate Unit Tests
  • Create PR with Unit Tests
  • Post Copyable Unit Tests in Comment
  • Commit Unit Tests in branch docs/update-stdin-explanation

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.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

‼️ IMPORTANT
Auto-reply has been disabled for this repository in the CodeRabbit settings. The CodeRabbit bot will not respond to your replies unless it is explicitly tagged.

  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai auto-generate unit tests to generate unit tests for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@claude
Copy link
Contributor

claude bot commented Jun 30, 2025

Claude finished @yamadashy's task —— View job


PR Review: Documentation Updates for stdin behavior

I've analyzed the documentation changes for --stdin behavior explanation across all supported languages.

Todo List:

  • Read and analyze the changes in README.md
  • Review the English documentation changes
  • Check consistency across all 12 language translations
  • Verify technical accuracy of the stdin behavior explanation
  • Provide comprehensive review feedback

Review Summary

This PR successfully addresses a common source of user confusion about --stdin behavior. The documentation addition is well-executed and technically accurate.

✅ Strengths

Clear Technical Explanation: The key addition clarifies that files specified via --stdin are "effectively added to the include patterns" and that "normal include and ignore behavior still applies." This is technically accurate and addresses the potential misconception that stdin files bypass ignore patterns.

Comprehensive Coverage:

  • README.md:258-259: Added the explanation in the main documentation
  • All 12 language docs: Consistent addition at the appropriate location in each translation

Translation Quality: The translations maintain semantic consistency across all languages:

  • English: "effectively added to the include patterns"
  • Japanese: "実質的にincludeパターンに追加されます"
  • French: "effectivement ajoutés aux motifs d'inclusion"
  • German: "effektiv zu den Include-Mustern hinzugefügt"
  • Spanish: "se agregan efectivamente a los patrones de inclusión"

Strategic Placement: The explanation is positioned right after the stdin examples but before the NOTE, making it discoverable when users are learning about stdin functionality.

✅ Technical Accuracy

The explanation correctly describes Repomix's stdin behavior:

  1. Files from stdin are treated as include patterns
  2. The normal include/ignore precedence rules still apply
  3. Files matching ignore patterns will still be excluded

This prevents the common misconception that stdin provides a way to bypass ignore rules.

🎯 Suggestions for Enhancement

Minor Wording Refinement: Consider slightly expanding the explanation for maximum clarity:

When using `--stdin`, the specified files are effectively added to the include patterns. This means that the normal include and ignore behavior still applies - files specified via stdin will still be excluded if they match ignore patterns (such as those in .gitignore or .repomixignore).

The addition of "(such as those in .gitignore or .repomixignore)" would make the ignore sources more concrete for users.

📝 Minor Observations

  1. Consistent Formatting: All translations follow the same markdown structure and formatting
  2. No Breaking Changes: The additions are purely additive and don't modify existing behavior
  3. User-Focused: The explanation addresses the "why" behind the behavior, not just the "what"

Overall Assessment

This is a high-quality documentation improvement that will significantly reduce user confusion about stdin behavior. The implementation is thorough, technically accurate, and well-translated across all supported languages.

Recommendation: ✅ Approve - This PR successfully clarifies important behavioral details and enhances the user experience without any negative impact.


Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR updates the documentation to clarify the behavior of the --stdin option across the project’s English README and all translated usage guides. It explains that files passed via --stdin are added to include patterns and therefore still subject to ignore rules.

  • Updated README.md with a clarification paragraph.
  • Updated usage.md files in 12 languages to maintain consistent explanation.

Reviewed Changes

Copilot reviewed 13 out of 13 changed files in this pull request and generated no comments.

Show a summary per file
File Description
README.md Updated clarification of --stdin behavior
website/client/src/en/guide/usage.md Updated usage instructions for --stdin behavior
website/client/src/es/guide/usage.md Translated update: clarified --stdin file inclusion
website/client/src/de/guide/usage.md Translated update: clarified --stdin file inclusion
website/client/src/fr/guide/usage.md Translated update: clarified --stdin file inclusion
website/client/src/hi/guide/usage.md Translated update: clarified --stdin file inclusion
website/client/src/id/guide/usage.md Translated update: clarified --stdin file inclusion
website/client/src/ja/guide/usage.md Translated update: clarified --stdin file inclusion
website/client/src/ko/guide/usage.md Translated update: clarified --stdin file inclusion
website/client/src/pt-br/guide/usage.md Translated update: clarified --stdin file inclusion
website/client/src/vi/guide/usage.md Translated update: clarified --stdin file inclusion
website/client/src/zh-cn/guide/usage.md Translated update: clarified --stdin file inclusion
website/client/src/zh-tw/guide/usage.md Translated update: clarified --stdin file inclusion
Comments suppressed due to low confidence (2)

README.md:258

  • [nitpick] Consider replacing the dash '-' with a semicolon or a period to clearly separate the two independent clauses for improved clarity.
When using `--stdin`, the specified files are effectively added to the include patterns. This means that the normal include and ignore behavior still applies - files specified via stdin will still be excluded if they match ignore patterns.

website/client/src/en/guide/usage.md:82

  • [nitpick] Consider replacing the dash '-' with a semicolon or a period to clearly separate the two independent clauses, enhancing readability.
When using `--stdin`, the specified files are effectively added to the include patterns. This means that the normal include and ignore behavior still applies - files specified via stdin will still be excluded if they match ignore patterns.

Copy link

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR Summary

Comprehensive documentation update across 12 language versions to clarify --stdin behavior in Repomix, explaining how it interacts with file patterns and ignore rules.

  • Added technical explanation in README.md about --stdin file handling
  • Updated all language versions in website/client/src/*/guide/usage.md with consistent stdin behavior documentation
  • Maintained language-specific idioms while ensuring technical accuracy of stdin behavior explanation
  • Strategically placed new content between stdin examples and path resolution sections
  • Preserved documentation structure and formatting across all translations

13 files reviewed, 1 comment
Edit PR Review Bot Settings | Greptile

@codecov
Copy link

codecov bot commented Jun 30, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 90.36%. Comparing base (d42cc2f) to head (5a95704).
Report is 2 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #702   +/-   ##
=======================================
  Coverage   90.36%   90.36%           
=======================================
  Files          99       99           
  Lines        5561     5561           
  Branches     1186     1186           
=======================================
  Hits         5025     5025           
  Misses        536      536           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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 enhances the documentation for the --stdin option in Repomix. It clarifies that files specified via stdin are treated as include patterns and are still subject to ignore rules, ensuring users understand the consistent behavior across all file selection methods. The changes include updates to the README.md file and the usage.md documentation for all supported languages on the website.

Highlights

  • --stdin behavior: Clarified that when using --stdin, files are added to include patterns and are still subject to ignore rules.
  • Documentation: Updated README.md and website documentation (usage.md) for all 12 supported languages (en, ja, de, es, fr, hi, id, ko, pt-br, vi, zh-cn, zh-tw).
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 is currently in preview and 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 to provide feedback.

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

  1. 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.

@yamadashy yamadashy merged commit 6cc4c59 into main Jun 30, 2025
50 of 51 checks passed
@yamadashy yamadashy deleted the docs/update-stdin-explanation branch June 30, 2025 16:06
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (7)
website/client/src/zh-cn/guide/usage.md (1)

82-82: Minor wording polish for fluency

Consider replacing “正常的包含和忽略行为” with “常规的 include 与 ignore 行为” to sound more natural and to avoid the adverb-missing warning flagged by LanguageTool.

-这意味着正常的包含和忽略行为仍然适用
+这意味着常规的 include 与 ignore 行为仍然适用
website/client/src/en/guide/usage.md (1)

82-83: Minor wording & punctuation polish

Consider a slight re-phrasing for flow and using an em-dash () instead of - to match the rest of the docs:

-This means that the normal include and ignore behavior still applies - files specified via stdin will still be excluded if they match ignore patterns.
+This means the normal include-/ignore-behavior still applies —files provided via stdin will still be excluded if they match ignore patterns.

Purely stylistic; feel free to ignore if you prefer the current wording.

website/client/src/zh-tw/guide/usage.md (1)

82-83: 用語潤飾建議

正常的包含和忽略行為 讀起來稍顯直譯,可改為更口語的表達:

-這意味著正常的包含和忽略行為仍然適用 - 通過 stdin 指定的文件如果匹配忽略模式仍會被排除。
+也就是說,一般的包含與忽略規則仍然生效——若透過 stdin 指定的檔案符合忽略模式,仍會被排除。

改善可讀性,不影響技術準確性。

website/client/src/es/guide/usage.md (1)

82-83: Punctuation tweak for consistency

Throughout the Spanish docs an em-dash () is usually used for parenthetical remarks. To stay consistent:

-Esto significa que el comportamiento normal de inclusión e ignorar sigue aplicando - los archivos especificados vía stdin aún serán excluidos si coinciden con patrones de ignorar.
+Esto significa que el comportamiento normal de inclusión e ignorar sigue aplicando —los archivos especificados vía stdin aún se excluirán si coinciden con los patrones de ignorar.

Minor style suggestion only.

website/client/src/fr/guide/usage.md (1)

86-86: Uniformiser la ponctuation française (apostrophes & tiret long)

Typiquement, on utilise l’apostrophe typographique (’), et un tiret cadratin — plutôt qu’un simple - entouré d’espaces — pour marquer l’incise.

-Lorsque vous utilisez `--stdin`, les fichiers spécifiés sont effectivement ajoutés aux motifs d'inclusion. Cela signifie que le comportement normal d'inclusion et d'exclusion s'applique toujours - les fichiers spécifiés via stdin seront toujours exclus s'ils correspondent aux motifs d'exclusion.
+Lorsque vous utilisez `--stdin`, les fichiers spécifiés sont effectivement ajoutés aux motifs d’inclusion. Cela signifie que le comportement normal d’inclusion et d’exclusion s’applique toujours — les fichiers spécifiés via stdin seront toujours exclus s’ils correspondent aux motifs d’exclusion.
website/client/src/pt-br/guide/usage.md (1)

80-82: Remover espaço duplicado e trocar hífen por travessão

Há dois espaços após o ponto e o hífen circundado por espaços não é o mais indicado em PT-BR.

-A opção `--stdin` permite que você canalize uma lista de caminhos de arquivos para o Repomix, oferecendo máxima flexibilidade na seleção de quais arquivos compactar.  Ao usar `--stdin`, os arquivos especificados são efetivamente adicionados aos padrões de inclusão. Isso significa que o comportamento normal de inclusão e exclusão ainda se aplica - arquivos especificados via stdin ainda serão excluídos se coincidirem com padrões de exclusão.
+A opção `--stdin` permite que você canalize uma lista de caminhos de arquivos para o Repomix, oferecendo máxima flexibilidade na seleção de quais arquivos compactar. Ao usar `--stdin`, os arquivos especificados são efetivamente adicionados aos padrões de inclusão. Isso significa que o comportamento normal de inclusão e exclusão ainda se aplica — arquivos especificados via stdin ainda serão excluídos se coincidirem com padrões de exclusão.
website/client/src/ja/guide/usage.md (1)

82-82: コード要素 include / ignore をバッククオートで強調

英単語をコードとして強調すると読みやすさが向上します。

-`--stdin`で指定されたファイルは、実質的にincludeパターンに追加されます。つまり、通常のincludeおよびignoreの動作と同じで、stdinで指定したファイルもignoreパターンに一致する場合は除外されます。
+`--stdin`で指定されたファイルは、実質的に`include`パターンに追加されます。つまり、通常の`include`および`ignore`の動作と同じで、stdinで指定したファイルも`ignore`パターンに一致する場合は除外されます。
📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between d42cc2f and 5a95704.

📒 Files selected for processing (13)
  • README.md (1 hunks)
  • website/client/src/de/guide/usage.md (1 hunks)
  • website/client/src/en/guide/usage.md (1 hunks)
  • website/client/src/es/guide/usage.md (1 hunks)
  • website/client/src/fr/guide/usage.md (1 hunks)
  • website/client/src/hi/guide/usage.md (1 hunks)
  • website/client/src/id/guide/usage.md (1 hunks)
  • website/client/src/ja/guide/usage.md (1 hunks)
  • website/client/src/ko/guide/usage.md (1 hunks)
  • website/client/src/pt-br/guide/usage.md (1 hunks)
  • website/client/src/vi/guide/usage.md (1 hunks)
  • website/client/src/zh-cn/guide/usage.md (1 hunks)
  • website/client/src/zh-tw/guide/usage.md (1 hunks)
🧰 Additional context used
🪛 LanguageTool
website/client/src/zh-cn/guide/usage.md

[uncategorized] ~82-~82: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:正常"地"包含
Context: ... 使用 --stdin 时,指定的文件实际上被添加到包含模式中。这意味着正常的包含和忽略行为仍然适用 - 通过 stdin 指定的文件如果匹配忽略模式仍会被排...

(wb4)

website/client/src/pt-br/guide/usage.md

[uncategorized] ~82-~82: Pontuação duplicada
Context: ...o de quais arquivos compactar. Ao usar --stdin, os arquivos especificados são ef...

(DOUBLE_PUNCTUATION_XML)

website/client/src/zh-tw/guide/usage.md

[uncategorized] ~82-~82: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:正常"地"包含
Context: ... 使用 --stdin 時,指定的文件實際上被添加到包含模式中。這意味著正常的包含和忽略行為仍然適用 - 通過 stdin 指定的文件如果匹配忽略模式仍會被排...

(wb4)

website/client/src/fr/guide/usage.md

[typographical] ~86-~86: Caractère d’apostrophe incorrect.
Context: ...rs à empaqueter. Lorsque vous utilisez --stdin, les fichiers spécifiés sont effectivem...

(APOS_INCORRECT)


[typographical] ~86-~86: Le trait d’union est employé sans espace pour former des mots, alors que le tiret est encadré par des espaces et placé entre deux mots distincts.
Context: ...sion et d'exclusion s'applique toujours - les fichiers spécifiés via stdin seront...

(TIRET)

website/client/src/es/guide/usage.md

[uncategorized] ~82-~82: Probablemente hay un error. Considere aplicar la sugerencia.
Context: ...qué archivos empaquetar. Cuando se usa --stdin, los archivos especificados se ...

(AI_ES_GGEC_REPLACEMENT_PUNCTUATION)


[uncategorized] ~82-~82: Probablemente hay un error. Considere aplicar la sugerencia.
Context: ...l de inclusión e ignorar sigue aplicando - los archivos especificados vía stdin aú...

(AI_ES_GGEC_REPLACEMENT_PUNCTUATION)

⏰ Context from checks skipped due to timeout of 90000ms (6)
  • GitHub Check: Build and run (windows-latest, 20.x)
  • GitHub Check: Build and run (windows-latest, 23.x)
  • GitHub Check: Test (windows-latest, 23.x)
  • GitHub Check: Test (macos-latest, 24.x)
  • GitHub Check: Test (macos-latest, 21.x)
  • GitHub Check: auto-review
🔇 Additional comments (6)
README.md (1)

258-259: Clarification is spot-on

👍 Good to see the explicit note that stdin-provided files still honor ignore rules. No further issues.

website/client/src/hi/guide/usage.md (1)

125-126: Hindi wording looks correct

The added clarification is clear and technically accurate.
No language or formatting issues spotted.

website/client/src/ko/guide/usage.md (1)

82-82: Korean translation reads naturally

The clarification sentence is technically precise and idiomatically correct.
No changes needed.

website/client/src/de/guide/usage.md (1)

82-82: German clarification LGTM

The sentence clearly states the rule interaction and uses correct terminology.
Nothing to adjust.

website/client/src/id/guide/usage.md (1)

97-98: Clarity looks good – no issues found

The Indonesian clarification is clear and technically accurate.

website/client/src/vi/guide/usage.md (1)

94-95: Sentence reads well – no action required

The Vietnamese wording correctly conveys the rule; no improvements necessary.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds documentation to explain the behavior of the --stdin flag. However, there's a potential discrepancy between the documentation and the actual code implementation regarding ignore patterns. Please verify the intended behavior and ensure consistency between the documentation and the code.


The `--stdin` option allows you to pipe a list of file paths to Repomix, giving you ultimate flexibility in selecting which files to pack.

When using `--stdin`, the specified files are effectively added to the include patterns. This means that the normal include and ignore behavior still applies - files specified via stdin will still be excluded if they match ignore patterns.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The documentation states that files specified via --stdin are subject to ignore patterns. However, a review of the source code (src/core/file/fileSearch.ts) suggests that --stdin bypasses ignore patterns. This discrepancy could lead to unintended inclusion of files. Please verify the intended behavior and update the documentation or code accordingly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants