diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index c659eb80eb..9e22303a35 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -1,12 +1,66 @@ name: Bug Report -description: Clearly report a bug with detailed repro steps +description: Report a broken behavior in plain language with a minimal reproduction labels: ["bug"] +title: "[BUG] " body: - type: markdown attributes: value: | - **Thanks for your report!** Please check existing issues first: - 👉 https://github.com/RooCodeInc/Roo-Code/issues + Thank you for your report! Please search existing issues first: + https://github.com/RooCodeInc/Roo-Code/issues + + - type: textarea + id: problem + attributes: + label: Problem (one or two sentences) + description: Describe what went wrong in plain language. + placeholder: 'Example: "Expected the task to start, but nothing happened and no message appeared."' + validations: + required: true + + - type: textarea + id: context + attributes: + label: Context (who is affected and when) + description: Who sees this and in what situation? Keep it non-technical. + placeholder: 'Example: "Happens to new users when starting a run from the New Run page with dark theme enabled."' + validations: + required: true + + - type: textarea + id: steps + attributes: + label: Reproduction steps + description: Provide clear, numbered steps so we can reproduce. + placeholder: | + 1) Environment/setup (OS, extension version, relevant settings) + 2) Exact actions (clicks, inputs, commands) + 3) What you observed after each step + validations: + required: true + + - type: input + id: expected + attributes: + label: Expected result + placeholder: e.g., "The task starts and shows progress." + validations: + required: true + + - type: input + id: actual + attributes: + label: Actual result + placeholder: e.g., "The button appears disabled and no progress is shown." + validations: + required: true + + - type: textarea + id: variations + attributes: + label: Variations tried (optional) + description: Different browsers, devices, providers, or settings you tried. + placeholder: e.g., "Tried Chrome/Firefox, disabling dark theme, switching providers." - type: input id: version @@ -19,7 +73,7 @@ body: - type: dropdown id: provider attributes: - label: API Provider + label: API Provider (optional) options: - Anthropic - AWS Bedrock @@ -45,57 +99,23 @@ body: - VS Code Language Model API - xAI (Grok) - Not Applicable / Other - validations: - required: true - type: input id: model attributes: - label: Model Used + label: Model Used (optional) description: Exact model name (e.g., Claude 3.7 Sonnet). Use N/A if irrelevant. - validations: - required: true - type: textarea id: roo-code-tasks attributes: - label: Roo Code Task Links (Optional) - description: | - If you have any publicly shared task links that demonstrate the issue, please paste them here. - This helps maintainers understand the context. - Example: https://app.roocode.com/share/task-id + label: Roo Code Task Links (optional) + description: If you have any publicly shared Roo Code task links that demonstrate the issue, paste them here. placeholder: Paste your Roo Code share links here, one per line - - type: textarea - id: steps - attributes: - label: 🔁 Steps to Reproduce - description: | - Help us see what you saw. Give clear, numbered steps: - - 1. Setup (OS, extension version, settings) - 2. Exact actions (clicks, input, files, commands) - 3. What happened after each step - - Think like you're writing a recipe. Without this, we can't reproduce the issue. - validations: - required: true - - - type: textarea - id: what-happened - attributes: - label: 💥 Outcome Summary - description: | - Recap what went wrong in one or two lines. - - Example: "Expected code to run, but got an empty response and no error." - placeholder: Expected ___, but got ___. - validations: - required: true - - type: textarea id: logs attributes: - label: 📄 Relevant Logs or Errors (Optional) - description: Paste API logs, terminal output, or errors here. Use triple backticks (```) for code formatting. + label: Relevant logs or errors (optional) + description: Paste relevant output or errors. Use triple backticks (```) for formatting. render: shell diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml index 4863f9ffa6..7e140ec08c 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.yml +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -1,71 +1,47 @@ -name: Detailed Feature Proposal -description: Report a specific problem that needs solving in Roo Code -labels: ["proposal", "enhancement"] +name: Enhancement Request +description: Propose an improvement in plain language focused on user benefit +labels: ["enhancement"] +title: "[ENHANCEMENT] " body: - type: markdown attributes: value: | - **Thank you for submitting a feature request for Roo Code!** - - This template helps you describe problems that need solving. Focus on the problem - the Roo team will work to design solutions unless you want to contribute the implementation yourself. - - **Quality over speed:** We prefer detailed, clear problem descriptions over quick ones. Vague requests often get closed or require multiple rounds of clarification, which wastes everyone's time. - - **Before submitting:** - - Search existing [Issues](https://github.com/RooCodeInc/Roo-Code/issues) and [Discussions](https://github.com/RooCodeInc/Roo-Code/discussions) to avoid duplicates - - For general ideas, use [GitHub Discussions](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests) instead of this template. - - - type: markdown - attributes: - value: | - ## ❌ Common mistakes that lead to request rejection: - - **Vague problem descriptions:** "UI is bad" -> Should be: "Submit button is invisible on dark theme" - - **Missing user impact:** "This would be cool" -> Should explain who benefits and how - - **No specific context:** Describe exactly when and how the problem occurs - + Thank you for helping improve Roo Code! + Please focus on the problem and the desired behavior in plain language. - type: textarea - id: problem-description + id: problem attributes: - label: What specific problem does this solve? - description: | - **Be concrete and detailed.** Explain the problem from a user's perspective. - - ✅ **Good examples (specific, clear impact):** - - "When running large tasks, users wait 5+ minutes because tasks execute sequentially instead of in parallel, blocking productivity" - - "AI can only read one file per request, forcing users to make multiple requests for multi-file projects, increasing wait time from 30s to 5+ minutes" - - "Dark theme users can't see the submit button because it uses white text on light grey background" - - ❌ **Poor examples (vague, unclear impact):** - - "The UI looks weird" -> What specifically looks weird? On which screen? What's the impact? - - "System prompt is not good" -> What's wrong with it? What behaviour does it cause? What should it do instead? - - "Performance could be better" -> Where? How slow is it currently? What's the user impact? - - **Your problem description should answer:** - - Who is affected? (all users, specific user types, etc.) - - When does this happen? (specific scenarios/steps) - - What's the current behaviour vs expected behaviour? - - What's the impact? (time wasted, errors caused, etc.) - placeholder: Be specific about the problem, who it affects, and the impact. Avoid generic statements like "it's slow" or "it's confusing." + label: Problem (one or two sentences) + description: What problem are users facing? + placeholder: e.g., "Users often click Copy Run by mistake and duplicate runs unintentionally." validations: required: true + - type: textarea + id: context + attributes: + label: Context (who is affected and when) + description: Who encounters this and in what situation? + placeholder: e.g., "Happens when browsing the Runs list; most visible for new users." + validations: + required: true - type: textarea - id: additional-context + id: desired attributes: - label: Additional context (optional) - description: Mockups, screenshots, links, user quotes, or other relevant information that supports your proposal. + label: Desired behavior (conceptual, not technical) + description: Describe what should happen in simple terms. + placeholder: e.g., "Ask for confirmation before copying a run." + validations: + required: true - type: textarea - id: roo-code-tasks + id: constraints attributes: - label: Roo Code Task Links (Optional) - description: | - If you used Roo Code to explore this feature request or develop solutions, share the public task links here. - This helps maintainers understand the context and any exploration you've done. - Example: https://app.roocode.com/share/task-id - placeholder: Paste your Roo Code share links here, one per line + label: Constraints / preferences (optional) + description: Any considerations like performance, accessibility, or UX expectations. + placeholder: e.g., "Keep it quick and unobtrusive; keyboard accessible." - type: checkboxes id: checklist @@ -74,128 +50,42 @@ body: options: - label: I've searched existing Issues and Discussions for duplicates required: true - - label: This describes a specific problem with clear impact and context + - label: This describes a specific problem with clear context and impact required: true + - type: textarea + id: roo-code-tasks + attributes: + label: Roo Code Task Links (optional) + description: If you explored this with Roo Code, share public task links for context. + placeholder: Paste your Roo Code share links here, one per line + - type: markdown attributes: value: | --- - - ## 🛠️ **Optional: Contributing & Technical Analysis** - - **🎯 Just reporting a problem?** You can click "Submit new issue" right now! The sections below are only needed if you want to contribute a solution via pull request. - - **⚠️ Only continue if you want to:** - - Propose a specific solution design - - Implement the feature yourself via pull request - - Provide technical analysis to help with implementation - - **For contributors who continue:** - - A maintainer (especially @hannesrudolph) will review this proposal. **Do not start implementation until approved and assigned.** We're a small team with limited resources, so every code addition needs careful consideration. We're always happy to receive clear, actionable proposals though! - - Join [Discord](https://discord.gg/roocode) and DM **Hannes Rudolph** (`hrudolph`) for guidance on implementation - - Check our [Roadmap](https://github.com/orgs/RooCodeInc/projects/1/views/1?query=sort%3Aupdated-desc+is%3Aopen&filterQuery=is%3Aissue%2Copen%2Cclosed+label%3A%22feature+request%22+status%3A%22Issue+%5BUnassigned%5D%22%2C%22Issue+%5BIn+Progress%5D%22) to see open feature requests ready to be implemented or currently being worked on - - - type: checkboxes - id: willingness-to-contribute - attributes: - label: Interested in implementing this? - description: | - **Important:** If you check "Yes" below, the technical sections become REQUIRED. - We need detailed technical analysis from contributors to ensure quality implementation. - options: - - label: Yes, I'd like to help implement this feature - required: false - - - type: checkboxes - id: implementation-approval - attributes: - label: Implementation requirements - options: - - label: I understand this needs approval before implementation begins - required: false - - - type: textarea - id: proposed-solution - attributes: - label: How should this be solved? (REQUIRED if contributing, optional otherwise) - description: | - **If you want to implement this feature, this section is REQUIRED.** - - **Describe your solution in detail.** Explain not just what to build, but how it should work. - - ✅ **Good examples:** - - "Add parallel task execution: Allow up to 3 tasks to run simultaneously with a queue system for additional tasks. Show progress for each active task in the UI." - - "Enable multi-file AI processing: Modify the request handler to accept multiple files in a single request and process them together, reducing round trips." - - "Fix button contrast: Change submit button to use primary colour on dark theme (white text on blue background) instead of current grey." - - ❌ **Poor examples:** - - "Make it faster" -> How? What specific changes? - - "Improve the UI" -> Which part? What specific improvements? - - "Fix the prompt" -> What should the new prompt do differently? - - **Your solution should explain:** - - What exactly will change? - - How will users interact with it? - - What will the new behaviour look like? - placeholder: Describe the specific changes and how they will work. Include user interaction details if relevant. + Optional (for contributors): You can stop here if you're just proposing the improvement. - type: textarea id: acceptance-criteria attributes: - label: How will we know it works? (Acceptance Criteria - REQUIRED if contributing, optional otherwise) - description: | - **If you want to implement this feature, this section is REQUIRED.** - - **This is crucial - don't skip it.** Define what "working" looks like with specific, testable criteria. - - **Format suggestion:** - ``` - Given [context/situation] + label: Acceptance criteria (optional) + description: Define what “working” looks like with specific, testable outcomes. + placeholder: | + Given [context] When [user action] Then [expected result] And [additional expectations] But [what should NOT happen] - ``` - - **Example:** - ``` - Given I have 5 large tasks to run - When I start all of them - Then they execute in parallel (max 3 at once, can be configured) - And I see progress for each active task - And queued tasks show "waiting" status - But the UI doesn't freeze or become unresponsive - ``` - placeholder: | - Define specific, testable criteria. What should users be able to do? What should happen? What should NOT happen? - Use the Given/When/Then format above or your own clear structure. - type: textarea - id: technical-considerations + id: proposed-solution attributes: - label: Technical considerations (REQUIRED if contributing, optional otherwise) - description: | - **If you want to implement this feature, this section is REQUIRED.** - - Share technical insights that could help planning: - - Implementation approach or architecture changes - - Performance implications - - Compatibility concerns - - Systems that might be affected - - Potential blockers you can foresee - placeholder: e.g., "Will need to refactor task manager", "Could impact memory usage on large files", "Requires a large portion of code to be rewritten" + label: Proposed approach (optional) + description: If you have an idea, describe it briefly in plain language. - type: textarea - id: trade-offs-and-risks + id: risks attributes: - label: Trade-offs and risks (REQUIRED if contributing, optional otherwise) - description: | - **If you want to implement this feature, this section is REQUIRED.** - - What could go wrong or what alternatives did you consider? - - Alternative approaches and why you chose this one - - Potential negative impacts (performance, UX, etc.) - - Breaking changes or migration concerns - - Edge cases that need careful handling - placeholder: 'e.g., "Alternative: use library X but it is 500KB larger", "Risk: might slow older devices", "Breaking: changes API response format"' + label: Trade-offs / risks (optional) + description: Potential downsides or alternatives considered. diff --git a/CHANGELOG.md b/CHANGELOG.md index 97aa127589..a17950ff59 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,23 @@ # Roo Code Changelog +## [3.28.3] - 2025-09-16 + +![3.28.3 Release - UI/UX Improvements and Bug Fixes](/releases/3.28.3-release.png) + +- Fix: Filter out Claude Code built-in tools (ExitPlanMode, BashOutput, KillBash) (#7817 by @juliettefournier-econ, PR by @roomote) +- Replace + icon with edit icon for New Task button (#7941 by @hannesrudolph, PR by @roomote) +- Fix: Corrected C# tree-sitter query (#5238 by @vadash, PR by @mubeen-zulfiqar) +- Add keyboard shortcut for "Add to Context" action (#7907 by @hannesrudolph, PR by @roomote) +- Fix: Context menu is obscured when edit message (#7759 by @mini2s, PR by @NaccOll) +- Fix: Handle ByteString conversion errors in OpenAI embedders (#7959 by @PavelA85, PR by @daniel-lxs) +- Add Z.ai coding plan support (thanks @daniel-lxs!) +- Move slash commands to Settings tab with gear icon for discoverability (thanks @roomote!) +- Reposition Add Image button inside ChatTextArea (thanks @roomote!) +- Bring back a way to temporarily and globally pause auto-approve without losing your toggle state (thanks @brunobergher!) +- Makes text area buttons appear only when there's text (thanks @brunobergher!) +- CONTRIBUTING.md tweaks and issue template rewrite (thanks @hannesrudolph!) +- Bump axios from 1.9.0 to 1.12.0 (thanks @dependabot!) + ## [3.28.2] - 2025-09-14 ![3.28.2 Release - Auto-approve improvements](/releases/3.28.2-release.png) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c23c424f41..869b59a16d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -67,25 +67,27 @@ Mention alignment with these areas in your PRs. ### Issue-First Approach -All contributions must begin with a GitHub Issue. +All contributions start with a GitHub Issue using our skinny templates. - **Check existing issues**: Search [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). -- **Create an issue**: Use appropriate templates: - - **Bugs:** "Bug Report" template. - - **Features:** "Detailed Feature Proposal" template. Approval required before starting. -- **Claim issues**: Comment and await official assignment. - -**PRs without approved issues may be closed.** +- **Create an issue** using: + - **Enhancements:** "Enhancement Request" template (plain language focused on user benefit). + - **Bugs:** "Bug Report" template (minimal repro + expected vs actual + version). +- **Want to work on it?** Comment "Claiming" on the issue and DM **Hannes Rudolph (`hrudolph`)** on [Discord](https://discord.gg/roocode) to get assigned. Assignment will be confirmed in the thread. +- **PRs must link to the issue.** Unlinked PRs may be closed. ### Deciding What to Work On -- Check the [GitHub Project](https://github.com/orgs/RooCodeInc/projects/1) for unassigned "Good First Issues." +- Check the [GitHub Project](https://github.com/orgs/RooCodeInc/projects/1) for "Issue [Unassigned]" issues. - For docs, visit [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). ### Reporting Bugs - Check for existing reports first. -- Create new bugs using the ["Bug Report" template](https://github.com/RooCodeInc/Roo-Code/issues/new/choose). +- Create a new bug using the ["Bug Report" template](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) with: + - Clear, numbered reproduction steps + - Expected vs actual result + - Roo Code version (required); API provider/model if relevant - **Security issues**: Report privately via [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). ## Development & Submission Process @@ -118,13 +120,14 @@ pnpm install - Begin as a **Draft PR** if seeking early feedback. - Clearly describe your changes following the Pull Request Template. +- Link the issue in the PR description/title (e.g., "Fixes #123"). - Provide screenshots/videos for UI changes. - Indicate if documentation updates are necessary. ### Pull Request Policy -- Must reference pre-approved, assigned issues. -- PRs without adherence to the policy may be closed. +- Must reference an assigned GitHub Issue. To get assigned: comment "Claiming" on the issue and DM **Hannes Rudolph (`hrudolph`)** on [Discord](https://discord.gg/roocode). Assignment will be confirmed in the thread. +- Unlinked PRs may be closed. - PRs should pass CI tests, align with the roadmap, and have clear documentation. ### Review Process diff --git a/README.md b/README.md index a8235cb13b..a43dc0b463 100644 --- a/README.md +++ b/README.md @@ -1,114 +1,89 @@ -
- +

+ VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ Get help fast → Join Discord • Prefer async? → Join r/RooCode +

-English • [Català](locales/ca/README.md) • [Deutsch](locales/de/README.md) • [Español](locales/es/README.md) • [Français](locales/fr/README.md) • [हिंदी](locales/hi/README.md) • [Bahasa Indonesia](locales/id/README.md) • [Italiano](locales/it/README.md) • [日本語](locales/ja/README.md) +# Roo Code -
- +> Your AI-Powered Dev Team, Right in Your Editor -[한국어](locales/ko/README.md) • [Nederlands](locales/nl/README.md) • [Polski](locales/pl/README.md) • [Português (BR)](locales/pt-BR/README.md) • [Русский](locales/ru/README.md) • [Türkçe](locales/tr/README.md) • [Tiếng Việt](locales/vi/README.md) • [简体中文](locales/zh-CN/README.md) • [繁體中文](locales/zh-TW/README.md) +
+ 🌐 Available languages - -
-
-
-

Roo Code

-

- -

-

Connect with developers, contribute ideas, and stay ahead with the latest AI-powered coding tools.

- - Join Discord - Join Reddit - -
-
-
- -
- -Download on VS Marketplace -Feature Requests -Rate & Review -Documentation - -
- -**Roo Code** is an AI-powered **autonomous coding agent** that lives in your editor. It can: - -- Communicate in natural language -- Read and write files directly in your workspace -- Run terminal commands -- Automate browser actions -- Integrate with any OpenAI-compatible or custom API/model -- Adapt its “personality” and capabilities through **Custom Modes** - -Whether you’re seeking a flexible coding partner, a system architect, or specialized roles like a QA engineer or product manager, Roo Code can help you build software more efficiently. - -Check out the [CHANGELOG](CHANGELOG.md) for detailed updates and fixes. +- [English](README.md) +- [Català](locales/ca/README.md) +- [Deutsch](locales/de/README.md) +- [Español](locales/es/README.md) +- [Français](locales/fr/README.md) +- [हिंदी](locales/hi/README.md) +- [Bahasa Indonesia](locales/id/README.md) +- [Italiano](locales/it/README.md) +- [日本語](locales/ja/README.md) +- [한국어](locales/ko/README.md) +- [Nederlands](locales/nl/README.md) +- [Polski](locales/pl/README.md) +- [Português (BR)](locales/pt-BR/README.md) +- [Русский](locales/ru/README.md) +- [Türkçe](locales/tr/README.md) +- [Tiếng Việt](locales/vi/README.md) +- [简体中文](locales/zh-CN/README.md) +- [繁體中文](locales/zh-TW/README.md) +- ... + --- -## What Can Roo Code Do? +## What Can Roo Code Do For YOU? -- 🚀 **Generate Code** from natural language descriptions -- 🔧 **Refactor & Debug** existing code -- 📝 **Write & Update** documentation -- 🤔 **Answer Questions** about your codebase -- 🔄 **Automate** repetitive tasks -- 🏗️ **Create** new files and projects +- Generate Code from natural language descriptions and specs +- Adapt with Modes: Code, Architect, Ask, Debug, and Custom Modes +- Refactor & Debug existing code +- Write & Update documentation +- Answer Questions about your codebase +- Automate repetitive tasks +- Utilize MCP Servers -## Quick Start +## Modes -1. [Install Roo Code](https://docs.roocode.com/getting-started/installing) -2. [Connect Your AI Provider](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [Try Your First Task](https://docs.roocode.com/getting-started/your-first-task) +Roo Code adapts to how you work: -## Key Features +- Code Mode: everyday coding, edits, and file ops +- Architect Mode: plan systems, specs, and migrations +- Ask Mode: fast answers, explanations, and docs +- Debug Mode: trace issues, add logs, isolate root causes +- Custom Modes: build specialized modes for your team or workflow +- Roomote Control: Roomote Control lets you remotely control tasks running in your local VS Code instance. -### Multiple Modes +Learn more: [Using Modes](https://docs.roocode.com/basic-usage/using-modes) • [Custom Modes](https://docs.roocode.com/advanced-usage/custom-modes) • [Custom Modes](https://docs.roocode.com/roo-code-cloud/roomote-control) -Roo Code adapts to your needs with specialized [modes](https://docs.roocode.com/basic-usage/using-modes): +## Tutorial & Feature Videos -- **Code Mode:** For general-purpose coding tasks -- **Architect Mode:** For planning and technical leadership -- **Ask Mode:** For answering questions and providing information -- **Debug Mode:** For systematic problem diagnosis -- **[Custom Modes](https://docs.roocode.com/advanced-usage/custom-modes):** Create unlimited specialized personas for security auditing, performance optimization, documentation, or any other task +
-### Smart Tools +| | | | +| :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Installing Roo Code |
Configuring Profiles |
Codebase Indexing | +|
Custom Modes |
Checkpoints |
Todo Lists | -Roo Code comes with powerful [tools](https://docs.roocode.com/basic-usage/how-tools-work) that can: - -- Read and write files in your project -- Execute commands in your VS Code terminal -- Control a web browser -- Use external tools via [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) - -MCP extends Roo Code's capabilities by allowing you to add unlimited custom tools. Integrate with external APIs, connect to databases, or create specialized development tools - MCP provides the framework to expand Roo Code's functionality to meet your specific needs. - -### Customization - -Make Roo Code work your way with: - -- [Custom Instructions](https://docs.roocode.com/advanced-usage/custom-instructions) for personalized behavior -- [Custom Modes](https://docs.roocode.com/advanced-usage/custom-modes) for specialized tasks -- [Local Models](https://docs.roocode.com/advanced-usage/local-models) for offline use -- [Auto-Approval Settings](https://docs.roocode.com/advanced-usage/auto-approving-actions) for faster workflows +
+

+More quick tutorial and feature videos... +

## Resources -### Documentation - -- [Basic Usage Guide](https://docs.roocode.com/basic-usage/the-chat-interface) -- [Advanced Features](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [Frequently Asked Questions](https://docs.roocode.com/faq) - -### Community - -- **Discord:** [Join our Discord server](https://discord.gg/roocode) for real-time help and discussions -- **Reddit:** [Visit our subreddit](https://www.reddit.com/r/RooCode) to share experiences and tips -- **GitHub:** Report [issues](https://github.com/RooCodeInc/Roo-Code/issues) or request [features](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[Documentation](https://docs.roocode.com):** The official guide to installing, configuring, and mastering Roo Code. +- **[YouTube Channel](https://youtube.com/@roocodeyt?feature=shared):** Watch tutorials and see features in action. +- **[Discord Server](https://discord.gg/roocode):** Join the community for real-time help and discussion. +- **[Reddit Community](https://www.reddit.com/r/RooCode):** Share your experiences and see what others are building. +- **[GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues):** Report bugs and track development. +- **[Feature Requests](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** Have an idea? Share it with the developers. --- @@ -198,47 +173,7 @@ Thanks to all our contributors who have helped make Roo Code better! -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) diff --git a/apps/web-docs/.gitkeep b/apps/web-docs/.gitkeep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/apps/web-docs/README.md b/apps/web-docs/README.md deleted file mode 100644 index 1333ed77b7..0000000000 --- a/apps/web-docs/README.md +++ /dev/null @@ -1 +0,0 @@ -TODO diff --git a/apps/web-roo-code/package.json b/apps/web-roo-code/package.json index 6aa808c9c2..ceda6f6296 100644 --- a/apps/web-roo-code/package.json +++ b/apps/web-roo-code/package.json @@ -28,11 +28,13 @@ "next-themes": "^0.4.6", "posthog-js": "^1.248.1", "react": "^18.3.1", + "react-cookie-consent": "^9.0.0", "react-dom": "^18.3.1", "react-icons": "^5.5.0", "recharts": "^2.15.3", "tailwind-merge": "^3.3.0", "tailwindcss-animate": "^1.0.7", + "tldts": "^6.1.86", "zod": "^3.25.61" }, "devDependencies": { diff --git a/apps/web-roo-code/src/app/layout.tsx b/apps/web-roo-code/src/app/layout.tsx index ac33c8920f..0810598049 100644 --- a/apps/web-roo-code/src/app/layout.tsx +++ b/apps/web-roo-code/src/app/layout.tsx @@ -1,8 +1,8 @@ import React from "react" import type { Metadata } from "next" import { Inter } from "next/font/google" -import Script from "next/script" import { SEO } from "@/lib/seo" +import { CookieConsentWrapper } from "@/components/CookieConsentWrapper" import { Providers } from "@/components/providers" @@ -93,22 +93,13 @@ export default function RootLayout({ children }: { children: React.ReactNode }) /> - {/* Google tag (gtag.js) */} -
{children} + diff --git a/apps/web-roo-code/src/app/page.tsx b/apps/web-roo-code/src/app/page.tsx index a7fd810a66..bafef64936 100644 --- a/apps/web-roo-code/src/app/page.tsx +++ b/apps/web-roo-code/src/app/page.tsx @@ -32,14 +32,17 @@ export default async function Home() { AI-Powered - Dev Team, Right in Your Editor. + Dev Team, in Your Editor + + and Beyond +

- Supercharge your editor with AI that{" "} + Supercharge your software development with AI that{" "} understands your codebase - - , streamlines development, and helps you write, refactor, and debug with ease. + {" "} + and helps you write, refactor, and debug with ease in your editor and in the cloud.

diff --git a/apps/web-roo-code/src/components/CookieConsentWrapper.tsx b/apps/web-roo-code/src/components/CookieConsentWrapper.tsx new file mode 100644 index 0000000000..23b8f5a28f --- /dev/null +++ b/apps/web-roo-code/src/components/CookieConsentWrapper.tsx @@ -0,0 +1,111 @@ +"use client" + +import React, { useState, useEffect } from "react" +import ReactCookieConsent from "react-cookie-consent" +import { Cookie } from "lucide-react" +import { getDomain } from "tldts" +import { CONSENT_COOKIE_NAME } from "@roo-code/types" +import { dispatchConsentEvent } from "@/lib/analytics/consent-manager" + +/** + * GDPR-compliant cookie consent banner component + * Handles both the UI and consent event dispatching + */ +export function CookieConsentWrapper() { + const [cookieDomain, setCookieDomain] = useState(null) + + useEffect(() => { + // Get the appropriate domain using tldts + if (typeof window !== "undefined") { + const domain = getDomain(window.location.hostname) + setCookieDomain(domain) + } + }, []) + + const handleAccept = () => { + dispatchConsentEvent(true) + } + + const handleDecline = () => { + dispatchConsentEvent(false) + } + + const extraCookieOptions = cookieDomain + ? { + domain: cookieDomain, + } + : {} + + const containerClasses = ` + fixed bottom-2 left-2 right-2 z-[999] + bg-black/95 dark:bg-white/95 + text-white dark:text-black + border-t-neutral-800 dark:border-t-gray-200 + backdrop-blur-xl + border-t + font-semibold + rounded-t-lg + px-4 py-4 md:px-8 md:py-4 + flex flex-wrap items-center justify-between gap-4 + text-sm font-sans + `.trim() + + const buttonWrapperClasses = ` + flex + flex-row-reverse + items-center + gap-2 + `.trim() + + const acceptButtonClasses = ` + bg-white text-black border-neutral-800 + dark:bg-black dark:text-white dark:border-gray-200 + hover:opacity-50 + transition-opacity + rounded-md + px-4 py-2 mr-2 + text-sm font-bold + cursor-pointer + focus:outline-none focus:ring-2 focus:ring-offset-2 + `.trim() + + const declineButtonClasses = ` + dark:bg-white dark:text-black dark:border-gray-200 + bg-black text-white border-neutral-800 + hover:opacity-50 + border border-border + transition-opacity + rounded-md + px-4 py-2 + text-sm font-bold + cursor-pointer + focus:outline-none focus:ring-2 focus:ring-offset-2 + `.trim() + + return ( +
+ +
+ + Like most of the internet, we use cookies. Are you OK with that? +
+
+
+ ) +} diff --git a/apps/web-roo-code/src/components/providers/google-analytics-provider.tsx b/apps/web-roo-code/src/components/providers/google-analytics-provider.tsx new file mode 100644 index 0000000000..7bbe26d5bf --- /dev/null +++ b/apps/web-roo-code/src/components/providers/google-analytics-provider.tsx @@ -0,0 +1,92 @@ +"use client" + +import { useEffect, useState } from "react" +import Script from "next/script" +import { hasConsent, onConsentChange } from "@/lib/analytics/consent-manager" + +// Google Tag Manager ID +const GTM_ID = "AW-17391954825" + +/** + * Google Analytics Provider + * Only loads Google Tag Manager after user gives consent + */ +export function GoogleAnalyticsProvider({ children }: { children: React.ReactNode }) { + const [shouldLoad, setShouldLoad] = useState(false) + + useEffect(() => { + // Check initial consent status + if (hasConsent()) { + setShouldLoad(true) + initializeGoogleAnalytics() + } + + // Listen for consent changes + const unsubscribe = onConsentChange((consented) => { + if (consented && !shouldLoad) { + setShouldLoad(true) + initializeGoogleAnalytics() + } + }) + + return unsubscribe + }, [shouldLoad]) + + const initializeGoogleAnalytics = () => { + // Initialize the dataLayer and gtag function + if (typeof window !== "undefined") { + window.dataLayer = window.dataLayer || [] + window.gtag = function (...args: GtagArgs) { + window.dataLayer.push(args) + } + window.gtag("js", new Date()) + window.gtag("config", GTM_ID) + } + } + + // Only render Google Analytics scripts if consent is given + if (!shouldLoad) { + return <>{children} + } + + return ( + <> + {/* Google tag (gtag.js) - Only loads after consent */} + + {children} + + ) +} + +// Type definitions for Google Analytics +type GtagArgs = ["js", Date] | ["config", string, GtagConfig?] | ["event", string, GtagEventParameters?] + +interface GtagConfig { + [key: string]: unknown +} + +interface GtagEventParameters { + [key: string]: unknown +} + +// Declare global types for TypeScript +declare global { + interface Window { + dataLayer: GtagArgs[] + gtag: (...args: GtagArgs) => void + } +} diff --git a/apps/web-roo-code/src/components/providers/posthog-provider.tsx b/apps/web-roo-code/src/components/providers/posthog-provider.tsx index a0c23cf989..d172fd8f18 100644 --- a/apps/web-roo-code/src/components/providers/posthog-provider.tsx +++ b/apps/web-roo-code/src/components/providers/posthog-provider.tsx @@ -3,16 +3,15 @@ import { usePathname, useSearchParams } from "next/navigation" import posthog from "posthog-js" import { PostHogProvider as OriginalPostHogProvider } from "posthog-js/react" -import { useEffect, Suspense } from "react" +import { useEffect, Suspense, useState } from "react" +import { hasConsent, onConsentChange } from "@/lib/analytics/consent-manager" -// Create a separate component for analytics tracking that uses useSearchParams function PageViewTracker() { const pathname = usePathname() const searchParams = useSearchParams() // Track page views useEffect(() => { - // Only track page views if PostHog is properly initialized if (pathname && process.env.NEXT_PUBLIC_POSTHOG_KEY) { let url = window.location.origin + pathname if (searchParams && searchParams.toString()) { @@ -29,8 +28,10 @@ function PageViewTracker() { } export function PostHogProvider({ children }: { children: React.ReactNode }) { + const [isInitialized, setIsInitialized] = useState(false) + useEffect(() => { - // Initialize PostHog only on the client side + // Initialize PostHog only on the client side AND when consent is given if (typeof window !== "undefined") { const posthogKey = process.env.NEXT_PUBLIC_POSTHOG_KEY const posthogHost = process.env.NEXT_PUBLIC_POSTHOG_HOST @@ -51,27 +52,48 @@ export function PostHogProvider({ children }: { children: React.ReactNode }) { ) } - posthog.init(posthogKey, { - api_host: posthogHost || "https://us.i.posthog.com", - capture_pageview: false, // We'll handle this manually - loaded: (posthogInstance) => { - if (process.env.NODE_ENV === "development") { - // Log to console in development - posthogInstance.debug() - } - }, - respect_dnt: true, // Respect Do Not Track + const initializePosthog = () => { + if (!isInitialized) { + posthog.init(posthogKey, { + api_host: posthogHost || "https://us.i.posthog.com", + capture_pageview: false, + loaded: (posthogInstance) => { + if (process.env.NODE_ENV === "development") { + posthogInstance.debug() + } + }, + respect_dnt: true, // Respect Do Not Track + }) + setIsInitialized(true) + } + } + + // Check initial consent status + if (hasConsent()) { + initializePosthog() + } + + // Listen for consent changes + const unsubscribe = onConsentChange((consented) => { + if (consented && !isInitialized) { + initializePosthog() + } }) + + return () => { + unsubscribe() + } } + }, [isInitialized]) - // No explicit cleanup needed for posthog-js v1.231.0 - }, []) - + // Only provide PostHog context if it's initialized return ( - - - + {isInitialized && ( + + + + )} {children} ) diff --git a/apps/web-roo-code/src/components/providers/providers.tsx b/apps/web-roo-code/src/components/providers/providers.tsx index a0e77b38e2..acbeeb4e14 100644 --- a/apps/web-roo-code/src/components/providers/providers.tsx +++ b/apps/web-roo-code/src/components/providers/providers.tsx @@ -4,17 +4,20 @@ import { QueryClient, QueryClientProvider } from "@tanstack/react-query" import { ThemeProvider } from "next-themes" import { PostHogProvider } from "./posthog-provider" +import { GoogleAnalyticsProvider } from "./google-analytics-provider" const queryClient = new QueryClient() export const Providers = ({ children }: { children: React.ReactNode }) => { return ( - - - {children} - - + + + + {children} + + + ) } diff --git a/apps/web-roo-code/src/lib/analytics/consent-manager.ts b/apps/web-roo-code/src/lib/analytics/consent-manager.ts new file mode 100644 index 0000000000..10ef71ee70 --- /dev/null +++ b/apps/web-roo-code/src/lib/analytics/consent-manager.ts @@ -0,0 +1,47 @@ +/** + * Simple consent event system + * Dispatches events when cookie consent changes + */ + +import { getCookieConsentValue } from "react-cookie-consent" +import { CONSENT_COOKIE_NAME } from "@roo-code/types" + +export const CONSENT_EVENT = "cookieConsentChanged" + +/** + * Check if user has given consent for analytics cookies + * Uses react-cookie-consent's built-in function + */ +export function hasConsent(): boolean { + if (typeof window === "undefined") return false + return getCookieConsentValue(CONSENT_COOKIE_NAME) === "true" +} + +/** + * Dispatch a consent change event + */ +export function dispatchConsentEvent(consented: boolean): void { + if (typeof window !== "undefined") { + const event = new CustomEvent(CONSENT_EVENT, { + detail: { consented }, + }) + window.dispatchEvent(event) + } +} + +/** + * Listen for consent changes + */ +export function onConsentChange(callback: (consented: boolean) => void): () => void { + if (typeof window === "undefined") { + return () => {} + } + + const handler = (event: Event) => { + const customEvent = event as CustomEvent<{ consented: boolean }> + callback(customEvent.detail.consented) + } + + window.addEventListener(CONSENT_EVENT, handler) + return () => window.removeEventListener(CONSENT_EVENT, handler) +} diff --git a/locales/ca/CONTRIBUTING.md b/locales/ca/CONTRIBUTING.md index 6c6459949d..1a3bd0c1b7 100644 --- a/locales/ca/CONTRIBUTING.md +++ b/locales/ca/CONTRIBUTING.md @@ -13,126 +13,129 @@ # Contribuir a Roo Code -Roo Code és un projecte impulsat per la comunitat i valorem molt cada contribució. Per simplificar la col·laboració, treballem amb un enfoc [Issue-First](#enfoc-issue-first), que significa que tots els [Pull Requests (PRs)](#enviar-un-pull-request) han d'estar primer vinculats a una Issue de GitHub. Si us plau, llegeix aquesta guia amb atenció. +Roo Code és un projecte impulsat per la comunitat i valorem profundament cada contribució. Per agilitzar la col·laboració, operem sobre una base de [primer la incidència](#enfocament-de-primera-incidència), la qual cosa significa que totes les [sol·licituds d'extracció (PR)](#enviament-duna-sollicitud-dextracció) primer han d'estar enllaçades a una incidència de GitHub. Si us plau, reviseu aquesta guia amb atenció. ## Taula de continguts - [Abans de contribuir](#abans-de-contribuir) -- [Trobar i planificar la teva contribució](#trobar-i-planificar-la-teva-contribució) -- [Procés de desenvolupament i enviament](#procés-de-desenvolupament-i-enviament) +- [Trobar i planificar la vostra contribució](#trobar-i-planificar-la-vostra-contribució) +- [Procés de desenvolupament i submissió](#procés-de-desenvolupament-i-submissió) - [Legal](#legal) ## Abans de contribuir -### 1. Codi de conducta +### 1. Codi de Conducta -Tots els col·laboradors han de complir el nostre [Codi de conducta](./CODE_OF_CONDUCT.md). +Tots els col·laboradors han de complir el nostre [Codi de Conducta](./CODE_OF_CONDUCT.md). -### 2. Fulla de ruta del projecte +### 2. Full de ruta del projecte -La nostra fulla de ruta orienta la direcció del projecte. Alinea les teves contribucions amb aquests objectius clau: +El nostre full de ruta guia la direcció del projecte. Alineeu les vostres contribucions amb aquests objectius clau: -### Fiabilitat primer +### La fiabilitat primer -- Garantir que l'edició de diferències i l'execució de comandes siguin consistentment fiables -- Reduir els punts de fricció que desanimen l'ús regular -- Garantir un funcionament fluid en tots els idiomes i plataformes -- Ampliar el suport robust per a una àmplia varietat de proveïdors i models d'IA +- Assegureu-vos que l'edició de diferències i l'execució d'ordres siguin fiables de manera consistent. +- Reduïu els punts de fricció que desincentiven l'ús habitual. +- Garantiu un funcionament fluid en tots els llocs i plataformes. +- Amplieu el suport robust per a una àmplia varietat de proveïdors i models d'IA. ### Experiència d'usuari millorada -- Simplificar la interfície d'usuari per a més claredat i intuïció -- Millorar contínuament el flux de treball per satisfer les altes expectatives dels desenvolupadors +- Agilitzeu la interfície d'usuari/experiència d'usuari per a més claredat i intuïtivitat. +- Milloreu contínuament el flux de treball per satisfer les altes expectatives que els desenvolupadors tenen de les eines d'ús diari. -### Lideratge en rendiment dels agents +### Liderant en rendiment d'agents -- Establir punts de referència d'avaluació (evals) complets per mesurar la productivitat real -- Facilitar que tothom pugui executar i interpretar aquestes avaluacions fàcilment -- Proporcionar millores que demostrin increments clars en les puntuacions d'avaluació +- Establir punts de referència d'avaluació complets (evals) per mesurar la productivitat del món real. +- Feu que sigui fàcil per a tothom executar i interpretar aquestes avaluacions. +- Envieu millores que demostrin augments clars en les puntuacions d'avaluació. -Esmenta la relació amb aquestes àrees als teus PRs. +Mencioneu l'alineació amb aquestes àrees a les vostres sol·licituds d'extracció. -### 3. Uneix-te a la comunitat Roo Code +### 3. Uniu-vos a la comunitat de Roo Code -- **Principal:** Uneix-te al nostre [Discord](https://discord.gg/roocode) i envia un DM a **Hannes Rudolph (`hrudolph`)**. -- **Alternativa:** Els col·laboradors experimentats poden participar directament via [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1). +- **Principal:** Uniu-vos al nostre [Discord](https://discord.gg/roocode) i envieu un missatge directe a **Hannes Rudolph (`hrudolph`)**. +- **Alternativa:** Els col·laboradors experimentats poden participar directament a través de [Projectes de GitHub](https://github.com/orgs/RooCodeInc/projects/1). -## Trobar i planificar la teva contribució +## Trobar i planificar la vostra contribució ### Tipus de contribucions -- **Correcció d'errors:** Solucionar problemes en el codi. -- **Noves funcionalitats:** Afegir noves capacitats. -- **Documentació:** Millorar guies i claredat. +- **Correccions d'errors:** abordar problemes de codi. +- **Noves característiques:** afegir funcionalitats. +- **Documentació:** millorar les guies i la claredat. -### Enfoc Issue-First +### Enfocament de primera incidència -Totes les contribucions han de començar amb una Issue de GitHub. +Totes les contribucions comencen amb una incidència de GitHub utilitzant les nostres plantilles bàsiques. -- **Revisar issues existents:** Cerca a [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). -- **Crear una issue:** Utilitza les plantilles adequades: - - **Errors:** Plantilla "Bug Report". - - **Funcionalitats:** Plantilla "Detailed Feature Proposal". Es requereix aprovació abans de començar. -- **Reclamar issues:** Comenta i espera l'assignació oficial. - -**Els PRs sense issues aprovades poden ser tancats.** +- **Comproveu les incidències existents**: cerqueu a [Incidències de GitHub](https://github.com/RooCodeInc/Roo-Code/issues). +- **Creeu una incidència** utilitzant: + - **Millores:** plantilla "Sol·licitud de millora" (llenguatge senzill centrat en el benefici per a l'usuari). + - **Errors:** plantilla "Informe d'error" (reproducció mínima + esperat vs real + versió). +- **Voleu treballar-hi?** Comenteu "Reclamant" a la incidència i envieu un missatge directe a **Hannes Rudolph (`hrudolph`)** a [Discord](https://discord.gg/roocode) per ser assignat. L'assignació es confirmarà al fil. +- **Les sol·licituds d'extracció han d'enllaçar a la incidència.** Les sol·licituds d'extracció no enllaçades es poden tancar. ### Decidir en què treballar -- Consulta el [Projecte GitHub](https://github.com/orgs/RooCodeInc/projects/1) per trobar "Good First Issues" no assignades. -- Per a documentació, visita [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). +- Consulteu el [Projecte de GitHub](https://github.com/orgs/RooCodeInc/projects/1) per a incidències "Incidència [No assignada]". +- Per a documents, visiteu [Documents de Roo Code](https://github.com/RooCodeInc/Roo-Code-Docs). ### Informar d'errors -- Comprova primer els informes existents. -- Crea nous informes d'errors utilitzant la [plantilla "Bug Report"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose). -- **Vulnerabilitats de seguretat:** Informa de manera privada via [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). +- Comproveu primer si hi ha informes existents. +- Creeu un error nou utilitzant la [plantilla "Informe d'error"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) amb: + - Passos de reproducció clars i numerats + - Resultat esperat vs real + - Versió de Roo Code (obligatori); proveïdor/model d'API si és rellevant +- **Problemes de seguretat**: informeu de manera privada a través d' [avisos de seguretat](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). -## Procés de desenvolupament i enviament +## Procés de desenvolupament i submissió -### Configuració de desenvolupament +### Configuració del desenvolupament -1. **Fork & Clona:** +1. **Bifurcació i clonació:** ``` -git clone https://github.com/EL_TEU_USUARI/Roo-Code.git +git clone https://github.com/EL_TEU_NOM_USUARI/Roo-Code.git ``` -2. **Instal·la dependències:** +2. **Instal·leu les dependències:** ``` -npm run install:all +pnpm install ``` -3. **Depuració:** Obre amb VS Code (`F5`). +3. **Depuració:** Obriu amb VS Code (`F5`). -### Guia per escriure codi +### Directrius per escriure codi -- Un PR centrat per funcionalitat o correcció. -- Segueix les millors pràctiques d'ESLint i TypeScript. -- Escriu missatges de commit clars i descriptius que facin referència a issues (ex: `Fixes #123`). -- Proporciona proves completes (`npm test`). -- Rebaseja a la branca `main` més recent abans d'enviar. +- Una sol·licitud d'extracció centrada per característica o correcció. +- Seguiu les millors pràctiques d'ESLint i TypeScript. +- Escriviu confirmacions clares i descriptives que facin referència a incidències (p. ex., `Soluciona #123`). +- Proporcioneu proves exhaustives (`npm test`). +- Rebaseu a la branca `main` més recent abans de la submissió. -### Enviar un Pull Request +### Enviament d'una sol·licitud d'extracció -- Comença com a **PR en esborrany** si busques feedback primerenc. -- Descriu clarament els teus canvis seguint la Plantilla de Pull Request. -- Proporciona captures de pantalla/vídeos per a canvis d'UI. -- Indica si es necessiten actualitzacions de documentació. +- Comenceu com a **PR d'esborrany** si busqueu comentaris primerencs. +- Descriviu clarament els vostres canvis seguint la plantilla de sol·licitud d'extracció. +- Enllaceu la incidència a la descripció/títol de la PR (p. ex., "Soluciona #123"). +- Proporcioneu captures de pantalla/vídeos per a canvis a la interfície d'usuari. +- Indiqueu si calen actualitzacions de la documentació. -### Política de Pull Request +### Política de sol·licitud d'extracció -- Ha de fer referència a issues preaprovades i assignades. -- Els PRs que no segueixen la política poden ser tancats. -- Els PRs han de passar els tests de CI, alinear-se amb la fulla de ruta i tenir documentació clara. +- Ha de fer referència a una incidència de GitHub assignada. Per ser assignat: comenteu "Reclamant" a la incidència i envieu un missatge directe a **Hannes Rudolph (`hrudolph`)** a [Discord](https://discord.gg/roocode). L'assignació es confirmarà al fil. +- Les sol·licituds d'extracció no enllaçades es poden tancar. +- Les sol·licituds d'extracció han de passar les proves de CI, alinear-se amb el full de ruta i tenir una documentació clara. ### Procés de revisió -- **Triatge diari:** Comprovacions ràpides pels mantenidors. -- **Revisió setmanal detallada:** Avaluació exhaustiva. -- **Itera ràpidament** en base al feedback. +- **Triatge diari:** revisions ràpides per part dels mantenidors. +- **Revisió setmanal en profunditat:** avaluació completa. +- **Itereu ràpidament** en funció dels comentaris. ## Legal -En enviar un pull request, acceptes que les teves contribucions es llicenciïn sota la Llicència Apache 2.0, d'acord amb la llicència de Roo Code. +En contribuir, accepteu que les vostres contribucions es llicenciaran sota la llicència Apache 2.0, d'acord amb la llicència de Roo Code. diff --git a/locales/ca/README.md b/locales/ca/README.md index 95968945d5..1ccc73c3ca 100644 --- a/locales/ca/README.md +++ b/locales/ca/README.md @@ -1,178 +1,169 @@ -
- - -[English](../../README.md) • Català • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Uniu-vos a la Comunitat Roo Code

-

Connecteu-vos amb desenvolupadors, contribuïu amb idees i manteniu-vos al dia amb les últimes eines de programació amb IA.

- - Uniu-vos a Discord - Uniu-vos a Reddit - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ Obté ajuda ràpidament → Uneix-te a Discord • Prefereixes l'asíncron? → Uneix-te a r/RooCode

-Descarregueu al VS Marketplace -Sol·licituds de funcions -Valoreu & Reviseu -Documentació +# Roo Code + +> El teu equip de desenvolupament impulsat per IA, directament al teu editor + +
+ 🌐 Idiomes disponibles + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Què pot fer Roo Code per TU? + +- Generar codi a partir de descripcions en llenguatge natural +- Adaptar-se amb modes: Codi, Arquitecte, Pregunta, Depuració i Modes personalitzats +- Refactoritzar i depurar codi existent +- Escriure i actualitzar documentació +- Respondre preguntes sobre la teva base de codi +- Automatitzar tasques repetitives +- Utilitzar servidors MCP + +## Modes + +Roo Code s'adapta a la teva manera de treballar, no a l'inrevés: + +- Mode Codi: codificació diària, edicions i operacions de fitxers +- Mode Arquitecte: planificar sistemes, especificacions i migracions +- Mode Pregunta: respostes ràpides, explicacions i documents +- Mode Depuració: rastrejar problemes, afegir registres, aïllar les causes arrel +- Modes personalitzats: crea modes especialitzats per al teu equip o flux de treball +- Roomote Control: Roomote Control et permet controlar a distància tasques que s'executen a la teva instància local de VS Code. + +Més informació: [Ús de Modes](https://docs.roocode.com/basic-usage/using-modes) • [Modes personalitzats](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## Tutorials i vídeos de funcionalitats + +
+ +| | | | +| :------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Instal·lant Roo Code |
Configurant perfils |
Indexació de la base de codi | +|
Modes personalitzats |
Punts de control |
Llistes de tasques |
- -**Roo Code** és un **agent de programació autònom** impulsat per IA que viu en el vostre editor. Pot: - -- Comunicar-se en llenguatge natural -- Llegir i escriure fitxers directament en el vostre espai de treball -- Executar comandes de terminal -- Automatitzar accions del navegador -- Integrar-se amb qualsevol API/model compatible amb OpenAI o personalitzat -- Adaptar la seva "personalitat" i capacitats mitjançant **Modes Personalitzats** - -Tant si busqueu un soci de programació flexible, un arquitecte de sistemes o rols especialitzats com un enginyer de control de qualitat o un gestor de producte, Roo Code us pot ajudar a construir programari de manera més eficient. - -Consulteu el [CHANGELOG](../../CHANGELOG.md) per a actualitzacions i correccions detallades. - ---- - -## 🎉 Roo Code 3.25 Llançat - -Roo Code 3.25 aporta noves funcionalitats potents i millores significatives per millorar el vostre flux de treball de desenvolupament! - -- **Cua de missatges** - Poseu diversos missatges a la cua mentre Roo treballa, permetent-vos continuar planificant el vostre flux de treball sense interrupcions. -- **Comandes slash personalitzades** - Creeu comandes slash personalitzades per a accés ràpid a prompts i fluxos de treball utilitzats freqüentment amb gestió completa de la interfície d'usuari. -- **Eines Gemini avançades** - Noves funcionalitats de context d'URL i fonaments de cerca de Google proporcionen als models Gemini informació web en temps real i capacitats de recerca avançades. - ---- - -## Què pot fer Roo Code? - -- 🚀 **Generar codi** a partir de descripcions en llenguatge natural -- 🔧 **Refactoritzar i depurar** codi existent -- 📝 **Escriure i actualitzar** documentació -- 🤔 **Respondre preguntes** sobre el vostre codi -- 🔄 **Automatitzar** tasques repetitives -- 🏗️ **Crear** nous fitxers i projectes - -## Inici ràpid - -1. [Instal·leu Roo Code](https://docs.roocode.com/getting-started/installing) -2. [Connecteu el vostre proveïdor d'IA](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [Proveu la vostra primera tasca](https://docs.roocode.com/getting-started/your-first-task) - -## Característiques principals - -### Múltiples modes - -Roo Code s'adapta a les vostres necessitats amb [modes](https://docs.roocode.com/basic-usage/using-modes) especialitzats: - -- **Mode Codi:** Per a tasques de programació de propòsit general -- **Mode Arquitecte:** Per a planificació i lideratge tècnic -- **Mode Pregunta:** Per a respondre preguntes i proporcionar informació -- **Mode Depuració:** Per a diagnòstic sistemàtic de problemes -- **[Modes personalitzats](https://docs.roocode.com/advanced-usage/custom-modes):** Creeu personatges especialitzats il·limitats per a auditoria de seguretat, optimització de rendiment, documentació o qualsevol altra tasca - -### Eines intel·ligents - -Roo Code ve amb potents [eines](https://docs.roocode.com/basic-usage/how-tools-work) que poden: - -- Llegir i escriure fitxers en el vostre projecte -- Executar comandes en el vostre terminal de VS Code -- Controlar un navegador web -- Utilitzar eines externes a través del [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) - -MCP amplia les capacitats de Roo Code permetent-vos afegir eines personalitzades il·limitades. Integreu amb APIs externes, connecteu-vos a bases de dades o creeu eines de desenvolupament especialitzades - MCP proporciona el marc per expandir la funcionalitat de Roo Code per satisfer les vostres necessitats específiques. - -### Personalització - -Feu que Roo Code funcioni a la vostra manera amb: - -- [Instruccions personalitzades](https://docs.roocode.com/advanced-usage/custom-instructions) per a comportament personalitzat -- [Modes personalitzats](https://docs.roocode.com/advanced-usage/custom-modes) per a tasques especialitzades -- [Models locals](https://docs.roocode.com/advanced-usage/local-models) per a ús offline -- [Configuració d'aprovació automàtica](https://docs.roocode.com/advanced-usage/auto-approving-actions) per a fluxos de treball més ràpids +

+Més tutorials ràpids i vídeos de funcionalitats... +

## Recursos -### Documentació - -- [Guia d'ús bàsic](https://docs.roocode.com/basic-usage/the-chat-interface) -- [Funcionalitats avançades](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [Preguntes freqüents](https://docs.roocode.com/faq) - -### Comunitat - -- **Discord:** [Uniu-vos al nostre servidor de Discord](https://discord.gg/roocode) per a ajuda en temps real i discussions -- **Reddit:** [Visiteu el nostre subreddit](https://www.reddit.com/r/RooCode) per compartir experiències i consells -- **GitHub:** [Informeu de problemes](https://github.com/RooCodeInc/Roo-Code/issues) o [sol·liciteu funcionalitats](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[Documentació](https://docs.roocode.com):** La guia oficial per instal·lar, configurar i dominar Roo Code. +- **[Canal de YouTube](https://youtube.com/@roocodeyt?feature=shared):** Mira tutorials i veu les funcionalitats en acció. +- **[Servidor de Discord](https://discord.gg/roocode):** Uneix-te a la comunitat per obtenir ajuda i discutir en temps real. +- **[Comunitat de Reddit](https://www.reddit.com/r/RooCode):** Comparteix les teves experiències i veu què estan construint altres. +- **[Incidències de GitHub](https://github.com/RooCodeInc/Roo-Code/issues):** Informa d'errors i segueix el desenvolupament. +- **[Sol·licituds de funcionalitats](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** Tens una idea? Comparteix-la amb els desenvolupadors. --- ## Configuració i desenvolupament local -1. **Cloneu** el repositori: +1. **Clona** el repositori: ```sh git clone https://github.com/RooCodeInc/Roo-Code.git ``` -2. **Instal·leu les dependències**: +2. **Instal·la les dependències**: ```sh -npm run install:all +pnpm install ``` -3. **Inicieu la vista web (aplicació Vite/React amb HMR)**: +3. **Executa l'extensió**: + +Hi ha diverses maneres d'executar l'extensió Roo Code: + +### Mode de desenvolupament (F5) + +Per al desenvolupament actiu, utilitza la depuració integrada de VSCode: + +Prem `F5` (o ves a **Executa** → **Inicia la depuració**) a VSCode. Això obrirà una nova finestra de VSCode amb l'extensió Roo Code en funcionament. + +- Els canvis a la vista web apareixeran immediatament. +- Els canvis a l'extensió principal també es recarregaran automàticament. + +### Instal·lació automatitzada de VSIX + +Per construir i instal·lar l'extensió com un paquet VSIX directament a VSCode: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **Depuració**: - Premeu `F5` (o **Execució** → **Inicia la depuració**) a VSCode per obrir una nova sessió amb Roo Code carregat. +Aquesta comanda farà el següent: -Els canvis a la vista web apareixeran immediatament. Els canvis a l'extensió principal requeriran reiniciar l'amfitrió de l'extensió. +- Preguntarà quina comanda d'editor utilitzar (code/cursor/code-insiders) - per defecte és 'code' +- Desinstal·larà qualsevol versió existent de l'extensió. +- Construirà l'últim paquet VSIX. +- Instal·larà el VSIX acabat de construir. +- Et demanarà que reiniciïs VS Code perquè els canvis tinguin efecte. -Alternativament, podeu crear un .vsix i instal·lar-lo directament a VSCode: +Opcions: -```sh -npm run build -``` +- `-y`: Omet totes les confirmacions i utilitza els valors per defecte +- `--editor=`: Especifica la comanda de l'editor (p. ex., `--editor=cursor` o `--editor=code-insiders`) -Apareixerà un fitxer `.vsix` al directori `bin/` que es pot instal·lar amb: +### Instal·lació manual de VSIX -```sh -code --install-extension bin/roo-cline-.vsix -``` +Si prefereixes instal·lar el paquet VSIX manualment: -Utilitzem [changesets](https://github.com/changesets/changesets) per a la gestió de versions i publicació. Consulteu el nostre `CHANGELOG.md` per a notes de llançament. +1. Primer, construeix el paquet VSIX: + ```sh + pnpm vsix + ``` +2. Es generarà un fitxer `.vsix` al directori `bin/` (p. ej., `bin/roo-cline-.vsix`). +3. Instal·la'l manualment utilitzant la CLI de VSCode: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- + +Utilitzem [changesets](https://github.com/changesets/changesets) per al versionat i la publicació. Consulta el nostre `CHANGELOG.md` per a les notes de la versió. --- ## Avís legal -**Tingueu en compte** que Roo Code, Inc **no** fa cap representació ni garantia pel que fa a qualsevol codi, model o altres eines proporcionades o posades a disposició en relació amb Roo Code, qualsevol eina de tercers associada, o qualsevol resultat. Assumiu **tots els riscos** associats amb l'ús de tals eines o resultats; aquestes eines es proporcionen "TAL COM ESTAN" i "SEGONS DISPONIBILITAT". Aquests riscos poden incloure, sense limitació, infraccions de propietat intel·lectual, vulnerabilitats o atacs cibernètics, biaixos, inexactituds, errors, defectes, virus, temps d'inactivitat, pèrdua o dany de propietat i/o lesions personals. Sou únicament responsables del vostre ús de tals eines o resultats (incloent, sense limitació, la legalitat, idoneïtat i resultats d'aquests). +**Tingueu en compte** que Roo Code, Inc **no** fa cap representació ni garantia pel que fa a cap codi, model o altres eines proporcionades o posades a disposició en relació amb Roo Code, qualsevol eina de tercers associada, o qualsevol resultat. Assumiu **tots els riscos** associats amb l'ús d'aquestes eines o resultats; aquestes eines es proporcionen **"TAL QUAL"** i **"SEGONS DISPONIBILITAT"**. Aquests riscos poden incloure, sense limitació, infraccions de propietat intel·lectual, vulnerabilitats o atacs cibernètics, biaix, inexactituds, errors, defectes, virus, temps d'inactivitat, pèrdua o dany de propietat i/o lesions personals. Sou l'únic responsable del vostre ús d'aquestes eines o resultats (incloent, sense limitació, la legalitat, idoneïtat i resultats dels mateixos). --- ## Contribucions -Ens encanten les contribucions de la comunitat! Comenceu llegint el nostre [CONTRIBUTING.md](CONTRIBUTING.md). +Ens encanten les contribucions de la comunitat! Comença llegint el nostre [CONTRIBUTING.md](CONTRIBUTING.md). --- @@ -182,54 +173,14 @@ Gràcies a tots els nostres col·laboradors que han ajudat a millorar Roo Code! -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) ## Llicència -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- -**Gaudiu de Roo Code!** Tant si el manteniu amb corretja curta com si el deixeu actuar de forma autònoma, estem impacients per veure què construïu. Si teniu preguntes o idees per a noves funcionalitats, passeu per la nostra [comunitat de Reddit](https://www.reddit.com/r/RooCode/) o [Discord](https://discord.gg/roocode). Feliç programació! +**Gaudeix de Roo Code!** Tant si el mantens amb una corretja curta com si el deixes moure's de forma autònoma, estem impacients per veure què construeixes. Si tens preguntes o idees sobre funcionalitats, passa't per la nostra [comunitat de Reddit](https://www.reddit.com/r/RooCode/) o [Discord](https://discord.gg/roocode). Feliç programació! diff --git a/locales/de/CONTRIBUTING.md b/locales/de/CONTRIBUTING.md index 4aa0279458..e7728aaa05 100644 --- a/locales/de/CONTRIBUTING.md +++ b/locales/de/CONTRIBUTING.md @@ -13,13 +13,13 @@ # Beitrag zu Roo Code -Roo Code ist ein Community-getriebenes Projekt, und wir schätzen jeden Beitrag sehr. Für eine reibungslose Zusammenarbeit arbeiten wir nach dem [Issue-First-Ansatz](#issue-first-ansatz), was bedeutet, dass alle [Pull Requests (PRs)](#einen-pull-request-einreichen) zuerst mit einem GitHub Issue verknüpft werden müssen. Bitte lies diesen Leitfaden sorgfältig durch. +Roo Code ist ein von der Community getragenes Projekt, und wir schätzen jeden Beitrag sehr. Um die Zusammenarbeit zu optimieren, arbeiten wir nach dem [Issue-First-Ansatz](#issue-first-ansatz), was bedeutet, dass alle [Pull Requests (PRs)](#einen-pull-request-einreichen) zuerst mit einem GitHub-Issue verknüpft sein müssen. Bitte lies diesen Leitfaden sorgfältig durch. ## Inhaltsverzeichnis - [Bevor du beiträgst](#bevor-du-beiträgst) -- [Beitrag finden & planen](#beitrag-finden--planen) -- [Entwicklung & Einreichung](#entwicklung--einreichung) +- [Deinen Beitrag finden und planen](#deinen-beitrag-finden-und-planen) +- [Entwicklungs- und Einreichungsprozess](#entwicklungs-und-einreichungsprozess) - [Rechtliches](#rechtliches) ## Bevor du beiträgst @@ -30,109 +30,112 @@ Alle Mitwirkenden müssen sich an unseren [Verhaltenskodex](./CODE_OF_CONDUCT.md ### 2. Projekt-Roadmap -Unsere Roadmap gibt die Richtung des Projekts vor. Richte deine Beiträge an diesen Schlüsselzielen aus: +Unsere Roadmap gibt die Richtung des Projekts vor. Richte deine Beiträge an diesen Hauptzielen aus: ### Zuverlässigkeit an erster Stelle -- Sicherstellen, dass Diff-Bearbeitung und Befehlsausführung durchgängig zuverlässig sind. -- Reibungspunkte reduzieren, die von der regelmäßigen Nutzung abhalten. -- Reibungslosen Betrieb in allen Sprachen und auf allen Plattformen garantieren. -- Robuste Unterstützung für eine Vielzahl von KI-Anbietern und -Modellen ausbauen. +- Stelle sicher, dass die Diff-Bearbeitung und die Befehlsausführung durchweg zuverlässig sind. +- Reduziere Reibungspunkte, die von der regelmäßigen Nutzung abhalten. +- Gewährleiste einen reibungslosen Betrieb in allen Gebietsschemata und auf allen Plattformen. +- Erweitere die robuste Unterstützung für eine Vielzahl von KI-Anbietern und -Modellen. ### Verbesserte Benutzererfahrung -- Die Benutzeroberfläche für mehr Klarheit und Intuitivität optimieren. -- Den Workflow kontinuierlich verbessern, um den hohen Erwartungen gerecht zu werden, die Entwickler an täglich genutzte Tools stellen. +- Optimiere die UI/UX für Klarheit und Intuitivität. +- Verbessere kontinuierlich den Arbeitsablauf, um den hohen Erwartungen gerecht zu werden, die Entwickler an täglich genutzte Werkzeuge haben. -### Führend bei der Agentenleistung +### Führend in der Agentenleistung -- Umfassende Evaluierungsmaßstäbe (Evals) etablieren, um die Produktivität in der realen Welt zu messen. -- Es für jeden einfach machen, diese Evals durchzuführen und zu interpretieren. -- Verbesserungen liefern, die klare Steigerungen der Eval-Ergebnisse zeigen. +- Etabliere umfassende Bewertungsmaßstäbe (evals), um die Produktivität in der Praxis zu messen. +- Mache es für jeden einfach, diese Bewertungen auszuführen und zu interpretieren. +- Liefere Verbesserungen, die klare Steigerungen der Bewertungsergebnisse zeigen. -Erwähne die Ausrichtung an diesen Bereichen in deinen PRs. +Erwähne die Ausrichtung auf diese Bereiche in deinen PRs. -### 3. Werde Teil der Roo Code Community +### 3. Tritt der Roo Code Community bei -- **Hauptweg:** Tritt unserem [Discord](https://discord.gg/roocode) bei und schreibe eine DM an **Hannes Rudolph (`hrudolph`)**. -- **Alternative:** Erfahrene Mitwirkende können sich direkt über [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1) beteiligen. +- **Primär:** Tritt unserem [Discord](https://discord.gg/roocode) bei und schreibe eine DM an **Hannes Rudolph (`hrudolph`)**. +- **Alternative:** Erfahrene Mitwirkende können sich direkt über [GitHub-Projekte](https://github.com/orgs/RooCodeInc/projects/1) beteiligen. -## Beitrag finden & planen +## Deinen Beitrag finden und planen -### Beitragsarten +### Arten von Beiträgen -- **Bugfixes:** Fehler im Code beheben. -- **Neue Features:** Neue Funktionen hinzufügen. -- **Dokumentation:** Anleitungen verbessern und klarer gestalten. +- **Fehlerbehebungen:** Behebung von Code-Problemen. +- **Neue Funktionen:** Hinzufügen von Funktionalität. +- **Dokumentation:** Verbesserung von Anleitungen und Klarheit. ### Issue-First-Ansatz -Alle Beiträge müssen mit einem GitHub Issue beginnen. +Alle Beiträge beginnen mit einem GitHub-Issue unter Verwendung unserer schlanken Vorlagen. -- **Bestehende Issues prüfen**: Durchsuche die [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). -- **Issue erstellen**: Nutze die passenden Vorlagen: - - **Bugs:** "Bug Report"-Vorlage. - - **Features:** "Detailed Feature Proposal"-Vorlage. Vor dem Start ist eine Genehmigung erforderlich. -- **Issues beanspruchen**: Kommentiere und warte auf die offizielle Zuweisung. +- **Überprüfe bestehende Issues**: Suche in den [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). +- **Erstelle ein Issue** mit: + - **Verbesserungen:** Vorlage „Verbesserungsvorschlag“ (einfache Sprache mit Fokus auf den Nutzen für den Benutzer). + - **Fehler:** Vorlage „Fehlerbericht“ (minimale Reproduktion + erwartet vs. tatsächlich + Version). +- **Möchtest du daran arbeiten?** Kommentiere „Claiming“ im Issue und schreibe eine DM an **Hannes Rudolph (`hrudolph`)** auf [Discord](https://discord.gg/roocode), um zugewiesen zu werden. Die Zuweisung wird im Thread bestätigt. +- **PRs müssen auf das Issue verweisen.** Nicht verknüpfte PRs können geschlossen werden. -**PRs ohne genehmigte Issues können geschlossen werden.** +### Entscheiden, woran du arbeiten möchtest -### Was soll ich machen? +- Überprüfe das [GitHub-Projekt](https://github.com/orgs/RooCodeInc/projects/1) auf „Issue [Unassigned]“-Issues. +- Für Dokumentation besuche [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). -- Schau im [GitHub Project](https://github.com/orgs/RooCodeInc/projects/1) nach nicht zugewiesenen "Good First Issues". -- Für Dokumentation besuche das [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs) Repository. +### Fehler melden -### Bugs melden +- Überprüfe zuerst, ob bereits Berichte vorhanden sind. +- Erstelle einen neuen Fehler mit der [Vorlage „Fehlerbericht“](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) mit: + - Klaren, nummerierten Reproduktionsschritten + - Erwartetes vs. tatsächliches Ergebnis + - Roo Code-Version (erforderlich); API-Anbieter/Modell, falls relevant +- **Sicherheitsprobleme**: Melde sie privat über [Sicherheitshinweise](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). -- Prüfe zuerst, ob der Bug bereits gemeldet wurde. -- Erstelle neue Bug-Reports mit der ["Bug Report"-Vorlage](https://github.com/RooCodeInc/Roo-Code/issues/new/choose). -- **Sicherheitslücken:** Melde diese privat über [Security Advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). +## Entwicklungs- und Einreichungsprozess -## Entwicklung & Einreichung +### Entwicklungseinrichtung -### Entwicklungs-Setup - -1. **Fork & Clone:** +1. **Fork & Klonen:** ``` -git clone https://github.com/DEIN_USERNAME/Roo-Code.git +git clone https://github.com/DEIN_BENUTZERNAME/Roo-Code.git ``` 2. **Abhängigkeiten installieren:** ``` -npm run install:all +pnpm install ``` -3. **Debugging:** Öffne mit VS Code (`F5`). +3. **Debugging:** Mit VS Code öffnen (`F5`). -### Code-Richtlinien +### Richtlinien zum Schreiben von Code -- Ein fokussierter PR pro Feature oder Fix. -- Folge den ESLint und TypeScript Best Practices. -- Schreibe klare, beschreibende Commits, die auf Issues verweisen (z.B. `Fixes #123`). -- Liefere gründliche Tests (`npm test`). -- Rebase auf den neuesten `main`-Branch vor dem Einreichen. +- Ein fokussierter PR pro Funktion oder Fehlerbehebung. +- Befolge die Best Practices von ESLint und TypeScript. +- Schreibe klare, beschreibende Commits mit Verweis auf Issues (z. B. `Fixes #123`). +- Stelle gründliche Tests bereit (`npm test`). +- Rebase auf den neuesten `main`-Zweig vor der Einreichung. ### Einen Pull Request einreichen -- Beginne als **Draft PR**, wenn du frühes Feedback suchst. -- Beschreibe deine Änderungen klar und folge der Pull Request Vorlage. +- Beginne als **Entwurfs-PR**, wenn du frühzeitig Feedback einholen möchtest. +- Beschreibe deine Änderungen klar und deutlich gemäß der Pull-Request-Vorlage. +- Verknüpfe das Issue in der PR-Beschreibung/Titel (z. B. „Fixes #123“). - Stelle Screenshots/Videos für UI-Änderungen bereit. -- Gib an, ob Dokumentationsaktualisierungen notwendig sind. +- Gib an, ob Dokumentationsaktualisierungen erforderlich sind. -### Pull Request Richtlinie +### Pull-Request-Richtlinie -- Muss auf vorab genehmigte, zugewiesene Issues verweisen. -- PRs ohne Einhaltung der Richtlinie können geschlossen werden. -- PRs sollten CI-Tests bestehen, zur Roadmap passen und klare Dokumentation haben. +- Muss auf ein zugewiesenes GitHub-Issue verweisen. Um zugewiesen zu werden: Kommentiere „Claiming“ im Issue und schreibe eine DM an **Hannes Rudolph (`hrudolph`)** auf [Discord](https://discord.gg/roocode). Die Zuweisung wird im Thread bestätigt. +- Nicht verknüpfte PRs können geschlossen werden. +- PRs müssen die CI-Tests bestehen, mit der Roadmap übereinstimmen und eine klare Dokumentation haben. -### Review-Prozess +### Überprüfungsprozess -- **Tägliche Triage:** Schnelle Prüfungen durch Maintainer. -- **Wöchentliche Tiefenprüfung:** Umfassende Bewertung. -- **Zeitnah auf Feedback reagieren** und entsprechend iterieren. +- **Tägliche Triage:** Schnelle Überprüfungen durch die Betreuer. +- **Wöchentliche ausführliche Überprüfung:** Umfassende Bewertung. +- **Iteriere umgehend** basierend auf dem Feedback. ## Rechtliches -Mit deinem Beitrag erklärst du dich damit einverstanden, dass deine Beiträge unter der Apache 2.0 Lizenz lizenziert werden, konsistent mit der Lizenzierung von Roo Code. +Indem du einen Beitrag leistest, stimmst du zu, dass deine Beiträge unter der Apache-2.0-Lizenz lizenziert werden, die mit der Lizenzierung von Roo Code übereinstimmt. diff --git a/locales/de/README.md b/locales/de/README.md index 5aa15a9231..022f80afac 100644 --- a/locales/de/README.md +++ b/locales/de/README.md @@ -1,235 +1,186 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • Deutsch • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Treten Sie der Roo Code Community bei

-

Vernetzen Sie sich mit Entwicklern, tragen Sie Ideen bei und bleiben Sie mit den neuesten KI-gestützten Coding-Tools auf dem Laufenden.

- - Discord beitreten - Reddit beitreten - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ Schnelle Hilfe → Discord beitreten • Lieber asynchron? → r/RooCode beitreten

-Download im VS Marketplace -Funktionsanfragen -Bewerten & Rezensieren -Dokumentation +# Roo Code + +> Dein KI-gestütztes Dev-Team – direkt in deinem Editor + +
+ 🌐 Verfügbare Sprachen + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Was kann Roo Code für DICH tun? + +- Code aus natürlichsprachlichen Beschreibungen generieren +- Anpassung mit Modi: Code, Architekt, Fragen, Debuggen und benutzerdefinierte Modi +- Bestehenden Code refaktorisieren & debuggen +- Dokumentation schreiben & aktualisieren +- Fragen zu deiner Codebasis beantworten +- Wiederkehrende Aufgaben automatisieren +- MCP-Server nutzen + +## Modi + +Roo Code passt sich an deine Arbeitsweise an, nicht umgekehrt: + +- Code-Modus: tägliches Codieren, Bearbeitungen und Dateioperationen +- Architekten-Modus: Systeme, Spezifikationen und Migrationen planen +- Fragen-Modus: schnelle Antworten, Erklärungen und Dokumentationen +- Debug-Modus: Probleme aufspüren, Protokolle hinzufügen, Ursachen isolieren +- Benutzerdefinierte Modi: erstelle spezialisierte Modi für dein Team oder deinen Workflow +- Roomote Control: Mit Roomote Control kannst du Aufgaben in deiner lokalen VS Code-Instanz aus der Ferne steuern. + +Mehr erfahren: [Modi verwenden](https://docs.roocode.com/basic-usage/using-modes) • [Benutzerdefinierte Modi](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## Tutorial- & Feature-Videos + +
+ +| | | | +| :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Roo Code installieren |
Profile konfigurieren |
Codebasis-Indizierung | +|
Benutzerdefinierte Modi |
Checkpoints |
Todo-Listen |
- -**Roo Code** ist ein KI-gesteuerter **autonomer Coding-Agent**, der in Ihrem Editor lebt. Er kann: - -- In natürlicher Sprache kommunizieren -- Dateien direkt in Ihrem Workspace lesen und schreiben -- Terminal-Befehle ausführen -- Browser-Aktionen automatisieren -- Mit jeder OpenAI-kompatiblen oder benutzerdefinierten API/Modell integrieren -- Seine "Persönlichkeit" und Fähigkeiten durch **Benutzerdefinierte Modi** anpassen - -Ob Sie einen flexiblen Coding-Partner, einen Systemarchitekten oder spezialisierte Rollen wie einen QA-Ingenieur oder Produktmanager suchen, Roo Code kann Ihnen helfen, Software effizienter zu entwickeln. - -Sehen Sie sich das [CHANGELOG](../../CHANGELOG.md) für detaillierte Updates und Fehlerbehebungen an. - ---- - -## 🎉 Roo Code 3.25 veröffentlicht - -Roo Code 3.25 bringt mächtige neue Funktionen und bedeutende Verbesserungen, um deinen Entwicklungsworkflow zu verbessern! - -- **Nachrichten-Warteschlange** - Stelle mehrere Nachrichten in die Warteschlange, während Roo arbeitet, damit du deinen Workflow ohne Unterbrechung weiter planen kannst. -- **Benutzerdefinierte Slash-Befehle** - Erstelle personalisierte Slash-Befehle für schnellen Zugriff auf häufig verwendete Prompts und Workflows mit vollständiger UI-Verwaltung. -- **Erweiterte Gemini-Tools** - Neue URL-Kontext- und Google-Such-Grundlagen-Funktionen bieten Gemini-Modellen Echtzeit-Web-Informationen und erweiterte Recherche-Fähigkeiten. - ---- - -## Was kann Roo Code tun? - -- 🚀 **Code generieren** aus natürlichsprachlichen Beschreibungen -- 🔧 **Refaktorieren & Debuggen** von bestehendem Code -- 📝 **Dokumentation schreiben & aktualisieren** -- 🤔 **Fragen beantworten** zu Ihrem Codebase -- 🔄 **Repetitive Aufgaben automatisieren** -- 🏗️ **Neue Dateien und Projekte erstellen** - -## Schnellstart - -1. [Roo Code installieren](https://docs.roocode.com/getting-started/installing) -2. [Ihren KI-Provider verbinden](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [Ihre erste Aufgabe ausprobieren](https://docs.roocode.com/getting-started/your-first-task) - -## Hauptfunktionen - -### Mehrere Modi - -Roo Code passt sich Ihren Bedürfnissen mit spezialisierten [Modi](https://docs.roocode.com/basic-usage/using-modes) an: - -- **Code-Modus:** Für allgemeine Coding-Aufgaben -- **Architekten-Modus:** Für Planung und technische Führung -- **Frage-Modus:** Für Beantwortung von Fragen und Bereitstellung von Informationen -- **Debug-Modus:** Für systematische Problemdiagnose -- **[Benutzerdefinierte Modi](https://docs.roocode.com/advanced-usage/custom-modes):** Erstellen Sie unbegrenzte spezialisierte Personas für Sicherheitsaudits, Leistungsoptimierung, Dokumentation oder andere Aufgaben - -### Intelligente Tools - -Roo Code kommt mit leistungsstarken [Tools](https://docs.roocode.com/basic-usage/how-tools-work), die können: - -- Dateien in Ihrem Projekt lesen und schreiben -- Befehle in Ihrem VS Code-Terminal ausführen -- Einen Webbrowser steuern -- Externe Tools über [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) nutzen - -MCP erweitert die Fähigkeiten von Roo Code, indem es Ihnen ermöglicht, unbegrenzte benutzerdefinierte Tools hinzuzufügen. Integrieren Sie externe APIs, verbinden Sie sich mit Datenbanken oder erstellen Sie spezialisierte Entwicklungstools - MCP bietet das Framework, um die Funktionalität von Roo Code zu erweitern und Ihre spezifischen Bedürfnisse zu erfüllen. - -### Anpassung - -Passen Sie Roo Code nach Ihren Wünschen an mit: - -- [Benutzerdefinierten Anweisungen](https://docs.roocode.com/advanced-usage/custom-instructions) für personalisiertes Verhalten -- [Benutzerdefinierten Modi](https://docs.roocode.com/advanced-usage/custom-modes) für spezialisierte Aufgaben -- [Lokalen Modellen](https://docs.roocode.com/advanced-usage/local-models) für Offline-Nutzung -- [Auto-Genehmigungs-Einstellungen](https://docs.roocode.com/advanced-usage/auto-approving-actions) für schnellere Workflows +

+Weitere schnelle Tutorial- und Feature-Videos... +

## Ressourcen -### Dokumentation - -- [Grundlegende Nutzungsanleitung](https://docs.roocode.com/basic-usage/the-chat-interface) -- [Erweiterte Funktionen](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [Häufig gestellte Fragen](https://docs.roocode.com/faq) - -### Community - -- **Discord:** [Treten Sie unserem Discord-Server bei](https://discord.gg/roocode) für Echtzeit-Hilfe und Diskussionen -- **Reddit:** [Besuchen Sie unser Subreddit](https://www.reddit.com/r/RooCode), um Erfahrungen und Tipps zu teilen -- **GitHub:** [Probleme melden](https://github.com/RooCodeInc/Roo-Code/issues) oder [Funktionen anfragen](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[Dokumentation](https://docs.roocode.com):** Die offizielle Anleitung zur Installation, Konfiguration und Beherrschung von Roo Code. +- **[YouTube-Kanal](https://youtube.com/@roocodeyt?feature=shared):** Schau dir Tutorials an und sieh Features in Aktion. +- **[Discord-Server](https://discord.gg/roocode):** Tritt der Community bei für Echtzeit-Hilfe und Diskussionen. +- **[Reddit-Community](https://www.reddit.com/r/RooCode):** Teile deine Erfahrungen und sieh, was andere bauen. +- **[GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues):** Melde Fehler und verfolge die Entwicklung. +- **[Feature-Anfragen](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** Hast du eine Idee? Teile sie mit den Entwicklern. --- ## Lokales Setup & Entwicklung -1. **Klonen** Sie das Repository: +1. **Klone** das Repo: ```sh git clone https://github.com/RooCodeInc/Roo-Code.git ``` -2. **Abhängigkeiten installieren**: +2. **Installiere die Abhängigkeiten**: ```sh -npm run install:all +pnpm install ``` -3. **Webview starten (Vite/React-App mit HMR)**: +3. **Führe die Erweiterung aus**: + +Es gibt mehrere Möglichkeiten, die Roo Code-Erweiterung auszuführen: + +### Entwicklungsmodus (F5) + +Für die aktive Entwicklung verwende das integrierte Debugging von VSCode: + +Drücke `F5` (oder gehe zu **Ausführen** → **Debuggen starten**) in VSCode. Dies öffnet ein neues VSCode-Fenster mit der laufenden Roo Code-Erweiterung. + +- Änderungen an der Webview werden sofort angezeigt. +- Änderungen an der Kern-Erweiterung werden ebenfalls automatisch per Hot-Reload neu geladen. + +### Automatisierte VSIX-Installation + +Um die Erweiterung als VSIX-Paket zu erstellen und direkt in VSCode zu installieren: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **Debugging**: - Drücken Sie `F5` (oder **Ausführen** → **Debugging starten**) in VSCode, um eine neue Sitzung mit geladenem Roo Code zu öffnen. +Dieser Befehl wird: -Änderungen an der Webview erscheinen sofort. Änderungen an der Kern-Erweiterung erfordern einen Neustart des Erweiterungs-Hosts. +- Fragen, welcher Editor-Befehl verwendet werden soll (code/cursor/code-insiders) - standardmäßig 'code' +- Jede vorhandene Version der Erweiterung deinstallieren. +- Das neueste VSIX-Paket erstellen. +- Das neu erstellte VSIX installieren. +- Dich auffordern, VS Code neu zu starten, damit die Änderungen wirksam werden. -Alternativ können Sie eine .vsix-Datei erstellen und direkt in VSCode installieren: +Optionen: -```sh -npm run build -``` +- `-y`: Alle Bestätigungsaufforderungen überspringen und Standardwerte verwenden +- `--editor=`: Gib den Editor-Befehl an (z. B. `--editor=cursor` oder `--editor=code-insiders`) -Eine `.vsix`-Datei erscheint im `bin/`-Verzeichnis, die mit folgendem Befehl installiert werden kann: +### Manuelle VSIX-Installation -```sh -code --install-extension bin/roo-cline-.vsix -``` +Wenn du das VSIX-Paket lieber manuell installieren möchtest: -Wir verwenden [changesets](https://github.com/changesets/changesets) für Versionierung und Veröffentlichung. Überprüfen Sie unsere `CHANGELOG.md` für Release-Hinweise. +1. Erstelle zuerst das VSIX-Paket: + ```sh + pnpm vsix + ``` +2. Eine `.vsix`-Datei wird im `bin/`-Verzeichnis generiert (z. B. `bin/roo-cline-.vsix`). +3. Installiere sie manuell mit der VSCode-Befehlszeilenschnittstelle: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- + +Wir verwenden [changesets](https://github.com/changesets/changesets) für die Versionierung und Veröffentlichung. Schau in unsere `CHANGELOG.md` für Versionshinweise. --- ## Haftungsausschluss -**Bitte beachten Sie**, dass Roo Code, Inc **keine** Zusicherungen oder Garantien bezüglich jeglichen Codes, Modellen oder anderen Tools gibt, die in Verbindung mit Roo Code bereitgestellt oder verfügbar gemacht werden, jeglichen zugehörigen Drittanbieter-Tools oder resultierenden Outputs. Sie übernehmen **alle Risiken** im Zusammenhang mit der Nutzung solcher Tools oder Outputs; solche Tools werden auf einer **"WIE BESEHEN"** und **"WIE VERFÜGBAR"** Basis bereitgestellt. Solche Risiken können, ohne Einschränkung, Verletzung geistigen Eigentums, Cyber-Schwachstellen oder -Angriffe, Voreingenommenheit, Ungenauigkeiten, Fehler, Mängel, Viren, Ausfallzeiten, Eigentumsverlust oder -schäden und/oder Personenschäden umfassen. Sie sind allein verantwortlich für Ihre Nutzung solcher Tools oder Outputs (einschließlich, ohne Einschränkung, deren Rechtmäßigkeit, Angemessenheit und Ergebnisse). +**Bitte beachte**, dass Roo Code, Inc. **keine** Zusicherungen oder Garantien in Bezug auf Code, Modelle oder andere Werkzeuge gibt, die in Verbindung mit Roo Code, zugehörigen Drittanbieter-Werkzeugen oder den daraus resultierenden Ergebnissen bereitgestellt oder zugänglich gemacht werden. Du übernimmst **alle Risiken**, die mit der Nutzung solcher Werkzeuge oder Ergebnisse verbunden sind; diese Werkzeuge werden auf einer **"WIE BESEHEN"**- und **"WIE VERFÜGBAR"**-Basis bereitgestellt. Solche Risiken können unter anderem die Verletzung von geistigem Eigentum, Cyber-Schwachstellen oder -Angriffe, Voreingenommenheit, Ungenauigkeiten, Fehler, Defekte, Viren, Ausfallzeiten, Eigentumsverluste oder -schäden und/oder Personenschäden umfassen. Du bist allein verantwortlich für deine Nutzung solcher Werkzeuge oder Ergebnisse (einschließlich, aber nicht beschränkt auf deren Rechtmäßigkeit, Angemessenheit und Ergebnisse). --- ## Mitwirken -Wir lieben Community-Beiträge! Beginnen Sie mit dem Lesen unserer [CONTRIBUTING.md](CONTRIBUTING.md). +Wir lieben Community-Beiträge! Lies unsere [CONTRIBUTING.md](CONTRIBUTING.md), um loszulegen. --- ## Mitwirkende -Danke an alle unsere Mitwirkenden, die geholfen haben, Roo Code zu verbessern! +Danke an alle unsere Mitwirkenden, die geholfen haben, Roo Code besser zu machen! -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) ## Lizenz -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- -**Genießen Sie Roo Code!** Ob Sie ihn an der kurzen Leine halten oder autonom agieren lassen, wir können es kaum erwarten zu sehen, was Sie bauen. Wenn Sie Fragen oder Funktionsideen haben, schauen Sie in unserer [Reddit-Community](https://www.reddit.com/r/RooCode/) oder auf [Discord](https://discord.gg/roocode) vorbei. Frohes Coding! +**Viel Spaß mit Roo Code!** Egal, ob du ihn an der kurzen Leine führst oder autonom agieren lässt, wir können es kaum erwarten zu sehen, was du baust. Wenn du Fragen oder Ideen für neue Funktionen hast, schau in unserer [Reddit-Community](https://www.reddit.com/r/RooCode/) oder auf [Discord](https://discord.gg/roocode) vorbei. Viel Spaß beim Codieren! diff --git a/locales/es/CONTRIBUTING.md b/locales/es/CONTRIBUTING.md index a00d79559a..a61e3b275b 100644 --- a/locales/es/CONTRIBUTING.md +++ b/locales/es/CONTRIBUTING.md @@ -13,126 +13,129 @@ # Contribuir a Roo Code -Roo Code es un proyecto impulsado por la comunidad, y valoramos profundamente cada contribución. Para agilizar la colaboración, operamos con un enfoque [Issue-First](#enfoque-issue-first), lo que significa que todos los [Pull Requests (PRs)](#enviar-un-pull-request) deben estar vinculados primero a un Issue de GitHub. Por favor, revisa esta guía cuidadosamente. +Roo Code es un proyecto impulsado por la comunidad y valoramos profundamente cada contribución. Para agilizar la colaboración, operamos con un [enfoque de "primero la incidencia"](#enfoque-de-primero-la-incidencia), lo que significa que todas las [solicitudes de extracción (PR)](#envío-de-una-solicitud-de-extracción) deben estar primero vinculadas a una incidencia de GitHub. Por favor, revise esta guía detenidamente. -## Tabla de Contenidos +## Tabla de contenidos -- [Antes de Contribuir](#antes-de-contribuir) -- [Encontrar y Planificar tu Contribución](#encontrar-y-planificar-tu-contribución) -- [Proceso de Desarrollo y Envío](#proceso-de-desarrollo-y-envío) +- [Antes de contribuir](#antes-de-contribuir) +- [Encontrar y planificar su contribución](#encontrar-y-planificar-su-contribución) +- [Proceso de desarrollo y envío](#proceso-de-desarrollo-y-envío) - [Legal](#legal) -## Antes de Contribuir +## Antes de contribuir -### 1. Código de Conducta +### 1. Código de conducta -Todos los colaboradores deben adherirse a nuestro [Código de Conducta](./CODE_OF_CONDUCT.md). +Todos los colaboradores deben adherirse a nuestro [Código de conducta](./CODE_OF_CONDUCT.md). -### 2. Hoja de Ruta del Proyecto +### 2. Hoja de ruta del proyecto -Nuestra hoja de ruta guía la dirección del proyecto. Alinea tus contribuciones con estos objetivos clave: +Nuestra hoja de ruta guía la dirección del proyecto. Alinee sus contribuciones con estos objetivos clave: -### Confiabilidad Primero +### La fiabilidad es lo primero -- Garantizar que la edición de diferencias y la ejecución de comandos sean consistentemente confiables. -- Reducir los puntos de fricción que disuaden el uso regular. -- Garantizar un funcionamiento fluido en todos los idiomas y plataformas. -- Ampliar el soporte sólido para una amplia variedad de proveedores y modelos de IA. +- Asegúrese de que la edición de diferencias y la ejecución de comandos sean consistentemente fiables. +- Reduzca los puntos de fricción que desalientan el uso regular. +- Garantice un funcionamiento fluido en todas las localidades y plataformas. +- Amplíe el soporte robusto para una amplia variedad de proveedores y modelos de IA. -### Experiencia de Usuario Mejorada +### Experiencia de usuario mejorada -- Simplificar la interfaz de usuario para mayor claridad e intuitividad. -- Mejorar continuamente el flujo de trabajo para satisfacer las altas expectativas que los desarrolladores tienen para herramientas de uso diario. +- Agilice la interfaz de usuario/experiencia de usuario para mayor claridad e intuición. +- Mejore continuamente el flujo de trabajo para cumplir con las altas expectativas que los desarrolladores tienen de las herramientas de uso diario. -### Liderazgo en Rendimiento de Agentes +### Liderando el rendimiento de los agentes -- Establecer evaluaciones comparativas completas (evals) para medir la productividad en el mundo real. -- Facilitar que todos puedan ejecutar e interpretar estas evaluaciones fácilmente. -- Ofrecer mejoras que demuestren aumentos claros en las puntuaciones de evaluación. +- Establezca puntos de referencia de evaluación (evals) exhaustivos para medir la productividad en el mundo real. +- Facilite que todos puedan ejecutar e interpretar fácilmente estas evaluaciones. +- Envíe mejoras que demuestren un claro aumento en las puntuaciones de las evaluaciones. -Menciona la alineación con estas áreas en tus PRs. +Mencione la alineación con estas áreas en sus solicitudes de extracción. -### 3. Únete a la Comunidad Roo Code +### 3. Únase a la comunidad de Roo Code -- **Principal:** Únete a nuestro [Discord](https://discord.gg/roocode) y envía un DM a **Hannes Rudolph (`hrudolph`)**. -- **Alternativa:** Los colaboradores experimentados pueden participar directamente a través de [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1). +- **Principal:** Únase a nuestro [Discord](https://discord.gg/roocode) y envíe un mensaje directo a **Hannes Rudolph (`hrudolph`)**. +- **Alternativa:** Los colaboradores experimentados pueden participar directamente a través de [Proyectos de GitHub](https://github.com/orgs/RooCodeInc/projects/1). -## Encontrar y Planificar tu Contribución +## Encontrar y planificar su contribución -### Tipos de Contribuciones +### Tipos de contribuciones -- **Corrección de errores:** Solucionar problemas en el código. -- **Nuevas funciones:** Añadir funcionalidades. -- **Documentación:** Mejorar guías y claridad. +- **Correcciones de errores:** abordar problemas de código. +- **Nuevas características:** agregar funcionalidad. +- **Documentación:** mejorar las guías y la claridad. -### Enfoque Issue-First +### Enfoque de primero la incidencia -Todas las contribuciones deben comenzar con un Issue de GitHub. +Todas las contribuciones comienzan con una incidencia de GitHub utilizando nuestras plantillas simplificadas. -- **Revisar issues existentes**: Busca en [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). -- **Crear un issue**: Usa las plantillas apropiadas: - - **Errores:** Plantilla "Bug Report". - - **Funciones:** Plantilla "Detailed Feature Proposal". Se requiere aprobación antes de comenzar. -- **Reclamar issues**: Comenta y espera la asignación oficial. +- **Compruebe las incidencias existentes**: busque en [Incidencias de GitHub](https://github.com/RooCodeInc/Roo-Code/issues). +- **Cree una incidencia** utilizando: + - **Mejoras:** plantilla "Solicitud de mejora" (lenguaje sencillo centrado en el beneficio del usuario). + - **Errores:** plantilla "Informe de error" (reproducción mínima + esperado vs. real + versión). +- **¿Quiere trabajar en ello?** Comente "Reclamando" en la incidencia y envíe un mensaje directo a **Hannes Rudolph (`hrudolph`)** en [Discord](https://discord.gg/roocode) para que se le asigne. La asignación se confirmará en el hilo. +- **Las solicitudes de extracción deben enlazar a la incidencia.** Las solicitudes de extracción no enlazadas pueden cerrarse. -**Los PRs sin issues aprobados pueden ser cerrados.** +### Decidir en qué trabajar -### Decidir en Qué Trabajar +- Consulte el [Proyecto de GitHub](https://github.com/orgs/RooCodeInc/projects/1) para ver las incidencias "Incidencia [Sin asignar]". +- Para la documentación, visite [Documentos de Roo Code](https://github.com/RooCodeInc/Roo-Code-Docs). -- Revisa el [Proyecto GitHub](https://github.com/orgs/RooCodeInc/projects/1) para "Good First Issues" no asignados. -- Para documentación, visita [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). +### Informar de errores -### Reportar Errores +- Compruebe primero si existen informes. +- Cree un nuevo error utilizando la [plantilla "Informe de error"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) con: + - Pasos de reproducción claros y numerados + - Resultado esperado vs. real + - Versión de Roo Code (obligatorio); proveedor/modelo de API si es relevante +- **Problemas de seguridad**: informe de forma privada a través de [avisos de seguridad](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). -- Primero verifica si ya existen reportes. -- Crea nuevos reportes de errores usando la [plantilla "Bug Report"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose). -- **Problemas de seguridad**: Reporta de forma privada a través de [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). +## Proceso de desarrollo y envío -## Proceso de Desarrollo y Envío +### Configuración de desarrollo -### Configuración de Desarrollo - -1. **Fork & Clona:** +1. **Bifurcar y clonar:** ``` -git clone https://github.com/TU_USUARIO/Roo-Code.git +git clone https://github.com/SU_NOMBRE_DE_USUARIO/Roo-Code.git ``` -2. **Instalar Dependencias:** +2. **Instalar dependencias:** ``` -npm run install:all +pnpm install ``` -3. **Depuración:** Abre con VS Code (`F5`). +3. **Depuración:** Abra con VS Code (`F5`). -### Guía para Escribir Código +### Directrices para escribir código -- Un PR enfocado por función o corrección. -- Sigue las mejores prácticas de ESLint y TypeScript. -- Escribe commits claros y descriptivos que referencien issues (ej., `Fixes #123`). -- Proporciona pruebas exhaustivas (`npm test`). -- Rebase sobre la última rama `main` antes de enviar. +- Una solicitud de extracción centrada por característica o corrección. +- Siga las mejores prácticas de ESLint y TypeScript. +- Escriba confirmaciones claras y descriptivas que hagan referencia a las incidencias (p. ej., `Corrige #123`). +- Proporcione pruebas exhaustivas (`npm test`). +- Rebase a la rama `main` más reciente antes del envío. -### Enviar un Pull Request +### Envío de una solicitud de extracción -- Comienza como **PR en Borrador** si buscas feedback temprano. -- Describe claramente tus cambios siguiendo la Plantilla de Pull Request. -- Proporciona capturas de pantalla/videos para cambios en la UI. -- Indica si son necesarias actualizaciones de documentación. +- Comience como una **PR en borrador** si busca comentarios tempranos. +- Describa claramente sus cambios siguiendo la plantilla de solicitud de extracción. +- Enlace la incidencia en la descripción/título de la PR (p. ej., "Corrige #123"). +- Proporcione capturas de pantalla/vídeos para los cambios en la interfaz de usuario. +- Indique si es necesario actualizar la documentación. -### Política de Pull Request +### Política de solicitud de extracción -- Debe referenciar issues preaprobados y asignados. -- Los PRs que no cumplan con la política pueden ser cerrados. -- Los PRs deben pasar las pruebas de CI, alinearse con la hoja de ruta y tener documentación clara. +- Debe hacer referencia a una incidencia de GitHub asignada. Para que se le asigne: comente "Reclamando" en la incidencia y envíe un mensaje directo a **Hannes Rudolph (`hrudolph`)** en [Discord](https://discord.gg/roocode). La asignación se confirmará en el hilo. +- Las solicitudes de extracción no enlazadas pueden cerrarse. +- Las solicitudes de extracción deben pasar las pruebas de CI, estar alineadas con la hoja de ruta y tener una documentación clara. -### Proceso de Revisión +### Proceso de revisión -- **Triage Diario:** Revisiones rápidas por parte de los mantenedores. -- **Revisión Semanal en Profundidad:** Evaluación integral. -- **Itera rápidamente** basándote en el feedback. +- **Clasificación diaria:** comprobaciones rápidas por parte de los mantenedores. +- **Revisión semanal en profundidad:** evaluación exhaustiva. +- **Itere rápidamente** en función de los comentarios. ## Legal -Al contribuir, aceptas que tus contribuciones serán licenciadas bajo la Licencia Apache 2.0, consistente con la licencia de Roo Code. +Al contribuir, acepta que sus contribuciones se licenciarán bajo la Licencia Apache 2.0, de acuerdo con la licencia de Roo Code. diff --git a/locales/es/README.md b/locales/es/README.md index 242ea17eb9..149a59dfd6 100644 --- a/locales/es/README.md +++ b/locales/es/README.md @@ -1,125 +1,89 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • Español • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Únete a la comunidad de Roo Code

-

Conéctate con desarrolladores, contribuye con ideas y mantente al día con las últimas herramientas de programación impulsadas por IA.

- - Unirse a Discord - Unirse a Reddit - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ Obtén ayuda rápido → Únete a Discord • ¿Prefieres asíncrono? → Únete a r/RooCode

-Descargar en VS Marketplace -Solicitudes de Funciones -Valorar & Opinar -Documentación +# Roo Code + +> Tu equipo de desarrollo con IA, directamente en tu editor + +
+ 🌐 Idiomas disponibles + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## ¿Qué puede hacer Roo Code por TI? + +- Generar código a partir de descripciones en lenguaje natural +- Adaptarse con Modos: Código, Arquitecto, Pregunta, Depuración y Modos Personalizados +- Refactorizar y depurar código existente +- Escribir y actualizar documentación +- Responder preguntas sobre tu base de código +- Automatizar tareas repetitivas +- Utilizar servidores MCP + +## Modos + +Roo Code se adapta a tu forma de trabajar, no al revés: + +- Modo Código: codificación diaria, ediciones y operaciones de archivos +- Modo Arquitecto: planificar sistemas, especificaciones y migraciones +- Modo Pregunta: respuestas rápidas, explicaciones y documentos +- Modo Depuración: rastrear problemas, agregar registros, aislar causas raíz +- Modos Personalizados: crea modos especializados para tu equipo o flujo de trabajo +- Roomote Control: Roomote Control te permite controlar de forma remota tareas que se ejecutan en tu instancia local de VS Code. + +Más info: [Usar Modos](https://docs.roocode.com/basic-usage/using-modes) • [Modos Personalizados](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## Tutoriales y vídeos de funcionalidades + +
+ +| | | | +| :------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Instalando Roo Code |
Configurando perfiles |
Indexación de la base de código | +|
Modos personalizados |
Checkpoints |
Listas de Tareas |
- -**Roo Code** es un **agente de programación autónomo** impulsado por IA que vive en tu editor. Puede: - -- Comunicarse en lenguaje natural -- Leer y escribir archivos directamente en tu espacio de trabajo -- Ejecutar comandos en terminal -- Automatizar acciones del navegador -- Integrarse con cualquier API/modelo compatible con OpenAI o personalizado -- Adaptar su "personalidad" y capacidades a través de **Modos Personalizados** - -Ya sea que busques un socio de programación flexible, un arquitecto de sistemas o roles especializados como ingeniero de control de calidad o gestor de productos, Roo Code puede ayudarte a construir software de manera más eficiente. - -Consulta el [CHANGELOG](../../CHANGELOG.md) para ver actualizaciones detalladas y correcciones. - ---- - -## 🎉 Roo Code 3.25 Lanzado - -¡Roo Code 3.25 trae nuevas funcionalidades poderosas y mejoras significativas para mejorar tu flujo de trabajo de desarrollo! - -- **Cola de mensajes** - Pon varios mensajes en cola mientras Roo trabaja, permitiéndote continuar planificando tu flujo de trabajo sin interrupciones. -- **Comandos slash personalizados** - Crea comandos slash personalizados para acceso rápido a prompts y flujos de trabajo utilizados frecuentemente con gestión completa de la interfaz de usuario. -- **Herramientas Gemini avanzadas** - Nuevas funcionalidades de contexto de URL y fundamentos de búsqueda de Google proporcionan a los modelos Gemini información web en tiempo real y capacidades de búsqueda avanzadas. - ---- - -## ¿Qué puede hacer Roo Code? - -- 🚀 **Generar código** a partir de descripciones en lenguaje natural -- 🔧 **Refactorizar y depurar** código existente -- 📝 **Escribir y actualizar** documentación -- 🤔 **Responder preguntas** sobre tu base de código -- 🔄 **Automatizar** tareas repetitivas -- 🏗️ **Crear** nuevos archivos y proyectos - -## Inicio rápido - -1. [Instalar Roo Code](https://docs.roocode.com/getting-started/installing) -2. [Conectar tu proveedor de IA](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [Probar tu primera tarea](https://docs.roocode.com/getting-started/your-first-task) - -## Características principales - -### Múltiples modos - -Roo Code se adapta a tus necesidades con [modos](https://docs.roocode.com/basic-usage/using-modes) especializados: - -- **Modo Código:** Para tareas generales de programación -- **Modo Arquitecto:** Para planificación y liderazgo técnico -- **Modo Consulta:** Para responder preguntas y proporcionar información -- **Modo Depuración:** Para diagnóstico sistemático de problemas -- **[Modos personalizados](https://docs.roocode.com/advanced-usage/custom-modes):** Crea un número ilimitado de personas especializadas para auditoría de seguridad, optimización de rendimiento, documentación o cualquier otra tarea - -### Herramientas inteligentes - -Roo Code viene con potentes [herramientas](https://docs.roocode.com/basic-usage/how-tools-work) que pueden: - -- Leer y escribir archivos en tu proyecto -- Ejecutar comandos en tu terminal de VS Code -- Controlar un navegador web -- Usar herramientas externas a través de [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) - -MCP amplía las capacidades de Roo Code al permitirte añadir herramientas personalizadas ilimitadas. Integra con APIs externas, conéctate a bases de datos o crea herramientas de desarrollo especializadas - MCP proporciona el marco para expandir la funcionalidad de Roo Code para satisfacer tus necesidades específicas. - -### Personalización - -Haz que Roo Code funcione a tu manera con: - -- [Instrucciones personalizadas](https://docs.roocode.com/advanced-usage/custom-instructions) para comportamiento personalizado -- [Modos personalizados](https://docs.roocode.com/advanced-usage/custom-modes) para tareas especializadas -- [Modelos locales](https://docs.roocode.com/advanced-usage/local-models) para uso sin conexión -- [Configuración de aprobación automática](https://docs.roocode.com/advanced-usage/auto-approving-actions) para flujos de trabajo más rápidos +

+Más tutoriales rápidos y vídeos de funcionalidades... +

## Recursos -### Documentación - -- [Guía de uso básico](https://docs.roocode.com/basic-usage/the-chat-interface) -- [Funciones avanzadas](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [Preguntas frecuentes](https://docs.roocode.com/faq) - -### Comunidad - -- **Discord:** [Únete a nuestro servidor de Discord](https://discord.gg/roocode) para ayuda en tiempo real y discusiones -- **Reddit:** [Visita nuestro subreddit](https://www.reddit.com/r/RooCode) para compartir experiencias y consejos -- **GitHub:** Reporta [problemas](https://github.com/RooCodeInc/Roo-Code/issues) o solicita [funciones](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[Documentación](https://docs.roocode.com):** La guía oficial para instalar, configurar y dominar Roo Code. +- **[Canal de YouTube](https://youtube.com/@roocodeyt?feature=shared):** Mira tutoriales y ve las funcionalidades en acción. +- **[Servidor de Discord](https://discord.gg/roocode):** Únete a la comunidad para obtener ayuda y discutir en tiempo real. +- **[Comunidad de Reddit](https://www.reddit.com/r/RooCode):** Comparte tus experiencias y ve lo que otros están construyendo. +- **[Incidencias de GitHub](https://github.com/RooCodeInc/Roo-Code/issues):** Reporta errores y sigue el desarrollo. +- **[Solicitudes de funcionalidades](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** ¿Tienes una idea? Compártela con los desarrolladores. --- @@ -131,36 +95,63 @@ Haz que Roo Code funcione a tu manera con: git clone https://github.com/RooCodeInc/Roo-Code.git ``` -2. **Instala dependencias**: +2. **Instala las dependencias**: ```sh -npm run install:all +pnpm install ``` -3. **Inicia la vista web (aplicación Vite/React con HMR)**: +3. **Ejecuta la extensión**: + +Hay varias formas de ejecutar la extensión Roo Code: + +### Modo de desarrollo (F5) + +Para el desarrollo activo, utiliza la depuración integrada de VSCode: + +Presiona `F5` (o ve a **Ejecutar** → **Iniciar depuración**) en VSCode. Esto abrirá una nueva ventana de VSCode con la extensión Roo Code en ejecución. + +- Los cambios en la vista web aparecerán inmediatamente. +- Los cambios en la extensión principal también se recargarán automáticamente. + +### Instalación automatizada de VSIX + +Para construir e instalar la extensión como un paquete VSIX directamente en VSCode: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **Depuración**: - Presiona `F5` (o **Ejecutar** → **Iniciar depuración**) en VSCode para abrir una nueva sesión con Roo Code cargado. +Este comando hará lo siguiente: -Los cambios en la vista web aparecerán inmediatamente. Los cambios en la extensión principal requerirán un reinicio del host de extensión. +- Preguntará qué comando de editor usar (code/cursor/code-insiders) - por defecto es 'code' +- Desinstalará cualquier versión existente de la extensión. +- Construirá el último paquete VSIX. +- Instalará el VSIX recién construido. +- Te pedirá que reinicies VS Code para que los cambios surtan efecto. -Alternativamente, puedes construir un archivo .vsix e instalarlo directamente en VSCode: +Opciones: -```sh -npm run build -``` +- `-y`: Omitir todas las confirmaciones y usar los valores predeterminados +- `--editor=`: Especifica el comando del editor (p. ej., `--editor=cursor` o `--editor=code-insiders`) -Aparecerá un archivo `.vsix` en el directorio `bin/` que se puede instalar con: +### Instalación manual de VSIX -```sh -code --install-extension bin/roo-cline-.vsix -``` +Si prefieres instalar el paquete VSIX manualmente: -Usamos [changesets](https://github.com/changesets/changesets) para versionar y publicar. Consulta nuestro `CHANGELOG.md` para ver las notas de lanzamiento. +1. Primero, construye el paquete VSIX: + ```sh + pnpm vsix + ``` +2. Se generará un archivo `.vsix` en el directorio `bin/` (p. ej., `bin/roo-cline-.vsix`). +3. Instálalo manualmente usando la CLI de VSCode: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- + +Usamos [changesets](https://github.com/changesets/changesets) para el versionado y la publicación. Consulta nuestro `CHANGELOG.md` para ver las notas de la versión. --- @@ -182,54 +173,14 @@ Usamos [changesets](https://github.com/changesets/changesets) para versionar y p -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) ## Licencia -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- -**¡Disfruta Roo Code!** Ya sea que lo mantengas con correa corta o lo dejes vagar de forma autónoma, estamos ansiosos por ver lo que construyes. Si tienes preguntas o ideas para nuevas funciones, visita nuestra [comunidad de Reddit](https://www.reddit.com/r/RooCode/) o [Discord](https://discord.gg/roocode). ¡Feliz programación! +**¡Disfruta de Roo Code!** Ya sea que lo mantengas con una correa corta o lo dejes deambular de forma autónoma, no podemos esperar a ver qué construyes. Si tienes preguntas o ideas sobre funcionalidades, pásate por nuestra [comunidad de Reddit](https://www.reddit.com/r/RooCode/) o [Discord](https://discord.gg/roocode). ¡Feliz codificación! diff --git a/locales/fr/CONTRIBUTING.md b/locales/fr/CONTRIBUTING.md index da703ef9f4..6f8e89430a 100644 --- a/locales/fr/CONTRIBUTING.md +++ b/locales/fr/CONTRIBUTING.md @@ -13,12 +13,12 @@ # Contribuer à Roo Code -Roo Code est un projet porté par la communauté, et chaque contribution compte beaucoup pour nous. Pour fluidifier la collaboration, nous fonctionnons selon une [approche Issue-First](#approche-issue-first), ce qui signifie que toutes les [Pull Requests (PRs)](#soumettre-une-pull-request) doivent d'abord être liées à un ticket GitHub. Lis attentivement ce guide. +Roo Code est un projet communautaire, et nous apprécions profondément chaque contribution. Pour simplifier la collaboration, nous fonctionnons sur une base [d'abord l'issue](#approche-issue-first), ce qui signifie que toutes les [Pull Requests (PRs)](#soumettre-une-pull-request) doivent d'abord être liées à une Issue GitHub. Veuillez lire attentivement ce guide. ## Table des matières - [Avant de contribuer](#avant-de-contribuer) -- [Trouver et planifier ta contribution](#trouver-et-planifier-ta-contribution) +- [Trouver et planifier votre contribution](#trouver-et-planifier-votre-contribution) - [Processus de développement et de soumission](#processus-de-développement-et-de-soumission) - [Légal](#légal) @@ -26,113 +26,116 @@ Roo Code est un projet porté par la communauté, et chaque contribution compte ### 1. Code de conduite -Tous les contributeurs doivent respecter notre [Code de conduite](./CODE_OF_CONDUCT.md). +Tous les contributeurs doivent adhérer à notre [Code de conduite](./CODE_OF_CONDUCT.md). ### 2. Feuille de route du projet -Notre feuille de route guide la direction du projet. Aligne tes contributions avec ces objectifs clés : +Notre feuille de route guide la direction du projet. Alignez vos contributions sur ces objectifs clés : -### Fiabilité avant tout +### La fiabilité d'abord -- Garantir que l'édition des différences et l'exécution des commandes soient toujours fiables. -- Réduire les points de friction qui découragent l'utilisation régulière. -- Assurer un fonctionnement fluide dans toutes les langues et sur toutes les plateformes. -- Étendre le support robuste pour une grande variété de fournisseurs et de modèles d'IA. +- Assurez-vous que l'édition de diff et l'exécution de commandes sont fiables de manière constante. +- Réduisez les points de friction qui découragent une utilisation régulière. +- Garantissez un fonctionnement fluide dans toutes les langues et sur toutes les plateformes. +- Étendez le support robuste à une grande variété de fournisseurs et de modèles d'IA. ### Expérience utilisateur améliorée -- Simplifier l'interface utilisateur pour plus de clarté et d'intuitivité. -- Améliorer continuellement le flux de travail pour répondre aux attentes élevées des développeurs. +- Simplifiez l'UI/UX pour plus de clarté et d'intuitivité. +- Améliorez continuellement le flux de travail pour répondre aux attentes élevées des développeurs pour les outils à usage quotidien. -### Leadership en performance des agents +### Leader en performance d'agent -- Établir des référentiels d'évaluation (evals) complets pour mesurer la productivité réelle. -- Permettre à chacun d'exécuter et d'interpréter facilement ces évaluations. -- Fournir des améliorations qui démontrent des augmentations claires dans les scores d'évaluation. +- Établissez des benchmarks d'évaluation complets (evals) pour mesurer la productivité en conditions réelles. +- Facilitez l'exécution et l'interprétation de ces évaluations par tout le monde. +- Livrez des améliorations qui démontrent des augmentations claires des scores d'évaluation. -Mentionne l'alignement avec ces domaines dans tes PRs. +Mentionnez l'alignement avec ces domaines dans vos PRs. -### 3. Rejoindre la communauté Roo Code +### 3. Rejoignez la communauté Roo Code -- **Principal :** Rejoins notre [Discord](https://discord.gg/roocode) et envoie un DM à **Hannes Rudolph (`hrudolph`)**. -- **Alternative :** Les contributeurs expérimentés peuvent participer directement via [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1). +- **Principal :** Rejoignez notre [Discord](https://discord.gg/roocode) et envoyez un DM à **Hannes Rudolph (`hrudolph`)**. +- **Alternative :** Les contributeurs expérimentés peuvent s'engager directement via les [Projets GitHub](https://github.com/orgs/RooCodeInc/projects/1). -## Trouver et planifier ta contribution +## Trouver et planifier votre contribution ### Types de contributions -- **Corrections de bugs :** Résoudre des problèmes dans le code. -- **Nouvelles fonctionnalités :** Ajouter de nouvelles fonctions. +- **Corrections de bugs :** Résoudre les problèmes de code. +- **Nouvelles fonctionnalités :** Ajouter des fonctionnalités. - **Documentation :** Améliorer les guides et la clarté. ### Approche Issue-First -Toutes les contributions doivent commencer par un ticket GitHub. +Toutes les contributions commencent par une Issue GitHub en utilisant nos modèles simples. -- **Vérifier les tickets existants :** Cherche dans les [Issues GitHub](https://github.com/RooCodeInc/Roo-Code/issues). -- **Créer un ticket :** Utilise les modèles appropriés : - - **Bugs :** Modèle "Bug Report". - - **Fonctionnalités :** Modèle "Detailed Feature Proposal". Approbation requise avant de commencer. -- **Réclamer des tickets :** Commente et attends l'assignation officielle. - -**Les PRs sans tickets approuvés peuvent être fermées.** +- **Vérifiez les issues existantes** : Recherchez dans les [Issues GitHub](https://github.com/RooCodeInc/Roo-Code/issues). +- **Créez une issue** en utilisant : + - **Améliorations :** Modèle "Demande d'amélioration" (langage simple axé sur l'avantage pour l'utilisateur). + - **Bugs :** Modèle "Rapport de bug" (reproduction minimale + attendu vs réel + version). +- **Vous voulez y travailler ?** Commentez "Claiming" sur l'issue et envoyez un DM à **Hannes Rudolph (`hrudolph`)** sur [Discord](https://discord.gg/roocode) pour être assigné. L'assignation sera confirmée dans le fil de discussion. +- **Les PRs doivent être liées à l'issue.** Les PRs non liées peuvent être fermées. ### Décider sur quoi travailler -- Consulte le [Projet GitHub](https://github.com/orgs/RooCodeInc/projects/1) pour les "Good First Issues" non assignés. -- Pour la documentation, visite [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). +- Consultez le [Projet GitHub](https://github.com/orgs/RooCodeInc/projects/1) pour les issues "Issue [Non assignée]". +- Pour la documentation, visitez [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). ### Signaler des bugs -- Vérifie d'abord les rapports existants. -- Crée de nouveaux rapports de bugs avec le [modèle "Bug Report"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose). -- **Failles de sécurité :** Signale-les en privé via [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). +- Vérifiez d'abord les rapports existants. +- Créez un nouveau bug en utilisant le [modèle "Rapport de bug"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) avec : + - Des étapes de reproduction claires et numérotées + - Résultat attendu vs réel + - Version de Roo Code (requise) ; fournisseur/modèle d'API si pertinent +- **Problèmes de sécurité** : Signalez-les en privé via les [avis de sécurité](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). ## Processus de développement et de soumission ### Configuration du développement -1. **Fork & Clone :** +1. **Fork & Cloner :** ``` -git clone https://github.com/TON_UTILISATEUR/Roo-Code.git +git clone https://github.com/VOTRE_NOM_UTILISATEUR/Roo-Code.git ``` 2. **Installer les dépendances :** ``` -npm run install:all +pnpm install ``` -3. **Débogage :** Ouvre avec VS Code (`F5`). +3. **Débogage :** Ouvrir avec VS Code (`F5`). -### Guide d'écriture du code +### Lignes directrices pour l'écriture de code - Une PR ciblée par fonctionnalité ou correction. -- Suis les bonnes pratiques ESLint et TypeScript. -- Écris des commits clairs et descriptifs référençant les tickets (ex : `Fixes #123`). -- Fournis des tests complets (`npm test`). -- Rebase sur la dernière branche `main` avant de soumettre. +- Suivez les meilleures pratiques d'ESLint et de TypeScript. +- Rédigez des commits clairs et descriptifs faisant référence aux issues (par exemple, `Fixes #123`). +- Fournissez des tests approfondis (`npm test`). +- Rebasez sur la dernière branche `main` avant la soumission. ### Soumettre une Pull Request -- Commence par un **brouillon de PR** si tu cherches un feedback précoce. -- Décris clairement tes changements en suivant le modèle de Pull Request. -- Fournis des captures d'écran/vidéos pour les changements d'interface. -- Indique si des mises à jour de documentation sont nécessaires. +- Commencez par une **PR en brouillon** si vous recherchez des commentaires précoces. +- Décrivez clairement vos changements en suivant le modèle de Pull Request. +- Liez l'issue dans la description/le titre de la PR (par exemple, "Fixes #123"). +- Fournissez des captures d'écran/vidéos pour les changements d'interface utilisateur. +- Indiquez si des mises à jour de la documentation sont nécessaires. ### Politique de Pull Request -- Doit référencer des tickets pré-approuvés et assignés. -- Les PRs ne respectant pas cette politique peuvent être fermées. -- Les PRs doivent passer les tests CI, s'aligner avec la feuille de route et avoir une documentation claire. +- Doit faire référence à une Issue GitHub assignée. Pour être assigné : commentez "Claiming" sur l'issue et envoyez un DM à **Hannes Rudolph (`hrudolph`)** sur [Discord](https://discord.gg/roocode). L'assignation sera confirmée dans le fil de discussion. +- Les PRs non liées peuvent être fermées. +- Les PRs doivent passer les tests d'intégration continue, s'aligner sur la feuille de route et avoir une documentation claire. -### Processus de revue +### Processus de révision - **Triage quotidien :** Vérifications rapides par les mainteneurs. -- **Revue hebdomadaire approfondie :** Évaluation complète. -- **Itère rapidement** sur la base du feedback. +- **Révision hebdomadaire approfondie :** Évaluation complète. +- **Itérez rapidement** en fonction des commentaires. ## Légal -En contribuant, tu acceptes que tes contributions soient sous licence Apache 2.0, conformément à la licence de Roo Code. +En contribuant, vous acceptez que vos contributions soient sous licence Apache 2.0, conformément à la licence de Roo Code. diff --git a/locales/fr/README.md b/locales/fr/README.md index c56092214b..e194fa3cc0 100644 --- a/locales/fr/README.md +++ b/locales/fr/README.md @@ -1,125 +1,89 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • Français • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Rejoignez la communauté Roo Code

-

Connectez-vous avec des développeurs, contribuez avec vos idées et restez à jour avec les derniers outils de programmation propulsés par l'IA.

- - Rejoindre Discord - Rejoindre Reddit - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ Obtenez de l'aide rapidement → Rejoignez Discord • Vous préférez l'asynchrone ? → Rejoignez r/RooCode

-Télécharger sur VS Marketplace -Demandes de fonctionnalités -Évaluer & Commenter -Documentation +# Roo Code + +> Ton équipe de dev propulsée par l'IA, directement dans ton éditeur + +
+ 🌐 Langues disponibles + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Que peut faire Roo Code pour VOUS ? + +- Générer du code à partir de descriptions en langage naturel +- S'adapter avec les Modes : Code, Architecte, Demande, Débogage et Modes Personnalisés +- Refactoriser & déboguer du code existant +- Rédiger & mettre à jour la documentation +- Répondre aux questions sur votre base de code +- Automatiser les tâches répétitives +- Utiliser les serveurs MCP + +## Modes + +Roo Code s'adapte à votre façon de travailler, pas l'inverse : + +- Mode Code : codage quotidien, modifications et opérations sur les fichiers +- Mode Architecte : planifier les systèmes, les spécifications et les migrations +- Mode Demande : réponses rapides, explications et documents +- Mode Débogage : tracer les problèmes, ajouter des journaux, isoler les causes profondes +- Modes Personnalisés : créez des modes spécialisés pour votre équipe ou votre flux de travail +- Roomote Control : Roomote Control te permet de piloter à distance les tâches exécutées dans ton instance VS Code locale. + +En savoir plus : [Utiliser les Modes](https://docs.roocode.com/basic-usage/using-modes) • [Modes personnalisés](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## Tutoriels & Vidéos de fonctionnalités + +
+ +| | | | +| :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Installer Roo Code |
Configurer les profils |
Indexation de la base de code | +|
Modes personnalisés |
Checkpoints |
Listes de tâches |
- -**Roo Code** est un **agent de programmation autonome** propulsé par l'IA, au cœur de votre éditeur. Il peut : - -- Communiquer en langage naturel -- Lire et écrire des fichiers directement dans votre espace de travail -- Exécuter des commandes terminal -- Automatiser des actions de navigateur -- S'intégrer avec n'importe quelle modèle/API compatible OpenAI -- Adapter sa "personnalité" et ses capacités grâce aux **Modes Personnalisés** - -Que vous recherchiez un partenaire de codage flexible, un architecte système, ou des rôles spécialisés comme un ingénieur QA ou un chef de produit, Roo Code peut vous aider à développer des logiciels plus efficacement. - -Consultez le [CHANGELOG](../../CHANGELOG.md) pour des mises à jour détaillées et des corrections. - ---- - -## 🎉 Roo Code 3.25 est sorti - -Roo Code 3.25 apporte de puissantes nouvelles fonctionnalités et des améliorations significatives pour améliorer ton flux de travail de développement ! - -- **File d'attente de messages** - Mets plusieurs messages en file d'attente pendant que Roo travaille, te permettant de continuer à planifier ton flux de travail sans interruption. -- **Commandes slash personnalisées** - Crée des commandes slash personnalisées pour un accès rapide aux prompts et flux de travail fréquemment utilisés avec une gestion complète de l'interface utilisateur. -- **Outils Gemini avancés** - De nouvelles fonctionnalités de contexte d'URL et de fondements de recherche Google fournissent aux modèles Gemini des informations web en temps réel et des capacités de recherche avancées. - ---- - -## Que peut faire Roo Code ? - -- 🚀 **Générer du code** à partir de descriptions en langage naturel -- 🔧 **Refactoriser et déboguer** du code -- 📝 **Écrire et mettre à jour** de la documentation -- 🤔 **Répondre aux questions** sur votre base de code -- 🔄 **Automatiser** des tâches répétitives -- 🏗️ **Créer** de nouveaux fichiers et projets - -## Démarrage rapide - -1. [Installer Roo Code](https://docs.roocode.com/getting-started/installing) -2. [Connecter votre fournisseur d'IA](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [Essayer votre première tâche](https://docs.roocode.com/getting-started/your-first-task) - -## Fonctionnalités clés - -### Modes multiples - -Roo Code s'adapte à vos besoins avec des [modes](https://docs.roocode.com/basic-usage/using-modes) spécialisés : - -- **Mode Code :** Pour les tâches de programmation générales -- **Mode Architecte :** Pour la planification et le leadership technique -- **Mode Question :** Pour répondre aux questions et fournir des informations -- **Mode Débogage :** Pour le diagnostic systématique de problèmes -- **[Modes personnalisés](https://docs.roocode.com/advanced-usage/custom-modes) :** Créez un nombre illimité de personnalités spécialisées pour l'audit de sécurité, l'optimisation des performances, la documentation ou toute autre tâche - -### Outils intelligents - -Roo Code est livré avec des [outils](https://docs.roocode.com/basic-usage/how-tools-work) puissants qui peuvent : - -- Lire et écrire des fichiers dans votre projet -- Exécuter des commandes dans votre terminal VS Code -- Contrôler un navigateur web -- Utiliser des outils externes via [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) - -MCP étend les capacités de Roo Code en vous permettant d'ajouter un nombre illimité d'outils personnalisés. Intégrez des API externes, connectez-vous à des bases de données ou créez des outils de développement spécialisés - MCP fournit le cadre pour étendre la fonctionnalité de Roo Code afin de répondre à vos besoins spécifiques. - -### Personnalisation - -Faites fonctionner Roo Code à votre manière avec : - -- [Instructions personnalisées](https://docs.roocode.com/advanced-usage/custom-instructions) pour un comportement personnalisé -- [Modes personnalisés](https://docs.roocode.com/advanced-usage/custom-modes) pour des tâches spécialisées -- [Modèles locaux](https://docs.roocode.com/advanced-usage/local-models) pour une utilisation hors ligne -- [Paramètres d'approbation automatique](https://docs.roocode.com/advanced-usage/auto-approving-actions) pour des workflows plus rapides +

+Plus de tutoriels rapides et de vidéos de fonctionnalités... +

## Ressources -### Documentation - -- [Guide d'utilisation](https://docs.roocode.com/basic-usage/the-chat-interface) -- [Fonctionnalités avancées](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [Foire aux questions](https://docs.roocode.com/faq) - -### Communauté - -- **Discord :** [Rejoignez notre serveur Discord](https://discord.gg/roocode) pour une aide en temps réel et des discussions -- **Reddit :** [Visitez notre subreddit](https://www.reddit.com/r/RooCode) pour partager des expériences et des astuces -- **GitHub :** Signalez des [problèmes](https://github.com/RooCodeInc/Roo-Code/issues) ou demandez de nouvelles [fonctionnalités](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[Documentation](https://docs.roocode.com):** Le guide officiel pour installer, configurer et maîtriser Roo Code. +- **[Chaîne YouTube](https://youtube.com/@roocodeyt?feature=shared):** Regardez des tutoriels et découvrez les fonctionnalités en action. +- **[Serveur Discord](https://discord.gg/roocode):** Rejoignez la communauté pour obtenir de l'aide en temps réel et discuter. +- **[Communauté Reddit](https://www.reddit.com/r/RooCode):** Partagez vos expériences et découvrez ce que les autres construisent. +- **[Problèmes GitHub](https://github.com/RooCodeInc/Roo-Code/issues):** Signalez des bugs et suivez le développement. +- **[Demandes de fonctionnalités](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** Vous avez une idée ? Partagez-la avec les développeurs. --- @@ -134,39 +98,66 @@ git clone https://github.com/RooCodeInc/Roo-Code.git 2. **Installez les dépendances** : ```sh -npm run install:all +pnpm install ``` -3. **Démarrez la vue web (application Vite/React avec HMR)** : +3. **Exécutez l'extension** : + +Il existe plusieurs façons d'exécuter l'extension Roo Code : + +### Mode développement (F5) + +Pour un développement actif, utilisez le débogage intégré de VSCode : + +Appuyez sur `F5` (ou allez dans **Exécuter** → **Démarrer le débogage**) dans VSCode. Cela ouvrira une nouvelle fenêtre VSCode avec l'extension Roo Code en cours d'exécution. + +- Les modifications apportées à la vue Web apparaîtront immédiatement. +- Les modifications apportées à l'extension principale se rechargeront également à chaud automatiquement. + +### Installation automatisée de VSIX + +Pour compiler et installer l'extension en tant que package VSIX directement dans VSCode : ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **Débogage** : - Appuyez sur `F5` (ou **Exécuter** → **Démarrer le débogage**) dans VSCode pour ouvrir une nouvelle session avec Roo Code chargé. +Cette commande va : -Les modifications apportées à la vue web apparaîtront immédiatement. Les modifications apportées à l'extension principale nécessiteront un redémarrage de l'hôte d'extension. +- Demander quelle commande d'éditeur utiliser (code/cursor/code-insiders) - par défaut, 'code' +- Désinstaller toute version existante de l'extension. +- Compiler le dernier package VSIX. +- Installer le VSIX nouvellement compilé. +- Vous inviter à redémarrer VS Code pour que les modifications prennent effet. -Vous pouvez également créer un fichier .vsix et l'installer directement dans VSCode : +Options : -```sh -npm run build -``` +- `-y` : Ignorer toutes les invites de confirmation et utiliser les valeurs par défaut +- `--editor=` : Spécifier la commande de l'éditeur (par exemple, `--editor=cursor` ou `--editor=code-insiders`) -Un fichier `.vsix` apparaîtra dans le répertoire `bin/` qui peut être installé avec : +### Installation manuelle de VSIX -```sh -code --install-extension bin/roo-cline-.vsix -``` +Si vous préférez installer le package VSIX manuellement : -Nous utilisons [changesets](https://github.com/changesets/changesets) pour le versionnement et la publication. Consultez notre `CHANGELOG.md` pour les notes de version. +1. D'abord, compilez le package VSIX : + ```sh + pnpm vsix + ``` +2. Un fichier `.vsix` sera généré dans le répertoire `bin/` (par exemple, `bin/roo-cline-.vsix`). +3. Installez-le manuellement à l'aide de la CLI de VSCode : + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- + +Nous utilisons [changesets](https://github.com/changesets/changesets) pour la gestion des versions et la publication. Consultez notre `CHANGELOG.md` pour les notes de version. --- ## Avertissement -**Veuillez noter** que Roo Code, Inc **ne fait** aucune représentation ou garantie concernant tout code, modèle ou autre outil fourni ou mis à disposition en relation avec Roo Code, tout outil tiers associé, ou tout résultat. Vous assumez **tous les risques** associés à l'utilisation de tels outils ou résultats ; ces outils sont fournis **"TELS QUELS"** et **"SELON DISPONIBILITÉ"**. Ces risques peuvent inclure, sans s'y limiter, la violation de propriété intellectuelle, les vulnérabilités ou attaques cyber, les biais, les inexactitudes, les erreurs, les défauts, les virus, les temps d'arrêt, la perte ou les dommages matériels, et/ou les blessures corporelles. Vous êtes seul responsable de votre utilisation de ces outils ou résultats (y compris, mais sans s'y limiter, leur légalité, pertinence et résultats). +**Veuillez noter** que Roo Code, Inc. ne fait **aucune** déclaration ou garantie concernant tout code, modèle ou autre outil fourni ou mis à disposition en rapport avec Roo Code, tout outil tiers associé ou toute sortie en résultant. Vous assumez **tous les risques** associés à l'utilisation de ces outils ou sorties ; ces outils sont fournis **"EN L'ÉTAT"** et **"SELON LA DISPONIBILITÉ"**. Ces risques peuvent inclure, sans s'y limiter, la violation de la propriété intellectuelle, les vulnérabilités ou attaques cybernétiques, les biais, les inexactitudes, les erreurs, les défauts, les virus, les temps d'arrêt, la perte ou l'endommagement de biens et/ou les blessures corporelles. Vous êtes seul responsable de votre utilisation de ces outils ou sorties (y compris, sans s'y limiter, leur légalité, leur pertinence et leurs résultats). --- @@ -182,54 +173,14 @@ Merci à tous nos contributeurs qui ont aidé à améliorer Roo Code ! -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) ## Licence -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- -**Profitez de Roo Code !** Que vous le gardiez en laisse courte ou que vous le laissiez se déplacer de manière autonome, nous avons hâte de voir ce que vous allez construire. Si vous avez des questions ou des idées de fonctionnalités, passez par notre [communauté Reddit](https://www.reddit.com/r/RooCode/) ou [Discord](https://discord.gg/roocode). Bon codage ! +**Profitez de Roo Code !** Que vous le teniez en laisse courte ou que vous le laissiez errer de manière autonome, nous sommes impatients de voir ce que vous allez construire. Si vous avez des questions ou des idées de fonctionnalités, n'hésitez pas à passer sur notre [communauté Reddit](https://www.reddit.com/r/RooCode/) ou sur [Discord](https://discord.gg/roocode). Bon codage ! diff --git a/locales/hi/CONTRIBUTING.md b/locales/hi/CONTRIBUTING.md index 3bac1ee724..e72a04ec8d 100644 --- a/locales/hi/CONTRIBUTING.md +++ b/locales/hi/CONTRIBUTING.md @@ -11,128 +11,131 @@
-# Roo Code में योगदान करें +# Roo Code में योगदान -Roo Code एक समुदाय-आधारित प्रोजेक्ट है और हम हर योगदान को बहुत महत्व देते हैं। सहयोग को सरल बनाने के लिए, हम [Issue-First](#issue-first-एप्रोच) पद्धति अपनाते हैं, जिसका अर्थ है कि सभी [Pull Requests (PRs)](#pull-request-सबमिट-करना) को पहले GitHub Issue से जोड़ना आवश्यक है। कृपया इस गाइड को ध्यान से पढ़ें। +Roo Code एक समुदाय-संचालित परियोजना है, और हम हर योगदान को बहुत महत्व देते हैं। सहयोग को सुव्यवस्थित करने के لیے, हम [पहले-समस्या दृष्टिकोण](#समस्या-पहले-दृष्टिकोण) पर काम करते हैं, जिसका अर्थ है कि सभी [पुल अनुरोध (पीआर)](#एक-पुल-अनुरोध-सबमिट-करना) पहले एक गिटहब समस्या से जुड़े होने चाहिए। कृपया इस गाइड की सावधानीपूर्वक समीक्षा करें। -## विषय सूची +## विषय-सूची - [योगदान करने से पहले](#योगदान-करने-से-पहले) -- [अपना योगदान ढूंढना और योजना बनाना](#अपना-योगदान-ढूंढना-और-योजना-बनाना) -- [विकास और सबमिशन प्रक्रिया](#विकास-और-सबमिशन-प्रक्रिया) +- [अपना योगदान ढूँढना और योजना बनाना](#अपना-योगदान-ढूँढना-और-योजना-बनाना) +- [विकास और प्रस्तुत करने की प्रक्रिया](#विकास-और-प्रस्तुत-करने-की-प्रक्रिया) - [कानूनी](#कानूनी) ## योगदान करने से पहले ### 1. आचार संहिता -सभी योगदानकर्ताओं को हमारी [आचार संहिता](./CODE_OF_CONDUCT.md) का पालन करना चाहिए। +सभी योगदानकर्ताओं को हमारी [आचार संहिता](./CODE_OF_CONDUCT.md) का पालन करना होगा। -### 2. प्रोजेक्ट रोडमैप +### 2. परियोजना का रोडमैप -हमारा रोडमैप प्रोजेक्ट की दिशा तय करता है। अपने योगदान को इन प्रमुख लक्ष्यों के साथ संरेखित करें: +हमारा रोडमैप परियोजना की दिशा का मार्गदर्शन करता है। अपने योगदानों को इन प्रमुख लक्ष्यों के साथ संरेखित करें: ### विश्वसनीयता पहले -- सुनिश्चित करें कि diff एडिटिंग और कमांड एक्जीक्यूशन लगातार विश्वसनीय हों -- नियमित उपयोग को हतोत्साहित करने वाले फ्रिक्शन पॉइंट्स को कम करें -- सभी भाषाओं और प्लेटफॉर्म्स पर सुचारू संचालन की गारंटी दें -- विभिन्न AI प्रदाताओं और मॉडल्स के लिए मजबूत समर्थन का विस्तार करें +- सुनिश्चित करें कि डिफ़ संपादन और कमांड निष्पादन लगातार विश्वसनीय हैं। +- नियमित उपयोग को रोकने वाले घर्षण बिंदुओं को कम करें। +- सभी लोकेल और प्लेटफार्मों पर सुचारू संचालन की गारंटी दें। +- विभिन्न प्रकार के एआई प्रदाताओं और मॉडलों के लिए मजबूत समर्थन का विस्तार करें। -### बेहतर उपयोगकर्ता अनुभव +### उन्नत उपयोगकर्ता अनुभव -- स्पष्टता और सहजता के लिए UI/UX को सरल बनाएं -- डेवलपर्स के उच्च अपेक्षाओं को पूरा करने के लिए वर्कफ़्लो में निरंतर सुधार करें +- स्पष्टता और सहजता के लिए यूआई/यूएक्स को सुव्यवस्थित करें। +- दैनिक उपयोग के उपकरणों के लिए डेवलपर्स की उच्च अपेक्षाओं को पूरा करने के लिए वर्कफ़्लो में लगातार सुधार करें। ### एजेंट प्रदर्शन में अग्रणी -- वास्तविक दुनिया की उत्पादकता को मापने के लिए व्यापक मूल्यांकन बेंचमार्क (evals) स्थापित करें -- हर किसी के लिए इन मूल्यांकनों को आसानी से चलाना और समझना संभव बनाएं -- ऐसे सुधार लाएं जो मूल्यांकन स्कोर में स्पष्ट वृद्धि दिखाएं +- वास्तविक दुनिया की उत्पादकता को मापने के लिए व्यापक मूल्यांकन बेंचमार्क (evals) स्थापित करें। +- सभी के लिए इन मूल्यांकनों को आसानी से चलाना और व्याख्या करना आसान बनाएं। +- ऐसे सुधार भेजें जो मूल्यांकन स्कोर में स्पष्ट वृद्धि प्रदर्शित करते हैं। -अपने PR में इन क्षेत्रों से संबंधित कार्य का उल्लेख करें। +अपने पीआर में इन क्षेत्रों के साथ संरेखण का उल्लेख करें। -### 3. Roo Code कम्युनिटी से जुड़ें +### 3. Roo Code समुदाय में शामिल हों -- **मुख्य तरीका:** हमारे [Discord](https://discord.gg/roocode) से जुड़ें और **Hannes Rudolph (`hrudolph`)** को DM भेजें। -- **विकल्प:** अनुभवी योगदानकर्ता [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1) के माध्यम से सीधे भाग ले सकते हैं। +- **प्राथमिक:** हमारे [डिस्कॉर्ड](https://discord.gg/roocode) में शामिल हों और **Hannes Rudolph (`hrudolph`)** को डीएम करें। +- **वैकल्पिक:** अनुभवी योगदानकर्ता [गिटहब प्रोजेक्ट्स](https://github.com/orgs/RooCodeInc/projects/1) के माध्यम से सीधे जुड़ सकते हैं। -## अपना योगदान ढूंढना और योजना बनाना +## अपना योगदान ढूँढना और योजना बनाना ### योगदान के प्रकार -- **बग फिक्स:** कोड की समस्याओं को हल करना। -- **नई विशेषताएं:** नई कार्यक्षमता जोड़ना। -- **डॉक्युमेंटेशन:** गाइड सुधारना और स्पष्टता बढ़ाना। +- **बग फिक्स:** कोड समस्याओं का समाधान करना। +- **नई सुविधाएँ:** कार्यक्षमता जोड़ना। +- **दस्तावेज़ीकरण:** गाइड और स्पष्टता में सुधार। -### Issue-First एप्रोच +### समस्या-पहले दृष्टिकोण -हर योगदान GitHub Issue से शुरू होना चाहिए। +सभी योगदान हमारे पतले टेम्पलेट्स का उपयोग करके एक गिटहब समस्या से शुरू होते हैं। -- **मौजूदा Issues देखें:** [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues) में खोजें। -- **Issue बनाएं:** उपयुक्त टेम्पलेट का उपयोग करें: - - **बग:** "Bug Report" टेम्पलेट। - - **फीचर्स:** "Detailed Feature Proposal" टेम्पलेट। शुरू करने से पहले अनुमोदन आवश्यक है। -- **Issue क्लेम करें:** कमेंट करें और आधिकारिक असाइनमेंट का इंतजार करें। +- **मौजूदा समस्याओं की जाँच करें**: [गिटहब समस्याएँ](https://github.com/RooCodeInc/Roo-Code/issues) में खोजें। +- **एक समस्या बनाएँ** का उपयोग करके: + - **सुधार:** "सुधार अनुरोध" टेम्पलेट (उपयोगकर्ता लाभ पर केंद्रित सरल भाषा)। + - **बग:** "बग रिपोर्ट" टेम्पलेट (न्यूनतम प्रतिकृति + अपेक्षित बनाम वास्तविक + संस्करण)। +- **इस पर काम करना चाहते हैं?** समस्या पर "दावा करना" टिप्पणी करें और असाइन होने के लिए [डिस्कॉर्ड](https://discord.gg/roocode) पर **Hannes Rudolph (`hrudolph`)** को डीएम करें। असाइनमेंट की पुष्टि थ्रेड में की जाएगी। +- **पीआर को समस्या से लिंक करना होगा।** अनलिंक किए गए पीआर बंद किए जा सकते हैं। -**अनुमोदित Issue के बिना PR बंद किए जा सकते हैं।** +### क्या काम करना है यह तय करना -### क्या काम करें चुनना +- "समस्या [असाइन नहीं की गई]" समस्याओं के लिए [गिटहब प्रोजेक्ट](https://github.com/orgs/RooCodeInc/projects/1) की जाँच करें। +- दस्तावेज़ों के लिए, [Roo Code दस्तावेज़](https://github.com/RooCodeInc/Roo-Code-Docs) पर जाएँ। -- [GitHub प्रोजेक्ट](https://github.com/orgs/RooCodeInc/projects/1) में असाइन न किए गए "Good First Issues" देखें। -- डॉक्युमेंटेशन के लिए, [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs) देखें। +### बग की रिपोर्ट करना -### बग या समस्या रिपोर्ट करना +- पहले मौजूदा रिपोर्ट की जाँच करें। +- ["बग रिपोर्ट" टेम्पलेट](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) का उपयोग करके एक नया बग बनाएँ: + - स्पष्ट, क्रमांकित पुनरुत्पादन चरण + - अपेक्षित बनाम वास्तविक परिणाम + - Roo Code संस्करण (आवश्यक); यदि प्रासंगिक हो तो एपीआई प्रदाता/मॉडल +- **सुरक्षा समस्याएँ**: [सुरक्षा सलाहकारों](https://github.com/RooCodeInc/Roo-Code/security/advisories/new) के माध्यम से निजी तौर पर रिपोर्ट करें। -- पहले मौजूदा रिपोर्ट देखें। -- ["Bug Report" टेम्पलेट](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) का उपयोग करके नए बग रिपोर्ट बनाएं। -- **सुरक्षा कमजोरियां:** [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new) के माध्यम से निजी तौर पर रिपोर्ट करें। - -## विकास और सबमिशन प्रक्रिया +## विकास और प्रस्तुत करने की प्रक्रिया ### विकास सेटअप -1. **Fork & Clone:** +1. **फोर्क और क्लोन:** ``` -git clone https://github.com/आपका_यूज़रनेम/Roo-Code.git +git clone https://github.com/आपका_उपयोगकर्ता_नाम/Roo-Code.git ``` -2. **डिपेंडेंसी इंस्टॉल करें:** +2. **निर्भरताएँ स्थापित करें:** ``` -npm run install:all +pnpm install ``` -3. **डिबगिंग:** VS Code में `F5` दबाएं। +3. **डीबगिंग:** वीएस कोड (`F5`) के साथ खोलें। -### कोड लिखने के दिशा-निर्देश +### कोड लिखने के दिशानिर्देश -- प्रति फीचर या फिक्स एक फोकस्ड PR। -- ESLint और TypeScript बेस्ट प्रैक्टिस का पालन करें। -- स्पष्ट, वर्णनात्मक कमिट मैसेज लिखें जो Issues को रेफर करें (जैसे `Fixes #123`)। -- पूर्ण टेस्टिंग प्रदान करें (`npm test`)। -- सबमिट करने से पहले अपनी ब्रांच को नवीनतम `main` पर रीबेस करें। +- प्रति सुविधा या फिक्स एक केंद्रित पीआर। +- ESLint और TypeScript की सर्वोत्तम प्रथाओं का पालन करें। +- समस्याओं का संदर्भ देने वाले स्पष्ट, वर्णनात्मक कमिट लिखें (उदाहरण के लिए, `फिक्स #123`)। +- पूरी तरह से परीक्षण प्रदान करें (`npm test`)। +- प्रस्तुत करने से पहले नवीनतम `main` शाखा पर रीबेस करें। -### Pull Request सबमिट करना +### एक पुल अनुरोध सबमिट करना -- अगर आप शुरुआती फीडबैक चाहते हैं तो **ड्राफ्ट PR** से शुरू करें। -- Pull Request टेम्पलेट का पालन करते हुए अपने परिवर्तनों का स्पष्ट वर्णन करें। -- UI परिवर्तनों के लिए स्क्रीनशॉट/वीडियो प्रदान करें। -- बताएं कि क्या डॉक्युमेंटेशन अपडेट आवश्यक हैं। +- यदि आप जल्दी प्रतिक्रिया चाहते हैं तो **ड्राफ्ट पीआर** के रूप में शुरू करें। +- पुल अनुरोध टेम्पलेट का पालन करते हुए अपने परिवर्तनों का स्पष्ट रूप से वर्णन करें। +- पीआर विवरण/शीर्षक में समस्या को लिंक करें (उदाहरण के लिए, "फिक्स #123")। +- यूआई परिवर्तनों के लिए स्क्रीनशॉट/वीडियो प्रदान करें। +- इंगित करें कि क्या दस्तावेज़ीकरण अद्यतन आवश्यक हैं। -### Pull Request नीति +### पुल अनुरोध नीति -- पूर्व-अनुमोदित और असाइन किए गए Issues का संदर्भ देना चाहिए। -- नीति का पालन न करने वाले PR बंद किए जा सकते हैं। -- PR को CI टेस्ट पास करना चाहिए, रोडमैप से मेल खाना चाहिए, और स्पष्ट डॉक्युमेंटेशन होनी चाहिए। +- एक असाइन की गई गिटहब समस्या का संदर्भ देना होगा। असाइन होने के लिए: समस्या पर "दावा करना" टिप्पणी करें और [डिस्कॉर्ड](https://discord.gg/roocode) पर **Hannes Rudolph (`hrudolph`)** को डीएम करें। असाइनमेंट की पुष्टि थ्रेड में की जाएगी। +- अनलिंक किए गए पीआर बंद किए जा सकते हैं। +- पीआर को सीआई परीक्षण पास करना होगा, रोडमैप के साथ संरेखित होना होगा, और स्पष्ट दस्तावेज़ीकरण होना होगा। ### समीक्षा प्रक्रिया -- **दैनिक ट्रायज:** मेंटेनर्स द्वारा त्वरित जांच। +- **दैनिक ट्राइएज:** अनुरक्षकों द्वारा त्वरित जाँच। - **साप्ताहिक गहन समीक्षा:** व्यापक मूल्यांकन। -- **फीडबैक के आधार पर तेजी से सुधार** करें। +- **प्रतिक्रिया के आधार पर तुरंत पुनरावृति करें**। ## कानूनी -Pull Request सबमिट करके, आप सहमत होते हैं कि आपके योगदान Roo Code के लाइसेंसिंग के अनुरूप Apache 2.0 लाइसेंस के तहत लाइसेंस किए जाएंगे। +योगदान करके, आप सहमत हैं कि आपके योगदान अपाचे 2.0 लाइसेंस के तहत लाइसेंस प्राप्त होंगे, जो Roo Code के लाइसेंस के अनुरूप है। diff --git a/locales/hi/README.md b/locales/hi/README.md index b7b90ca02e..f0f2a98165 100644 --- a/locales/hi/README.md +++ b/locales/hi/README.md @@ -1,235 +1,186 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • हिन्दी • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Roo Code समुदाय में शामिल हों

-

डेवलपर्स से जुड़ें, विचारों का योगदान दें, और AI-संचालित कोडिंग टूल्स के साथ अपडेट रहें।

- - Discord में शामिल हों - Reddit में शामिल हों - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ जल्दी मदद पाएं → डिस्कॉर्ड से जुड़ें • एसिंक पसंद है? → r/RooCode से जुड़ें

-VS Marketplace पर डाउनलोड करें -फीचर अनुरोध -रेट & समीक्षा -दस्तावेज़ीकरण +# Roo Code + +> तुम्हारी AI-संचालित डेवलपमेंट टीम, सीधे तुम्हारे एडिटर में + +
+ 🌐 उपलब्ध भाषाएँ + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Roo Code आपके लिए क्या कर सकता है? + +- प्राकृतिक भाषा विवरण से कोड उत्पन्न करें +- मोड के साथ अनुकूलन: कोड, आर्किटेक्ट, पूछें, डीबग और कस्टम मोड +- मौजूदा कोड को रीफैक्टर और डीबग करें +- दस्तावेज़ लिखें और अपडेट करें +- अपने कोडबेस के बारे में सवालों के जवाब दें +- दोहराए जाने वाले कार्यों को स्वचालित करें +- एमसीपी सर्वर का उपयोग करें + +## मोड + +रू कोड आपके काम करने के तरीके के अनुकूल है, न कि इसके विपरीत: + +- कोड मोड: रोजमर्रा की कोडिंग, संपादन और फ़ाइल संचालन +- आर्किटेक्ट मोड: सिस्टम, स्पेक्स और माइग्रेशन की योजना बनाएं +- पूछें मोड: त्वरित उत्तर, स्पष्टीकरण और डॉक्स +- डीबग मोड: समस्याओं का पता लगाएं, लॉग जोड़ें, मूल कारणों को अलग करें +- कस्टम मोड: अपनी टीम या वर्कफ़्लो के लिए विशेष मोड बनाएं +- Roomote Control: Roomote Control से तुम अपनी लोकल VS Code इंस्टेंस में चल रही टास्क को रिमोट से कंट्रोल कर सकते हो। + +और जानो: [मोड्स का इस्तेमाल](https://docs.roocode.com/basic-usage/using-modes) • [कस्टम मोड्स](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## ट्यूटोरियल और फ़ीचर वीडियो + +
+ +| | | | +| :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
रू कोड इंस्टॉल करना |
प्रोफाइल कॉन्फ़िगर करना |
कोडबेस इंडेक्सिंग | +|
कस्टम मोड |
चेकपॉइंट्स |
टू-डू लिस्ट |
- -**Roo Code** एक AI-संचालित **स्वायत्त कोडिंग एजेंट** है जो आपके एडिटर में रहता है। यह कर सकता है: - -- प्राकृतिक भाषा में संवाद -- आपके वर्कस्पेस में सीधे फ़ाइलें पढ़ना और लिखना -- टर्मिनल कमांड चलाना -- ब्राउज़र एक्शन को स्वचालित करना -- किसी भी OpenAI-संगत या कस्टम API/मॉडल के साथ एकीकृत होना -- **कस्टम मोड्स** के माध्यम से अपनी "व्यक्तित्व" और क्षमताओं को अनुकूलित करना - -चाहे आप एक लचीला कोडिंग पार्टनर, सिस्टम आर्किटेक्ट, या क्यूए इंजीनियर या प्रोडक्ट मैनेजर जैसी विशेष भूमिकाओं की तलाश कर रहे हों, Roo Code आपको अधिक कुशलता से सॉफ्टवेयर बनाने में मदद कर सकता है। - -विस्तृत अपडेट और फिक्स के लिए [CHANGELOG](../../CHANGELOG.md) देखें। - ---- - -## 🎉 Roo Code 3.25 जारी - -Roo Code 3.25 आपके डेवलपमेंट वर्कफ़्लो को बेहतर बनाने के लिए शक्तिशाली नई सुविधाएं और महत्वपूर्ण सुधार लाता है! - -- **संदेश कतार** - Roo के काम करते समय कई संदेशों को कतार में रखें, जिससे आप बिना रुकावट के अपने वर्कफ़्लो की योजना बना सकते हैं। -- **कस्टम स्लैश कमांड** - पूर्ण UI प्रबंधन के साथ अक्सर उपयोग किए जाने वाले प्रॉम्प्ट और वर्कफ़्लो तक त्वरित पहुंच के लिए व्यक्तिगत स्लैश कमांड बनाएं। -- **उन्नत Gemini उपकरण** - नए URL संदर्भ और Google खोज आधार सुविधाएं Gemini मॉडल को वास्तविक समय वेब जानकारी और उन्नत अनुसंधान क्षमताएं प्रदान करती हैं। - ---- - -## Roo Code क्या कर सकता है? - -- 🚀 प्राकृतिक भाषा विवरण से **कोड जनरेट** करना -- 🔧 मौजूदा कोड का **रीफैक्टर और डिबग** करना -- 📝 दस्तावेज़ीकरण **लिखना और अपडेट** करना -- 🤔 आपके कोडबेस के बारे में **प्रश्नों के उत्तर** देना -- 🔄 दोहराने वाले कार्यों को **स्वचालित** करना -- 🏗️ नई फ़ाइलें और प्रोजेक्ट्स **बनाना** - -## क्विक स्टार्ट - -1. [Roo Code इंस्टॉल करें](https://docs.roocode.com/getting-started/installing) -2. [अपने AI प्रोवाइडर को कनेक्ट करें](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [अपना पहला टास्क आज़माएं](https://docs.roocode.com/getting-started/your-first-task) - -## मुख्य विशेषताएं - -### मल्टीपल मोड्स - -Roo Code विशेष [मोड्स](https://docs.roocode.com/basic-usage/using-modes) के साथ आपकी आवश्यकताओं के अनुसार अनुकूलित होता है: - -- **कोड मोड:** सामान्य कोडिंग कार्यों के लिए -- **आर्किटेक्ट मोड:** योजना और तकनीकी नेतृत्व के लिए -- **आस्क मोड:** प्रश्नों के उत्तर देने और जानकारी प्रदान करने के लिए -- **डिबग मोड:** व्यवस्थित समस्या निदान के लिए -- **[कस्टम मोड्स](https://docs.roocode.com/advanced-usage/custom-modes):** सुरक्षा ऑडिटिंग, प्रदर्शन अनुकूलन, दस्तावेज़ीकरण, या किसी अन्य कार्य के लिए असीमित विशेष पर्सोनाज़ बनाएं - -### स्मार्ट टूल्स - -Roo Code शक्तिशाली [टूल्स](https://docs.roocode.com/basic-usage/how-tools-work) के साथ आता है जो कर सकते हैं: - -- आपके प्रोजेक्ट में फ़ाइलें पढ़ना और लिखना -- आपके VS Code टर्मिनल में कमांड्स चलाना -- वेब ब्राउज़र को नियंत्रित करना -- [MCP (मॉडल कॉन्टेक्स्ट प्रोटोकॉल)](https://docs.roocode.com/advanced-usage/mcp) के माध्यम से बाहरी टूल्स का उपयोग करना - -MCP आपको असीमित कस्टम टूल्स जोड़ने की अनुमति देकर Roo Code की क्षमताओं का विस्तार करता है। बाहरी APIs के साथ एकीकरण, डेटाबेस से कनेक्ट, या विशेष डेवलपमेंट टूल्स बनाएं - MCP आपकी विशिष्ट आवश्यकताओं को पूरा करने के लिए Roo Code की कार्यक्षमता का विस्तार करने के लिए फ्रेमवर्क प्रदान करता है। - -### अनुकूलन - -अपने तरीके से Roo Code को काम करवाएं: - -- व्यक्तिगत व्यवहार के लिए [कस्टम इंस्ट्रक्शंस](https://docs.roocode.com/advanced-usage/custom-instructions) -- विशेष कार्यों के लिए [कस्टम मोड्स](https://docs.roocode.com/advanced-usage/custom-modes) -- ऑफलाइन उपयोग के लिए [लोकल मॉडल्स](https://docs.roocode.com/advanced-usage/local-models) -- तेज वर्कफ़्लो के लिए [ऑटो-अप्रूवल सेटिंग्स](https://docs.roocode.com/advanced-usage/auto-approving-actions) +

+अधिक त्वरित ट्यूटोरियल और फ़ीचर वीडियो... +

## संसाधन -### दस्तावेज़ीकरण - -- [बेसिक उपयोग गाइड](https://docs.roocode.com/basic-usage/the-chat-interface) -- [एडवांस्ड फीचर्स](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [अक्सर पूछे जाने वाले प्रश्न](https://docs.roocode.com/faq) - -### समुदाय - -- **Discord:** रीयल-टाइम मदद और चर्चाओं के लिए [हमारे Discord सर्वर में शामिल हों](https://discord.gg/roocode) -- **Reddit:** अनुभव और टिप्स साझा करने के लिए [हमारे subreddit पर जाएं](https://www.reddit.com/r/RooCode) -- **GitHub:** [समस्याओं की रिपोर्ट करें](https://github.com/RooCodeInc/Roo-Code/issues) या [फीचर अनुरोध करें](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[दस्तावेज़ीकरण](https://docs.roocode.com):** Roo Code को स्थापित करने, कॉन्फ़िगर करने और उसमें महारत हासिल करने के लिए आधिकारिक गाइड। +- **[यूट्यूब चैनल](https://youtube.com/@roocodeyt?feature=shared):** ट्यूटोरियल देखें और सुविधाओं को एक्शन में देखें। +- **[डिस्कॉर्ड सर्वर](https://discord.gg/roocode):** रीयल-टाइम सहायता और चर्चा के लिए समुदाय में शामिल हों। +- **[रेडिट समुदाय](https://www.reddit.com/r/RooCode):** अपने अनुभव साझा करें और देखें कि दूसरे क्या बना रहे हैं। +- **[गिटहब मुद्दे](https://github.com/RooCodeInc/Roo-Code/issues):** बग की रिपोर्ट करें और विकास को ट्रैक करें। +- **[सुविधा अनुरोध](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** क्या आपके पास कोई विचार है? इसे डेवलपर्स के साथ साझा करें। --- -## लोकल सेटअप और डेवलपमेंट +## स्थानीय सेटअप और विकास -1. रिपो **क्लोन** करें: +1. **क्लोन** करें रेपो: ```sh git clone https://github.com/RooCodeInc/Roo-Code.git ``` -2. **डिपेंडेंसीज इंस्टॉल** करें: +2. **निर्भरताएँ स्थापित करें**: ```sh -npm run install:all +pnpm install ``` -3. **वेबव्यू शुरू करें (Vite/React ऐप HMR के साथ)**: +3. **एक्सटेंशन चलाएँ**: + +रू कोड एक्सटेंशन को चलाने के कई तरीके हैं: + +### विकास मोड (F5) + +सक्रिय विकास के लिए, वीएसकोड के अंतर्निहित डिबगिंग का उपयोग करें: + +वीएसकोड में `F5` दबाएं (या **रन** → **डीबगिंग प्रारंभ करें** पर जाएं)। यह Roo Code एक्सटेंशन के साथ एक नई वीएसकोड विंडो खोलेगा। + +- वेबव्यू में किए गए परिवर्तन तुरंत दिखाई देंगे। +- कोर एक्सटेंशन में किए गए परिवर्तन भी स्वचालित रूप से हॉट रीलोड हो जाएंगे। + +### स्वचालित VSIX स्थापना + +एक्सटेंशन को सीधे वीएसकोड में VSIX पैकेज के रूप में बनाने और स्थापित करने के लिए: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **डिबग**: - VSCode में `F5` दबाएं (या **Run** → **Start Debugging**) Roo Code लोड के साथ एक नया सेशन खोलने के लिए। +यह कमांड करेगा: -वेबव्यू में परिवर्तन तुरंत दिखाई देंगे। कोर एक्सटेंशन में परिवर्तनों के लिए एक्सटेंशन होस्ट को रीस्टार्ट करने की आवश्यकता होगी। +- पूछेगा कि कौन सा संपादक कमांड उपयोग करना है (कोड/कर्सर/कोड-इनसाइडर्स) - डिफ़ॉल्ट रूप से 'कोड' +- एक्सटेंशन के किसी भी मौजूदा संस्करण को अनइंस्टॉल करें। +- नवीनतम VSIX पैकेज बनाएं। +- नए बनाए गए VSIX को स्थापित करें। +- परिवर्तनों को प्रभावी करने के लिए आपको वीएस कोड को पुनरारंभ करने के लिए संकेत देगा। -वैकल्पिक रूप से आप .vsix बना सकते हैं और इसे सीधे VSCode में इंस्टॉल कर सकते हैं: +विकल्प: -```sh -npm run build -``` +- `-y`: सभी पुष्टिकरण संकेतों को छोड़ दें और डिफ़ॉल्ट का उपयोग करें +- `--editor=`: संपादक कमांड निर्दिष्ट करें (जैसे, `--editor=cursor` या `--editor=code-insiders`) -`bin/` डायरेक्टरी में एक `.vsix` फ़ाइल दिखाई देगी जिसे इस कमांड से इंस्टॉल किया जा सकता है: +### मैनुअल VSIX स्थापना -```sh -code --install-extension bin/roo-cline-.vsix -``` +यदि आप VSIX पैकेज को मैन्युअल रूप से स्थापित करना पसंद करते हैं: -वर्जनिंग और पब्लिशिंग के लिए हम [changesets](https://github.com/changesets/changesets) का उपयोग करते हैं। रिलीज नोट्स के लिए हमारी `CHANGELOG.md` देखें। +1. पहले, VSIX पैकेज बनाएं: + ```sh + pnpm vsix + ``` +2. `bin/` डायरेक्टरी में एक `.vsix` फ़ाइल जनरेट होगी (जैसे, `bin/roo-cline-.vsix` )। +3. इसे वीएसकोड सीएलआई का उपयोग करके मैन्युअल रूप से इंस्टॉल करें: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- + +हम वर्जनिंग और प्रकाशन के लिए [चेंजसेट्स](https://github.com/changesets/changesets) का उपयोग करते हैं। रिलीज नोट्स के लिए हमारी `CHANGELOG.md` देखें। --- ## अस्वीकरण -**कृपया ध्यान दें** कि Roo Code, Inc Roo Code के संबंध में प्रदान किए गए या उपलब्ध कराए गए किसी भी कोड, मॉडल या अन्य टूल्स, किसी भी संबंधित थर्ड-पार्टी टूल्स, या किसी भी परिणामी आउटपुट के संबंध में **कोई** प्रतिनिधित्व या वारंटी **नहीं** देता है। आप ऐसे किसी भी टूल्स या आउटपुट के उपयोग से जुड़े **सभी जोखिमों** को मानते हैं; ऐसे टूल्स **"जैसा है"** और **"जैसा उपलब्ध है"** के आधार पर प्रदान किए जाते हैं। ऐसे जोखिमों में, बिना किसी सीमा के, बौद्धिक संपदा उल्लंघन, साइबर कमजोरियां या हमले, पूर्वाग्रह, अशुद्धियां, त्रुटियां, दोष, वायरस, डाउनटाइम, संपत्ति का नुकसान या क्षति, और/या व्यक्तिगत चोट शामिल हो सकते हैं। आप ऐसे किसी भी टूल्स या आउटपुट के अपने उपयोग के लिए (जिसमें, बिना किसी सीमा के, उनकी वैधता, उपयुक्तता और परिणाम शामिल हैं) पूरी तरह से जिम्मेदार हैं। +**कृपया ध्यान दें** कि रू कोड, इंक किसी भी कोड, मॉडल, या अन्य टूल के संबंध में **कोई** प्रतिनिधित्व या वारंटी **नहीं** देता है, जो रू कोड, किसी भी संबंधित तीसरे पक्ष के टूल, या किसी भी परिणामी आउटपुट के संबंध में प्रदान या उपलब्ध कराया गया है। आप ऐसे किसी भी टूल या आउटपुट के उपयोग से जुड़े **सभी जोखिमों** को मानते हैं; ऐसे टूल **"जैसा है"** और **"जैसा उपलब्ध है"** के आधार पर प्रदान किए जाते हैं। ऐसे जोखिमों में, बिना किसी सीमा के, बौद्धिक संपदा का उल्लंघन, साइबर कमजोरियां या हमले, पूर्वाग्रह, अशुद्धि, त्रुटियां, दोष, वायरस, डाउनटाइम, संपत्ति की हानि या क्षति, और/या व्यक्तिगत चोट शामिल हो सकते हैं। आप ऐसे किसी भी टूल या आउटपुट के अपने उपयोग के लिए पूरी तरह से जिम्मेदार हैं (जिसमें, बिना किसी सीमा के, उनकी वैधता, उपयुक्तता और परिणाम शामिल हैं)। --- ## योगदान -हम सामुदायिक योगदान पसंद करते हैं! हमारी [CONTRIBUTING.md](CONTRIBUTING.md) पढ़कर शुरुआत करें। +हमें सामुदायिक योगदान पसंद है! हमारी [CONTRIBUTING.md](CONTRIBUTING.md) पढ़कर शुरुआत करें। --- ## योगदानकर्ता -Roo Code को बेहतर बनाने में मदद करने वाले हमारे सभी योगदानकर्ताओं को धन्यवाद! +हमारे सभी योगदानकर्ताओं को धन्यवाद जिन्होंने Roo Code को बेहतर बनाने में मदद की है! -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) ## लाइसेंस -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- -**Roo Code का आनंद लें!** चाहे आप इसे छोटी रस्सी पर रखें या स्वायत्त रूप से घूमने दें, हम यह देखने के लिए इंतज़ार नहीं कर सकते कि आप क्या बनाते हैं। यदि आपके पास प्रश्न या फीचर आइडिया हैं, तो हमारे [Reddit समुदाय](https://www.reddit.com/r/RooCode/) या [Discord](https://discord.gg/roocode) पर आएं। हैप्पी कोडिंग! +**Roo Code का आनंद लें!** चाहे आप इसे छोटी लगाम में रखें या इसे स्वायत्त रूप से घूमने दें, हम यह देखने के लिए इंतजार नहीं कर सकते कि आप क्या बनाते हैं। यदि आपके कोई प्रश्न या सुविधा के विचार हैं, तो हमारी [रेडिट समुदाय](https://www.reddit.com/r/RooCode/) या [डिस्कॉर्ड](https://discord.gg/roocode) पर आएं। हैप्पी कोडिंग! diff --git a/locales/id/CONTRIBUTING.md b/locales/id/CONTRIBUTING.md index 7f22848b22..5af7607d7c 100644 --- a/locales/id/CONTRIBUTING.md +++ b/locales/id/CONTRIBUTING.md @@ -13,16 +13,16 @@ # Berkontribusi pada Roo Code -Roo Code adalah proyek yang didorong oleh komunitas, dan kami sangat menghargai setiap kontribusi. Untuk memperlancar kolaborasi, kami beroperasi berdasarkan pendekatan [Issue-First](#issue-first-approach), yang berarti semua [Pull Request (PR)](#submitting-a-pull-request) harus terlebih dahulu ditautkan ke GitHub Issue. Harap tinjau panduan ini dengan cermat. +Roo Code adalah proyek yang digerakkan oleh komunitas, dan kami sangat menghargai setiap kontribusi. Untuk menyederhanakan kolaborasi, kami beroperasi dengan dasar [Pendekatan Masalah-Dulu](#pendekatan-masalah-dulu), yang berarti semua [Pull Request (PR)](#mengajukan-pull-request) harus terlebih dahulu ditautkan ke Masalah GitHub. Harap tinjau panduan ini dengan cermat. ## Daftar Isi -- [Sebelum Kamu Berkontribusi](#before-you-contribute) -- [Mencari & Merencanakan Kontribusi Kamu](#finding--planning-your-contribution) -- [Proses Pengembangan & Pengiriman](#development--submission-process) -- [Legal](#legal) +- [Sebelum Anda Berkontribusi](#sebelum-anda-berkontribusi) +- [Menemukan & Merencanakan Kontribusi Anda](#menemukan--merencanakan-kontribusi-anda) +- [Proses Pengembangan & Pengajuan](#proses-pengembangan--pengajuan) +- [Hukum](#hukum) -## Sebelum Kamu Berkontribusi +## Sebelum Anda Berkontribusi ### 1. Kode Etik @@ -30,34 +30,34 @@ Semua kontributor harus mematuhi [Kode Etik](./CODE_OF_CONDUCT.md) kami. ### 2. Peta Jalan Proyek -Peta jalan kami memandu arah proyek. Selaraskan kontribusi kamu dengan tujuan utama ini: +Peta jalan kami memandu arah proyek. Sejajarkan kontribusi Anda dengan tujuan-tujuan utama ini: ### Keandalan Utama -- Pastikan pengeditan diff dan eksekusi perintah secara konsisten dapat diandalkan. +- Pastikan pengeditan diff dan eksekusi perintah secara konsisten andal. - Kurangi titik gesekan yang menghalangi penggunaan rutin. -- Jamin operasi yang lancar di semua lokal dan platform. +- Jamin kelancaran operasi di semua lokal dan platform. - Perluas dukungan yang kuat untuk berbagai penyedia dan model AI. ### Pengalaman Pengguna yang Ditingkatkan - Sederhanakan UI/UX untuk kejelasan dan intuitivitas. -- Terus tingkatkan alur kerja untuk memenuhi ekspektasi tinggi yang dimiliki developer terhadap tools penggunaan sehari-hari. +- Terus tingkatkan alur kerja untuk memenuhi harapan tinggi yang dimiliki pengembang untuk alat yang digunakan sehari-hari. -### Memimpin dalam Performa Agen +### Memimpin dalam Kinerja Agen -- Tetapkan benchmark evaluasi komprehensif (evals) untuk mengukur produktivitas dunia nyata. -- Permudah semua orang untuk menjalankan dan menafsirkan evals ini. -- Kirimkan perbaikan yang menunjukkan peningkatan jelas dalam skor eval. +- Tetapkan tolok ukur evaluasi (eval) yang komprehensif untuk mengukur produktivitas dunia nyata. +- Permudah semua orang untuk menjalankan dan menafsirkan eval ini dengan mudah. +- Kirimkan perbaikan yang menunjukkan peningkatan yang jelas dalam skor eval. -Sebutkan keselarasan dengan area ini di PR kamu. +Sebutkan keselarasan dengan area-area ini di PR Anda. -### 3. Bergabung dengan Komunitas Roo Code +### 3. Bergabunglah dengan Komunitas Roo Code -- **Utama:** Bergabunglah dengan [Discord](https://discord.gg/roocode) kami dan DM **Hannes Rudolph (`hrudolph`)**. -- **Alternatif:** Kontributor berpengalaman dapat berinteraksi langsung melalui [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1). +- **Utama:** Bergabunglah dengan [Discord](https://discord.gg/roocode) kami dan kirim DM ke **Hannes Rudolph (`hrudolph`)**. +- **Alternatif:** Kontributor berpengalaman dapat terlibat langsung melalui [Proyek GitHub](https://github.com/orgs/RooCodeInc/projects/1). -## Mencari & Merencanakan Kontribusi Kamu +## Menemukan & Merencanakan Kontribusi Anda ### Jenis Kontribusi @@ -65,40 +65,42 @@ Sebutkan keselarasan dengan area ini di PR kamu. - **Fitur Baru:** Menambahkan fungsionalitas. - **Dokumentasi:** Meningkatkan panduan dan kejelasan. -### Pendekatan Issue-First +### Pendekatan Masalah-Dulu -Semua kontribusi harus dimulai dengan GitHub Issue. +Semua kontribusi dimulai dengan Masalah GitHub menggunakan template ramping kami. -- **Periksa isu yang ada**: Cari di [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). -- **Buat isu**: Gunakan template yang sesuai: - - **Bug:** Template "Bug Report". - - **Fitur:** Template "Detailed Feature Proposal". Persetujuan diperlukan sebelum memulai. -- **Klaim isu**: Beri komentar dan tunggu penugasan resmi. - -**PR tanpa isu yang disetujui dapat ditutup.** +- **Periksa masalah yang ada**: Cari di [Masalah GitHub](https://github.com/RooCodeInc/Roo-Code/issues). +- **Buat masalah** menggunakan: + - **Penyempurnaan:** Template "Permintaan Penyempurnaan" (bahasa sederhana yang berfokus pada manfaat pengguna). + - **Bug:** Template "Laporan Bug" (repro minimal + yang diharapkan vs aktual + versi). +- **Ingin mengerjakannya?** Beri komentar "Mengklaim" pada masalah tersebut dan kirim DM ke **Hannes Rudolph (`hrudolph`)** di [Discord](https://discord.gg/roocode) untuk ditugaskan. Penugasan akan dikonfirmasi di utas. +- **PR harus menautkan ke masalah.** PR yang tidak tertaut dapat ditutup. ### Memutuskan Apa yang Akan Dikerjakan -- Periksa [GitHub Project](https://github.com/orgs/RooCodeInc/projects/1) untuk "Good First Issues" yang belum ditugaskan. -- Untuk dokumen, kunjungi [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). +- Periksa [Proyek GitHub](https://github.com/orgs/RooCodeInc/projects/1) untuk masalah "Masalah [Belum Ditugaskan]". +- Untuk dokumentasi, kunjungi [Dokumentasi Roo Code](https://github.com/RooCodeInc/Roo-Code-Docs). ### Melaporkan Bug - Periksa laporan yang ada terlebih dahulu. -- Buat bug baru menggunakan ["Bug Report" template](https://github.com/RooCodeInc/Roo-Code/issues/new/choose). -- **Masalah keamanan**: Laporkan secara pribadi melalui [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). +- Buat bug baru menggunakan [template "Laporan Bug"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) dengan: + - Langkah-langkah reproduksi yang jelas dan bernomor + - Hasil yang diharapkan vs aktual + - Versi Roo Code (wajib); penyedia/model API jika relevan +- **Masalah keamanan**: Laporkan secara pribadi melalui [saran keamanan](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). -## Proses Pengembangan & Pengiriman +## Proses Pengembangan & Pengajuan -### Setup Pengembangan +### Pengaturan Pengembangan -1. **Fork & Clone:** +1. **Fork & Klon:** ``` -git clone https://github.com/YOUR_USERNAME/Roo-Code.git +git clone https://github.com/NAMA_PENGGUNA_ANDA/Roo-Code.git ``` -2. **Install Dependencies:** +2. **Instal Ketergantungan:** ``` pnpm install @@ -106,33 +108,34 @@ pnpm install 3. **Debugging:** Buka dengan VS Code (`F5`). -### Panduan Menulis Kode +### Pedoman Menulis Kode -- Satu PR yang fokus per fitur atau perbaikan. +- Satu PR terfokus per fitur atau perbaikan. - Ikuti praktik terbaik ESLint dan TypeScript. -- Tulis commit yang jelas dan deskriptif yang merujuk pada isu (misalnya, `Fixes #123`). +- Tulis komitmen yang jelas dan deskriptif yang merujuk pada masalah (mis., `Memperbaiki #123`). - Sediakan pengujian menyeluruh (`npm test`). -- Rebase ke branch `main` terbaru sebelum pengiriman. +- Rebase ke cabang `main` terbaru sebelum pengajuan. -### Mengirimkan Pull Request +### Mengajukan Pull Request -- Mulai sebagai **Draft PR** jika mencari feedback awal. -- Jelaskan perubahan kamu dengan jelas mengikuti Template Pull Request. -- Sediakan screenshot/video untuk perubahan UI. +- Mulailah sebagai **PR Draf** jika mencari umpan balik awal. +- Jelaskan perubahan Anda dengan jelas mengikuti Templat Pull Request. +- Tautkan masalah di deskripsi/judul PR (mis., "Memperbaiki #123"). +- Sediakan tangkapan layar/video untuk perubahan UI. - Tunjukkan jika pembaruan dokumentasi diperlukan. ### Kebijakan Pull Request -- Harus merujuk pada isu yang telah disetujui dan ditugaskan sebelumnya. -- PR tanpa kepatuhan terhadap kebijakan dapat ditutup. +- Harus merujuk pada Masalah GitHub yang ditugaskan. Untuk ditugaskan: beri komentar "Mengklaim" pada masalah tersebut dan kirim DM ke **Hannes Rudolph (`hrudolph`)** di [Discord](https://discord.gg/roocode). Penugasan akan dikonfirmasi di utas. +- PR yang tidak tertaut dapat ditutup. - PR harus lulus tes CI, selaras dengan peta jalan, dan memiliki dokumentasi yang jelas. -### Proses Review +### Proses Peninjauan -- **Triage Harian:** Pemeriksaan cepat oleh maintainer. -- **Review Mendalam Mingguan:** Penilaian komprehensif. -- **Iterasi segera** berdasarkan feedback. +- **Triase Harian:** Pemeriksaan cepat oleh pengelola. +- **Tinjauan Mendalam Mingguan:** Penilaian komprehensif. +- **Iterasi dengan cepat** berdasarkan umpan balik. -## Legal +## Hukum -Dengan berkontribusi, kamu setuju kontribusi kamu akan dilisensikan di bawah Lisensi Apache 2.0, konsisten dengan lisensi Roo Code. +Dengan berkontribusi, Anda setuju bahwa kontribusi Anda akan dilisensikan di bawah Lisensi Apache 2.0, sesuai dengan lisensi Roo Code. diff --git a/locales/id/README.md b/locales/id/README.md index 4e537db531..614997688c 100644 --- a/locales/id/README.md +++ b/locales/id/README.md @@ -1,128 +1,93 @@ -
- +

+ VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ Dapatkan bantuan cepat → Gabung Discord • Lebih suka asinkron? → Gabung r/RooCode +

-[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • Bahasa Indonesia • [Italiano](../it/README.md) • [日本語](../ja/README.md) +# Roo Code -
- +> Tim dev bertenaga AI-mu, langsung di editor kamu -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) +
+ 🌐 Bahasa yang tersedia - -
-
-
-

Roo Code

-

- -

-

Terhubung dengan developer, berkontribusi ide, dan tetap terdepan dengan tools coding bertenaga AI terbaru.

- - Join Discord - Join Reddit - -
-
-
- -
- -Download on VS Marketplace -Feature Requests -Rate & Review -Documentation - -
- -**Roo Code** adalah **agen coding otonom** bertenaga AI yang hidup di editor kamu. Ia dapat: - -- Berkomunikasi dalam bahasa alami -- Membaca dan menulis file langsung di workspace kamu -- Menjalankan perintah terminal -- Mengotomatisasi aksi browser -- Terintegrasi dengan API/model yang kompatibel dengan OpenAI atau custom -- Menyesuaikan "kepribadian" dan kemampuannya melalui **Mode Kustom** - -Baik kamu mencari partner coding yang fleksibel, arsitek sistem, atau peran khusus seperti QA engineer atau product manager, Roo Code dapat membantu kamu membangun software dengan lebih efisien. - -Lihat [CHANGELOG](../../CHANGELOG.md) untuk update dan perbaikan detail. +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... + --- -## 🎉 Roo Code 3.25 Dirilis +## Apa yang Bisa Roo Code Lakukan Untuk ANDA? -Roo Code 3.25 menghadirkan fitur-fitur baru yang powerful dan peningkatan signifikan untuk meningkatkan workflow development kamu! +- Menghasilkan Kode dari deskripsi bahasa alami +- Beradaptasi dengan Mode: Kode, Arsitek, Tanya, Debug, dan Mode Kustom +- Refactor & Debug kode yang ada +- Menulis & Memperbarui dokumentasi +- Menjawab Pertanyaan tentang basis kode Anda +- Mengotomatiskan tugas-tugas yang berulang +- Memanfaatkan Server MCP -- **Antrian pesan** - Antrikan beberapa pesan saat Roo bekerja, memungkinkan kamu terus merencanakan alur kerja tanpa gangguan. -- **Perintah slash kustom** - Buat perintah slash yang dipersonalisasi untuk akses cepat ke prompt dan alur kerja yang sering digunakan dengan manajemen UI lengkap. -- **Alat Gemini lanjutan** - Fitur konteks URL dan dasar pencarian Google baru memberikan model Gemini informasi web real-time dan kemampuan penelitian lanjutan. +## Mode + +Roo Code beradaptasi dengan cara Anda bekerja, bukan sebaliknya: + +- Mode Kode: pengkodean sehari-hari, pengeditan, dan operasi file +- Mode Arsitek: merencanakan sistem, spesifikasi, dan migrasi +- Mode Tanya: jawaban cepat, penjelasan, dan dokumen +- Mode Debug: melacak masalah, menambahkan log, mengisolasi akar penyebab +- Mode Kustom: buat mode khusus untuk tim atau alur kerja Anda +- Roomote Control: Roomote Control memungkinkan kamu mengontrol dari jarak jauh tugas yang berjalan di VS Code lokalmu. + +Pelajari lebih lanjut: [Menggunakan Mode](https://docs.roocode.com/basic-usage/using-modes) • [Mode Kustom](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## Video Tutorial & Fitur + +
+ +| | | | +| :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Menginstal Roo Code |
Mengonfigurasi Profil |
Pengindeksan Basis Kode | +|
Mode Kustom |
Pos Pemeriksaan |
Daftar Tugas | + +
+

+Video tutorial dan fitur cepat lainnya... +

+ +## Sumber daya + +- **[Dokumentasi](https://docs.roocode.com):** Panduan resmi untuk menginstal, mengonfigurasi, dan menguasai Roo Code. +- **[Saluran YouTube](https://youtube.com/@roocodeyt?feature=shared):** Tonton tutorial dan lihat fitur-fitur dalam aksi. +- **[Server Discord](https://discord.gg/roocode):** Bergabunglah dengan komunitas untuk bantuan dan diskusi real-time. +- **[Komunitas Reddit](https://www.reddit.com/r/RooCode):** Bagikan pengalaman Anda dan lihat apa yang sedang dibangun orang lain. +- **[Masalah GitHub](https://github.com/RooCodeInc/Roo-Code/issues):** Laporkan bug dan lacak pengembangan. +- **[Permintaan Fitur](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** Punya ide? Bagikan dengan para pengembang. --- -## Apa yang Bisa Dilakukan Roo Code? - -- 🚀 **Generate Code** dari deskripsi bahasa alami -- 🔧 **Refactor & Debug** kode yang ada -- 📝 **Tulis & Update** dokumentasi -- 🤔 **Jawab Pertanyaan** tentang codebase kamu -- 🔄 **Otomatisasi** tugas berulang -- 🏗️ **Buat** file dan proyek baru - -## Mulai Cepat - -1. [Install Roo Code](https://docs.roocode.com/getting-started/installing) -2. [Hubungkan AI Provider Kamu](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [Coba Tugas Pertama Kamu](https://docs.roocode.com/getting-started/your-first-task) - -## Fitur Utama - -### Multiple Mode - -Roo Code beradaptasi dengan kebutuhan kamu dengan [mode](https://docs.roocode.com/basic-usage/using-modes) khusus: - -- **Code Mode:** Untuk tugas coding umum -- **Architect Mode:** Untuk perencanaan dan kepemimpinan teknis -- **Ask Mode:** Untuk menjawab pertanyaan dan memberikan informasi -- **Debug Mode:** Untuk diagnosis masalah sistematis -- **[Mode Kustom](https://docs.roocode.com/advanced-usage/custom-modes):** Buat persona khusus tak terbatas untuk audit keamanan, optimasi performa, dokumentasi, atau tugas lainnya - -### Tools Pintar - -Roo Code dilengkapi dengan [tools](https://docs.roocode.com/basic-usage/how-tools-work) powerful yang dapat: - -- Membaca dan menulis file di proyek kamu -- Menjalankan perintah di terminal VS Code kamu -- Mengontrol web browser -- Menggunakan tools eksternal via [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) - -MCP memperluas kemampuan Roo Code dengan memungkinkan kamu menambahkan tools kustom tak terbatas. Integrasikan dengan API eksternal, hubungkan ke database, atau buat tools development khusus - MCP menyediakan framework untuk memperluas fungsionalitas Roo Code sesuai kebutuhan spesifik kamu. - -### Kustomisasi - -Buat Roo Code bekerja sesuai cara kamu dengan: - -- [Custom Instructions](https://docs.roocode.com/advanced-usage/custom-instructions) untuk perilaku yang dipersonalisasi -- [Mode Kustom](https://docs.roocode.com/advanced-usage/custom-modes) untuk tugas khusus -- [Model Lokal](https://docs.roocode.com/advanced-usage/local-models) untuk penggunaan offline -- [Auto-Approval Settings](https://docs.roocode.com/advanced-usage/auto-approving-actions) untuk workflow yang lebih cepat - -## Sumber Daya - -### Dokumentasi - -- [Panduan Penggunaan Dasar](https://docs.roocode.com/basic-usage/the-chat-interface) -- [Fitur Lanjutan](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [Frequently Asked Questions](https://docs.roocode.com/faq) - -### Komunitas - -- **Discord:** [Bergabung dengan server Discord kami](https://discord.gg/roocode) untuk bantuan real-time dan diskusi -- **Reddit:** [Kunjungi subreddit kami](https://www.reddit.com/r/RooCode) untuk berbagi pengalaman dan tips -- **GitHub:** Laporkan [issues](https://github.com/RooCodeInc/Roo-Code/issues) atau request [fitur](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) - ---- - -## Setup Lokal & Development +## Pengaturan & Pengembangan Lokal 1. **Clone** repo: @@ -130,43 +95,75 @@ Buat Roo Code bekerja sesuai cara kamu dengan: git clone https://github.com/RooCodeInc/Roo-Code.git ``` -2. **Install dependencies**: +2. **Instal dependensi**: ```sh pnpm install ``` -3. **Jalankan extension**: +3. **Jalankan ekstensi**: -Tekan `F5` (atau **Run** → **Start Debugging**) di VSCode untuk membuka window baru dengan Roo Code berjalan. +Ada beberapa cara untuk menjalankan ekstensi Roo Code: -Perubahan pada webview akan muncul langsung. Perubahan pada core extension akan memerlukan restart extension host. +### Mode Pengembangan (F5) -Alternatifnya kamu bisa build .vsix dan install langsung di VSCode: +Untuk pengembangan aktif, gunakan debugging bawaan VSCode: + +Tekan `F5` (atau buka **Run** → **Start Debugging**) di VSCode. Ini akan membuka jendela VSCode baru dengan ekstensi Roo Code berjalan. + +- Perubahan pada webview akan segera muncul. +- Perubahan pada ekstensi inti juga akan di-hot reload secara otomatis. + +### Instalasi VSIX Otomatis + +Untuk membangun dan menginstal ekstensi sebagai paket VSIX langsung ke VSCode: ```sh -pnpm vsix +pnpm install:vsix [-y] [--editor=] ``` -File `.vsix` akan muncul di direktori `bin/` yang bisa diinstall dengan: +Perintah ini akan: -```sh -code --install-extension bin/roo-cline-.vsix -``` +- Menanyakan perintah editor mana yang akan digunakan (code/cursor/code-insiders) - defaultnya adalah 'code' +- Mencopot pemasangan versi ekstensi yang ada. +- Membangun paket VSIX terbaru. +- Menginstal VSIX yang baru dibangun. +- Meminta Anda untuk me-restart VS Code agar perubahan dapat diterapkan. -Kami menggunakan [changesets](https://github.com/changesets/changesets) untuk versioning dan publishing. Cek `CHANGELOG.md` kami untuk release notes. +Pilihan: + +- `-y`: Lewati semua prompt konfirmasi dan gunakan default +- `--editor=`: Tentukan perintah editor (misalnya, `--editor=cursor` atau `--editor=code-insiders`) + +### Instalasi VSIX Manual + +Jika Anda lebih suka menginstal paket VSIX secara manual: + +1. Pertama, bangun paket VSIX: + ```sh + pnpm vsix + ``` +2. File `.vsix` akan dibuat di direktori `bin/` (misalnya, `bin/roo-cline-.vsix`). +3. Instal secara manual menggunakan VSCode CLI: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` --- -## Disclaimer +Kami menggunakan [changesets](https://github.com/changesets/changesets) untuk pembuatan versi dan publikasi. Periksa `CHANGELOG.md` kami untuk catatan rilis. -**Harap dicatat** bahwa Roo Code, Inc **tidak** membuat representasi atau jaminan apapun mengenai kode, model, atau tools lain yang disediakan atau tersedia dalam hubungannya dengan Roo Code, tools pihak ketiga terkait, atau output yang dihasilkan. Kamu menanggung **semua risiko** yang terkait dengan penggunaan tools atau output tersebut; tools tersebut disediakan atas dasar **"SEBAGAIMANA ADANYA"** dan **"SEBAGAIMANA TERSEDIA"**. Risiko tersebut dapat mencakup, tanpa terbatas pada, pelanggaran kekayaan intelektual, kerentanan atau serangan siber, bias, ketidakakuratan, kesalahan, cacat, virus, downtime, kehilangan properti atau kerusakan, dan/atau cedera pribadi. Kamu bertanggung jawab penuh atas penggunaan tools atau output tersebut (termasuk, tanpa terbatas pada, legalitas, kesesuaian, dan hasilnya). +--- + +## Penafian + +**Harap dicatat** bahwa Roo Code, Inc. **tidak** membuat pernyataan atau jaminan apapun mengenai kode, model, atau alat lain yang disediakan atau tersedia sehubungan dengan Roo Code, alat pihak ketiga terkait, atau output yang dihasilkan. Anda menanggung **semua risiko** yang terkait dengan penggunaan alat atau output tersebut; alat tersebut disediakan atas dasar **"SEBAGAIMANA ADANYA"** dan **"SEBAGAIMANA TERSEDIA"**. Risiko tersebut dapat mencakup, namun tidak terbatas pada, pelanggaran kekayaan intelektual, kerentanan atau serangan siber, bias, ketidakakuratan, kesalahan, cacat, virus, waktu henti, kehilangan atau kerusakan properti, dan/atau cedera pribadi. Anda sepenuhnya bertanggung jawab atas penggunaan Anda atas alat atau output tersebut (termasuk, namun tidak terbatas pada, legalitas, kesesuaian, dan hasilnya). --- ## Berkontribusi -Kami menyukai kontribusi komunitas! Mulai dengan membaca [CONTRIBUTING.md](CONTRIBUTING.md) kami. +Kami menyukai kontribusi komunitas! Mulailah dengan membaca [CONTRIBUTING.md](CONTRIBUTING.md) kami. --- @@ -176,54 +173,14 @@ Terima kasih kepada semua kontributor kami yang telah membantu membuat Roo Code -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) -## License +## Lisensi -[Apache 2.0 © 2025 Roo Code, Inc.](./LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- -**Nikmati Roo Code!** Baik kamu menggunakannya dengan ketat atau membiarkannya berjalan otonom, kami tidak sabar melihat apa yang kamu bangun. Jika kamu memiliki pertanyaan atau ide fitur, kunjungi [komunitas Reddit](https://www.reddit.com/r/RooCode/) atau [Discord](https://discord.gg/roocode) kami. Selamat coding! +**Selamat menikmati Roo Code!** Baik Anda mengendalikannya dengan ketat atau membiarkannya berkeliaran secara otonom, kami tidak sabar untuk melihat apa yang Anda bangun. Jika Anda memiliki pertanyaan atau ide fitur, kunjungi [komunitas Reddit](https://www.reddit.com/r/RooCode/) atau [Discord](https://discord.gg/roocode) kami. Selamat membuat kode! diff --git a/locales/it/CONTRIBUTING.md b/locales/it/CONTRIBUTING.md index ccb48801e3..65e9fcc2af 100644 --- a/locales/it/CONTRIBUTING.md +++ b/locales/it/CONTRIBUTING.md @@ -13,9 +13,9 @@ # Contribuire a Roo Code -Roo Code è un progetto guidato dalla community e apprezziamo molto ogni contributo. Per semplificare la collaborazione, operiamo secondo un approccio [Issue-First](#approccio-issue-first), il che significa che tutte le [Pull Request (PR)](#inviare-una-pull-request) devono prima essere collegate a una Issue GitHub. Ti preghiamo di leggere attentamente questa guida. +Roo Code è un progetto guidato dalla comunità e apprezziamo profondamente ogni contributo. Per semplificare la collaborazione, operiamo su una base [Issue-First](#approccio-issue-first), il che significa che tutte le [Pull Request (PR)](#invio-di-una-pull-request) devono prima essere collegate a un'issue di GitHub. Si prega di leggere attentamente questa guida. -## Indice +## Sommario - [Prima di contribuire](#prima-di-contribuire) - [Trovare e pianificare il tuo contributo](#trovare-e-pianificare-il-tuo-contributo) @@ -26,113 +26,116 @@ Roo Code è un progetto guidato dalla community e apprezziamo molto ogni contrib ### 1. Codice di condotta -Tutti i collaboratori devono rispettare il nostro [Codice di condotta](./CODE_OF_CONDUCT.md). +Tutti i contributori devono attenersi al nostro [Codice di condotta](./CODE_OF_CONDUCT.md). ### 2. Roadmap del progetto -La nostra roadmap guida la direzione del progetto. Allinea i tuoi contributi con questi obiettivi chiave: +La nostra roadmap guida la direzione del progetto. Allinea i tuoi contributi a questi obiettivi chiave: ### Affidabilità prima di tutto -- Garantire che l'editing delle differenze e l'esecuzione dei comandi siano costantemente affidabili -- Ridurre i punti di attrito che scoraggiano l'uso regolare -- Garantire un funzionamento fluido in tutte le lingue e su tutte le piattaforme -- Ampliare il supporto robusto per una vasta gamma di provider e modelli di IA +- Assicurati che la modifica dei diff e l'esecuzione dei comandi siano costantemente affidabili. +- Riduci i punti di frizione che scoraggiano l'uso regolare. +- Garantisci un funzionamento fluido in tutte le localizzazioni e piattaforme. +- Espandi un supporto solido per un'ampia varietà di provider e modelli di intelligenza artificiale. ### Esperienza utente migliorata -- Semplificare l'interfaccia utente per maggiore chiarezza e intuitività -- Migliorare continuamente il flusso di lavoro per soddisfare le elevate aspettative degli sviluppatori +- Semplifica l'interfaccia utente/esperienza utente per chiarezza e intuitività. +- Migliora continuamente il flusso di lavoro per soddisfare le elevate aspettative che gli sviluppatori hanno per gli strumenti di uso quotidiano. -### Leadership nelle prestazioni degli agenti +### Leader nelle prestazioni degli agenti -- Stabilire parametri di valutazione completi (evals) per misurare la produttività nel mondo reale -- Rendere facile per tutti eseguire e interpretare queste valutazioni -- Fornire miglioramenti che dimostrino chiari aumenti nei punteggi di valutazione +- Stabilisci benchmark di valutazione completi (eval) per misurare la produttività nel mondo reale. +- Semplifica per tutti l'esecuzione e l'interpretazione di queste valutazioni. +- Fornisci miglioramenti che dimostrino chiari aumenti nei punteggi di valutazione. Menziona l'allineamento con queste aree nelle tue PR. -### 3. Unisciti alla community Roo Code +### 3. Unisciti alla community di Roo Code - **Principale:** Unisciti al nostro [Discord](https://discord.gg/roocode) e invia un DM a **Hannes Rudolph (`hrudolph`)**. -- **Alternativa:** I collaboratori esperti possono partecipare direttamente tramite [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1). +- **Alternativa:** I contributori esperti possono interagire direttamente tramite i [progetti GitHub](https://github.com/orgs/RooCodeInc/projects/1). ## Trovare e pianificare il tuo contributo ### Tipi di contributi -- **Correzione bug:** Risolvere problemi nel codice. -- **Nuove funzionalità:** Aggiungere nuove funzionalità. -- **Documentazione:** Migliorare guide e chiarezza. +- **Correzioni di bug:** risoluzione di problemi di codice. +- **Nuove funzionalità:** aggiunta di funzionalità. +- **Documentazione:** miglioramento di guide e chiarezza. ### Approccio Issue-First -Tutti i contributi devono iniziare con una Issue GitHub. +Tutti i contributi iniziano con un'issue di GitHub utilizzando i nostri modelli snelli. -- **Verificare le issue esistenti:** Cerca su [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). -- **Creare una issue:** Usa i template appropriati: - - **Bug:** Template "Bug Report". - - **Funzionalità:** Template "Detailed Feature Proposal". Approvazione richiesta prima di iniziare. -- **Reclamare issue:** Commenta e attendi l'assegnazione ufficiale. - -**Le PR senza issue approvate potrebbero essere chiuse.** +- **Controlla le issue esistenti**: cerca nelle [issue di GitHub](https://github.com/RooCodeInc/Roo-Code/issues). +- **Crea un'issue** utilizzando: + - **Miglioramenti:** modello "Richiesta di miglioramento" (linguaggio semplice incentrato sul vantaggio per l'utente). + - **Bug:** modello "Segnalazione di bug" (riproduzione minima + previsto vs effettivo + versione). +- **Vuoi lavorarci?** Commenta "Rivendico" sull'issue e invia un DM a **Hannes Rudolph (`hrudolph`)** su [Discord](https://discord.gg/roocode) per essere assegnato. L'assegnazione verrà confermata nel thread. +- **Le PR devono essere collegate all'issue.** Le PR non collegate possono essere chiuse. ### Decidere su cosa lavorare -- Controlla il [Progetto GitHub](https://github.com/orgs/RooCodeInc/projects/1) per "Good First Issues" non assegnate. +- Controlla il [progetto GitHub](https://github.com/orgs/RooCodeInc/projects/1) per le issue "Issue [Non assegnata]". - Per la documentazione, visita [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). -### Segnalare bug +### Segnalazione di bug -- Controlla prima i report esistenti. -- Crea nuovi report di bug usando il [template "Bug Report"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose). -- **Problemi di sicurezza:** Segnala privatamente tramite [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). +- Controlla prima le segnalazioni esistenti. +- Crea un nuovo bug utilizzando il [modello "Segnalazione di bug"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) con: + - Passaggi di riproduzione chiari e numerati + - Risultato previsto vs effettivo + - Versione di Roo Code (obbligatoria); provider/modello di intelligenza artificiale se pertinente +- **Problemi di sicurezza**: segnala in privato tramite [avvisi di sicurezza](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). ## Processo di sviluppo e invio ### Configurazione dello sviluppo -1. **Fork & Clona:** +1. **Esegui il fork e clona:** ``` -git clone https://github.com/TUO_USERNAME/Roo-Code.git +git clone https://github.com/TUO_NOME_UTENTE/Roo-Code.git ``` 2. **Installa le dipendenze:** ``` -npm run install:all +pnpm install ``` -3. **Debug:** Apri con VS Code (`F5`). +3. **Debug:** apri con VS Code (`F5`). -### Linee guida per scrivere codice +### Linee guida per la scrittura del codice -- Una PR focalizzata per funzionalità o correzione. -- Segui le best practice di ESLint e TypeScript. -- Scrivi commit chiari e descrittivi che fanno riferimento alle issue (es. `Fixes #123`). +- Una PR mirata per funzionalità o correzione. +- Segui le migliori pratiche di ESLint e TypeScript. +- Scrivi commit chiari e descrittivi che facciano riferimento alle issue (ad es. `Risolve #123`). - Fornisci test approfonditi (`npm test`). -- Fai rebase sul branch `main` più recente prima dell'invio. +- Esegui il rebase sul ramo `main` più recente prima dell'invio. -### Inviare una Pull Request +### Invio di una Pull Request -- Inizia come **PR in bozza** se cerchi feedback anticipato. -- Descrivi chiaramente le tue modifiche seguendo il Template di Pull Request. -- Fornisci screenshot/video per modifiche UI. +- Inizia come **bozza di PR** se cerchi un feedback iniziale. +- Descrivi chiaramente le tue modifiche seguendo il modello di Pull Request. +- Collega l'issue nella descrizione/titolo della PR (ad es. "Risolve #123"). +- Fornisci screenshot/video per le modifiche all'interfaccia utente. - Indica se sono necessari aggiornamenti alla documentazione. -### Politica di Pull Request +### Politica sulle Pull Request -- Deve fare riferimento a issue pre-approvate e assegnate. -- Le PR che non rispettano la politica potrebbero essere chiuse. -- Le PR dovrebbero superare i test CI, allinearsi con la roadmap e avere documentazione chiara. +- Deve fare riferimento a un'issue di GitHub assegnata. Per essere assegnato: commenta "Rivendico" sull'issue e invia un DM a **Hannes Rudolph (`hrudolph`)** su [Discord](https://discord.gg/roocode). L'assegnazione verrà confermata nel thread. +- Le PR non collegate possono essere chiuse. +- Le PR devono superare i test di integrazione continua, essere in linea con la roadmap e avere una documentazione chiara. ### Processo di revisione -- **Triage quotidiano:** Controlli rapidi da parte dei maintainer. -- **Revisione settimanale approfondita:** Valutazione completa. -- **Itera rapidamente** in base al feedback. +- **Triage giornaliero:** controlli rapidi da parte dei manutentori. +- **Revisione approfondita settimanale:** valutazione completa. +- **Itera prontamente** in base al feedback. ## Legale -Inviando una pull request, accetti che i tuoi contributi siano concessi in licenza sotto la Licenza Apache 2.0, in linea con la licenza di Roo Code. +Contribuendo, accetti che i tuoi contributi siano concessi in licenza con la licenza Apache 2.0, in coerenza con la licenza di Roo Code. diff --git a/locales/it/README.md b/locales/it/README.md index f0d6acfdad..bccf4a0731 100644 --- a/locales/it/README.md +++ b/locales/it/README.md @@ -1,129 +1,93 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • Italiano • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Unisciti alla Community di Roo Code

-

Connettiti con gli sviluppatori, contribuisci con le tue idee e rimani aggiornato con gli ultimi strumenti di codifica basati sull'IA.

- - Unisciti a Discord - Unisciti a Reddit - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ Ottieni aiuto velocemente → Unisciti a Discord • Preferisci l'asincrono? → Unisciti a r/RooCode

-Scarica su VS Marketplace -Richieste di Funzionalità -Valuta & Recensisci -Documentazione +# Roo Code + +> Il tuo team di sviluppo con IA, direttamente nel tuo editor + +
+ 🌐 Lingue disponibili + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Cosa può fare Roo Code per TE? + +- Generare codice da descrizioni in linguaggio naturale +- Adattarsi con le Modalità: Codice, Architetto, Chiedi, Debug e Modalità Personalizzate +- Refactoring e debug di codice esistente +- Scrivere e aggiornare la documentazione +- Rispondere a domande sulla tua codebase +- Automatizzare attività ripetitive +- Utilizzare server MCP + +## Modalità + +Roo Code si adatta al tuo modo di lavorare, non il contrario: + +- Modalità Codice: codifica quotidiana, modifiche e operazioni sui file +- Modalità Architetto: pianifica sistemi, specifiche e migrazioni +- Modalità Chiedi: risposte rapide, spiegazioni e documenti +- Modalità Debug: traccia problemi, aggiungi log, isola le cause principali +- Modalità Personalizzate: crea modalità specializzate per il tuo team o flusso di lavoro +- Roomote Control: Roomote Control ti permette di controllare da remoto le attività in esecuzione sulla tua istanza locale di VS Code. + +Scopri di più: [Usare le Modalità](https://docs.roocode.com/basic-usage/using-modes) • [Modalità personalizzate](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## Tutorial e video sulle funzionalità + +
+ +| | | | +| :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Installazione di Roo Code |
Configurazione dei profili |
Indicizzazione della codebase | +|
Modalità personalizzate |
Checkpoint |
Elenchi di cose da fare |
- -**Roo Code** è un **agente di codifica autonomo** basato sull'IA che vive nel tuo editor. Può: - -- Comunicare in linguaggio naturale -- Leggere e scrivere file direttamente nel tuo workspace -- Eseguire comandi del terminale -- Automatizzare le azioni del browser -- Integrarsi con qualsiasi API/modello compatibile con OpenAI o personalizzato -- Adattare la sua "personalità" e capacità attraverso **Modalità Personalizzate** - -Che tu stia cercando un partner di codifica flessibile, un architetto di sistema o ruoli specializzati come un ingegnere QA o un product manager, Roo Code può aiutarti a costruire software in modo più efficiente. - -Consulta il [CHANGELOG](../../CHANGELOG.md) per aggiornamenti dettagliati e correzioni. - ---- - -## 🎉 Roo Code 3.25 Rilasciato - -Roo Code 3.25 porta nuove funzionalità potenti e miglioramenti significativi per migliorare il tuo flusso di lavoro di sviluppo! - -- **Coda di messaggi** - Metti in coda più messaggi mentre Roo lavora, permettendoti di continuare a pianificare il tuo flusso di lavoro senza interruzioni. -- **Comandi slash personalizzati** - Crea comandi slash personalizzati per accesso rapido a prompt e flussi di lavoro utilizzati frequentemente con gestione completa dell'interfaccia utente. -- **Strumenti Gemini avanzati** - Nuove funzionalità di contesto URL e fondamenti di ricerca Google forniscono ai modelli Gemini informazioni web in tempo reale e capacità di ricerca avanzate. - ---- - -## Cosa Può Fare Roo Code? - -- 🚀 **Generare Codice** da descrizioni in linguaggio naturale -- 🔧 **Refactoring e Debug** del codice esistente -- 📝 **Scrivere e Aggiornare** documentazione -- 🤔 **Rispondere a Domande** sul tuo codebase -- 🔄 **Automatizzare** attività ripetitive -- 🏗️ **Creare** nuovi file e progetti - -## Avvio Rapido - -1. [Installa Roo Code](https://docs.roocode.com/getting-started/installing) -2. [Connetti il tuo Provider IA](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [Prova la tua Prima Attività](https://docs.roocode.com/getting-started/your-first-task) - -## Funzionalità Principali - -### Modalità Multiple - -Roo Code si adatta alle tue esigenze con [modalità](https://docs.roocode.com/basic-usage/using-modes) specializzate: - -- **Modalità Codice:** Per attività di codifica generale -- **Modalità Architetto:** Per pianificazione e leadership tecnica -- **Modalità Domanda:** Per rispondere a domande e fornire informazioni -- **Modalità Debug:** Per diagnosi sistematica dei problemi -- **[Modalità Personalizzate](https://docs.roocode.com/advanced-usage/custom-modes):** Crea personaggi specializzati illimitati per audit di sicurezza, ottimizzazione delle prestazioni, documentazione o qualsiasi altra attività - -### Strumenti Intelligenti - -Roo Code viene fornito con potenti [strumenti](https://docs.roocode.com/basic-usage/how-tools-work) che possono: - -- Leggere e scrivere file nel tuo progetto -- Eseguire comandi nel tuo terminale VS Code -- Controllare un browser web -- Utilizzare strumenti esterni tramite [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) - -MCP estende le capacità di Roo Code permettendoti di aggiungere strumenti personalizzati illimitati. Integra con API esterne, connettiti a database o crea strumenti di sviluppo specializzati - MCP fornisce il framework per espandere la funzionalità di Roo Code per soddisfare le tue esigenze specifiche. - -### Personalizzazione - -Fai funzionare Roo Code a modo tuo con: - -- [Istruzioni Personalizzate](https://docs.roocode.com/advanced-usage/custom-instructions) per comportamenti personalizzati -- [Modalità Personalizzate](https://docs.roocode.com/advanced-usage/custom-modes) per attività specializzate -- [Modelli Locali](https://docs.roocode.com/advanced-usage/local-models) per uso offline -- [Impostazioni di Auto-Approvazione](https://docs.roocode.com/advanced-usage/auto-approving-actions) per flussi di lavoro più veloci +

+Altri video tutorial e funzionalità rapide... +

## Risorse -### Documentazione - -- [Guida all'Uso di Base](https://docs.roocode.com/basic-usage/the-chat-interface) -- [Funzionalità Avanzate](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [Domande Frequenti](https://docs.roocode.com/faq) - -### Comunità - -- **Discord:** [Unisciti al nostro server Discord](https://discord.gg/roocode) per aiuto in tempo reale e discussioni -- **Reddit:** [Visita il nostro subreddit](https://www.reddit.com/r/RooCode) per condividere esperienze e consigli -- **GitHub:** [Segnala problemi](https://github.com/RooCodeInc/Roo-Code/issues) o [richiedi funzionalità](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[Documentazione](https://docs.roocode.com):** La guida ufficiale per installare, configurare e padroneggiare Roo Code. +- **[Canale YouTube](https://youtube.com/@roocodeyt?feature=shared):** Guarda i tutorial e le funzionalità in azione. +- **[Server Discord](https://discord.gg/roocode):** Unisciti alla community per aiuto e discussioni in tempo reale. +- **[Comunità Reddit](https://www.reddit.com/r/RooCode):** Condividi le tue esperienze e guarda cosa stanno costruendo gli altri. +- **[Problemi GitHub](https://github.com/RooCodeInc/Roo-Code/issues):** Segnala bug e tieni traccia dello sviluppo. +- **[Richieste di funzionalità](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** Hai un'idea? Condividila con gli sviluppatori. --- -## Configurazione e Sviluppo Locale +## Configurazione e sviluppo locale 1. **Clona** il repository: @@ -134,45 +98,72 @@ git clone https://github.com/RooCodeInc/Roo-Code.git 2. **Installa le dipendenze**: ```sh -npm run install:all +pnpm install ``` -3. **Avvia la webview (app Vite/React con HMR)**: +3. **Esegui l'estensione**: + +Ci sono diversi modi per eseguire l'estensione Roo Code: + +### Modalità di sviluppo (F5) + +Per lo sviluppo attivo, usa il debug integrato di VSCode: + +Premi `F5` (o vai su **Esegui** → **Avvia debug**) in VSCode. Si aprirà una nuova finestra di VSCode con l'estensione Roo Code in esecuzione. + +- Le modifiche alla webview appariranno immediatamente. +- Anche le modifiche all'estensione principale verranno ricaricate automaticamente a caldo. + +### Installazione automatizzata di VSIX + +Per compilare e installare l'estensione come pacchetto VSIX direttamente in VSCode: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **Debug**: - Premi `F5` (o **Run** → **Start Debugging**) in VSCode per aprire una nuova sessione con Roo Code caricato. +Questo comando: -Le modifiche alla webview appariranno immediatamente. Le modifiche all'estensione principale richiederanno un riavvio dell'host dell'estensione. +- Chiederà quale comando dell'editor usare (code/cursor/code-insiders) - il default è 'code' +- Disinstallerà qualsiasi versione esistente dell'estensione. +- Compilerà l'ultimo pacchetto VSIX. +- Installerà il VSIX appena compilato. +- Ti chiederà di riavviare VS Code affinché le modifiche abbiano effetto. -In alternativa puoi creare un file .vsix e installarlo direttamente in VSCode: +Opzioni: -```sh -npm run build -``` +- `-y`: Salta tutte le richieste di conferma e usa i valori predefiniti +- `--editor=`: Specifica il comando dell'editor (ad es. `--editor=cursor` o `--editor=code-insiders`) -Un file `.vsix` apparirà nella directory `bin/` che può essere installato con: +### Installazione manuale di VSIX -```sh -code --install-extension bin/roo-cline-.vsix -``` +Se preferisci installare manualmente il pacchetto VSIX: -Utilizziamo [changesets](https://github.com/changesets/changesets) per la gestione delle versioni e la pubblicazione. Controlla il nostro `CHANGELOG.md` per le note di rilascio. +1. Per prima cosa, compila il pacchetto VSIX: + ```sh + pnpm vsix + ``` +2. Un file `.vsix` verrà generato nella directory `bin/` (ad es. `bin/roo-cline-.vsix`). +3. Installalo manualmente usando la CLI di VSCode: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` --- -## Disclaimer +Usiamo [changesets](https://github.com/changesets/changesets) per il versioning e la pubblicazione. Controlla il nostro `CHANGELOG.md` per le note di rilascio. -**Si prega di notare** che Roo Code, Inc **non** fa alcuna dichiarazione o garanzia riguardo a qualsiasi codice, modello o altro strumento fornito o reso disponibile in relazione a Roo Code, qualsiasi strumento di terze parti associato o qualsiasi output risultante. Ti assumi **tutti i rischi** associati all'uso di tali strumenti o output; tali strumenti sono forniti su base **"COSÌ COM'È"** e **"COME DISPONIBILE"**. Tali rischi possono includere, senza limitazione, violazione della proprietà intellettuale, vulnerabilità o attacchi informatici, pregiudizi, imprecisioni, errori, difetti, virus, tempi di inattività, perdita o danneggiamento della proprietà e/o lesioni personali. Sei l'unico responsabile del tuo utilizzo di tali strumenti o output (inclusi, senza limitazione, la legalità, l'appropriatezza e i risultati degli stessi). +--- + +## Dichiarazione di non responsabilità + +**Si prega di notare** che Roo Code, Inc. **non** rilascia alcuna dichiarazione o garanzia in merito a qualsiasi codice, modello o altro strumento fornito o reso disponibile in connessione con Roo Code, qualsiasi strumento di terze parti associato o qualsiasi output risultante. L'utente si assume **tutti i rischi** associati all'uso di tali strumenti o output; tali strumenti sono forniti **"COSÌ COME SONO"** e **"COME DISPONIBILI"**. Tali rischi possono includere, a titolo esemplificativo, violazione della proprietà intellettuale, vulnerabilità o attacchi informatici, parzialità, imprecisioni, errori, difetti, virus, tempi di inattività, perdita o danneggiamento di proprietà e/o lesioni personali. L'utente è l'unico responsabile dell'uso di tali strumenti o output (inclusi, a titolo esemplificativo, la loro legalità, adeguatezza e risultati). --- ## Contribuire -Amiamo i contributi della community! Inizia leggendo il nostro [CONTRIBUTING.md](CONTRIBUTING.md). +Adoriamo i contributi della community! Inizia leggendo il nostro [CONTRIBUTING.md](CONTRIBUTING.md). --- @@ -182,54 +173,14 @@ Grazie a tutti i nostri contributori che hanno aiutato a migliorare Roo Code! -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) ## Licenza -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- -**Goditi Roo Code!** Che tu lo tenga al guinzaglio corto o lo lasci vagare autonomamente, non vediamo l'ora di vedere cosa costruirai. Se hai domande o idee per funzionalità, passa dalla nostra [community di Reddit](https://www.reddit.com/r/RooCode/) o [Discord](https://discord.gg/roocode). Buona programmazione! +**Buon divertimento con Roo Code!** Che tu lo tenga a guinzaglio corto o lo lasci libero di agire in autonomia, non vediamo l'ora di vedere cosa costruirai. Se hai domande o idee per nuove funzionalità, passa dalla nostra [comunità Reddit](https://www.reddit.com/r/RooCode/) o da [Discord](https://discord.gg/roocode). Buona programmazione! diff --git a/locales/ja/CONTRIBUTING.md b/locales/ja/CONTRIBUTING.md index a1fb5db53b..168c7b4d16 100644 --- a/locales/ja/CONTRIBUTING.md +++ b/locales/ja/CONTRIBUTING.md @@ -11,88 +11,90 @@
-# Roo Code への貢献 +# Roo Codeへの貢献 -Roo Code はコミュニティ主導のプロジェクトであり、すべての貢献を大切にしています。協力をスムーズにするため、[Issue-First](#issue-first-アプローチ)方式を採用しています。これはすべての[Pull Request (PR)](#pull-request-の提出)がまずGitHub Issueに紐付けられる必要があることを意味します。このガイドをよく読んでください。 +Roo Codeはコミュニティ主導のプロジェクトであり、すべての貢献を深く評価しています。共同作業を円滑にするため、私たちは[課題第一のアプローチ](#課題第一のアプローチ)で運営しています。つまり、すべての[プルリクエスト(PR)](#プルリクエストの提出)は、まずGitHubの課題にリンクされている必要があります。このガイドを注意深く確認してください。 ## 目次 - [貢献する前に](#貢献する前に) -- [貢献内容の発見と計画](#貢献内容の発見と計画) +- [貢献内容の検索と計画](#貢献内容の検索と計画) - [開発と提出のプロセス](#開発と提出のプロセス) -- [法的事項](#法的事項) +- [法務](#法務) ## 貢献する前に ### 1. 行動規範 -すべてのコントリビューターは[行動規範](./CODE_OF_CONDUCT.md)を守る必要があります。 +すべての貢献者は、私たちの[行動規範](./CODE_OF_CONDUCT.md)に従う必要があります。 -### 2. プロジェクトロードマップ +### 2. プロジェクトのロードマップ -ロードマップはプロジェクトの方向性を示します。貢献をこれらの主要目標に沿わせてください: +私たちのロードマップは、プロジェクトの方向性を示しています。あなたの貢献をこれらの主要な目標に合わせてください。 -### 信頼性優先 +### 信頼性第一 -- diff編集とコマンド実行が常に信頼できることを保証 -- 定期的な使用を妨げる摩擦ポイントの削減 -- すべての言語環境とプラットフォームでのスムーズな動作を保証 -- 様々なAIプロバイダーとモデルへの堅牢なサポートを拡大 +- 差分編集とコマンド実行が一貫して信頼できることを確認します。 +- 定期的な使用を妨げる摩擦点を減らします。 +- すべてのロケールとプラットフォームでスムーズな操作を保証します。 +- さまざまなAIプロバイダーとモデルに対する堅牢なサポートを拡大します。 -### ユーザー体験の強化 +### ユーザーエクスペリエンスの向上 -- 明確さと直感性のためのUI/UXの合理化 -- 開発者が日常的に使用するツールに求める高い期待に応えるためのワークフローの継続的改善 +- 明確さと直感性のためにUI/UXを合理化します。 +- 開発者が日常的に使用するツールに期待する高い期待に応えるために、ワークフローを継続的に改善します。 -### エージェントパフォーマンスの先導 +### エージェントパフォーマンスのリード -- 実際の生産性を測定する包括的な評価基準(evals)の確立 -- 誰もが簡単にこれらの評価を実行して解釈できるようにする -- 評価スコアの明確な向上を示す改善を提供 +- 現実世界の生産性を測定するための包括的な評価ベンチマーク(evals)を確立します。 +- 誰もがこれらの評価を簡単に実行および解釈できるようにします。 +- 評価スコアの明確な増加を示す改善を出荷します。 -PRでこれらの領域との関連性に言及してください。 +PRでこれらの分野との連携について言及してください。 -### 3. Roo Code コミュニティに参加する +### 3. Roo Codeコミュニティに参加する -- **主な方法:** [Discord](https://discord.gg/roocode)に参加し、**Hannes Rudolph (`hrudolph`)**にDMを送る。 -- **代替手段:** 経験豊富なコントリビューターは[GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1)を通じて直接参加できます。 +- **プライマリ:** [Discord](https://discord.gg/roocode)に参加し、**Hannes Rudolph (`hrudolph`)**にDMしてください。 +- **代替:** 経験豊富な貢献者は、[GitHubプロジェクト](https://github.com/orgs/RooCodeInc/projects/1)を介して直接関与できます。 -## 貢献内容の発見と計画 +## 貢献内容の検索と計画 ### 貢献の種類 -- **バグ修正:** コードの問題を解決。 -- **新機能:** 機能を追加。 -- **ドキュメント:** ガイドを改善し明確にする。 +- **バグ修正:** コードの問題への対処。 +- **新機能:** 機能の追加。 +- **ドキュメント:** ガイドと明確さの向上。 -### Issue-First アプローチ +### 課題第一のアプローチ -すべての貢献はGitHub Issueから始めてください。 +すべての貢献は、私たちのスキニーテンプレートを使用してGitHubの課題から始まります。 -- **既存Issueの確認:** [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues)を検索。 -- **Issueの作成:** 適切なテンプレートを使用: - - **バグ:** 「Bug Report」テンプレート。 - - **機能:** 「Detailed Feature Proposal」テンプレート。開始前に承認が必要。 -- **Issue担当表明:** コメントし、正式な割り当てを待つ。 +- **既存の課題を確認する**:[GitHubの課題](https://github.com/RooCodeInc/Roo-Code/issues)で検索します。 +- **課題を作成する**: + - **機能強化:** 「機能強化リクエスト」テンプレート(ユーザーの利益に焦点を当てた平易な言葉)。 + - **バグ:** 「バグレポート」テンプレート(最小限の再現+期待値と実際値+バージョン)。 +- **それに取り組みたいですか?** 課題に「Claiming」とコメントし、[Discord](https://discord.gg/roocode)で**Hannes Rudolph(`hrudolph`)**にDMして割り当てを受けてください。割り当てはスレッドで確認されます。 +- **PRは課題にリンクする必要があります。** リンクされていないPRはクローズされる場合があります。 -**承認されたIssueに紐付けられていないPRは閉じられる可能性があります。** +### 何に取り組むかを決める -### 何に取り組むか決める - -- 未割り当ての「Good First Issues」を[GitHub Project](https://github.com/orgs/RooCodeInc/projects/1)でチェック。 -- ドキュメント関連は[Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs)を参照。 +- 「課題[未割り当て]」の課題については、[GitHubプロジェクト](https://github.com/orgs/RooCodeInc/projects/1)を確認してください。 +- ドキュメントについては、[Roo Codeドキュメント](https://github.com/RooCodeInc/Roo-Code-Docs)をご覧ください。 ### バグの報告 -- まず既存の報告がないか確認。 -- 新しいバグは[「Bug Report」テンプレート](https://github.com/RooCodeInc/Roo-Code/issues/new/choose)で報告。 -- **セキュリティ問題:** [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new)を通じて非公開で報告。 +- 最初に既存のレポートを確認してください。 +- 次の情報を含む[「バグレポート」テンプレート](https://github.com/RooCodeInc/Roo-Code/issues/new/choose)を使用して新しいバグを作成します。 + - 明確で番号付きの再現手順 + - 期待される結果と実際の結果 + - Roo Codeのバージョン(必須)。関連する場合はAPIプロバイダー/モデル +- **セキュリティの問題**:[セキュリティアドバイザリ](https://github.com/RooCodeInc/Roo-Code/security/advisories/new)を介して非公開で報告してください。 ## 開発と提出のプロセス -### 開発環境のセットアップ +### 開発のセットアップ -1. **Fork & Clone:** +1. **フォークとクローン:** ``` git clone https://github.com/あなたのユーザー名/Roo-Code.git @@ -101,38 +103,39 @@ git clone https://github.com/あなたのユーザー名/Roo-Code.git 2. **依存関係のインストール:** ``` -npm run install:all +pnpm install ``` -3. **デバッグ:** VS Codeで`F5`を押して開く。 +3. **デバッグ:** VS Codeで開きます(`F5`)。 -### コーディングガイドライン +### コーディングのガイドライン -- 1つの機能または修正ごとに1つのPR。 -- ESLintとTypeScriptのベストプラクティスに従う。 -- 関連Issueを参照する明確なコミットメッセージを書く(例:`Fixes #123`)。 -- 十分なテストを提供(`npm test`)。 -- 提出前に最新の`main`ブランチにリベース。 +- 機能または修正ごとに1つの焦点を絞ったPR。 +- ESLintとTypeScriptのベストプラクティスに従ってください。 +- 課題を参照する明確で説明的なコミットを作成します(例:`Fixes #123`)。 +- 徹底的なテストを提供します(`npm test`)。 +- 提出前に最新の`main`ブランチにリベースします。 -### Pull Request の提出 +### プルリクエストの提出 -- 早期フィードバックを求める場合は**ドラフトPR**から始める。 -- Pull Requestテンプレートに従って変更を明確に説明。 -- UI変更のスクリーンショット/動画を提供。 -- ドキュメント更新が必要かどうかを示す。 +- 早期のフィードバックを求める場合は、**ドラフトPR**として開始します。 +- プルリクエストテンプレートに従って、変更内容を明確に説明します。 +- PRの説明/タイトルに課題をリンクします(例:「Fixes #123」)。 +- UIの変更については、スクリーンショット/ビデオを提供します。 +- ドキュメントの更新が必要かどうかを示します。 -### Pull Request ポリシー +### プルリクエストポリシー -- 承認・割り当て済みIssueを参照する必要がある。 -- ポリシーに従わないPRは閉じられる可能性がある。 -- PRはCIテストに合格し、ロードマップに沿い、明確なドキュメントを持つべき。 +- 割り当てられたGitHubの課題を参照する必要があります。割り当てを受けるには、課題に「Claiming」とコメントし、[Discord](https://discord.gg/roocode)で**Hannes Rudolph(`hrudolph`)**にDMしてください。割り当てはスレッドで確認されます。 +- リンクされていないPRはクローズされる場合があります。 +- PRはCIテストに合格し、ロードマップに沿っており、明確なドキュメントが必要です。 ### レビュープロセス -- **日次トリアージ:** メンテナーによる迅速なチェック。 -- **週次詳細レビュー:** 包括的な評価。 -- **フィードバックに基づいて迅速に改善**。 +- **毎日のトリアージ:** メンテナーによる簡単なチェック。 +- **毎週の詳細なレビュー:** 包括的な評価。 +- フィードバックに基づいて**迅速に反復**します。 -## 法的事項 +## 法務 -Pull Requestを提出することで、あなたの貢献がRoo Codeと同じApache 2.0ライセンスの下で提供されることに同意したことになります。 +貢献することにより、あなたの貢献がRoo Codeのライセンスと一致するApache 2.0ライセンスの下でライセンスされることに同意したことになります。 diff --git a/locales/ja/README.md b/locales/ja/README.md index 5b56bf0dfb..e1a4f6e0e4 100644 --- a/locales/ja/README.md +++ b/locales/ja/README.md @@ -1,235 +1,186 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • 日本語 - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Roo Codeコミュニティに参加しよう

-

開発者とつながり、アイデアを提供し、最新のAIパワードコーディングツールで先を行きましょう。

- - Discordに参加 - Redditに参加 - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ すぐに助けを得る → Discordに参加 • 非同期を好む? → r/RooCodeに参加

-VS Marketplaceでダウンロード -機能リクエスト -評価とレビュー -ドキュメンテーション +# Roo Code + +> あなたのエディタの中に、AIで強化された開発チームを + +
+ 🌐 利用可能な言語 + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Roo Codeがあなたのためにできること + +- 自然言語の記述からコードを生成 +- モードで適応:コード、アーキテクト、質問、デバッグ、カスタムモード +- 既存のコードのリファクタリングとデバッグ +- ドキュメントの作成と更新 +- コードベースに関する質問への回答 +- 反復的なタスクの自動化 +- MCPサーバーの活用 + +## モード + +Roo Codeは、あなたの働き方に合わせるように適応します。 + +- コードモード:日常的なコーディング、編集、ファイル操作 +- アーキテクトモード:システム、仕様、移行の計画 +- 質問モード:迅速な回答、説明、ドキュメント +- デバッグモード:問題の追跡、ログの追加、根本原因の特定 +- カスタムモード:チームやワークフローに特化したモードの構築 +- Roomote Control: Roomote Control はローカルの VS Code で実行中のタスクをリモート操作できます。 + +詳しくは: [モードの使い方](https://docs.roocode.com/basic-usage/using-modes) • [カスタムモード](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## チュートリアルと機能のビデオ + +
+ +| | | | +| :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Roo Codeのインストール |
プロファイルの設定 |
コードベースのインデックス作成 | +|
カスタムモード |
チェックポイント |
ToDoリスト |
- -**Roo Code**はエディター内に存在するAIパワードの**自律型コーディングエージェント**です。以下のことができます: - -- 自然言語でコミュニケーション -- ワークスペース内のファイルを直接読み書き -- ターミナルコマンドを実行 -- ブラウザアクションを自動化 -- OpenAI互換または独自のAPI/モデルと統合 -- **カスタムモード**を通じて「パーソナリティ」と機能を調整 - -柔軟なコーディングパートナー、システムアーキテクト、QAエンジニアやプロダクトマネージャーなどの専門的な役割を求めているかどうかにかかわらず、Roo Codeはより効率的にソフトウェアを構築するのを手助けします。 - -詳細な更新と修正については[CHANGELOG](../../CHANGELOG.md)をご覧ください。 - ---- - -## 🎉 Roo Code 3.25 リリース - -Roo Code 3.25は、開発ワークフローを向上させる強力な新機能と重要な改善をもたらします! - -- **ブラウザセッション管理** - 複数のブラウザセッションを同時に管理し、異なるタスクやテスト環境を分離できます。 -- **プロンプトキャッシング** - 頻繁に使用されるプロンプトをキャッシュして、応答時間を大幅に短縮し、API使用量を削減します。 -- **コンピューター使用機能** - AIがデスクトップアプリケーションと直接対話し、スクリーンショットを撮影し、クリックやタイピングを実行できます。 - ---- - -## Roo Codeでできること - -- 🚀 自然言語の説明から**コードを生成** -- 🔧 既存のコードを**リファクタリング&デバッグ** -- 📝 ドキュメントを**作成&更新** -- 🤔 コードベースについて**質問に回答** -- 🔄 繰り返しタスクを**自動化** -- 🏗️ 新しいファイルとプロジェクトを**作成** - -## クイックスタート - -1. [Roo Codeをインストール](https://docs.roocode.com/getting-started/installing) -2. [AIプロバイダーを接続](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [最初のタスクを試す](https://docs.roocode.com/getting-started/your-first-task) - -## 主な機能 - -### 複数のモード - -Roo Codeは専門化された[モード](https://docs.roocode.com/basic-usage/using-modes)であなたのニーズに適応します: - -- **コードモード:** 汎用的なコーディングタスク向け -- **アーキテクトモード:** 計画と技術的リーダーシップ向け -- **質問モード:** 質問への回答と情報提供向け -- **デバッグモード:** 体系的な問題診断向け -- **[カスタムモード](https://docs.roocode.com/advanced-usage/custom-modes):** セキュリティ監査、パフォーマンス最適化、ドキュメント作成、またはその他のタスクのための無制限の専門ペルソナを作成 - -### スマートツール - -Roo Codeには強力な[ツール](https://docs.roocode.com/basic-usage/how-tools-work)が付属しています: - -- プロジェクト内のファイルの読み書き -- VS Codeターミナルでコマンドを実行 -- Webブラウザを制御 -- [MCP(モデルコンテキストプロトコル)](https://docs.roocode.com/advanced-usage/mcp)を介して外部ツールを使用 - -MCPは無制限のカスタムツールを追加できるようにしてRoo Codeの機能を拡張します。外部APIとの統合、データベースへの接続、または特殊な開発ツールの作成 - MCPはRoo Codeの機能を拡張してあなたの特定のニーズを満たすためのフレームワークを提供します。 - -### カスタマイズ - -Roo Codeをあなた好みに動作させる方法: - -- パーソナライズされた動作のための[カスタム指示](https://docs.roocode.com/advanced-usage/custom-instructions) -- 専門タスク用の[カスタムモード](https://docs.roocode.com/advanced-usage/custom-modes) -- オフライン使用のための[ローカルモデル](https://docs.roocode.com/advanced-usage/local-models) -- より高速なワークフローのための[自動承認設定](https://docs.roocode.com/advanced-usage/auto-approving-actions) +

+その他のクイックチュートリアルと機能のビデオ... +

## リソース -### ドキュメンテーション - -- [基本的な使用ガイド](https://docs.roocode.com/basic-usage/the-chat-interface) -- [高度な機能](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [よくある質問](https://docs.roocode.com/faq) - -### コミュニティ - -- **Discord:** リアルタイムのヘルプとディスカッションについては[Discord サーバーに参加](https://discord.gg/roocode) -- **Reddit:** 経験とヒントを共有するには[サブレディット](https://www.reddit.com/r/RooCode)にアクセス -- **GitHub:** [問題](https://github.com/RooCodeInc/Roo-Code/issues)を報告したり[機能](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop)をリクエスト +- **[ドキュメント](https://docs.roocode.com):** Roo Codeのインストール、設定、習熟のための公式ガイド。 +- **[YouTubeチャンネル](https://youtube.com/@roocodeyt?feature=shared):** チュートリアルを見て、実際の機能を確認できます。 +- **[Discordサーバー](https://discord.gg/roocode):** コミュニティに参加して、リアルタイムのヘルプやディスカッションに参加できます。 +- **[Redditコミュニティ](https://www.reddit.com/r/RooCode):** あなたの経験を共有し、他の人が何を構築しているかを見ることができます。 +- **[GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues):** バグを報告し、開発を追跡します。 +- **[機能リクエスト](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** アイデアがありますか?開発者と共有してください。 --- ## ローカルセットアップと開発 -1. レポジトリを**クローン**: +1. **リポジトリをクローンする**: ```sh git clone https://github.com/RooCodeInc/Roo-Code.git ``` -2. **依存関係をインストール**: +2. **依存関係をインストールする**: ```sh -npm run install:all +pnpm install ``` -3. **ウェブビュー(Vite/ReactアプリとHMR)を起動**: +3. **拡張機能を実行する**: + +Roo Code拡張機能を実行するにはいくつかの方法があります: + +### 開発モード (F5) + +アクティブな開発には、VSCodeの内蔵デバッグ機能を使用します: + +VSCodeで`F5`キーを押すか、**実行** → **デバッグの開始**に移動します。これにより、Roo Code拡張機能が実行されている新しいVSCodeウィンドウが開きます。 + +- ウェブビューへの変更はすぐに表示されます。 +- コア拡張機能への変更も自動的にホットリロードされます。 + +### 自動VSIXインストール + +拡張機能をVSIXパッケージとしてビルドし、VSCodeに直接インストールするには: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **デバッグ**: - VSCodeで`F5`(または**実行**→**デバッグの開始**)を押すと、Roo Codeがロードされた新しいセッションが開きます。 +このコマンドは次のことを行います: -ウェブビューへの変更はすぐに表示されます。コア拡張機能への変更には拡張機能ホストの再起動が必要です。 +- どのエディタコマンドを使用するかを尋ねます(code/cursor/code-insiders) - デフォルトは「code」です +- 拡張機能の既存のバージョンをアンインストールします。 +- 最新のVSIXパッケージをビルドします。 +- 新しくビルドされたVSIXをインストールします。 +- 変更を有効にするためにVS Codeを再起動するように求めます。 -あるいは、.vsixファイルをビルドしてVSCodeに直接インストールすることもできます: +オプション: -```sh -npm run build -``` +- `-y`: すべての確認プロンプトをスキップし、デフォルト値を使用します +- `--editor=`: エディタコマンドを指定します(例:`--editor=cursor`または`--editor=code-insiders`) -`bin/`ディレクトリに`.vsix`ファイルが作成され、次のコマンドでインストールできます: +### 手動VSIXインストール -```sh -code --install-extension bin/roo-cline-.vsix -``` +VSIXパッケージを手動でインストールしたい場合: -バージョン管理と公開には[changesets](https://github.com/changesets/changesets)を使用しています。リリースノートについては`CHANGELOG.md`をご確認ください。 +1. まず、VSIXパッケージをビルドします: + ```sh + pnpm vsix + ``` +2. `.vsix`ファイルが`bin/`ディレクトリに生成されます(例:`bin/roo-cline-.vsix`)。 +3. VSCode CLIを使用して手動でインストールします: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- + +バージョニングと公開には[changesets](https://github.com/changesets/changesets)を使用しています。リリースノートについては`CHANGELOG.md`をご覧ください。 --- ## 免責事項 -**ご注意ください**:Roo Code, Incは、Roo Codeに関連して提供または利用可能になるコード、モデル、またはその他のツール、関連するサードパーティツール、または結果的な出力に関して、**いかなる表明や保証も行いません**。そのようなツールや出力の使用に関連するすべてのリスクはお客様が負うものとします。そのようなツールは**「現状のまま」**および**「利用可能な状態」**で提供されます。そのようなリスクには、知的財産権の侵害、サイバー脆弱性や攻撃、バイアス、不正確さ、エラー、欠陥、ウイルス、ダウンタイム、財産の損失または損害、および/または人身傷害が含まれますが、これらに限定されません。お客様は、そのようなツールまたは出力の使用について(適法性、適切性、および結果を含むがこれらに限定されない)単独で責任を負います。 +**ご注意ください**:Roo Code, Inc.は、Roo Code、関連するサードパーティのツール、またはそれらから生じる出力に関連して提供または利用可能にされたコード、モデル、またはその他のツールに関して、いかなる表明も保証も行いません。お客様は、そのようなツール或いは出力の使用に関連する**すべてのリスク**を負うものとします。そのようなツールは**「現状のまま」**および**「利用可能な限り」**のベースで提供されます。そのようなリスクには、知的財産権の侵害、サイバー脆弱性または攻撃、バイアス、不正確さ、エラー、欠陥、ウイルス、ダウンタイム、財産の損失または損害、および/または人身傷害が含まれますが、これらに限定されません。お客様は、そのようなツールまたは出力の使用(合法性、適切性、およびその結果を含むがこれらに限定されない)について単独で責任を負います。 --- ## 貢献 -私たちはコミュニティの貢献を歓迎します![CONTRIBUTING.md](CONTRIBUTING.md)を読んで始めましょう。 +私たちはコミュニティからの貢献を歓迎します![CONTRIBUTING.md](CONTRIBUTING.md)を読んで始めましょう。 --- ## 貢献者 -Roo Codeの改善に貢献してくれたすべての貢献者に感謝します! +Roo Codeをより良くするために協力してくれたすべての貢献者に感謝します! -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) ## ライセンス -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- -**Roo Codeをお楽しみください!** 短いリードで保持するか、自律的に動き回らせるかにかかわらず、あなたが何を構築するのか楽しみにしています。質問や機能のアイデアがある場合は、[Redditコミュニティ](https://www.reddit.com/r/RooCode/)や[Discord](https://discord.gg/roocode)にお立ち寄りください。ハッピーコーディング! +**Roo Codeをお楽しみください!** 手綱を短く持って使うか、自律的に歩き回らせるかにかかわらず、あなたが何を構築するか楽しみにしています。質問や機能のアイデアがあれば、私たちの[Redditコミュニティ](https://www.reddit.com/r/RooCode/)または[Discord](https://discord.gg/roocode)にお立ち寄りください。ハッピーコーディング! diff --git a/locales/ko/CONTRIBUTING.md b/locales/ko/CONTRIBUTING.md index 6b3b8c293c..8ef981d7eb 100644 --- a/locales/ko/CONTRIBUTING.md +++ b/locales/ko/CONTRIBUTING.md @@ -11,18 +11,18 @@
-# Roo Code 기여 가이드 +# Roo Code에 기여하기 -Roo Code는 커뮤니티 주도의 프로젝트이며, 모든 기여를 소중하게 생각합니다. 협업을 간소화하기 위해 [Issue-First](#issue-first-접근법) 원칙을 적용하고 있으며, 이는 모든 [Pull Request (PR)](#pull-request-제출)가 먼저 GitHub Issue와 연결되어야 함을 의미합니다. 이 가이드를 주의 깊게 검토해 주세요. +Roo Code는 커뮤니티 기반 프로젝트이며 모든 기여를 소중하게 생각합니다. 협업을 간소화하기 위해 [이슈 우선 접근 방식](#이슈-우선-접근-방식)으로 운영됩니다. 즉, 모든 [풀 리퀘스트(PR)](#풀-리퀘스트-제출)는 먼저 GitHub 이슈에 연결되어야 합니다. 이 가이드를 주의 깊게 검토해 주세요. ## 목차 -- [기여 전 준비](#기여-전-준비) -- [기여 내용 찾기 및 계획 세우기](#기여-내용-찾기-및-계획-세우기) -- [개발 및 제출 프로세스](#개발-및-제출-프로세스) -- [법적 안내](#법적-안내) +- [기여하기 전에](#기여하기-전에) +- [기여 찾기 및 계획하기](#기여-찾기-및-계획하기) +- [개발 및 제출 절차](#개발-및-제출-절차) +- [법률](#법률) -## 기여 전 준비 +## 기여하기 전에 ### 1. 행동 강령 @@ -30,109 +30,112 @@ Roo Code는 커뮤니티 주도의 프로젝트이며, 모든 기여를 소중 ### 2. 프로젝트 로드맵 -로드맵은 프로젝트 방향을 안내합니다. 기여를 다음 핵심 목표에 맞추세요: +로드맵은 프로젝트의 방향을 안내합니다. 기여를 다음 주요 목표에 맞게 조정하세요. -### 신뢰성 우선 +### 안정성 우선 -- diff 편집과 명령 실행의 일관된 신뢰성 보장 -- 정기적 사용을 방해하는 마찰점 감소 -- 모든 언어 환경과 플랫폼에서의 원활한 작동 보장 -- 다양한 AI 제공업체 및 모델에 대한 강력한 지원 확대 +- diff 편집 및 명령어 실행이 일관되게 안정적인지 확인합니다. +- 정기적인 사용을 방해하는 마찰 지점을 줄입니다. +- 모든 로케일 및 플랫폼에서 원활한 작동을 보장합니다. +- 다양한 AI 제공업체 및 모델에 대한 강력한 지원을 확대합니다. ### 향상된 사용자 경험 -- 명확성과 직관성을 위한 UI/UX 간소화 -- 개발자들이 일상적으로 사용하는 도구에 기대하는 높은 기준을 충족하기 위한 지속적인 워크플로우 개선 +- 명확하고 직관적인 UI/UX를 위해 간소화합니다. +- 개발자가 매일 사용하는 도구에 대해 기대하는 높은 수준을 충족하도록 워크플로를 지속적으로 개선합니다. ### 에이전트 성능 선도 -- 실제 생산성을 측정하는 포괄적인 평가 기준(evals) 수립 -- 누구나 이러한 평가를 쉽게 실행하고 해석할 수 있도록 지원 -- 평가 점수의 명확한 향상을 보여주는 개선 제공 +- 실제 생산성을 측정하기 위한 포괄적인 평가 벤치마크(evals)를 수립합니다. +- 누구나 이러한 평가를 쉽게 실행하고 해석할 수 있도록 합니다. +- 평가 점수의 명확한 증가를 보여주는 개선 사항을 제공합니다. -PR에서 이러한 영역과의 연관성을 언급하세요. +PR에 이러한 영역과의 연관성을 언급하세요. -### 3. Roo Code 커뮤니티 참여 +### 3. Roo Code 커뮤니티에 참여하세요 -- **주요 방법:** [Discord](https://discord.gg/roocode)에 가입하고 **Hannes Rudolph (`hrudolph`)**에게 DM을 보내세요. -- **대안:** 경험 많은 기여자는 [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1)를 통해 직접 참여할 수 있습니다. +- **기본:** [Discord](https://discord.gg/roocode)에 참여하여 **Hannes Rudolph (`hrudolph`)**에게 DM을 보내세요. +- **대안:** 숙련된 기여자는 [GitHub 프로젝트](https://github.com/orgs/RooCodeInc/projects/1)를 통해 직접 참여할 수 있습니다. -## 기여 내용 찾기 및 계획 세우기 +## 기여 찾기 및 계획하기 ### 기여 유형 - **버그 수정:** 코드 문제 해결. -- **새 기능:** 기능 추가. -- **문서화:** 가이드 개선 및 명확성 향상. +- **새로운 기능:** 기능 추가. +- **문서:** 가이드 및 명확성 향상. -### Issue-First 접근법 +### 이슈 우선 접근 방식 -모든 기여는 GitHub Issue에서 시작해야 합니다. +모든 기여는 간소화된 템플릿을 사용하여 GitHub 이슈에서 시작됩니다. -- **기존 Issue 확인:** [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues)를 검색하세요. -- **Issue 생성:** 적절한 템플릿 사용: - - **버그:** "Bug Report" 템플릿. - - **기능:** "Detailed Feature Proposal" 템플릿. 시작 전 승인 필요. -- **Issue 담당:** 댓글을 달고 공식 할당을 기다리세요. +- **기존 이슈 확인**: [GitHub 이슈](https://github.com/RooCodeInc/Roo-Code/issues)에서 검색합니다. +- **이슈 생성**: + - **개선 사항:** "개선 요청" 템플릿 (사용자 혜택에 초점을 맞춘 평이한 언어). + - **버그:** "버그 보고" 템플릿 (최소한의 재현 + 예상 대 실제 + 버전). +- **작업하고 싶으신가요?** 이슈에 "Claiming"이라고 댓글을 달고 [Discord](https://discord.gg/roocode)에서 **Hannes Rudolph (`hrudolph`)**에게 DM을 보내 할당을 받으세요. 할당은 스레드에서 확인됩니다. +- **PR은 이슈에 연결되어야 합니다.** 연결되지 않은 PR은 종료될 수 있습니다. -**승인된 Issue 없는 PR은 닫힐 수 있습니다.** +### 작업할 내용 결정하기 -### 작업 선택하기 +- "이슈 [할당되지 않음]" 이슈는 [GitHub 프로젝트](https://github.com/orgs/RooCodeInc/projects/1)를 확인하세요. +- 문서는 [Roo Code 문서](https://github.com/RooCodeInc/Roo-Code-Docs)를 방문하세요. -- 할당되지 않은 "Good First Issues"를 [GitHub 프로젝트](https://github.com/orgs/RooCodeInc/projects/1)에서 확인하세요. -- 문서 관련은 [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs)를 참조하세요. +### 버그 신고하기 -### 버그 신고 +- 먼저 기존 보고서가 있는지 확인하세요. +- ["버그 보고" 템플릿](https://github.com/RooCodeInc/Roo-Code/issues/new/choose)을 사용하여 새 버그를 생성하세요. + - 명확하고 번호가 매겨진 재현 단계 + - 예상 결과 대 실제 결과 + - Roo Code 버전 (필수), 관련이 있는 경우 API 제공업체/모델 +- **보안 문제**: [보안 권고](https://github.com/RooCodeInc/Roo-Code/security/advisories/new)를 통해 비공개로 보고하세요. -- 먼저 기존 신고를 확인하세요. -- ["Bug Report" 템플릿](https://github.com/RooCodeInc/Roo-Code/issues/new/choose)을 사용하여 새 버그를 신고하세요. -- **보안 문제:** [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new)를 통해 비공개로 신고하세요. +## 개발 및 제출 절차 -## 개발 및 제출 프로세스 +### 개발 설정 -### 개발 환경 설정 - -1. **Fork & Clone:** +1. **포크 및 클론:** ``` -git clone https://github.com/당신의_아이디/Roo-Code.git +git clone https://github.com/사용자이름/Roo-Code.git ``` 2. **의존성 설치:** ``` -npm run install:all +pnpm install ``` -3. **디버깅:** VS Code에서 `F5`를 눌러 실행하세요. +3. **디버깅:** VS Code로 엽니다 (`F5`). ### 코드 작성 가이드라인 -- 하나의 기능 또는 수정당 하나의 집중된 PR. -- ESLint와 TypeScript 모범 사례를 따르세요. -- Issue를 참조하는 명확한 커밋 메시지를 작성하세요(예: `Fixes #123`). -- 철저한 테스트를 제공하세요(`npm test`). -- 제출 전 최신 `main` 브랜치에 리베이스하세요. +- 기능 또는 수정당 하나의 집중된 PR. +- ESLint 및 TypeScript 모범 사례를 따릅니다. +- 이슈를 참조하는 명확하고 설명적인 커밋을 작성합니다 (예: `Fixes #123`). +- 철저한 테스트를 제공합니다 (`npm test`). +- 제출하기 전에 최신 `main` 브랜치로 리베이스합니다. -### Pull Request 제출 +### 풀 리퀘스트 제출 -- 초기 피드백을 원한다면 **드래프트 PR**로 시작하세요. -- Pull Request 템플릿에 따라 변경 사항을 명확히 설명하세요. -- UI 변경에 대한 스크린샷/동영상을 제공하세요. +- 초기 피드백을 원하면 **초안 PR**로 시작하세요. +- 풀 리퀘스트 템플릿에 따라 변경 사항을 명확하게 설명하세요. +- PR 설명/제목에 이슈를 연결하세요 (예: "Fixes #123"). +- UI 변경 사항에 대한 스크린샷/동영상을 제공하세요. - 문서 업데이트가 필요한지 표시하세요. -### Pull Request 정책 +### 풀 리퀘스트 정책 -- 사전 승인 및 할당된 Issue를 참조해야 합니다. -- 정책을 준수하지 않는 PR은 닫힐 수 있습니다. -- PR은 CI 테스트를 통과하고, 로드맵에 부합하며, 명확한 문서를 갖추어야 합니다. +- 할당된 GitHub 이슈를 참조해야 합니다. 할당을 받으려면: 이슈에 "Claiming"이라고 댓글을 달고 [Discord](https://discord.gg/roocode)에서 **Hannes Rudolph (`hrudolph`)**에게 DM을 보내세요. 할당은 스레드에서 확인됩니다. +- 연결되지 않은 PR은 종료될 수 있습니다. +- PR은 CI 테스트를 통과하고 로드맵과 일치하며 명확한 문서를 포함해야 합니다. -### 리뷰 프로세스 +### 검토 절차 -- **일일 분류:** 메인테이너의 빠른 검토. -- **주간 심층 리뷰:** 종합적인 평가. -- **피드백에 따라 신속히 반복**하세요. +- **매일 분류:** 유지 관리자의 빠른 확인. +- **매주 심층 검토:** 포괄적인 평가. +- 피드백을 바탕으로 **신속하게 반복**합니다. -## 법적 안내 +## 법률 -기여함으로써, 귀하의 기여가 Roo Code의 라이선스와 일치하는 Apache 2.0 라이선스 하에 제공됨에 동의합니다. +기여함으로써 귀하는 귀하의 기여가 Roo Code의 라이선스와 일치하는 Apache 2.0 라이선스에 따라 라이선스가 부여된다는 데 동의합니다. diff --git a/locales/ko/README.md b/locales/ko/README.md index f532ec5561..2f28741571 100644 --- a/locales/ko/README.md +++ b/locales/ko/README.md @@ -1,131 +1,95 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -한국어 • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Roo Code 커뮤니티에 참여하세요

-

개발자들과 연결하고, 아이디어를 기여하고, 최신 AI 기반 코딩 도구를 계속 확인하세요.

- - Discord 참여 - Reddit 참여 - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ 빠른 도움 받기 → Discord 가입하기 • 비동기 선호? → r/RooCode 가입하기

-VS Marketplace에서 다운로드 -기능 요청 -평가 & 리뷰 -문서 +# Roo Code + +> AI로 강화된 너의 개발 팀, 네 에디터 안에 + +
+ 🌐 사용 가능한 언어 + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Roo Code가 당신을 위해 무엇을 할 수 있을까요? + +- 자연어 설명으로 코드 생성 +- 모드로 적응: 코드, 아키텍트, 질문, 디버그 및 사용자 지정 모드 +- 기존 코드 리팩터링 및 디버깅 +- 문서 작성 및 업데이트 +- 코드베이스에 대한 질문에 답변 +- 반복적인 작업 자동화 +- MCP 서버 활용 + +## 모드 + +Roo Code는 당신의 작업 방식에 맞춰 적응합니다. + +- 코드 모드: 일상적인 코딩, 편집 및 파일 작업 +- 아키텍트 모드: 시스템, 사양 및 마이그레이션 계획 +- 질문 모드: 빠른 답변, 설명 및 문서 +- 디버그 모드: 문제 추적, 로그 추가, 근본 원인 격리 +- 사용자 지정 모드: 팀이나 워크플로우를 위한 특수 모드 구축 +- Roomote Control: Roomote Control은 로컬 VS Code 인스턴스에서 실행 중인 작업을 원격으로 제어할 수 있어. + +자세히: [모드 사용](https://docs.roocode.com/basic-usage/using-modes) • [사용자 지정 모드](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## 튜토리얼 및 기능 비디오 + +
+ +| | | | +| :---------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Roo Code 설치하기 |
프로필 구성하기 |
코드베이스 인덱싱 | +|
사용자 지정 모드 |
체크포인트 |
할 일 목록 |
- -**Roo Code**는 에디터 내에서 작동하는 AI 기반 **자율 코딩 에이전트**입니다. 다음과 같은 기능을 제공합니다: - -- 자연어로 의사소통 -- 워크스페이스에서 직접 파일 읽기 및 쓰기 -- 터미널 명령 실행 -- 브라우저 작업 자동화 -- OpenAI 호환 또는 커스텀 API/모델과 통합 -- **커스텀 모드**를 통해 "개성"과 기능 조정 - -유연한 코딩 파트너, 시스템 아키텍트, QA 엔지니어나 제품 관리자와 같은 전문화된 역할을 찾고 있든, Roo Code는 더 효율적으로 소프트웨어를 구축하는 데 도움이 될 수 있습니다. - -상세한 업데이트 및 수정 사항은 [CHANGELOG](../../CHANGELOG.md)를 확인하세요. - ---- - -## 🎉 Roo Code 3.25 출시 - -Roo Code 3.25가 개발 워크플로우를 향상시키는 강력한 새 기능과 중요한 개선사항을 제공합니다! - -- **브라우저 세션 관리** - 여러 브라우저 세션을 동시에 관리하여 다양한 작업과 테스트 환경을 분리할 수 있습니다. -- **프롬프트 캐싱** - 자주 사용되는 프롬프트를 캐시하여 응답 시간을 크게 단축하고 API 사용량을 줄입니다. -- **컴퓨터 사용 기능** - AI가 데스크톱 애플리케이션과 직접 상호작용하고, 스크린샷을 찍고, 클릭과 타이핑을 수행할 수 있습니다. - ---- - -## Roo Code는 무엇을 할 수 있나요? - -- 🚀 자연어 설명에서 **코드 생성** -- 🔧 기존 코드 **리팩토링 및 디버그** -- 📝 문서 **작성 및 업데이트** -- 🤔 코드베이스에 대한 **질문에 답변** -- 🔄 반복적인 작업 **자동화** -- 🏗️ 새 파일 및 프로젝트 **생성** - -## 빠른 시작 - -1. [Roo Code 설치](https://docs.roocode.com/getting-started/installing) -2. [AI 제공자 연결](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [첫 번째 작업 시도](https://docs.roocode.com/getting-started/your-first-task) - -## 주요 기능 - -### 다중 모드 - -Roo Code는 전문화된 [모드](https://docs.roocode.com/basic-usage/using-modes)로 사용자의 필요에 맞게 적응합니다: - -- **코드 모드:** 일반적인 코딩 작업용 -- **아키텍트 모드:** 계획 및 기술 리더십용 -- **질문 모드:** 질문에 답변하고 정보 제공용 -- **디버그 모드:** 체계적인 문제 진단용 -- **[커스텀 모드](https://docs.roocode.com/advanced-usage/custom-modes):** 보안 감사, 성능 최적화, 문서화 또는 기타 작업을 위한 무제한 전문 페르소나 생성 - -### 스마트 도구 - -Roo Code는 다음과 같은 강력한 [도구](https://docs.roocode.com/basic-usage/how-tools-work)를 제공합니다: - -- 프로젝트에서 파일 읽기 및 쓰기 -- VS Code 터미널에서 명령 실행 -- 웹 브라우저 제어 -- [MCP(Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp)를 통한 외부 도구 사용 - -MCP는 무제한 커스텀 도구를 추가할 수 있게 하여 Roo Code의 기능을 확장합니다. 외부 API와 통합하고, 데이터베이스에 연결하거나, 특수한 개발 도구를 만들 수 있으며 - MCP는 사용자의 특정 요구를 충족하기 위해 Roo Code의 기능을 확장하는 프레임워크를 제공합니다. - -### 사용자 정의 - -다음과 같은 방법으로 Roo Code를 원하는 방식으로 작동하게 할 수 있습니다: - -- 개인화된 동작을 위한 [커스텀 명령](https://docs.roocode.com/advanced-usage/custom-instructions) -- 특수 작업을 위한 [커스텀 모드](https://docs.roocode.com/advanced-usage/custom-modes) -- 오프라인 사용을 위한 [로컬 모델](https://docs.roocode.com/advanced-usage/local-models) -- 더 빠른 워크플로우를 위한 [자동 승인 설정](https://docs.roocode.com/advanced-usage/auto-approving-actions) +

+더 많은 빠른 튜토리얼 및 기능 비디오... +

## 리소스 -### 문서 - -- [기본 사용 가이드](https://docs.roocode.com/basic-usage/the-chat-interface) -- [고급 기능](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [자주 묻는 질문](https://docs.roocode.com/faq) - -### 커뮤니티 - -- **Discord:** 실시간 도움과 토론을 위한 [Discord 서버 참여](https://discord.gg/roocode) -- **Reddit:** 경험과 팁을 공유하는 [서브레딧 방문](https://www.reddit.com/r/RooCode) -- **GitHub:** [문제 보고](https://github.com/RooCodeInc/Roo-Code/issues) 또는 [기능 요청](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[문서](https://docs.roocode.com):** Roo Code 설치, 구성 및 마스터하기 위한 공식 가이드. +- **[YouTube 채널](https://youtube.com/@roocodeyt?feature=shared):** 튜토리얼을 시청하고 실제 기능을 확인하세요. +- **[Discord 서버](https://discord.gg/roocode):** 커뮤니티에 가입하여 실시간 도움과 토론에 참여하세요. +- **[Reddit 커뮤니티](https://www.reddit.com/r/RooCode):** 경험을 공유하고 다른 사람들이 무엇을 만들고 있는지 확인하세요. +- **[GitHub 문제](https://github.com/RooCodeInc/Roo-Code/issues):** 버그를 보고하고 개발을 추적하세요. +- **[기능 요청](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** 아이디어가 있으신가요? 개발자들과 공유하세요. --- ## 로컬 설정 및 개발 -1. 저장소 **클론**: +1. **리포지토리 복제**: ```sh git clone https://github.com/RooCodeInc/Roo-Code.git @@ -134,102 +98,89 @@ git clone https://github.com/RooCodeInc/Roo-Code.git 2. **의존성 설치**: ```sh -npm run install:all +pnpm install ``` -3. **웹뷰 시작(HMR이 있는 Vite/React 앱)**: +3. **확장 프로그램 실행**: + +Roo Code 확장 프로그램을 실행하는 방법에는 여러 가지가 있습니다: + +### 개발 모드 (F5) + +활성 개발을 위해 VSCode의 내장 디버깅을 사용하세요: + +VSCode에서 `F5`를 누르거나 **실행** → **디버깅 시작**으로 이동하세요. 그러면 Roo Code 확장 프로그램이 실행되는 새 VSCode 창이 열립니다. + +- 웹뷰 변경 사항은 즉시 나타납니다. +- 핵심 확장 프로그램 변경 사항도 자동으로 핫 리로드됩니다. + +### 자동 VSIX 설치 + +확장 프로그램을 VSIX 패키지로 빌드하여 VSCode에 직접 설치하려면: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **디버깅**: - VSCode에서 `F5`를 누르거나(**실행** → **디버깅 시작**) Roo Code가 로드된 새 세션을 엽니다. +이 명령은 다음을 수행합니다: -웹뷰의 변경 사항은 즉시 나타납니다. 코어 확장에 대한 변경 사항은 확장 호스트를 다시 시작해야 합니다. +- 사용할 편집기 명령을 묻습니다(code/cursor/code-insiders) - 기본값은 'code'입니다. +- 기존 확장 프로그램 버전을 제거합니다. +- 최신 VSIX 패키지를 빌드합니다. +- 새로 빌드된 VSIX를 설치합니다. +- 변경 사항을 적용하려면 VS Code를 다시 시작하라는 메시지를 표시합니다. -또는 .vsix를 빌드하고 VSCode에 직접 설치할 수 있습니다: +옵션: -```sh -npm run build -``` +- `-y`: 모든 확인 프롬프트를 건너뛰고 기본값을 사용합니다. +- `--editor=`: 편집기 명령을 지정합니다(예: `--editor=cursor` 또는 `--editor=code-insiders`). -`bin/` 디렉토리에 `.vsix` 파일이 나타나며 다음 명령으로 설치할 수 있습니다: +### 수동 VSIX 설치 -```sh -code --install-extension bin/roo-cline-.vsix -``` +VSIX 패키지를 수동으로 설치하려면: -버전 관리 및 게시를 위해 [changesets](https://github.com/changesets/changesets)를 사용합니다. 릴리스 노트는 `CHANGELOG.md`를 확인하세요. +1. 먼저 VSIX 패키지를 빌드합니다: + ```sh + pnpm vsix + ``` +2. `.vsix` 파일이 `bin/` 디렉터리에 생성됩니다(예: `bin/roo-cline-.vsix`). +3. VSCode CLI를 사용하여 수동으로 설치합니다: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- + +버전 관리 및 게시는 [changesets](https://github.com/changesets/changesets)를 사용합니다. 릴리스 노트는 `CHANGELOG.md`를 확인하세요. --- ## 면책 조항 -**참고하세요** Roo Code, Inc는 Roo Code와 관련하여 제공되거나 사용 가능한 모든 코드, 모델 또는 기타 도구, 관련 타사 도구 또는 결과 출력물에 대해 **어떠한** 진술이나 보증도 하지 **않습니다**. 이러한 도구나 출력물 사용과 관련된 **모든 위험**을 감수합니다; 이러한 도구는 **"있는 그대로"** 및 **"사용 가능한 대로"** 제공됩니다. 이러한 위험에는 지적 재산권 침해, 사이버 취약성 또는 공격, 편향, 부정확성, 오류, 결함, 바이러스, 다운타임, 재산 손실 또는 손상 및/또는 개인 상해가 포함될 수 있습니다(단, 이에 국한되지 않음). 귀하는 이러한 도구나 출력물 사용에 대해 전적으로 책임을 집니다(합법성, 적절성 및 결과를 포함하되 이에 국한되지 않음). +**참고:** Roo Code, Inc.는 Roo Code, 관련 타사 도구 또는 그 결과물과 관련하여 제공되거나 사용 가능하게 된 어떠한 코드, 모델 또는 기타 도구에 대해서도 어떠한 진술이나 보증을 하지 **않습니다**. 귀하는 그러한 도구나 결과물의 사용과 관련된 **모든 위험**을 부담합니다. 해당 도구는 **"있는 그대로"** 및 **"사용 가능한 대로"** 제공됩니다. 그러한 위험에는 지적 재산권 침해, 사이버 취약성 또는 공격, 편견, 부정확성, 오류, 결함, 바이러스, 다운타임, 재산 손실 또는 손상 및/또는 개인 상해가 포함될 수 있으며 이에 국한되지 않습니다. 귀하는 그러한 도구 또는 결과물의 사용(합법성, 적절성 및 그 결과를 포함하되 이에 국한되지 않음)에 대해 전적으로 책임을 집니다. --- -## 기여 +## 기여하기 -우리는 커뮤니티 기여를 환영합니다! [CONTRIBUTING.md](CONTRIBUTING.md)를 읽고 시작하세요. +우리는 커뮤니티의 기여를 사랑합니다! [CONTRIBUTING.md](CONTRIBUTING.md)를 읽고 시작하세요. --- ## 기여자 -Roo Code를 더 좋게 만드는 데 도움을 준 모든 기여자에게 감사드립니다! +Roo Code를 더 좋게 만드는 데 도움을 준 모든 기여자들에게 감사합니다! -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) ## 라이선스 -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- -**Roo Code를 즐기세요!** 짧은 목줄에 묶어두든 자율적으로 돌아다니게 하든, 여러분이 무엇을 만들지 기대됩니다. 질문이나 기능 아이디어가 있으시면 [Reddit 커뮤니티](https://www.reddit.com/r/RooCode/) 또는 [Discord](https://discord.gg/roocode)를 방문해 주세요. 행복한 코딩 되세요! +**Roo Code를 즐기세요!** 짧은 줄에 묶어두든 자율적으로 돌아다니게 하든, 여러분이 무엇을 만들지 기대됩니다. 질문이나 기능 아이디어가 있으면 저희 [Reddit 커뮤니티](https://www.reddit.com/r/RooCode/)나 [Discord](https://discord.gg/roocode)에 들러주세요. 즐거운 코딩 되세요! diff --git a/locales/nl/CONTRIBUTING.md b/locales/nl/CONTRIBUTING.md index 6f8c9d0e69..719b61fc99 100644 --- a/locales/nl/CONTRIBUTING.md +++ b/locales/nl/CONTRIBUTING.md @@ -13,13 +13,13 @@ # Bijdragen aan Roo Code -Roo Code is een door de community gedreven project en we waarderen elke bijdrage enorm. Om de samenwerking te stroomlijnen, werken we volgens een [Issue-First](#issue-first-aanpak) principe, wat betekent dat alle [Pull Requests (PR's)](#een-pull-request-indienen) eerst gekoppeld moeten worden aan een GitHub Issue. Lees deze gids zorgvuldig door. +Roo Code is een door de gemeenschap gedreven project en we waarderen elke bijdrage ten zeerste. Om de samenwerking te stroomlijnen, werken we op basis van een [Issue-First-aanpak](#issue-first-aanpak), wat betekent dat alle [Pull Requests (PR's)](#een-pull-request-indienen) eerst gekoppeld moeten zijn aan een GitHub Issue. Lees deze handleiding zorgvuldig door. ## Inhoudsopgave - [Voordat je bijdraagt](#voordat-je-bijdraagt) -- [Je bijdrage vinden & plannen](#je-bijdrage-vinden--plannen) -- [Ontwikkelings- & indieningsproces](#ontwikkelings--indieningsproces) +- [Je bijdrage vinden en plannen](#je-bijdrage-vinden-en-plannen) +- [Ontwikkelings- en indieningsproces](#ontwikkelings-en-indieningsproces) - [Juridisch](#juridisch) ## Voordat je bijdraagt @@ -28,111 +28,114 @@ Roo Code is een door de community gedreven project en we waarderen elke bijdrage Alle bijdragers moeten zich houden aan onze [Gedragscode](./CODE_OF_CONDUCT.md). -### 2. De project-roadmap +### 2. Projectroadmap -Onze roadmap bepaalt de richting van het project. Stem je bijdragen af op deze kernpunten: +Onze roadmap stuurt de richting van het project. Lijn je bijdragen uit met deze belangrijke doelen: -### Betrouwbaarheid eerst +### Betrouwbaarheid voorop -- Zorgen dat diff-bewerking en opdrachtuitvoering consistent betrouwbaar zijn -- Verminderen van wrijvingspunten die regelmatig gebruik ontmoedigen -- Garanderen van soepele werking in alle talen en op alle platforms -- Uitbreiden van robuuste ondersteuning voor een breed scala aan AI-providers en -modellen +- Zorg ervoor dat het bewerken van diffs en het uitvoeren van commando's consistent betrouwbaar zijn. +- Verminder wrijvingspunten die regelmatig gebruik ontmoedigen. +- Garandeer een soepele werking in alle locales en op alle platforms. +- Breid robuuste ondersteuning uit voor een breed scala aan AI-providers en -modellen. ### Verbeterde gebruikerservaring -- Vereenvoudigen van de gebruikersinterface voor meer duidelijkheid en intuïtiviteit -- Continu verbeteren van de workflow om te voldoen aan de hoge verwachtingen van ontwikkelaars +- Stroomlijn de UI/UX voor duidelijkheid en intuïtiviteit. +- Verbeter continu de workflow om te voldoen aan de hoge verwachtingen die ontwikkelaars hebben van dagelijks gebruikte tools. -### Voorop lopen in agent-prestaties +### Toonaangevend in prestaties van agenten -- Opstellen van uitgebreide evaluatiebenchmarks (evals) om productiviteit in de echte wereld te meten -- Het voor iedereen gemakkelijk maken om deze evaluaties uit te voeren en te interpreteren -- Verbeteringen leveren die duidelijke stijgingen in evaluatiescores aantonen +- Stel uitgebreide evaluatiebenchmarks (evals) op om de productiviteit in de praktijk te meten. +- Maak het voor iedereen gemakkelijk om deze evals uit te voeren en te interpreteren. +- Lever verbeteringen die duidelijke stijgingen in de eval-scores aantonen. Vermeld de afstemming met deze gebieden in je PR's. ### 3. Word lid van de Roo Code-community -- **Hoofdmethode:** Word lid van onze [Discord](https://discord.gg/roocode) en stuur een DM naar **Hannes Rudolph (`hrudolph`)**. -- **Alternatief:** Ervaren bijdragers kunnen direct meedoen via [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1). +- **Primair:** Word lid van onze [Discord](https://discord.gg/roocode) en stuur een DM naar **Hannes Rudolph (`hrudolph`)**. +- **Alternatief:** Ervaren bijdragers kunnen rechtstreeks deelnemen via [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1). -## Je bijdrage vinden & plannen +## Je bijdrage vinden en plannen ### Soorten bijdragen -- **Bugfixes:** Problemen in code oplossen. -- **Nieuwe functies:** Functionaliteit toevoegen. -- **Documentatie:** Handleidingen verbeteren en verduidelijken. +- **Bugfixes:** het aanpakken van codeproblemen. +- **Nieuwe functies:** het toevoegen van functionaliteit. +- **Documentatie:** het verbeteren van handleidingen en duidelijkheid. ### Issue-First-aanpak -Elke bijdrage moet beginnen met een GitHub Issue. +Alle bijdragen beginnen met een GitHub Issue met behulp van onze slanke sjablonen. -- **Bestaande issues controleren:** Zoek in [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). -- **Issue aanmaken:** Gebruik de juiste templates: - - **Bugs:** "Bug Report"-template. - - **Functies:** "Detailed Feature Proposal"-template. Goedkeuring vereist voor je begint. -- **Issues claimen:** Reageer en wacht op officiële toewijzing. +- **Controleer bestaande issues**: Zoek in [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). +- **Maak een issue** aan met: + - **Verbeteringen:** sjabloon "Verbeteringsverzoek" (eenvoudige taal gericht op gebruikersvoordeel). + - **Bugs:** sjabloon "Bugrapport" (minimale repro + verwacht vs. feitelijk + versie). +- **Wil je eraan werken?** Reageer met "Claiming" op de issue en stuur een DM naar **Hannes Rudolph (`hrudolph`)** op [Discord](https://discord.gg/roocode) om toegewezen te worden. De toewijzing wordt in de thread bevestigd. +- **PR's moeten naar de issue linken.** Niet-gekoppelde PR's kunnen worden gesloten. -**PR's zonder goedgekeurde issues kunnen worden gesloten.** +### Beslissen waaraan je wilt werken -### Bepalen waar je aan werkt +- Controleer het [GitHub Project](https://github.com/orgs/RooCodeInc/projects/1) voor "Issue [Niet-toegewezen]" issues. +- Ga voor documentatie naar [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). -- Bekijk het [GitHub Project](https://github.com/orgs/RooCodeInc/projects/1) voor niet-toegewezen "Good First Issues". -- Voor documentatie, bezoek [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). +### Bugs rapporteren -### Bugs of problemen melden +- Controleer eerst bestaande rapporten. +- Maak een nieuwe bug aan met het ["Bugrapport"-sjabloon](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) met: + - Duidelijke, genummerde reproductiestappen + - Verwacht vs. feitelijk resultaat + - Roo Code-versie (vereist); API-provider/model indien relevant +- **Beveiligingsproblemen**: Rapporteer privé via [beveiligingsadviezen](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). -- Controleer eerst of er al meldingen zijn. -- Maak nieuwe bugmeldingen met de ["Bug Report"-template](https://github.com/RooCodeInc/Roo-Code/issues/new/choose). -- **Beveiligingsproblemen:** Meld privé via [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). +## Ontwikkelings- en indieningsproces -## Ontwikkelings- & indieningsproces +### Ontwikkelingsopstelling -### Ontwikkelomgeving instellen - -1. **Fork & Clone:** +1. **Fork & Klonen:** ``` git clone https://github.com/JOUW_GEBRUIKERSNAAM/Roo-Code.git ``` -2. **Installeer afhankelijkheden:** +2. **Afhankelijkheden installeren:** ``` -npm run install:all +pnpm install ``` -3. **Debuggen:** Open met VS Code (`F5`). +3. **Debuggen:** Openen met VS Code (`F5`). ### Richtlijnen voor het schrijven van code - Eén gerichte PR per functie of fix. -- Volg ESLint en TypeScript best practices. +- Volg de best practices van ESLint en TypeScript. - Schrijf duidelijke, beschrijvende commits die verwijzen naar issues (bijv. `Fixes #123`). - Zorg voor grondige tests (`npm test`). -- Rebase op de nieuwste `main`-branch vóór indiening. +- Rebase naar de nieuwste `main`-tak vóór indiening. ### Een Pull Request indienen -- Begin als **concept-PR** als je vroege feedback zoekt. -- Beschrijf je wijzigingen duidelijk volgens de Pull Request Template. -- Voeg screenshots/video's toe voor UI-wijzigingen. +- Begin als een **Concept-PR** als je vroege feedback wilt. +- Beschrijf je wijzigingen duidelijk volgens het Pull Request-sjabloon. +- Koppel de issue in de PR-beschrijving/titel (bijv. "Fixes #123"). +- Zorg voor schermafbeeldingen/video's voor UI-wijzigingen. - Geef aan of documentatie-updates nodig zijn. -### Pull Request beleid +### Pull Request-beleid -- Moet verwijzen naar vooraf goedgekeurde en toegewezen issues. -- PR's die niet aan het beleid voldoen, kunnen worden gesloten. -- PR's moeten CI-tests doorstaan, aansluiten bij de roadmap en duidelijke documentatie hebben. +- Moet verwijzen naar een toegewezen GitHub Issue. Om toegewezen te worden: reageer met "Claiming" op de issue en stuur een DM naar **Hannes Rudolph (`hrudolph`)** op [Discord](https://discord.gg/roocode). De toewijzing wordt in de thread bevestigd. +- Niet-gekoppelde PR's kunnen worden gesloten. +- PR's moeten slagen voor CI-tests, in lijn zijn met de roadmap en duidelijke documentatie hebben. -### Reviewproces +### Beoordelingsproces -- **Dagelijkse triage:** Snelle controles door maintainers. -- **Wekelijkse diepgaande review:** Uitgebreide beoordeling. -- **Snel itereren** op basis van feedback. +- **Dagelijkse triage:** Snelle controles door onderhouders. +- **Wekelijkse diepgaande beoordeling:** Uitgebreide beoordeling. +- **Itereer snel** op basis van feedback. ## Juridisch -Door een pull request in te dienen, ga je ermee akkoord dat je bijdragen worden gelicenseerd onder de Apache 2.0-licentie, in overeenstemming met de licentie van Roo Code. +Door bij te dragen, ga je ermee akkoord dat je bijdragen onder de Apache 2.0-licentie worden gelicentieerd, in overeenstemming met de licentieverlening van Roo Code. diff --git a/locales/nl/README.md b/locales/nl/README.md index 2c35210829..45d14d787d 100644 --- a/locales/nl/README.md +++ b/locales/nl/README.md @@ -1,129 +1,93 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • Nederlands • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Word lid van de Roo Code Community

-

Verbind met ontwikkelaars, draag ideeën bij en blijf op de hoogte met de nieuwste AI-gestuurde coderingstools.

- - Word lid van Discord - Word lid van Reddit - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ Snel hulp krijgen → Word lid van Discord • Liever asynchroon? → Word lid van r/RooCode

-Download op VS Marketplace -Feature Requests -Beoordeel & Review -Documentatie +# Roo Code + +> Jouw AI-aangedreven dev-team, rechtstreeks in je editor + +
+ 🌐 Beschikbare talen + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Wat kan Roo Code voor JOU doen? + +- Genereer code vanuit natuurlijke taalomschrijvingen +- Aanpassen met Modi: Code, Architect, Vraag, Debug en Aangepaste Modi +- Refactor & debug bestaande code +- Schrijf & update documentatie +- Beantwoord vragen over je codebase +- Automatiseer repetitieve taken +- Gebruik MCP Servers + +## Modi + +Roo Code past zich aan jouw werkwijze aan, niet andersom: + +- Code Modus: dagelijks coderen, bewerkingen en bestandsoperaties +- Architect Modus: plan systemen, specificaties en migraties +- Vraag Modus: snelle antwoorden, uitleg en documenten +- Debug Modus: spoor problemen op, voeg logs toe, isoleer de oorzaak +- Aangepaste Modi: bouw gespecialiseerde modi voor je team of workflow +- Roomote Control: Roomote Control laat je taken op je lokale VS Code-instantie op afstand besturen. + +Meer info: [Modi gebruiken](https://docs.roocode.com/basic-usage/using-modes) • [Aangepaste modi](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## Tutorial & Feature Videos + +
+ +| | | | +| :------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Roo Code installeren |
Profielen configureren |
Codebase indexeren | +|
Aangepaste modi |
Checkpoints |
To-Do Lijsten |
+

+Meer snelle tutorial- en featurevideo's... +

-**Roo Code** is een AI-gestuurde **autonome codeeragent** die in je editor leeft. Het kan: +## Hulpbronnen -- Communiceren in natuurlijke taal -- Bestanden direct in je werkruimte lezen en schrijven -- Terminalcommando's uitvoeren -- Browseracties automatiseren -- Integreren met elke OpenAI-compatibele of aangepaste API/model -- Zijn "persoonlijkheid" en mogelijkheden aanpassen via **Aangepaste Modi** - -Of je nu op zoek bent naar een flexibele codeerpartner, een systeemarchitect, of gespecialiseerde rollen zoals QA-engineer of productmanager, Roo Code helpt je efficiënter software te bouwen. - -Bekijk de [CHANGELOG](../../CHANGELOG.md) voor gedetailleerde updates en fixes. +- **[Documentatie](https://docs.roocode.com):** De officiële gids voor het installeren, configureren en beheersen van Roo Code. +- **[YouTube-kanaal](https://youtube.com/@roocodeyt?feature=shared):** Bekijk tutorials en zie functies in actie. +- **[Discord Server](https://discord.gg/roocode):** Word lid van de community voor realtime hulp en discussie. +- **[Reddit Community](https://www.reddit.com/r/RooCode):** Deel je ervaringen en kijk wat anderen bouwen. +- **[GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues):** Meld bugs en volg de ontwikkeling. +- **[Feature Requests](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** Heb je een idee? Deel het met de ontwikkelaars. --- -## 🎉 Roo Code 3.25 Uitgebracht - -Roo Code 3.25 brengt krachtige nieuwe functies en significante verbeteringen om je ontwikkelingsworkflow te verbeteren! - -- **Browser Sessiebeheer** - Beheer meerdere browsersessies tegelijkertijd, waardoor verschillende taken en testomgevingen gescheiden kunnen worden. -- **Prompt Caching** - Cache veelgebruikte prompts om responstijden aanzienlijk te verkorten en API-gebruik te verminderen. -- **Computer Use Functionaliteit** - AI kan direct interacteren met desktoptoepassingen, screenshots maken en klik- en typacties uitvoeren. - ---- - -## Wat kan Roo Code? - -- 🚀 **Genereer code** vanuit natuurlijke taalbeschrijvingen -- 🔧 **Refactor & Debug** bestaande code -- 📝 **Schrijf & Update** documentatie -- 🤔 **Beantwoord vragen** over je codebase -- 🔄 **Automatiseer** repetitieve taken -- 🏗️ **Maak** nieuwe bestanden en projecten - -## Snelstart - -1. [Installeer Roo Code](https://docs.roocode.com/getting-started/installing) -2. [Verbind je AI-provider](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [Probeer je eerste taak](https://docs.roocode.com/getting-started/your-first-task) - -## Belangrijkste functies - -### Meerdere Modi - -Roo Code past zich aan jouw behoeften aan met gespecialiseerde [modi](https://docs.roocode.com/basic-usage/using-modes): - -- **Code-modus:** Voor algemene coderingstaken -- **Architect-modus:** Voor planning en technisch leiderschap -- **Vraag-modus:** Voor het beantwoorden van vragen en het geven van informatie -- **Debug-modus:** Voor systematische probleemdiagnose -- **[Aangepaste modi](https://docs.roocode.com/advanced-usage/custom-modes):** Maak onbeperkt gespecialiseerde persona's voor beveiligingsaudits, prestatieoptimalisatie, documentatie of andere taken - -### Slimme Tools - -Roo Code wordt geleverd met krachtige [tools](https://docs.roocode.com/basic-usage/how-tools-work) die kunnen: - -- Bestanden in je project lezen en schrijven -- Commando's uitvoeren in je VS Code-terminal -- Een webbrowser aansturen -- Externe tools gebruiken via [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) - -MCP breidt de mogelijkheden van Roo Code uit door je in staat te stellen onbeperkt aangepaste tools toe te voegen. Integreer met externe API's, maak verbinding met databases of creëer gespecialiseerde ontwikkeltools - MCP biedt het framework om Roo Code uit te breiden naar jouw specifieke wensen. - -### Aanpassen - -Laat Roo Code werken zoals jij wilt met: - -- [Aangepaste instructies](https://docs.roocode.com/advanced-usage/custom-instructions) voor gepersonaliseerd gedrag -- [Aangepaste modi](https://docs.roocode.com/advanced-usage/custom-modes) voor specialistische taken -- [Lokale modellen](https://docs.roocode.com/advanced-usage/local-models) voor offline gebruik -- [Auto-Approve-instellingen](https://docs.roocode.com/advanced-usage/auto-approving-actions) voor snellere workflows - -## Bronnen - -### Documentatie - -- [Basisgebruik](https://docs.roocode.com/basic-usage/the-chat-interface) -- [Geavanceerde functies](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [Veelgestelde vragen](https://docs.roocode.com/faq) - -### Community - -- **Discord:** [Word lid van onze Discord-server](https://discord.gg/roocode) voor directe hulp en discussies -- **Reddit:** [Bezoek onze subreddit](https://www.reddit.com/r/RooCode) om ervaringen en tips te delen -- **GitHub:** Meld [problemen](https://github.com/RooCodeInc/Roo-Code/issues) of vraag [features](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) aan - ---- - -## Lokale installatie & ontwikkeling +## Lokale setup & ontwikkeling 1. **Kloon** de repo: @@ -134,31 +98,58 @@ git clone https://github.com/RooCodeInc/Roo-Code.git 2. **Installeer afhankelijkheden**: ```sh -npm run install:all +pnpm install ``` -3. **Start de webview (Vite/React-app met HMR)**: +3. **Voer de extensie uit**: + +Er zijn verschillende manieren om de Roo Code-extensie uit te voeren: + +### Ontwikkelmodus (F5) + +Gebruik voor actieve ontwikkeling de ingebouwde foutopsporing van VSCode: + +Druk op `F5` (of ga naar **Uitvoeren** → **Foutopsporing starten**) in VSCode. Dit opent een nieuw VSCode-venster waarin de Roo Code-extensie wordt uitgevoerd. + +- Wijzigingen in de webweergave verschijnen onmiddellijk. +- Wijzigingen in de kernextensie worden ook automatisch hot-herladen. + +### Geautomatiseerde VSIX-installatie + +Om de extensie als een VSIX-pakket te bouwen en rechtstreeks in VSCode te installeren: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **Debuggen**: - Druk op `F5` (of **Run** → **Start Debugging**) in VSCode om een nieuwe sessie met Roo Code te openen. +Dit commando zal: -Wijzigingen aan de webview verschijnen direct. Wijzigingen aan de core-extensie vereisen een herstart van de extensiehost. +- Vragen welk editorcommando te gebruiken (code/cursor/code-insiders) - standaard is 'code' +- Een eventuele bestaande versie van de extensie verwijderen. +- Het nieuwste VSIX-pakket bouwen. +- De nieuw gebouwde VSIX installeren. +- U vragen om VS Code opnieuw op te starten om de wijzigingen door te voeren. -Je kunt ook een .vsix bouwen en deze direct in VSCode installeren: +Opties: -```sh -npm run build -``` +- `-y`: Sla alle bevestigingsprompts over en gebruik de standaardwaarden +- `--editor=`: Specificeer het editorcommando (bijv. `--editor=cursor` of `--editor=code-insiders`) -Een `.vsix`-bestand verschijnt in de `bin/`-map en kan worden geïnstalleerd met: +### Handmatige VSIX-installatie -```sh -code --install-extension bin/roo-cline-.vsix -``` +Als u het VSIX-pakket liever handmatig installeert: + +1. Bouw eerst het VSIX-pakket: + ```sh + pnpm vsix + ``` +2. Een `.vsix`-bestand wordt gegenereerd in de `bin/`-directory (bijv. `bin/roo-cline-.vsix`). +3. Installeer het handmatig met de VSCode CLI: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- We gebruiken [changesets](https://github.com/changesets/changesets) voor versiebeheer en publicatie. Bekijk onze `CHANGELOG.md` voor release-opmerkingen. @@ -166,7 +157,7 @@ We gebruiken [changesets](https://github.com/changesets/changesets) voor versieb ## Disclaimer -**Let op**: Roo Code, Inc geeft **geen** garanties of waarborgen met betrekking tot enige code, modellen of andere tools die worden geleverd of beschikbaar worden gesteld in verband met Roo Code, bijbehorende tools van derden, of enige resulterende output. Je neemt **alle risico's** die gepaard gaan met het gebruik van dergelijke tools of output; deze tools worden geleverd op een **"AS IS"** en **"AS AVAILABLE"** basis. Risico's kunnen onder meer zijn: inbreuk op intellectueel eigendom, cyberkwetsbaarheden of -aanvallen, vooringenomenheid, onnauwkeurigheden, fouten, defecten, virussen, uitval, verlies of schade aan eigendommen en/of persoonlijk letsel. Je bent zelf volledig verantwoordelijk voor het gebruik van dergelijke tools of output (inclusief, maar niet beperkt tot, de legaliteit, geschiktheid en resultaten daarvan). +**Let op**: Roo Code, Inc. geeft **geen** verklaringen of garanties met betrekking tot enige code, modellen of andere tools die worden geleverd of beschikbaar worden gesteld in verband met Roo Code, enige geassocieerde tools van derden, of enige resulterende output. U aanvaardt **alle risico's** die gepaard gaan met het gebruik van dergelijke tools of output; dergelijke tools worden geleverd op een **"AS IS"** en **"AS AVAILABLE"** basis. Dergelijke risico's kunnen omvatten, maar zijn niet beperkt tot, inbreuk op intellectueel eigendom, cyberkwetsbaarheden of -aanvallen, vooringenomenheid, onnauwkeurigheden, fouten, defecten, virussen, downtime, verlies of beschadiging van eigendommen, en/of persoonlijk letsel. U bent als enige verantwoordelijk voor uw gebruik van dergelijke tools of output (inclusief, maar niet beperkt tot, de wettigheid, geschiktheid en resultaten daarvan). --- @@ -178,51 +169,11 @@ We houden van bijdragen uit de community! Begin met het lezen van onze [CONTRIBU ## Bijdragers -Dank aan alle bijdragers die Roo Code beter hebben gemaakt! +Dank aan al onze bijdragers die hebben geholpen Roo Code beter te maken! -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) @@ -232,4 +183,4 @@ Dank aan alle bijdragers die Roo Code beter hebben gemaakt! --- -**Veel plezier met Roo Code!** Of je het nu kort houdt of autonoom laat werken, we zijn benieuwd wat je bouwt. Heb je vragen of ideeën voor functies, kom dan langs op onze [Reddit-community](https://www.reddit.com/r/RooCode/) of [Discord](https://discord.gg/roocode). Veel programmeerplezier! +**Veel plezier met Roo Code!** Of je het nu strak aan de lijn houdt of autonoom laat rondlopen, we zijn benieuwd wat je bouwt. Vragen of feature-ideeën? Kom langs op onze [Reddit-community](https://www.reddit.com/r/RooCode/) of [Discord](https://discord.gg/roocode). Happy coding! diff --git a/locales/pl/CONTRIBUTING.md b/locales/pl/CONTRIBUTING.md index 1642964737..edc9581e48 100644 --- a/locales/pl/CONTRIBUTING.md +++ b/locales/pl/CONTRIBUTING.md @@ -11,128 +11,131 @@
-# Współtworzenie Roo Code +# Wkład w Roo Code -Roo Code to projekt napędzany przez społeczność i bardzo cenimy każdy wkład. Aby usprawnić współpracę, działamy według zasady [Issue-First](#podejście-issue-first), co oznacza, że wszystkie [Pull Requesty (PR)](#zgłaszanie-pull-requesta) muszą najpierw być powiązane z GitHub Issue. Prosimy o uważne zapoznanie się z tym przewodnikiem. +Roo Code to projekt społecznościowy i głęboko cenimy każdy wkład. Aby usprawnić współpracę, działamy w oparciu o [podejście „najpierw zgłoszenie”](#podejście-najpierw-zgłoszenie), co oznacza, że wszystkie [żądania ściągnięcia (PR)](#przesyłanie-żądania-ściągnięcia) muszą być najpierw połączone ze zgłoszeniem na GitHubie. Prosimy o uważne zapoznanie się z tym przewodnikiem. ## Spis treści -- [Zanim zaczniesz współtworzyć](#zanim-zaczniesz-współtworzyć) +- [Zanim zaczniesz wnosić wkład](#zanim-zaczniesz-wnosić-wkład) - [Znajdowanie i planowanie swojego wkładu](#znajdowanie-i-planowanie-swojego-wkładu) -- [Proces rozwoju i zgłaszania](#proces-rozwoju-i-zgłaszania) -- [Prawne](#prawne) +- [Proces rozwoju i przesyłania](#proces-rozwoju-i-przesyłania) +- [Kwestie prawne](#kwestie-prawne) -## Zanim zaczniesz współtworzyć +## Zanim zaczniesz wnosić wkład ### 1. Kodeks postępowania Wszyscy współtwórcy muszą przestrzegać naszego [Kodeksu postępowania](./CODE_OF_CONDUCT.md). -### 2. Roadmapa projektu +### 2. Mapa drogowa projektu -Nasza roadmapa wyznacza kierunek projektu. Dostosuj swój wkład do tych kluczowych celów: +Nasza mapa drogowa wyznacza kierunek projektu. Dostosuj swój wkład do tych kluczowych celów: -### Niezawodność przede wszystkim +### Niezawodność na pierwszym miejscu -- Zapewnienie, że edycja różnic i wykonywanie poleceń są konsekwentnie niezawodne -- Zmniejszenie punktów tarcia, które zniechęcają do regularnego użytkowania -- Gwarancja płynnego działania we wszystkich językach i na wszystkich platformach -- Rozszerzenie solidnego wsparcia dla szerokiej gamy dostawców i modeli AI +- Zapewnij, że edycja różnic i wykonywanie poleceń są niezawodne. +- Zmniejsz punkty tarcia, które zniechęcają do regularnego użytkowania. +- Zagwarantuj płynne działanie we wszystkich lokalizacjach i na wszystkich platformach. +- Rozszerz solidne wsparcie для szerokiej gamy dostawców i modeli sztucznej inteligencji. -### Ulepszone doświadczenie użytkownika +### Ulepszone wrażenia użytkownika -- Uproszczenie interfejsu użytkownika dla większej przejrzystości i intuicyjności -- Ciągłe doskonalenie przepływu pracy, aby spełnić wysokie oczekiwania programistów +- Usprawnij interfejs użytkownika/doświadczenie użytkownika dla jasności i intuicyjności. +- Ciągle ulepszaj przepływ pracy, aby sprostać wysokim oczekiwaniom, jakie programiści mają wobec narzędzi codziennego użytku. -### Wiodąca pozycja w wydajności agentów +### Lider w wydajności agentów -- Ustanowienie kompleksowych punktów odniesienia (evals) do mierzenia produktywności w rzeczywistym świecie -- Ułatwienie wszystkim łatwego uruchamiania i interpretowania tych ocen -- Dostarczanie ulepszeń, które wykazują wyraźny wzrost wyników ocen +- Ustanów kompleksowe wzorce oceny (ewaluacje) w celu pomiaru rzeczywistej produktywności. +- Ułatw wszystkim łatwe uruchamianie i interpretowanie tych ewaluacji. +- Dostarczaj ulepszenia, które wykazują wyraźny wzrost wyników ewaluacji. -Wspomnij o powiązaniu z tymi obszarami w swoich PR. +Wspomnij o dostosowaniu do tych obszarów w swoich PR-ach. ### 3. Dołącz do społeczności Roo Code -- **Główna metoda:** Dołącz do naszego [Discorda](https://discord.gg/roocode) i wyślij wiadomość prywatną do **Hannes Rudolph (`hrudolph`)**. -- **Alternatywa:** Doświadczeni współtwórcy mogą angażować się bezpośrednio przez [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1). +- **Głównie:** Dołącz do naszego [Discorda](https://discord.gg/roocode) i wyślij wiadomość prywatną do **Hannes Rudolph (`hrudolph`)**. +- **Alternatywa:** Doświadczeni współtwórcy mogą angażować się bezpośrednio za pośrednictwem [projektów na GitHubie](https://github.com/orgs/RooCodeInc/projects/1). ## Znajdowanie i planowanie swojego wkładu -### Typy wkładów +### Rodzaje wkładu -- **Poprawki błędów:** Naprawianie problemów w kodzie. -- **Nowe funkcje:** Dodawanie nowych funkcjonalności. -- **Dokumentacja:** Ulepszanie przewodników i zwiększanie przejrzystości. +- **Poprawki błędów:** rozwiązywanie problemów z kodem. +- **Nowe funkcje:** dodawanie funkcjonalności. +- **Dokumentacja:** ulepszanie przewodników i przejrzystości. -### Podejście Issue-First +### Podejście „najpierw zgłoszenie” -Każdy wkład musi zaczynać się od GitHub Issue. +Wszystkie wkłady zaczynają się od zgłoszenia na GitHubie przy użyciu naszych uproszczonych szablonów. -- **Sprawdź istniejące issues:** Przeszukaj [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). -- **Utwórz issue:** Używaj odpowiednich szablonów: - - **Błędy:** Szablon "Bug Report". - - **Funkcje:** Szablon "Detailed Feature Proposal". Wymagane zatwierdzenie przed rozpoczęciem. -- **Zgłoś chęć pracy:** Skomentuj i poczekaj na oficjalne przypisanie. - -**PR bez zatwierdzonego issue może zostać zamknięty.** +- **Sprawdź istniejące zgłoszenia**: Przeszukaj [zgłoszenia на GitHubie](https://github.com/RooCodeInc/Roo-Code/issues). +- **Utwórz zgłoszenie**, używając: + - **Ulepszenia:** szablon „Prośba o ulepszenie” (prosty język skoncentrowany na korzyściach dla użytkownika). + - **Błędy:** szablon „Zgłoszenie błędu” (minimalna reprodukcja + oczekiwane a rzeczywiste + wersja). +- **Chcesz nad tym popracować?** Skomentuj „Zgłaszam się” w zgłoszeniu i wyślij wiadomość prywatną do **Hannes Rudolph (`hrudolph`)** na [Discordzie](https://discord.gg/roocode), aby zostać przypisanym. Przypisanie zostanie potwierdzone w wątku. +- **PR-y muszą być połączone зі zgłoszeniem.** Niepołączone PR-y mogą zostać zamknięte. ### Decydowanie, nad czym pracować -- Sprawdź [Projekt GitHub](https://github.com/orgs/RooCodeInc/projects/1) w poszukiwaniu nieprzypisanych "Good First Issues". -- W kwestii dokumentacji odwiedź [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). +- Sprawdź [projekt na GitHubie](https://github.com/orgs/RooCodeInc/projects/1) pod kątem zgłoszeń „Zgłoszenie [Nieprzypisane]”. +- Aby uzyskać dokumentację, odwiedź [dokumentację Roo Code](https://github.com/RooCodeInc/Roo-Code-Docs). ### Zgłaszanie błędów -- Najpierw sprawdź istniejące zgłoszenia. -- Twórz nowe zgłoszenia błędów używając [szablonu "Bug Report"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose). -- **Luki bezpieczeństwa:** Zgłaszaj prywatnie przez [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). +- Najpierw sprawdź istniejące raporty. +- Utwórz nowy błąd, używając szablonu [„Zgłoszenie błędu”](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) z: + - Jasnymi, ponumerowanymi krokami reprodukcji + - Oczekiwanym a rzeczywistym wynikiem + - Wersją Roo Code (wymagane); dostawcą/modelem sztucznej inteligencji, jeśli ma to zastosowanie +- **Problemy z bezpieczeństwem**: Zgłoś je prywatnie za pośrednictwem [zaleceń dotyczących bezpieczeństwa](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). -## Proces rozwoju i zgłaszania +## Proces rozwoju i przesyłania -### Konfiguracja środowiska +### Konfiguracja środowiska programistycznego -1. **Fork & Clone:** +1. **Sforkuj i sklonuj:** ``` -git clone https://github.com/TWÓJ_UŻYTKOWNIK/Roo-Code.git +git clone https://github.com/TWOJA_NAZWA_UŻYTKOWNIKA/Roo-Code.git ``` -2. **Instalacja zależności:** +2. **Zainstaluj zależności:** ``` -npm run install:all +pnpm install ``` -3. **Debugowanie:** Otwórz w VS Code (`F5`). +3. **Debugowanie:** Otwórz za pomocą VS Code (`F5`). ### Wytyczne dotyczące pisania kodu - Jeden skoncentrowany PR na funkcję lub poprawkę. -- Przestrzegaj dobrych praktyk ESLint i TypeScript. -- Pisz jasne, opisowe commity odnoszące się do issues (np. `Fixes #123`). +- Przestrzegaj najlepszych praktyk ESLint i TypeScript. +- Pisz jasne, opisowe commity odwołujące się do zgłoszeń (np. `Naprawia #123`). - Zapewnij dokładne testy (`npm test`). -- Zrebase'uj na najnowszą gałąź `main` przed zgłoszeniem. +- Zrób rebase na najnowszą gałąź `main` przed przesłaniem. -### Zgłaszanie Pull Requesta +### Przesyłanie żądania ściągnięcia -- Zacznij od **wersji roboczej PR**, jeśli szukasz wczesnego feedbacku. -- Jasno opisz swoje zmiany, zgodnie z szablonem Pull Request. -- Dostarcz zrzuty ekranu/wideo dla zmian UI. -- Wskaż, czy potrzebne są aktualizacje dokumentacji. +- Zacznij jako **wersja robocza PR**, jeśli szukasz wczesnej opinii. +- Jasno opisz swoje zmiany, postępując zgodnie z szablonem żądania ściągnięcia. +- Połącz zgłoszenie w opisie/tytule PR (np. „Naprawia #123”). +- Udostępnij zrzuty ekranu/filmy wideo dotyczące zmian w interfejsie użytkownika. +- Wskaż, czy konieczne są aktualizacje dokumentacji. -### Polityka Pull Request +### Polityka dotycząca żądań ściągnięcia -- Musi odnosić się do wcześniej zatwierdzonych i przypisanych issues. -- PR niezgodne z polityką mogą zostać zamknięte. -- PR powinny przechodzić testy CI, być zgodne z roadmapą i mieć jasną dokumentację. +- Musi odnosić się do przypisanego zgłoszenia na GitHubie. Aby zostać przypisanym: skomentuj „Zgłaszam się” w zgłoszeniu i wyślij wiadomość prywatną do **Hannes Rudolph (`hrudolph`)** na [Discordzie](https://discord.gg/roocode). Przypisanie zostanie potwierdzone w wątku. +- Niepołączone PR-y mogą zostać zamknięte. +- PR-y muszą przejść testy CI, być zgodne z mapą drogową i mieć przejrzystą dokumentację. -### Proces recenzji +### Proces przeglądu -- **Codzienna selekcja:** Szybkie sprawdzenia przez maintainerów. -- **Cotygodniowy dokładny przegląd:** Kompleksowa ocena. -- **Szybko iteruj** na podstawie feedbacku. +- **Codzienna selekcja:** Szybkie sprawdzanie przez opiekunów. +- **Cotygodniowy dogłębny przegląd:** Kompleksowa ocena. +- **Szybko iteruj** w oparciu o opinie. -## Prawne +## Kwestie prawne -Zgłaszając pull request, zgadzasz się, że twój wkład będzie licencjonowany na licencji Apache 2.0, zgodnie z licencją Roo Code. +Przesyłając wkład, zgadzasz się, że Twoje wkłady będą licencjonowane na podstawie licencji Apache 2.0, zgodnie z licencją Roo Code. diff --git a/locales/pl/README.md b/locales/pl/README.md index d3686aed60..c885bc48f3 100644 --- a/locales/pl/README.md +++ b/locales/pl/README.md @@ -1,129 +1,93 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • Polski • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Dołącz do społeczności Roo Code

-

Połącz się z programistami, wnieś swoje pomysły i bądź na bieżąco z najnowszymi narzędziami do kodowania opartymi na AI.

- - Dołącz do Discord - Dołącz do Reddit - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ Uzyskaj szybką pomoc → Dołącz do Discorda • Wolisz asynchronicznie? → Dołącz do r/RooCode

-Pobierz z VS Marketplace -Prośby o funkcje -Oceń & Zrecenzuj -Dokumentacja +# Roo Code + +> Twój zespół deweloperski zasilany AI — prosto w edytorze + +
+ 🌐 Dostępne języki + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Co Roo Code może zrobić dla CIEBIE? + +- Generowanie kodu z opisów w języku naturalnym +- Dostosuj się za pomocą trybów: Kod, Architekt, Zapytaj, Debugowanie i Tryby niestandardowe +- Refaktoryzacja i debugowanie istniejącego kodu +- Pisanie i aktualizowanie dokumentacji +- Odpowiadanie na pytania dotyczące Twojej bazy kodu +- Automatyzacja powtarzalnych zadań +- Wykorzystanie serwerów MCP + +## Tryby + +Roo Code dostosowuje się do Twojego sposobu pracy, a nie odwrotnie: + +- Tryb Kod: codzienne kodowanie, edycje i operacje na plikach +- Tryb Architekt: planowanie systemów, specyfikacji i migracji +- Tryb Zapytaj: szybkie odpowiedzi, wyjaśnienia i dokumenty +- Tryb Debugowanie: śledzenie problemów, dodawanie logów, izolowanie przyczyn źródłowych +- Tryby niestandardowe: buduj specjalistyczne tryby dla swojego zespołu lub przepływu pracy +- Roomote Control: Roomote Control pozwala zdalnie sterować zadaniami uruchomionymi na twojej lokalnej instancji VS Code. + +Więcej: [Korzystanie z trybów](https://docs.roocode.com/basic-usage/using-modes) • [Tryby niestandardowe](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## Filmy instruktażowe i prezentujące funkcje + +
+ +| | | | +| :------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Instalacja Roo Code |
Konfiguracja profili |
Indeksowanie bazy kodu | +|
Tryby niestandardowe |
Punkty kontrolne |
Listy zadań |
- -**Roo Code** to napędzany przez AI **autonomiczny agent kodujący**, który funkcjonuje w Twoim edytorze. Potrafi: - -- Komunikować się w języku naturalnym -- Czytać i zapisywać pliki bezpośrednio w Twoim workspace -- Uruchamiać polecenia terminala -- Automatyzować działania przeglądarki -- Integrować się z dowolnym API/modelem kompatybilnym z OpenAI lub niestandardowym -- Dostosowywać swoją "osobowość" i możliwości poprzez **Niestandardowe Tryby** - -Niezależnie od tego, czy szukasz elastycznego partnera do kodowania, architekta systemu, czy wyspecjalizowanych ról, takich jak inżynier QA lub menedżer produktu, Roo Code może pomóc Ci budować oprogramowanie efektywniej. - -Sprawdź [CHANGELOG](../../CHANGELOG.md), aby uzyskać szczegółowe informacje o aktualizacjach i poprawkach. - ---- - -## 🎉 Roo Code 3.25 został wydany - -Roo Code 3.25 wprowadza potężne nowe funkcje i znaczące usprawnienia, aby ulepszyć Twój przepływ pracy deweloperskiej! - -- **Zarządzanie Sesjami Przeglądarki** - Zarządzaj wieloma sesjami przeglądarki jednocześnie, umożliwiając separację różnych zadań i środowisk testowych. -- **Buforowanie Promptów** - Buforuj często używane prompty, aby znacznie skrócić czas odpowiedzi i zmniejszyć użycie API. -- **Funkcjonalność Użycia Komputera** - AI może bezpośrednio wchodzić w interakcje z aplikacjami desktopowymi, robić zrzuty ekranu oraz wykonywać akcje kliknięcia i pisania. - ---- - -## Co potrafi Roo Code? - -- 🚀 **Generować kod** na podstawie opisów w języku naturalnym -- 🔧 **Refaktoryzować i debugować** istniejący kod -- 📝 **Pisać i aktualizować** dokumentację -- 🤔 **Odpowiadać na pytania** dotyczące Twojej bazy kodu -- 🔄 **Automatyzować** powtarzalne zadania -- 🏗️ **Tworzyć** nowe pliki i projekty - -## Szybki start - -1. [Zainstaluj Roo Code](https://docs.roocode.com/getting-started/installing) -2. [Połącz swojego dostawcę AI](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [Wypróbuj swoje pierwsze zadanie](https://docs.roocode.com/getting-started/your-first-task) - -## Kluczowe funkcje - -### Wiele trybów - -Roo Code dostosowuje się do Twoich potrzeb za pomocą wyspecjalizowanych [trybów](https://docs.roocode.com/basic-usage/using-modes): - -- **Tryb Code:** Do ogólnych zadań kodowania -- **Tryb Architect:** Do planowania i przywództwa technicznego -- **Tryb Ask:** Do odpowiadania na pytania i dostarczania informacji -- **Tryb Debug:** Do systematycznej diagnozy problemów -- **[Niestandardowe tryby](https://docs.roocode.com/advanced-usage/custom-modes):** Twórz nieograniczoną liczbę wyspecjalizowanych person do audytów bezpieczeństwa, optymalizacji wydajności, dokumentacji lub dowolnych innych zadań - -### Inteligentne narzędzia - -Roo Code jest wyposażony w potężne [narzędzia](https://docs.roocode.com/basic-usage/how-tools-work), które mogą: - -- Czytać i zapisywać pliki w Twoim projekcie -- Wykonywać polecenia w terminalu VS Code -- Kontrolować przeglądarkę internetową -- Korzystać z zewnętrznych narzędzi poprzez [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) - -MCP rozszerza możliwości Roo Code, umożliwiając dodawanie nieograniczonej liczby niestandardowych narzędzi. Integruj się z zewnętrznymi API, łącz z bazami danych lub twórz wyspecjalizowane narzędzia deweloperskie - MCP zapewnia framework, aby rozszerzyć funkcjonalność Roo Code w celu spełnienia Twoich specyficznych potrzeb. - -### Personalizacja - -Spraw, aby Roo Code działał po Twojemu za pomocą: - -- [Niestandardowych instrukcji](https://docs.roocode.com/advanced-usage/custom-instructions) dla spersonalizowanego zachowania -- [Niestandardowych trybów](https://docs.roocode.com/advanced-usage/custom-modes) dla wyspecjalizowanych zadań -- [Lokalnych modeli](https://docs.roocode.com/advanced-usage/local-models) do użytku offline -- [Ustawień auto-zatwierdzania](https://docs.roocode.com/advanced-usage/auto-approving-actions) dla szybszych przepływów pracy +

+Więcej szybkich filmów instruktażowych i prezentujących funkcje... +

## Zasoby -### Dokumentacja - -- [Podstawowy przewodnik użytkowania](https://docs.roocode.com/basic-usage/the-chat-interface) -- [Zaawansowane funkcje](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [Często zadawane pytania](https://docs.roocode.com/faq) - -### Społeczność - -- **Discord:** [Dołącz do naszego serwera Discord](https://discord.gg/roocode), aby uzyskać pomoc w czasie rzeczywistym i dyskusje -- **Reddit:** [Odwiedź nasz subreddit](https://www.reddit.com/r/RooCode), aby dzielić się doświadczeniami i wskazówkami -- **GitHub:** [Zgłaszaj problemy](https://github.com/RooCodeInc/Roo-Code/issues) lub [proś o funkcje](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[Dokumentacja](https://docs.roocode.com):** Oficjalny przewodnik po instalacji, konfiguracji i opanowaniu Roo Code. +- **[Kanał YouTube](https://youtube.com/@roocodeyt?feature=shared):** Oglądaj samouczki i zobacz funkcje w akcji. +- **[Serwer Discord](https://discord.gg/roocode):** Dołącz do społeczności, aby uzyskać pomoc i dyskutować w czasie rzeczywistym. +- **[Społeczność Reddit](https://www.reddit.com/r/RooCode):** Dziel się swoimi doświadczeniami i zobacz, co budują inni. +- **[Problemy na GitHub](https://github.com/RooCodeInc/Roo-Code/issues):** Zgłaszaj błędy i śledź rozwój. +- **[Prośby o funkcje](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** Masz pomysł? Podziel się nim z deweloperami. --- -## Lokalna konfiguracja i rozwój +## Konfiguracja lokalna i programowanie 1. **Sklonuj** repozytorium: @@ -134,45 +98,72 @@ git clone https://github.com/RooCodeInc/Roo-Code.git 2. **Zainstaluj zależności**: ```sh -npm run install:all +pnpm install ``` -3. **Uruchom webview (aplikację Vite/React z HMR)**: +3. **Uruchom rozszerzenie**: + +Istnieje kilka sposobów na uruchomienie rozszerzenia Roo Code: + +### Tryb deweloperski (F5) + +Do aktywnego programowania użyj wbudowanego debugowania VSCode: + +Naciśnij `F5` (lub przejdź do **Uruchom** → **Rozpocznij debugowanie**) w VSCode. Otworzy to nowe okno VSCode z uruchomionym rozszerzeniem Roo Code. + +- Zmiany w widoku internetowym pojawią się natychmiast. +- Zmiany w rdzeniu rozszerzenia również zostaną automatycznie przeładowane na gorąco. + +### Zautomatyzowana instalacja VSIX + +Aby zbudować i zainstalować rozszerzenie jako pakiet VSIX bezpośrednio w VSCode: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **Debugowanie**: - Naciśnij `F5` (lub **Uruchom** → **Rozpocznij debugowanie**) w VSCode, aby otworzyć nową sesję z załadowanym Roo Code. +To polecenie: -Zmiany w webview pojawią się natychmiast. Zmiany w podstawowym rozszerzeniu będą wymagać ponownego uruchomienia hosta rozszerzenia. +- Zapyta, którego polecenia edytora użyć (code/cursor/code-insiders) - domyślnie 'code' +- Odinstaluje każdą istniejącą wersję rozszerzenia. +- Zbuduje najnowszy pakiet VSIX. +- Zainstaluje nowo zbudowany VSIX. +- Poprosi o ponowne uruchomienie VS Code w celu wprowadzenia zmian. -Alternatywnie możesz zbudować plik .vsix i zainstalować go bezpośrednio w VSCode: +Opcje: -```sh -npm run build -``` +- `-y`: Pomiń wszystkie monity o potwierdzenie i użyj wartości domyślnych +- `--editor=`: Określ polecenie edytora (np. `--editor=cursor` lub `--editor=code-insiders`) -Plik `.vsix` pojawi się w katalogu `bin/` i można go zainstalować za pomocą: +### Ręczna instalacja VSIX -```sh -code --install-extension bin/roo-cline-.vsix -``` +Jeśli wolisz zainstalować pakiet VSIX ręcznie: -Używamy [changesets](https://github.com/changesets/changesets) do wersjonowania i publikowania. Sprawdź nasz `CHANGELOG.md`, aby zobaczyć informacje o wydaniu. +1. Najpierw zbuduj pakiet VSIX: + ```sh + pnpm vsix + ``` +2. Plik `.vsix` zostanie wygenerowany w katalogu `bin/` (np. `bin/roo-cline-.vsix`). +3. Zainstaluj go ręcznie za pomocą VSCode CLI: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- + +Używamy [changesets](https://github.com/changesets/changesets) do wersjonowania i publikowania. Sprawdź nasz `CHANGELOG.md`, aby uzyskać informacje o wydaniu. --- ## Zastrzeżenie -**Uwaga** Roo Code, Inc **nie** składa żadnych oświadczeń ani gwarancji dotyczących jakiegokolwiek kodu, modeli lub innych narzędzi dostarczonych lub udostępnionych w związku z Roo Code, jakichkolwiek powiązanych narzędzi stron trzecich lub jakichkolwiek wynikowych danych wyjściowych. Przyjmujesz na siebie **wszystkie ryzyka** związane z użytkowaniem takich narzędzi lub danych wyjściowych; takie narzędzia są dostarczane na zasadzie **"TAK JAK JEST"** i **"WEDŁUG DOSTĘPNOŚCI"**. Takie ryzyka mogą obejmować, bez ograniczeń, naruszenie własności intelektualnej, luki w zabezpieczeniach cybernetycznych lub ataki, uprzedzenia, niedokładności, błędy, wady, wirusy, przestoje, utratę lub uszkodzenie mienia i/lub obrażenia ciała. Ponosisz wyłączną odpowiedzialność za korzystanie z takich narzędzi lub danych wyjściowych (w tym, bez ograniczeń, ich legalność, stosowność i wyniki). +**Uwaga** Roo Code, Inc. **nie** składa żadnych oświadczeń ani nie udziela żadnych gwarancji dotyczących jakiegokolwiek kodu, modeli lub innych narzędzi dostarczonych lub udostępnionych w związku z Roo Code, jakimikolwiek powiązanymi narzędziami stron trzecich ani żadnymi wynikami. Użytkownik przyjmuje na siebie **wszelkie ryzyko** związane z korzystaniem z takich narzędzi lub wyników; takie narzędzia są dostarczane na zasadzie **"TAK JAK JEST"** i **"W MIARĘ DOSTĘPNOŚCI"**. Takie ryzyko może obejmować, bez ograniczeń, naruszenie własności intelektualnej, luki w zabezpieczeniach cybernetycznych lub ataki, stronniczość, niedokładności, błędy, wady, wirusy, przestoje, utratę lub uszkodzenie mienia i/lub obrażenia ciała. Użytkownik ponosi wyłączną odpowiedzialność za korzystanie z takich narzędzi lub wyników (w tym, bez ograniczeń, za ich legalność, stosowność i wyniki). --- ## Wkład -Kochamy wkład społeczności! Zacznij od przeczytania naszego [CONTRIBUTING.md](CONTRIBUTING.md). +Uwielbiamy wkłady społeczności! Zacznij od przeczytania naszego pliku [CONTRIBUTING.md](CONTRIBUTING.md). --- @@ -182,54 +173,14 @@ Dziękujemy wszystkim naszym współtwórcom, którzy pomogli ulepszyć Roo Code -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) ## Licencja -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- -**Ciesz się Roo Code!** Niezależnie od tego, czy trzymasz go na krótkiej smyczy, czy pozwalasz mu swobodnie działać autonomicznie, nie możemy się doczekać, aby zobaczyć, co zbudujesz. Jeśli masz pytania lub pomysły na funkcje, wpadnij na naszą [społeczność Reddit](https://www.reddit.com/r/RooCode/) lub [Discord](https://discord.gg/roocode). Szczęśliwego kodowania! +**Miłej zabawy z Roo Code!** Trzymaj go na krótkiej smyczy albo pozwól działać autonomicznie — nie możemy się doczekać, co zbudujesz. Masz pytania lub pomysły na funkcje? Wpadnij na naszą [społeczność Reddit](https://www.reddit.com/r/RooCode/) lub [Discord](https://discord.gg/roocode). Miłego kodowania! diff --git a/locales/pt-BR/CONTRIBUTING.md b/locales/pt-BR/CONTRIBUTING.md index ae602a1ca0..a45da17f13 100644 --- a/locales/pt-BR/CONTRIBUTING.md +++ b/locales/pt-BR/CONTRIBUTING.md @@ -13,126 +13,129 @@ # Contribuindo para o Roo Code -O Roo Code é um projeto impulsionado pela comunidade e valorizamos muito cada contribuição. Para simplificar a colaboração, operamos com uma abordagem [Issue-First](#abordagem-issue-first), o que significa que todos os [Pull Requests (PRs)](#enviando-um-pull-request) devem primeiro estar vinculados a uma Issue do GitHub. Por favor, leia este guia com atenção. +O Roo Code é um projeto impulsionado pela comunidade, e valorizamos profundamente cada contribuição. Para agilizar a colaboração, operamos com base em uma [abordagem de "primeiro a issue"](#abordagem-de-primeiro-a-issue), o que significa que todas as [Pull Requests (PRs)](#enviando-uma-pull-request) devem primeiro estar vinculadas a uma Issue do GitHub. Por favor, revise este guia com atenção. ## Índice -- [Antes de Contribuir](#antes-de-contribuir) -- [Encontrando & Planejando sua Contribuição](#encontrando--planejando-sua-contribuição) -- [Processo de Desenvolvimento & Submissão](#processo-de-desenvolvimento--submissão) +- [Antes de contribuir](#antes-de-contribuir) +- [Encontrando e planejando sua contribuição](#encontrando-e-planejando-sua-contribuição) +- [Processo de desenvolvimento e envio](#processo-de-desenvolvimento-e-envio) - [Legal](#legal) -## Antes de Contribuir +## Antes de contribuir ### 1. Código de Conduta -Todos os colaboradores devem seguir nosso [Código de Conduta](./CODE_OF_CONDUCT.md). +Todos os contribuidores devem aderir ao nosso [Código de Conduta](./CODE_OF_CONDUCT.md). -### 2. Roadmap do Projeto +### 2. Roteiro do projeto -Nosso roadmap orienta a direção do projeto. Alinhe suas contribuições com estes objetivos principais: +Nosso roteiro guia a direção do projeto. Alinhe suas contribuições com estes objetivos principais: -### Confiabilidade em Primeiro Lugar +### Confiabilidade em primeiro lugar -- Garantir que a edição de diferenças e a execução de comandos sejam consistentemente confiáveis -- Reduzir pontos de atrito que desencorajam o uso regular -- Garantir operação suave em todos os idiomas e plataformas -- Expandir o suporte robusto para uma ampla variedade de provedores e modelos de IA +- Garanta que a edição de diff e a execução de comandos sejam consistentemente confiáveis. +- Reduza os pontos de atrito que desencorajam o uso regular. +- Garanta uma operação tranquila em todas as localidades e plataformas. +- Expanda o suporte robusto para uma ampla variedade de provedores e modelos de IA. -### Experiência de Usuário Aprimorada +### Experiência do usuário aprimorada -- Simplificar a interface do usuário para maior clareza e intuitividade -- Melhorar continuamente o fluxo de trabalho para atender às altas expectativas dos desenvolvedores +- Simplifique a UI/UX para clareza e intuitividade. +- Melhore continuamente o fluxo de trabalho para atender às altas expectativas que os desenvolvedores têm das ferramentas de uso diário. -### Liderança em Desempenho de Agentes +### Liderando no desempenho do agente -- Estabelecer benchmarks de avaliação abrangentes (evals) para medir a produtividade no mundo real -- Facilitar para que todos possam executar e interpretar essas avaliações -- Fornecer melhorias que demonstrem aumentos claros nas pontuações de avaliação +- Estabeleça benchmarks de avaliação abrangentes (evals) para medir a produtividade do mundo real. +- Facilite para que todos possam executar e interpretar facilmente essas avaliações. +- Envie melhorias que demonstrem aumentos claros nas pontuações de avaliação. -Mencione o alinhamento com estas áreas em seus PRs. +Mencione o alinhamento com essas áreas em seus PRs. -### 3. Junte-se à Comunidade Roo Code +### 3. Junte-se à comunidade Roo Code -- **Principal:** Junte-se ao nosso [Discord](https://discord.gg/roocode) e envie um DM para **Hannes Rudolph (`hrudolph`)**. -- **Alternativa:** Colaboradores experientes podem participar diretamente via [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1). +- **Principal:** Junte-se ao nosso [Discord](https://discord.gg/roocode) e envie uma DM para **Hannes Rudolph (`hrudolph`)**. +- **Alternativa:** Contribuidores experientes могут se envolver diretamente através dos [Projetos do GitHub](https://github.com/orgs/RooCodeInc/projects/1). -## Encontrando & Planejando sua Contribuição +## Encontrando e planejando sua contribuição -### Tipos de Contribuição +### Tipos de contribuições -- **Correção de bugs:** Corrigir problemas no código. -- **Novos recursos:** Adicionar novas funcionalidades. -- **Documentação:** Melhorar guias e clareza. +- **Correções de bugs:** abordando problemas de código. +- **Novos recursos:** adicionando funcionalidade. +- **Documentação:** melhorando guias e clareza. -### Abordagem Issue-First +### Abordagem de primeiro a issue -Todas as contribuições devem começar com uma Issue do GitHub. +Todas as contribuições começam com uma Issue do GitHub usando nossos modelos simplificados. -- **Verificar issues existentes:** Procure em [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). -- **Criar uma issue:** Use os templates apropriados: - - **Bugs:** Template "Bug Report". - - **Recursos:** Template "Detailed Feature Proposal". Aprovação necessária antes de começar. -- **Reivindicar issues:** Comente e aguarde atribuição oficial. +- **Verifique as issues existentes**: Pesquise nas [Issues do GitHub](https://github.com/RooCodeInc/Roo-Code/issues). +- **Crie uma issue** usando: + - **Melhorias:** modelo "Solicitação de melhoria" (linguagem simples focada no benefício do usuário). + - **Bugs:** modelo "Relatório de bug" (reprodução mínima + esperado vs. real + versão). +- **Quer trabalhar nisso?** Comente "Reivindicando" na issue e envie uma DM para **Hannes Rudolph (`hrudolph`)** no [Discord](https://discord.gg/roocode) para ser atribuído. A atribuição será confirmada no tópico. +- **Os PRs devem ser vinculados à issue.** PRs não vinculados podem ser fechados. -**PRs sem issues aprovadas podem ser fechados.** +### Decidindo no que trabalhar -### Decidindo no que Trabalhar +- Verifique o [Projeto do GitHub](https://github.com/orgs/RooCodeInc/projects/1) para issues "Issue [Não atribuída]". +- Para documentação, visite [Documentação do Roo Code](https://github.com/RooCodeInc/Roo-Code-Docs). -- Confira o [Projeto GitHub](https://github.com/orgs/RooCodeInc/projects/1) para "Good First Issues" não atribuídas. -- Para documentação, visite [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). +### Relatando bugs -### Relatando Bugs +- Verifique primeiro os relatórios existentes. +- Crie um novo bug usando o [modelo "Relatório de bug"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) com: + - Passos de reprodução claros e numerados + - Resultado esperado vs. real + - Versão do Roo Code (obrigatório); provedor/modelo de IA, se relevante +- **Problemas de segurança**: Relate em particular através de [avisos de segurança](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). -- Verifique primeiro se já existem relatórios. -- Crie novos relatórios de bugs usando o [template "Bug Report"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose). -- **Vulnerabilidades de segurança:** Relate de forma privada via [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). +## Processo de desenvolvimento e envio -## Processo de Desenvolvimento & Submissão +### Configuração de desenvolvimento -### Configuração de Desenvolvimento - -1. **Fork & Clone:** +1. **Fork e Clone:** ``` -git clone https://github.com/SEU_USUÁRIO/Roo-Code.git +git clone https://github.com/SEU_NOME_DE_USUARIO/Roo-Code.git ``` -2. **Instalar dependências:** +2. **Instale as dependências:** ``` -npm run install:all +pnpm install ``` -3. **Depuração:** Abra com VS Code (`F5`). +3. **Depuração:** Abra com o VS Code (`F5`). -### Diretrizes para Escrever Código +### Diretrizes para escrever código - Um PR focado por recurso ou correção. -- Siga as melhores práticas de ESLint e TypeScript. -- Escreva commits claros e descritivos referenciando issues (ex: `Fixes #123`). +- Siga as melhores práticas do ESLint e TypeScript. +- Escreva commits claros e descritivos referenciando issues (por exemplo, `Corrige #123`). - Forneça testes completos (`npm test`). -- Rebase na branch `main` mais recente antes do envio. +- Faça o rebase para o branch `main` mais recente antes do envio. -### Enviando um Pull Request +### Enviando uma Pull Request -- Comece como **PR em rascunho** se buscar feedback antecipado. -- Descreva claramente suas alterações seguindo o Template de Pull Request. -- Forneça capturas de tela/vídeos para alterações de UI. -- Indique se atualizações de documentação são necessárias. +- Comece como um **PR de rascunho** se estiver buscando feedback inicial. +- Descreva claramente suas alterações seguindo o Modelo de Pull Request. +- Vincule a issue na descrição/título do PR (por exemplo, "Corrige #123"). +- Forneça capturas de tela/vídeos para alterações na interface do usuário. +- Indique se as atualizações da documentação são necessárias. ### Política de Pull Request -- Deve referenciar issues pré-aprovadas e atribuídas. -- PRs que não seguem a política podem ser fechados. -- PRs devem passar nos testes de CI, alinhar-se ao roadmap e ter documentação clara. +- Deve fazer referência a uma Issue do GitHub atribuída. Para ser atribuído: comente "Reivindicando" na issue e envie uma DM para **Hannes Rudolph (`hrudolph`)** no [Discord](https://discord.gg/roocode). A atribuição será confirmada no tópico. +- PRs não vinculados podem ser fechados. +- Os PRs devem passar nos testes de CI, estar alinhados com o roteiro e ter documentação clara. -### Processo de Revisão +### Processo de revisão -- **Triagem diária:** Verificações rápidas pelos mantenedores. -- **Revisão semanal detalhada:** Avaliação abrangente. -- **Itere rapidamente** com base no feedback. +- **Triagem diária:** verificações rápidas pelos mantenedores. +- **Revisão aprofundada semanal:** avaliação abrangente. +- **Itere prontamente** com base no feedback. ## Legal -Ao enviar um pull request, você concorda que suas contribuições serão licenciadas sob a Licença Apache 2.0, consistente com o licenciamento do Roo Code. +Ao contribuir, você concorda que suas contribuições serão licenciadas sob a Licença Apache 2.0, consistente com o licenciamento do Roo Code. diff --git a/locales/pt-BR/README.md b/locales/pt-BR/README.md index e3f1c9042a..23c880a686 100644 --- a/locales/pt-BR/README.md +++ b/locales/pt-BR/README.md @@ -1,125 +1,89 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • Português (BR) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Junte-se à Comunidade Roo Code

-

Conecte-se com desenvolvedores, contribua com ideias e mantenha-se atualizado com as ferramentas de codificação mais recentes com IA.

- - Entrar no Discord - Entrar no Reddit - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ Obtenha ajuda rápida → Junte-se ao Discord • Prefere assíncrono? → Junte-se ao r/RooCode

-Baixar no VS Marketplace -Solicitar Recursos -Avaliar & Comentar -Documentação +# Roo Code + +> Seu time de desenvolvimento com IA, direto no seu editor + +
+ 🌐 Idiomas disponíveis + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## O que o Roo Code pode fazer por VOCÊ? + +- Gerar código a partir de descrições em linguagem natural +- Adapte-se com os Modos: Código, Arquiteto, Pergunta, Depuração e Modos Personalizados +- Refatorar e depurar código existente +- Escrever e atualizar documentação +- Responder a perguntas sobre sua base de código +- Automatizar tarefas repetitivas +- Utilizar servidores MCP + +## Modos + +O Roo Code se adapta à sua maneira de trabalhar, e não o contrário: + +- Modo Código: codificação diária, edições e operações de arquivo +- Modo Arquiteto: planeje sistemas, especificações e migrações +- Modo Pergunta: respostas rápidas, explicações e documentos +- Modo Depuração: rastreie problemas, adicione logs, isole as causas raiz +- Modos Personalizados: crie modos especializados para sua equipe ou fluxo de trabalho +- Roomote Control: O Roomote Control permite controlar remotamente tarefas em execução na sua instância local do VS Code. + +Saiba mais: [Usar Modos](https://docs.roocode.com/basic-usage/using-modes) • [Modos personalizados](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## Vídeos de tutorial e recursos + +
+ +| | | | +| :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Instalando o Roo Code |
Configurando perfis |
Indexação da base de código | +|
Modos personalizados |
Checkpoints |
Listas de tarefas |
- -**Roo Code** é um **agente de codificação autônomo** movido a IA que reside no seu editor. Ele pode: - -- Comunicar-se em linguagem natural -- Ler e escrever arquivos diretamente no seu espaço de trabalho -- Executar comandos do terminal -- Automatizar ações do navegador -- Integrar com qualquer API/modelo compatível com OpenAI ou personalizado -- Adaptar sua "personalidade" e capacidades através de **Modos Personalizados** - -Seja você esteja buscando um parceiro de codificação flexível, um arquiteto de sistema ou funções especializadas como engenheiro de QA ou gerente de produto, o Roo Code pode ajudá-lo a construir software com mais eficiência. - -Confira o [CHANGELOG](../../CHANGELOG.md) para atualizações e correções detalhadas. - ---- - -## 🎉 Roo Code 3.25 foi lançado - -O Roo Code 3.25 traz novos recursos poderosos e melhorias significativas para aprimorar seu fluxo de trabalho de desenvolvimento! - -- **Gerenciamento de Sessões do Navegador** - Gerencie múltiplas sessões de navegador simultaneamente, permitindo a separação de diferentes tarefas e ambientes de teste. -- **Cache de Prompts** - Faça cache de prompts frequentemente usados para reduzir significativamente os tempos de resposta e diminuir o uso da API. -- **Funcionalidade de Uso do Computador** - A IA pode interagir diretamente com aplicações desktop, tirar screenshots e executar ações de clique e digitação. - ---- - -## O que o Roo Code pode fazer? - -- 🚀 **Gerar código** a partir de descrições em linguagem natural -- 🔧 **Refatorar e depurar** código existente -- 📝 **Escrever e atualizar** documentação -- 🤔 **Responder perguntas** sobre sua base de código -- 🔄 **Automatizar** tarefas repetitivas -- 🏗️ **Criar** novos arquivos e projetos - -## Início Rápido - -1. [Instale o Roo Code](https://docs.roocode.com/getting-started/installing) -2. [Conecte seu provedor de IA](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [Experimente sua primeira tarefa](https://docs.roocode.com/getting-started/your-first-task) - -## Principais Recursos - -### Múltiplos Modos - -O Roo Code se adapta às suas necessidades com [modos](https://docs.roocode.com/basic-usage/using-modes) especializados: - -- **Modo Code:** Para tarefas gerais de codificação -- **Modo Architect:** Para planejamento e liderança técnica -- **Modo Ask:** Para responder perguntas e fornecer informações -- **Modo Debug:** Para diagnóstico sistemático de problemas -- **[Modos Personalizados](https://docs.roocode.com/advanced-usage/custom-modes):** Crie personas especializadas ilimitadas para auditoria de segurança, otimização de desempenho, documentação ou qualquer outra tarefa - -### Ferramentas Inteligentes - -O Roo Code vem com poderosas [ferramentas](https://docs.roocode.com/basic-usage/how-tools-work) que podem: - -- Ler e escrever arquivos em seu projeto -- Executar comandos no seu terminal VS Code -- Controlar um navegador web -- Usar ferramentas externas via [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) - -O MCP amplia as capacidades do Roo Code permitindo que você adicione ferramentas personalizadas ilimitadas. Integre com APIs externas, conecte-se a bancos de dados ou crie ferramentas de desenvolvimento especializadas - o MCP fornece o framework para expandir a funcionalidade do Roo Code para atender às suas necessidades específicas. - -### Personalização - -Faça o Roo Code funcionar do seu jeito com: - -- [Instruções Personalizadas](https://docs.roocode.com/advanced-usage/custom-instructions) para comportamento personalizado -- [Modos Personalizados](https://docs.roocode.com/advanced-usage/custom-modes) para tarefas especializadas -- [Modelos Locais](https://docs.roocode.com/advanced-usage/local-models) para uso offline -- [Configurações de Auto-Aprovação](https://docs.roocode.com/advanced-usage/auto-approving-actions) para fluxos de trabalho mais rápidos +

+Mais vídeos rápidos de tutorial e recursos... +

## Recursos -### Documentação - -- [Guia de Uso Básico](https://docs.roocode.com/basic-usage/the-chat-interface) -- [Recursos Avançados](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [Perguntas Frequentes](https://docs.roocode.com/faq) - -### Comunidade - -- **Discord:** [Participe do nosso servidor Discord](https://discord.gg/roocode) para ajuda em tempo real e discussões -- **Reddit:** [Visite nosso subreddit](https://www.reddit.com/r/RooCode) para compartilhar experiências e dicas -- **GitHub:** [Reportar problemas](https://github.com/RooCodeInc/Roo-Code/issues) ou [solicitar recursos](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[Documentação](https://docs.roocode.com):** O guia oficial para instalar, configurar e dominar o Roo Code. +- **[Canal do YouTube](https://youtube.com/@roocodeyt?feature=shared):** Assista a tutoriais e veja os recursos em ação. +- **[Servidor do Discord](https://discord.gg/roocode):** Junte-se à comunidade para ajuda e discussão em tempo real. +- **[Comunidade do Reddit](https://www.reddit.com/r/RooCode):** Compartilhe suas experiências e veja o que os outros estão construindo. +- **[Issues do GitHub](https://github.com/RooCodeInc/Roo-Code/issues):** Relate bugs e acompanhe o desenvolvimento. +- **[Solicitações de recursos](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** Tem uma ideia? Compartilhe com os desenvolvedores. --- @@ -134,39 +98,66 @@ git clone https://github.com/RooCodeInc/Roo-Code.git 2. **Instale as dependências**: ```sh -npm run install:all +pnpm install ``` -3. **Inicie o webview (aplicativo Vite/React com HMR)**: +3. **Execute a extensão**: + +Existem várias maneiras de executar a extensão Roo Code: + +### Modo de Desenvolvimento (F5) + +Para desenvolvimento ativo, use a depuração incorporada do VSCode: + +Pressione `F5` (ou vá para **Executar** → **Iniciar Depuração**) no VSCode. Isso abrirá uma nova janela do VSCode com a extensão Roo Code em execução. + +- As alterações na visualização da web aparecerão imediatamente. +- As alterações na extensão principal também serão recarregadas automaticamente. + +### Instalação automatizada de VSIX + +Para construir e instalar a extensão como um pacote VSIX diretamente no VSCode: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **Depuração**: - Pressione `F5` (ou **Executar** → **Iniciar Depuração**) no VSCode para abrir uma nova sessão com o Roo Code carregado. +Este comando irá: -Alterações no webview aparecerão imediatamente. Alterações na extensão principal exigirão a reinicialização do host da extensão. +- Perguntar qual comando do editor usar (code/cursor/code-insiders) - o padrão é 'code' +- Desinstalar qualquer versão existente da extensão. +- Construir o pacote VSIX mais recente. +- Instalar o VSIX recém-construído. +- Solicitar que você reinicie o VS Code para que as alterações entrem em vigor. -Alternativamente, você pode construir um .vsix e instalá-lo diretamente no VSCode: +Opções: -```sh -npm run build -``` +- `-y`: Pular todos os prompts de confirmação e usar os padrões +- `--editor=`: Especifique o comando do editor (por exemplo, `--editor=cursor` ou `--editor=code-insiders`) -Um arquivo `.vsix` aparecerá no diretório `bin/` que pode ser instalado com: +### Instalação Manual de VSIX -```sh -code --install-extension bin/roo-cline-.vsix -``` +Se preferir instalar o pacote VSIX manualmente: + +1. Primeiro, construa o pacote VSIX: + ```sh + pnpm vsix + ``` +2. Um arquivo `.vsix` será gerado no diretório `bin/` (por exemplo, `bin/roo-cline-.vsix`). +3. Instale-o manualmente usando a CLI do VSCode: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- Usamos [changesets](https://github.com/changesets/changesets) para versionamento e publicação. Verifique nosso `CHANGELOG.md` para notas de lançamento. --- -## Aviso Legal +## Isenção de responsabilidade -**Por favor, note** que a Roo Code, Inc **não** faz nenhuma representação ou garantia em relação a qualquer código, modelos ou outras ferramentas fornecidas ou disponibilizadas em conexão com o Roo Code, quaisquer ferramentas de terceiros associadas, ou quaisquer saídas resultantes. Você assume **todos os riscos** associados ao uso de tais ferramentas ou saídas; tais ferramentas são fornecidas em uma base **"COMO ESTÁ"** e **"COMO DISPONÍVEL"**. Tais riscos podem incluir, sem limitação, violação de propriedade intelectual, vulnerabilidades cibernéticas ou ataques, viés, imprecisões, erros, defeitos, vírus, tempo de inatividade, perda ou dano de propriedade e/ou lesões pessoais. Você é o único responsável pelo seu uso de tais ferramentas ou saídas (incluindo, sem limitação, a legalidade, adequação e resultados das mesmas). +**Observe** que a Roo Code, Inc. **não** faz representações ou garantias em relação a qualquer código, modelos ou outras ferramentas fornecidas ou disponibilizadas em conexão com o Roo Code, quaisquer ferramentas de terceiros associadas ou quaisquer saídas resultantes. Você assume **todos os riscos** associados ao uso de tais ferramentas ou saídas; tais ferramentas são fornecidas **"COMO ESTÃO"** e **"CONFORME DISPONÍVEIS"**. Tais riscos podem incluir, sem limitação, violação de propriedade intelectual, vulnerabilidades ou ataques cibernéticos, viés, imprecisões, erros, defeitos, vírus, tempo de inatividade, perda ou dano de propriedade e/ou lesões pessoais. Você é o único responsável pelo uso de tais ferramentas ou saídas (incluindo, sem limitação, a legalidade, adequação e resultados das mesmas). --- @@ -182,54 +173,14 @@ Obrigado a todos os nossos contribuidores que ajudaram a tornar o Roo Code melho -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) ## Licença -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- -**Aproveite o Roo Code!** Seja você o mantenha em uma coleira curta ou deixe-o vagar autonomamente, mal podemos esperar para ver o que você construirá. Se você tiver dúvidas ou ideias de recursos, passe por nossa [comunidade Reddit](https://www.reddit.com/r/RooCode/) ou [Discord](https://discord.gg/roocode). Feliz codificação! +**Aproveite o Roo Code!** Quer você o mantenha na coleira curta ou o deixe perambular autonomamente, mal podemos esperar para ver o que você vai construir. Se tiver dúvidas ou ideias de recursos, passe na nossa [comunidade do Reddit](https://www.reddit.com/r/RooCode/) ou no [Discord](https://discord.gg/roocode). Feliz codificação! diff --git a/locales/ru/CONTRIBUTING.md b/locales/ru/CONTRIBUTING.md index 89a4e7d529..fa3b1b2c29 100644 --- a/locales/ru/CONTRIBUTING.md +++ b/locales/ru/CONTRIBUTING.md @@ -13,126 +13,129 @@ # Вклад в Roo Code -Roo Code — проект, управляемый сообществом, и мы высоко ценим каждый вклад. Для упрощения сотрудничества мы работаем по принципу [Issue-First](#подход-issue-first), что означает, что все [Pull Request (PR)](#отправка-pull-request) должны сначала быть связаны с GitHub Issue. Пожалуйста, внимательно ознакомься с этим руководством. +Roo Code — это проект, управляемый сообществом, и мы глубоко ценим каждый вклад. Чтобы упростить совместную работу, мы работаем на основе [подхода «сначала задача»](#подход-сначала-задача), что означает, что все [запросы на слияние (PR)](#подача-запроса-на-слияние) должны быть сначала связаны с задачей на GitHub. Пожалуйста, внимательно ознакомьтесь с этим руководством. -## Содержание +## Оглавление -- [Перед тем как внести вклад](#перед-тем-как-внести-вклад) -- [Поиск и планирование вклада](#поиск-и-планирование-вклада) -- [Процесс разработки и отправки](#процесс-разработки-и-отправки) -- [Юридическая информация](#юридическая-информация) +- [Прежде чем вы начнете вносить свой вклад](#прежде-чем-вы-начнете-вносить-свой-вклад) +- [Поиск и планирование вашего вклада](#поиск-и-планирование-вашего-вклада) +- [Процесс разработки и подачи](#процесс-разработки-и-подачи) +- [Юридические вопросы](#юридические-вопросы) -## Перед тем как внести вклад +## Прежде чем вы начнете вносить свой вклад ### 1. Кодекс поведения -Все участники должны соблюдать наш [Кодекс поведения](./CODE_OF_CONDUCT.md). +Все участники должны придерживаться нашего [Кодекса поведения](./CODE_OF_CONDUCT.md). ### 2. Дорожная карта проекта -Наша дорожная карта определяет направление проекта. Согласуй свой вклад с этими ключевыми целями: +Наша дорожная карта определяет направление развития проекта. Согласуйте свои вклады с этими ключевыми целями: -### Надежность в первую очередь +### Надежность прежде всего -- Обеспечение стабильной работы редактирования различий и выполнения команд -- Сокращение точек трения, препятствующих регулярному использованию -- Гарантия бесперебойной работы на всех языках и платформах -- Расширение надежной поддержки для широкого спектра ИИ-провайдеров и моделей +- Обеспечьте постоянную надежность редактирования различий и выполнения команд. +- Уменьшите количество проблемных моментов, которые отбивают желание регулярного использования. +- Гарантируйте бесперебойную работу во всех локалях и на всех платформах. +- Расширьте надежную поддержку для широкого спектра поставщиков и моделей ИИ. ### Улучшенный пользовательский опыт -- Упрощение пользовательского интерфейса для большей ясности и интуитивности -- Постоянное совершенствование рабочего процесса для соответствия высоким ожиданиям разработчиков +- Оптимизируйте пользовательский интерфейс/опыт для ясности и интуитивности. +- Постоянно улучшайте рабочий процесс, чтобы соответствовать высоким ожиданиям, которые разработчики предъявляют к инструментам повседневного использования. ### Лидерство в производительности агентов -- Создание комплексных показателей оценки (evals) для измерения реальной продуктивности -- Упрощение запуска и интерпретации этих оценок для всех пользователей -- Внедрение улучшений, демонстрирующих явное повышение оценочных показателей +- Создайте комплексные оценочные тесты (evals) для измерения реальной производительности. +- Сделайте так, чтобы каждый мог легко запускать и интерпретировать эти оценки. +- Поставляйте улучшения, которые демонстрируют явное увеличение оценочных баллов. -Упоминай связь с этими направлениями в своих PR. +Упоминайте о соответствии этим областям в своих PR. -### 3. Присоединяйся к сообществу Roo Code +### 3. Присоединяйтесь к сообществу Roo Code -- **Основной способ:** Присоединись к нашему [Discord](https://discord.gg/roocode) и отправь личное сообщение **Hannes Rudolph (`hrudolph`)**. -- **Альтернатива:** Опытные участники могут взаимодействовать напрямую через [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1). +- **Основной:** Присоединяйтесь к нашему [Discord](https://discord.gg/roocode) и напишите личное сообщение **Hannes Rudolph (`hrudolph`)**. +- **Альтернатива:** Опытные участники mogą напрямую взаимодействовать через [Проекты GitHub](https://github.com/orgs/RooCodeInc/projects/1). -## Поиск и планирование вклада +## Поиск и планирование вашего вклада -### Виды вклада +### Типы вкладов -- **Исправление ошибок:** Решение проблем в коде. -- **Новые функции:** Добавление функциональности. -- **Документация:** Улучшение руководств и ясности. +- **Исправления ошибок:** решение проблем с кодом. +- **Новые функции:** добавление функциональности. +- **Документация:** улучшение руководств и ясности. -### Подход Issue-First +### Подход «сначала задача» -Весь вклад должен начинаться с GitHub Issue. +Все вклады начинаются с задачи на GitHub с использованием наших простых шаблонов. -- **Проверь существующие issues:** Поищи в [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). -- **Создай issue:** Используй подходящие шаблоны: - - **Баги:** Шаблон "Bug Report". - - **Функции:** Шаблон "Detailed Feature Proposal". Требуется одобрение перед началом. -- **Заяви issue:** Оставь комментарий и дождись официального назначения. - -**PR без одобренных issue могут быть закрыты.** +- **Проверьте существующие задачи**: выполните поиск в [задачах GitHub](https://github.com/RooCodeInc/Roo-Code/issues). +- **Создайте задачу**, используя: + - **Улучшения:** шаблон «Запрос на улучшение» (простой язык, ориентированный на пользу для пользователя). + - **Ошибки:** шаблон «Отчет об ошибке» (минимальное воспроизведение + ожидаемый и фактический результат + версия). +- **Хотите над этим поработать?** Напишите комментарий «Забираю» к задаче и напишите личное сообщение **Hannes Rudolph (`hrudolph`)** в [Discord](https://discord.gg/roocode), чтобы вас назначили. Назначение будет подтверждено в ветке. +- **PR должны ссылаться на задачу.** Несвязанные PR могут быть закрыты. ### Решение, над чем работать -- Проверь [GitHub проект](https://github.com/orgs/RooCodeInc/projects/1) на наличие незанятых "Good First Issues". -- Для документации посети [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). +- Проверьте [Проект GitHub](https://github.com/orgs/RooCodeInc/projects/1) на наличие задач «Задача [не назначена]». +- Для документации посетите [Документацию Roo Code](https://github.com/RooCodeInc/Roo-Code-Docs). ### Сообщение об ошибках -- Сначала проверь существующие сообщения. -- Создай новые сообщения об ошибках, используя [шаблон "Bug Report"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose). -- **Уязвимости безопасности:** Сообщай приватно через [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). +- Сначала проверьте существующие отчеты. +- Создайте новую ошибку, используя [шаблон «Отчет об ошибке»](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) с: + - Четкими, пронумерованными шагами воспроизведения + - Ожидаемым и фактическим результатом + - Версией Roo Code (обязательно); поставщиком/моделью ИИ, если применимо +- **Проблемы с безопасностью**: сообщайте в частном порядке через [рекомендации по безопасности](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). -## Процесс разработки и отправки +## Процесс разработки и подачи -### Настройка среды разработки +### Настройка разработки -1. **Fork & Clone:** +1. **Сделайте форк и клонируйте:** ``` -git clone https://github.com/ТВОЙ_ПОЛЬЗОВАТЕЛЬ/Roo-Code.git +git clone https://github.com/ВАШЕ_ИМЯ_ПОЛЬЗОВАТЕЛЯ/Roo-Code.git ``` -2. **Установка зависимостей:** +2. **Установите зависимости:** ``` -npm run install:all +pnpm install ``` -3. **Отладка:** Открой в VS Code (`F5`). +3. **Отладка:** откройте в VS Code (`F5`). ### Руководство по написанию кода - Один сфокусированный PR на функцию или исправление. -- Следуй лучшим практикам ESLint и TypeScript. -- Пиши ясные, описательные сообщения коммитов с ссылками на issues (например, `Fixes #123`). -- Обеспечь тщательное тестирование (`npm test`). -- Перебазируй на последнюю ветку `main` перед отправкой. +- Следуйте лучшим практикам ESLint и TypeScript. +- Пишите четкие, описательные коммиты со ссылкой на задачи (например, `Исправляет #123`). +- Предоставляйте тщательное тестирование (`npm test`). +- Перед отправкой выполните rebase на последнюю ветку `main`. -### Отправка Pull Request +### Подача запроса на слияние -- Начни с **черновика PR**, если ищешь ранний фидбек. -- Четко опиши свои изменения, следуя шаблону Pull Request. -- Предоставь скриншоты/видео для изменений UI. -- Укажи, нужны ли обновления документации. +- Начните с **черновика PR**, если вам нужна ранняя обратная связь. +- Четко опишите свои изменения, следуя шаблону запроса на слияние. +- Ссылайтесь на задачу в описании/названии PR (например, «Исправляет #123»). +- Предоставьте скриншоты/видео для изменений в пользовательском интерфейсе. +- Укажите, необходимы ли обновления документации. -### Политика Pull Request +### Политика запросов на слияние -- Должен ссылаться на предварительно одобренные и назначенные issue. -- PR, не соответствующие политике, могут быть закрыты. -- PR должны проходить CI-тесты, соответствовать дорожной карте и иметь четкую документацию. +- Должен ссылаться на назначенную задачу GitHub. Чтобы вас назначили: напишите комментарий «Забираю» к задаче и напишите личное сообщение **Hannes Rudolph (`hrudolph`)** в [Discord](https://discord.gg/roocode). Назначение будет подтверждено в ветке. +- Несвязанные PR могут быть закрыты. +- PR должны проходить тесты CI, соответствовать дорожной карте и иметь четкую документацию. ### Процесс проверки -- **Ежедневный отбор:** Быстрые проверки мейнтейнерами. -- **Еженедельный глубокий обзор:** Комплексная оценка. -- **Быстро итерируй** на основе полученного фидбека. +- **Ежедневная сортировка:** быстрая проверка сопровождающими. +- **Еженедельный углубленный обзор:** всесторонняя оценка. +- **Быстро итерируйте** на основе обратной связи. -## Юридическая информация +## Юридические вопросы -Отправляя pull request, ты соглашаешься, что твой вклад будет лицензирован под лицензией Apache 2.0, в соответствии с лицензией Roo Code. +Внося свой вклад, вы соглашаетесь с тем, что ваши вклады будут лицензироваться по лицензии Apache 2.0, в соответствии с лицензированием Roo Code. diff --git a/locales/ru/README.md b/locales/ru/README.md index 21d084d56b..c7746fca51 100644 --- a/locales/ru/README.md +++ b/locales/ru/README.md @@ -1,125 +1,89 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • Русский • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Присоединяйтесь к сообществу Roo Code

-

Общайтесь с разработчиками, делитесь идеями и будьте в курсе последних инструментов программирования с поддержкой ИИ.

- - Присоединиться к Discord - Присоединиться к Reddit - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ Получить быструю помощь → Присоединяйтесь к Discord • Предпочитаете асинхронный режим? → Присоединяйтесь к r/RooCode

-Скачать в VS Marketplace -Запросы функций -Оценить & Отзыв -Документация +# Roo Code + +> Твоя команда разработчиков на ИИ — прямо в редакторе + +
+ 🌐 Доступные языки + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Что Roo Code может сделать для ВАС? + +- Генерировать код из описаний на естественном языке +- Адаптация с помощью режимов: Код, Архитектор, Вопрос, Отладка и Пользовательские режимы +- Рефакторить и отлаживать существующий код +- Писать и обновлять документацию +- Отвечать на вопросы о вашей кодовой базе +- Автоматизировать повторяющиеся задачи +- Использовать серверы MCP + +## Режимы + +Roo Code адаптируется к вашему стилю работы, а не наоборот: + +- Режим Код: повседневное кодирование, правки и операции с файлами +- Режим Архитектор: планирование систем, спецификаций и миграций +- Режим Вопрос: быстрые ответы, объяснения и документация +- Режим Отладка: отслеживание проблем, добавление логов, изоляция первопричин +- Пользовательские режимы: создавайте специализированные режимы для вашей команды или рабочего процесса +- Roomote Control: Roomote Control позволяет удаленно управлять задачами, запущенными в вашей локальной инстансе VS Code. + +Подробнее: [Использование режимов](https://docs.roocode.com/basic-usage/using-modes) • [Пользовательские режимы](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## Обучающие видео и видео о функциях + +
+ +| | | | +| :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Установка Roo Code |
Настройка профилей |
Индексация кодовой базы | +|
Пользовательские режимы |
Контрольные точки |
Списки дел |
- -**Roo Code** - это автономный агент программирования с поддержкой ИИ, который работает в вашем редакторе. Он может: - -- Общаться на естественном языке -- Читать и записывать файлы напрямую в вашем рабочем пространстве -- Выполнять команды терминала -- Автоматизировать действия в браузере -- Интегрироваться с любым OpenAI-совместимым или пользовательским API/моделью -- Адаптировать свою "личность" и возможности через **Пользовательские режимы** - -Независимо от того, ищете ли вы гибкого партнера по программированию, системного архитектора или специализированные роли, такие как инженер по контролю качества или менеджер проекта, Roo Code поможет вам создавать программное обеспечение более эффективно. - -Ознакомьтесь с [CHANGELOG](../../CHANGELOG.md) для подробной информации об обновлениях и исправлениях. - ---- - -## 🎉 Выпущен Roo Code 3.25 - -Roo Code 3.25 представляет мощные новые функции и значительные улучшения для повышения эффективности вашего рабочего процесса разработки. - -- **Провайдер Hugging Face** - Получите доступ к множеству отличных моделей с открытым исходным кодом напрямую через новый провайдер Hugging Face с бесшовной интеграцией и выбором моделей. -- **Встроенные элементы управления командами** - Новые элементы управления автоматическим подтверждением и отклонением для выполнения команд дают вам точный контроль над операциями терминала с настраиваемыми разрешениями. -- **Поддержка правил AGENTS.md** - Добавляет поддержку стандартного файла AGENTS.md сообщества в корне проекта. - ---- - -## Что умеет Roo Code? - -- 🚀 **Генерировать код** из описаний на естественном языке -- 🔧 **Рефакторить и отлаживать** существующий код -- 📝 **Писать и обновлять** документацию -- 🤔 **Отвечать на вопросы** о вашей кодовой базе -- 🔄 **Автоматизировать** повторяющиеся задачи -- 🏗️ **Создавать** новые файлы и проекты - -## Быстрый старт - -1. [Установите Roo Code](https://docs.roocode.com/getting-started/installing) -2. [Подключите вашего AI-провайдера](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [Попробуйте вашу первую задачу](https://docs.roocode.com/getting-started/your-first-task) - -## Ключевые особенности - -### Множество режимов - -Roo Code адаптируется к вашим потребностям с помощью специализированных [режимов](https://docs.roocode.com/basic-usage/using-modes): - -- **Режим кода:** Для общих задач программирования -- **Режим архитектора:** Для планирования и технического руководства -- **Режим вопросов:** Для ответов на вопросы и предоставления информации -- **Режим отладки:** Для систематической диагностики проблем -- **[Пользовательские режимы](https://docs.roocode.com/advanced-usage/custom-modes):** Создавайте неограниченное количество специализированных персон для аудита безопасности, оптимизации производительности, документации или любой другой задачи - -### Умные инструменты - -Roo Code поставляется с мощными [инструментами](https://docs.roocode.com/basic-usage/how-tools-work), которые могут: - -- Читать и записывать файлы в вашем проекте -- Выполнять команды в терминале VS Code -- Управлять веб-браузером -- Использовать внешние инструменты через [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) - -MCP расширяет возможности Roo Code, позволяя добавлять неограниченное количество пользовательских инструментов. Интегрируйтесь с внешними API, подключайтесь к базам данных или создавайте специализированные инструменты разработки - MCP предоставляет фреймворк для расширения функциональности Roo Code в соответствии с вашими конкретными потребностями. - -### Настройка - -Настройте Roo Code под себя с помощью: - -- [Пользовательских инструкций](https://docs.roocode.com/advanced-usage/custom-instructions) для персонализированного поведения -- [Пользовательских режимов](https://docs.roocode.com/advanced-usage/custom-modes) для специализированных задач -- [Локальных моделей](https://docs.roocode.com/advanced-usage/local-models) для работы офлайн -- [Настроек автоматического подтверждения](https://docs.roocode.com/advanced-usage/auto-approving-actions) для более быстрых рабочих процессов +

+Больше коротких обучающих видео и видео о функциях... +

## Ресурсы -### Документация - -- [Руководство по базовому использованию](https://docs.roocode.com/basic-usage/the-chat-interface) -- [Расширенные функции](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [Часто задаваемые вопросы](https://docs.roocode.com/faq) - -### Сообщество - -- **Discord:** [Присоединяйтесь к нашему серверу Discord](https://discord.gg/roocode) для помощи в реальном времени и обсуждений -- **Reddit:** [Посетите наш subreddit](https://www.reddit.com/r/RooCode) чтобы поделиться опытом и советами -- **GitHub:** Сообщайте об [ошибках](https://github.com/RooCodeInc/Roo-Code/issues) или запрашивайте [функции](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[Документация](https://docs.roocode.com):** Официальное руководство по установке, настройке и освоению Roo Code. +- **[Канал на YouTube](https://youtube.com/@roocodeyt?feature=shared):** Смотрите обучающие видео и функции в действии. +- **[Сервер Discord](https://discord.gg/roocode):** Присоединяйтесь к сообществу для получения помощи и обсуждений в реальном времени. +- **[Сообщество Reddit](https://www.reddit.com/r/RooCode):** Делитесь своим опытом и смотрите, что создают другие. +- **[Проблемы на GitHub](https://github.com/RooCodeInc/Roo-Code/issues):** Сообщайте об ошибках и отслеживайте разработку. +- **[Запросы на новые функции](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** Есть идея? Поделитесь ею с разработчиками. --- @@ -134,45 +98,72 @@ git clone https://github.com/RooCodeInc/Roo-Code.git 2. **Установите зависимости**: ```sh -npm run install:all +pnpm install ``` -3. **Запустите веб-интерфейс (Vite/React приложение с HMR)**: +3. **Запустите расширение**: + +Существует несколько способов запустить расширение Roo Code: + +### Режим разработки (F5) + +Для активной разработки используйте встроенную отладку VSCode: + +Нажмите `F5` (или перейдите в меню **Выполнить** → **Начать отладку**) в VSCode. Это откроет новое окно VSCode с запущенным расширением Roo Code. + +- Изменения в веб-представлении появятся немедленно. +- Изменения в ядре расширения также будут автоматически перезагружены "на лету". + +### Автоматическая установка VSIX + +Чтобы собрать и установить расширение в виде пакета VSIX непосредственно в VSCode: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **Отладка**: - Нажмите `F5` (или **Запуск** → **Начать отладку**) в VSCode, чтобы открыть новую сессию с загруженным Roo Code. +Эта команда: -Изменения в веб-интерфейсе появятся немедленно. Изменения в основном расширении потребуют перезапуска хоста расширения. +- Спросит, какую команду редактора использовать (code/cursor/code-insiders) - по умолчанию 'code' +- Удалит любую существующую версию расширения. +- Соберет последний пакет VSIX. +- Установит только что собранный VSIX. +- Предложит вам перезапустить VS Code, чтобы изменения вступили в силу. -Альтернативно, вы можете собрать .vsix и установить его напрямую в VSCode: +Опции: -```sh -npm run build -``` +- `-y`: Пропустить все запросы на подтверждение и использовать значения по умолчанию +- `--editor=`: Укажите команду редактора (например, `--editor=cursor` или `--editor=code-insiders`) -Файл `.vsix` появится в директории `bin/`, который можно установить с помощью: +### Ручная установка VSIX -```sh -code --install-extension bin/roo-cline-.vsix -``` +Если вы предпочитаете устанавливать пакет VSIX вручную: -Мы используем [changesets](https://github.com/changesets/changesets) для версионирования и публикации. Проверьте наш `CHANGELOG.md` для примечаний к релизу. +1. Сначала соберите пакет VSIX: + ```sh + pnpm vsix + ``` +2. Файл `.vsix` будет сгенерирован в каталоге `bin/` (например, `bin/roo-cline-.vsix`). +3. Установите его вручную с помощью VSCode CLI: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- + +Мы используем [changesets](https://github.com/changesets/changesets) для управления версиями и публикации. Проверьте наш `CHANGELOG.md` для получения информации о релизах. --- ## Отказ от ответственности -**Обратите внимание**, что Roo Code, Inc **не** дает никаких заверений или гарантий относительно любого кода, моделей или других инструментов, предоставляемых или доступных в связи с Roo Code, любых связанных сторонних инструментов или любых результатов. Вы принимаете на себя **все риски**, связанные с использованием любых таких инструментов или результатов; такие инструменты предоставляются на основе **"КАК ЕСТЬ"** и **"КАК ДОСТУПНО"**. Такие риски могут включать, помимо прочего, нарушение прав интеллектуальной собственности, кибер-уязвимости или атаки, предвзятость, неточности, ошибки, дефекты, вирусы, простои, потерю или повреждение имущества и/или травмы. Вы несете единоличную ответственность за использование любых таких инструментов или результатов (включая, помимо прочего, законность, уместность и результаты). +**Пожалуйста, обратите внимание**, что Roo Code, Inc. **не делает** никаких заявлений и не дает никаких гарантий в отношении любого кода, моделей или других инструментов, предоставляемых или доступных в связи с Roo Code, любых связанных сторонних инструментов или любых результирующих результатов. Вы принимаете на себя **все риски**, связанные с использованием любых таких инструментов или результатов; такие инструменты предоставляются на условиях **"КАК ЕСТЬ"** и **"ПО МЕРЕ ДОСТУПНОСТИ"**. Такие риски могут включать, без ограничений, нарушение прав интеллектуальной собственности, киберуязвимости или атаки, предвзятость, неточности, ошибки, дефекты, вирусы, простои, потерю или повреждение имущества и/или телесные повреждения. Вы несете полную ответственность за использование любых таких инструментов или результатов (включая, без ограничений, их законность, уместность и результаты). --- ## Участие в разработке -Мы любим вклад сообщества! Начните с прочтения нашего [CONTRIBUTING.md](../../CONTRIBUTING.md). +Мы любим вклад сообщества! Начните с прочтения нашего [CONTRIBUTING.md](CONTRIBUTING.md). --- @@ -182,47 +173,7 @@ code --install-extension bin/roo-cline-.vsix -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) @@ -232,4 +183,4 @@ code --install-extension bin/roo-cline-.vsix --- -**Наслаждайтесь Roo Code!** Независимо от того, держите ли вы его на коротком поводке или позволяете действовать автономно, мы с нетерпением ждем, что вы создадите. Если у вас есть вопросы или идеи для функций, заходите в наше [сообщество Reddit](https://www.reddit.com/r/RooCode/) или [Discord](https://discord.gg/roocode). Счастливого кодирования! +**Наслаждайтесь Roo Code!** Независимо от того, будете ли вы держать его на коротком поводке или позволите ему действовать автономно, мы с нетерпением ждем, что вы создадите. Если у вас есть вопросы или идеи по поводу функций, заходите в наше [сообщество на Reddit](https://www.reddit.com/r/RooCode/) или [Discord](https://discord.gg/roocode). Приятного кодирования! diff --git a/locales/tr/CONTRIBUTING.md b/locales/tr/CONTRIBUTING.md index f7bd4147b3..4c73a15f65 100644 --- a/locales/tr/CONTRIBUTING.md +++ b/locales/tr/CONTRIBUTING.md @@ -13,126 +13,129 @@ # Roo Code'a Katkıda Bulunma -Roo Code, topluluk odaklı bir projedir ve her katkıyı çok önemsiyoruz. İşbirliğini kolaylaştırmak için [Issue-First](#issue-first-yaklaşımı) yaklaşımıyla çalışıyoruz; bu, tüm [Pull Request'lerin (PR'lar)](#pull-request-gönderme) önce bir GitHub Issue'ya bağlanması gerektiği anlamına gelir. Lütfen bu rehberi dikkatlice incele. +Roo Code topluluk tarafından yürütülen bir projedir ve her katkıyı derinden takdir ediyoruz. İşbirliğini kolaylaştırmak için [Önce Sorun Yaklaşımı](#önce-sorun-yaklaşımı) temelinde çalışıyoruz, bu da tüm [Çekme İsteklerinin (PR'ler)](#bir-çekme-isteği-gönderme) önce bir GitHub Sorununa bağlanması gerektiği anlamına gelir. Lütfen bu kılavuzu dikkatlice inceleyin. ## İçindekiler -- [Katkıdan Önce](#katkıdan-önce) -- [Katkı Bulma & Planlama](#katkı-bulma--planlama) -- [Geliştirme & Gönderim Süreci](#geliştirme--gönderim-süreci) +- [Katkıda Bulunmadan Önce](#katkıda-bulunmadan-önce) +- [Katkınızı Bulma ve Planlama](#katkınızı-bulma-ve-planlama) +- [Geliştirme ve Gönderme Süreci](#geliştirme-ve-gönderme-süreci) - [Yasal](#yasal) -## Katkıdan Önce +## Katkıda Bulunmadan Önce ### 1. Davranış Kuralları -Tüm katkı sağlayanlar [Davranış Kuralları](./CODE_OF_CONDUCT.md)'na uymalıdır. +Tüm katkıda bulunanlar [Davranış Kurallarımıza](./CODE_OF_CONDUCT.md) uymalıdır. ### 2. Proje Yol Haritası -Yol haritamız projenin yönünü belirler. Katkılarını bu temel hedeflerle uyumlu hale getir: +Yol haritamız projenin yönünü belirler. Katkılarınızı bu temel hedeflerle hizalayın: -### Güvenilirlik Öncelikli +### Önce Güvenilirlik -- Diff düzenleme ve komut yürütme işlemlerinin sürekli olarak güvenilir olmasını sağlamak -- Düzenli kullanımı engelleyen sürtünme noktalarını azaltmak -- Tüm dillerde ve platformlarda sorunsuz çalışmayı garanti etmek -- Çok çeşitli yapay zeka sağlayıcıları ve modelleri için güçlü desteği genişletmek +- Fark düzenleme ve komut yürütmenin tutarlı bir şekilde güvenilir olduğundan emin olun. +- Düzenli kullanımı caydıran sürtünme noktalarını azaltın. +- Tüm yerellerde ve platformlarda sorunsuz çalışmayı garanti edin. +- Çok çeşitli yapay zeka sağlayıcıları ve modelleri için sağlam desteği genişletin. ### Geliştirilmiş Kullanıcı Deneyimi -- Daha fazla netlik ve sezgisellik için kullanıcı arayüzünü basitleştirmek -- Geliştiricilerin yüksek beklentilerini karşılamak üzere iş akışını sürekli iyileştirmek +- Netlik ve sezgisellik için kullanıcı arayüzünü/kullanıcı deneyimini kolaylaştırın. +- Geliştiricilerin günlük kullanım araçlarından beklentilerini karşılamak için iş akışını sürekli iyileştirin. ### Ajan Performansında Liderlik -- Gerçek dünyadaki üretkenliği ölçmek için kapsamlı değerlendirme kriterleri (evals) oluşturmak -- Herkesin bu değerlendirmeleri kolayca çalıştırıp yorumlamasını sağlamak -- Değerlendirme puanlarında net artışlar gösteren iyileştirmeler sunmak +- Gerçek dünya verimliliğini ölçmek için kapsamlı değerlendirme ölçütleri (eval'ler) oluşturun. +- Herkesin bu değerlendirmeleri kolayca çalıştırmasını ve yorumlamasını sağlayın. +- Değerlendirme puanlarında net artışlar gösteren iyileştirmeler gönderin. -PR'larında bu alanlarla olan bağlantıyı belirt. +PR'lerinizde bu alanlarla uyumu belirtin. -### 3. Roo Code Topluluğuna Katıl +### 3. Roo Code Topluluğuna Katılın -- **Ana yöntem:** [Discord](https://discord.gg/roocode)'umuza katıl ve **Hannes Rudolph (`hrudolph`)**'a DM gönder. -- **Alternatif:** Deneyimli katkı sağlayanlar [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1) üzerinden doğrudan katılabilir. +- **Birincil:** [Discord](https://discord.gg/roocode) sunucumuza katılın ve **Hannes Rudolph (`hrudolph`)**'a DM gönderin. +- **Alternatif:** Deneyimli katkıda bulunanlar doğrudan [GitHub Projeleri](https://github.com/orgs/RooCodeInc/projects/1) aracılığıyla etkileşimde bulunabilirler. -## Katkı Bulma & Planlama +## Katkınızı Bulma ve Planlama ### Katkı Türleri -- **Hata düzeltmeleri:** Koddaki sorunları çözmek. -- **Yeni özellikler:** Yeni işlevsellik eklemek. -- **Dokümantasyon:** Rehberleri geliştirmek ve netleştirmek. +- **Hata Düzeltmeleri:** kod sorunlarını giderme. +- **Yeni Özellikler:** işlevsellik ekleme. +- **Belgelendirme:** kılavuzları ve netliği iyileştirme. -### Issue-First Yaklaşımı +### Önce Sorun Yaklaşımı -Tüm katkılar bir GitHub Issue ile başlamalıdır. +Tüm katkılar, basit şablonlarımızı kullanarak bir GitHub Sorunu ile başlar. -- **Mevcut issue'ları kontrol et:** [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues)'da ara. -- **Issue oluştur:** Uygun şablonları kullan: - - **Hatalar:** "Bug Report" şablonu. - - **Özellikler:** "Detailed Feature Proposal" şablonu. Başlamadan önce onay gerekir. -- **Issue'ları sahiplen:** Yorum yap ve resmi atamayı bekle. +- **Mevcut sorunları kontrol edin**: [GitHub Sorunları](https://github.com/RooCodeInc/Roo-Code/issues)nda arama yapın. +- **Bir sorun oluşturun**: + - **İyileştirmeler:** "İyileştirme İsteği" şablonu (kullanıcı yararına odaklanan sade bir dil). + - **Hatalar:** "Hata Raporu" şablonu (minimum yeniden oluşturma + beklenen vs gerçek + sürüm). +- **Üzerinde çalışmak ister misiniz?** Soruna "Talep ediyorum" yorumu yapın ve atanmak için [Discord](https://discord.gg/roocode) üzerinden **Hannes Rudolph (`hrudolph`)**'a DM gönderin. Atama, başlıkta teyit edilecektir. +- **PR'ler soruna bağlanmalıdır.** Bağlantısız PR'ler kapatılabilir. -**Onaylanmış issue'lara bağlı olmayan PR'lar kapatılabilir.** +### Ne Üzerinde Çalışılacağına Karar Verme -### Ne Üzerinde Çalışacağına Karar Verme +- "Sorun [Atanmamış]" sorunları için [GitHub Projesi](https://github.com/orgs/RooCodeInc/projects/1)'ni kontrol edin. +- Belgeler için [Roo Code Belgeleri](https://github.com/RooCodeInc/Roo-Code-Docs)ni ziyaret edin. -- [GitHub Projesi](https://github.com/orgs/RooCodeInc/projects/1)'nde atanmamış "Good First Issues" bak. -- Dokümantasyon için [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs)'u ziyaret et. +### Hataları Bildirme -### Hata veya Sorun Bildirme +- Önce mevcut raporları kontrol edin. +- Aşağıdakilerle ["Hata Raporu" şablonunu](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) kullanarak yeni bir hata oluşturun: + - Açık, numaralandırılmış yeniden oluşturma adımları + - Beklenen vs gerçek sonuç + - Roo Code sürümü (gerekli); ilgiliyse API sağlayıcısı/modeli +- **Güvenlik sorunları**: [Güvenlik tavsiyeleri](https://github.com/RooCodeInc/Roo-Code/security/advisories/new) aracılığıyla özel olarak bildirin. -- Önce mevcut raporları kontrol et. -- ["Bug Report" şablonu](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) kullanarak yeni hata raporları oluştur. -- **Güvenlik açıkları:** [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new) aracılığıyla özel olarak bildir. +## Geliştirme ve Gönderme Süreci -## Geliştirme & Gönderim Süreci +### Geliştirme Kurulumu -### Geliştirme Ortamı Kurulumu - -1. **Fork & Clone:** +1. **Çatallayın ve Klonlayın:** ``` -git clone https://github.com/KULLANICI_ADIN/Roo-Code.git +git clone https://github.com/KULLANICI_ADINIZ/Roo-Code.git ``` -2. **Bağımlılıkları yükle:** +2. **Bağımlılıkları Yükleyin:** ``` -npm run install:all +pnpm install ``` -3. **Hata ayıklama:** VS Code'da `F5` ile aç. +3. **Hata Ayıklama:** VS Code (`F5`) ile açın. -### Kod Yazma Rehberi +### Kod Yazma Yönergeleri -- Her özellik veya düzeltme için odaklı bir PR. -- ESLint ve TypeScript en iyi uygulamalarını takip et. -- Issue'lara referans veren açık, açıklayıcı commit mesajları yaz (örn. `Fixes #123`). -- Kapsamlı testler sağla (`npm test`). -- Göndermeden önce en son `main` branch'i üzerine rebase yap. +- Her özellik veya düzeltme için odaklanmış bir PR. +- ESLint ve TypeScript en iyi uygulamalarını takip edin. +- Sorunlara atıfta bulunan açık, açıklayıcı taahhütler yazın (ör. `Düzeltmeler #123`). +- Kapsamlı testler sağlayın (`npm test`). +- Göndermeden önce en son `main` dalına yeniden temel alın. -### Pull Request Gönderme +### Bir Çekme İsteği Gönderme -- Erken geri bildirim istiyorsan **taslak PR** olarak başla. -- Pull Request Şablonunu takip ederek değişikliklerini açıkça tanımla. -- UI değişiklikleri için ekran görüntüleri/videolar sağla. -- Dokümantasyon güncellemeleri gerekip gerekmediğini belirt. +- Erken geri bildirim arıyorsanız **Taslak PR** olarak başlayın. +- Çekme İsteği Şablonunu izleyerek değişikliklerinizi açıkça tanımlayın. +- PR açıklamasında/başlığında sorunu bağlayın (ör. "Düzeltmeler #123"). +- Kullanıcı arayüzü değişiklikleri için ekran görüntüleri/videolar sağlayın. +- Belge güncellemelerinin gerekli olup olmadığını belirtin. -### Pull Request Politikası +### Çekme İsteği Politikası -- Önceden onaylanmış ve atanmış issue'lara referans vermelidir. -- Politikaya uymayan PR'lar kapatılabilir. -- PR'lar CI testlerini geçmeli, yol haritasıyla uyumlu olmalı ve net dokümantasyona sahip olmalıdır. +- Atanmış bir GitHub Sorununa atıfta bulunmalıdır. Atanmak için: soruna "Talep ediyorum" yorumu yapın ve [Discord](https://discord.gg/roocode) üzerinden **Hannes Rudolph (`hrudolph`)**'a DM gönderin. Atama, başlıkta teyit edilecektir. +- Bağlantısız PR'ler kapatılabilir. +- PR'ler CI testlerini geçmeli, yol haritasıyla uyumlu olmalı ve net belgelere sahip olmalıdır. ### İnceleme Süreci -- **Günlük triyaj:** Maintainer'lar tarafından hızlı kontroller. -- **Haftalık detaylı inceleme:** Kapsamlı değerlendirme. -- **Geri bildirim temelinde hızla yinele.** +- **Günlük Triyaj:** Sürdürücüler tarafından hızlı kontroller. +- **Haftalık Derinlemesine İnceleme:** Kapsamlı değerlendirme. +- Geri bildirime göre **hızlı bir şekilde yineleyin**. ## Yasal -Pull request göndererek, katkılarının Roo Code'un lisanslamasıyla tutarlı olarak Apache 2.0 Lisansı altında lisanslanacağını kabul etmiş olursun. +Katkıda bulunarak, katkılarınızın Roo Code'un lisanslamasıyla tutarlı olan Apache 2.0 Lisansı altında lisanslanacağını kabul etmiş olursunuz. diff --git a/locales/tr/README.md b/locales/tr/README.md index 2854f281fd..3676bf516c 100644 --- a/locales/tr/README.md +++ b/locales/tr/README.md @@ -1,131 +1,95 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • Türkçe • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Roo Code Topluluğuna Katılın

-

Geliştiricilerle bağlantı kurun, fikirlerinizi paylaşın ve en son yapay zeka destekli kodlama araçlarıyla güncel kalın.

- - Discord'a Katıl - Reddit'e Katıl - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ Hızlı yardım alın → Discord'a Katılın • Asenkron mu tercih edersiniz? → r/RooCode'a Katılın

-VS Marketplace'den İndir -Özellik İstekleri -Değerlendir & İnceleme -Dokümantasyon +# Roo Code + +> AI destekli dev ekibin, doğrudan editörünün içinde + +
+ 🌐 Mevcut diller + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Roo Code SİZİN İçin Ne Yapabilir? + +- Doğal dil açıklamalarından kod üretin +- Modlarla Uyum Sağlayın: Kod, Mimar, Sor, Hata Ayıkla ve Özel Modlar +- Mevcut kodu yeniden düzenleyin ve hatalarını ayıklayın +- Dokümantasyon yazın ve güncelleyin +- Kod tabanınızla ilgili soruları yanıtlayın +- Tekrarlayan görevleri otomatikleştirin +- MCP Sunucularını kullanın + +## Modlar + +Roo Code, sizin çalışma şeklinize uyum sağlar, tam tersi değil: + +- Kod Modu: günlük kodlama, düzenlemeler ve dosya işlemleri +- Mimar Modu: sistemleri, özellikleri ve geçişleri planlayın +- Sor Modu: hızlı cevaplar, açıklamalar ve belgeler +- Hata Ayıklama Modu: sorunları izleyin, günlükler ekleyin, kök nedenleri izole edin +- Özel Modlar: ekibiniz veya iş akışınız için özel modlar oluşturun +- Roomote Control: Roomote Control, yerel VS Code örneğinde çalışan işleri uzaktan kontrol etmeni sağlar. + +Daha fazla: [Modları kullanma](https://docs.roocode.com/basic-usage/using-modes) • [Özel modlar](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## Eğitim ve Özellik Videoları + +
+ +| | | | +| :---------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Roo Code Kurulumu |
Profilleri Yapılandırma |
Kod Tabanı İndeksleme | +|
Özel Modlar |
Kontrol Noktaları |
Yapılacaklar Listeleri |
- -**Roo Code**, editörünüzde çalışan yapay zeka destekli **otonom kodlama aracı**dır. Yapabilecekleri: - -- Doğal dil ile iletişim kurma -- Çalışma alanınızda doğrudan dosyaları okuma ve yazma -- Terminal komutlarını çalıştırma -- Tarayıcı eylemlerini otomatikleştirme -- Herhangi bir OpenAI uyumlu veya özel API/model ile entegre olma -- **Özel Modlar** aracılığıyla "kişiliğini" ve yeteneklerini uyarlama - -İster esnek bir kodlama ortağı, ister bir sistem mimarı, isterse QA mühendisi veya ürün yöneticisi gibi uzmanlaşmış roller arıyor olun, Roo Code yazılım geliştirme sürecinizi daha verimli hale getirmenize yardımcı olabilir. - -Detaylı güncellemeler ve düzeltmeler için [CHANGELOG](../../CHANGELOG.md) dosyasını kontrol edin. - ---- - -## 🎉 Roo Code 3.25 Yayınlandı - -Roo Code 3.25 geliştirme iş akışınızı geliştirmek için güçlü yeni özellikler ve önemli iyileştirmeler getiriyor. - -- **Hugging Face Sağlayıcısı** - Yeni Hugging Face sağlayıcısı aracılığıyla sorunsuz entegrasyon ve model seçimi ile doğrudan tonlarca harika açık kaynak modeline erişin. -- **Satır İçi Komut Kontrolleri** - Komut yürütme için yeni otomatik onay ve reddetme kontrolleri, özelleştirilebilir izinlerle terminal işlemleri üzerinde hassas kontrol sağlar. -- **AGENTS.md Kuralları Desteği** - Projenin kök dizininde topluluk standardı AGENTS.md dosyası için destek ekler. - ---- - -## Roo Code Ne Yapabilir? - -- 🚀 Doğal dil açıklamalarından **Kod Üretme** -- 🔧 Mevcut kodu **Yeniden Düzenleme ve Hata Ayıklama** -- 📝 Dokümantasyon **Yazma ve Güncelleme** -- 🤔 Kod tabanınız hakkında **Sorulara Cevap Verme** -- 🔄 Tekrarlayan görevleri **Otomatikleştirme** -- 🏗️ Yeni dosyalar ve projeler **Oluşturma** - -## Hızlı Başlangıç - -1. [Roo Code'u Yükleyin](https://docs.roocode.com/getting-started/installing) -2. [Yapay Zeka Sağlayıcınızı Bağlayın](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [İlk Görevinizi Deneyin](https://docs.roocode.com/getting-started/your-first-task) - -## Temel Özellikler - -### Çoklu Modlar - -Roo Code, özelleştirilmiş [modlar](https://docs.roocode.com/basic-usage/using-modes) ile ihtiyaçlarınıza uyum sağlar: - -- **Kod Modu:** Genel kodlama görevleri için -- **Mimar Modu:** Planlama ve teknik liderlik için -- **Soru Modu:** Sorulara cevap vermek ve bilgi sağlamak için -- **Hata Ayıklama Modu:** Sistematik sorun teşhisi için -- **[Özel Modlar](https://docs.roocode.com/advanced-usage/custom-modes):** Güvenlik denetimi, performans optimizasyonu, dokümantasyon veya diğer görevler için sınırsız özelleştirilmiş kişilikler oluşturun - -### Akıllı Araçlar - -Roo Code, şunları yapabilen güçlü [araçlar](https://docs.roocode.com/basic-usage/how-tools-work) ile gelir: - -- Projenizde dosyaları okuma ve yazma -- VS Code terminalinizde komutları çalıştırma -- Web tarayıcısını kontrol etme -- [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) aracılığıyla harici araçları kullanma - -MCP, sınırsız özel araç eklemenize izin vererek Roo Code'un yeteneklerini genişletir. Harici API'lerle entegre olun, veritabanlarına bağlanın veya özel geliştirme araçları oluşturun - MCP, Roo Code'un işlevselliğini özel ihtiyaçlarınızı karşılamak üzere genişletmek için çerçeve sağlar. - -### Özelleştirme - -Roo Code'u kendi tarzınıza göre çalıştırın: - -- Kişiselleştirilmiş davranış için [Özel Talimatlar](https://docs.roocode.com/advanced-usage/custom-instructions) -- Özelleştirilmiş görevler için [Özel Modlar](https://docs.roocode.com/advanced-usage/custom-modes) -- Çevrimdışı kullanım için [Yerel Modeller](https://docs.roocode.com/advanced-usage/local-models) -- Daha hızlı iş akışları için [Otomatik Onay Ayarları](https://docs.roocode.com/advanced-usage/auto-approving-actions) +

+Daha fazla hızlı eğitim ve özellik videosu... +

## Kaynaklar -### Dokümantasyon - -- [Temel Kullanım Kılavuzu](https://docs.roocode.com/basic-usage/the-chat-interface) -- [Gelişmiş Özellikler](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [Sık Sorulan Sorular](https://docs.roocode.com/faq) - -### Topluluk - -- **Discord:** Gerçek zamanlı yardım ve tartışmalar için [Discord sunucumuza katılın](https://discord.gg/roocode) -- **Reddit:** Deneyimlerinizi ve ipuçlarınızı paylaşmak için [subreddit'imizi ziyaret edin](https://www.reddit.com/r/RooCode) -- **GitHub:** [Sorunları bildirin](https://github.com/RooCodeInc/Roo-Code/issues) veya [özellik talep edin](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[Dokümantasyon](https://docs.roocode.com):** Roo Code'u yükleme, yapılandırma ve ustalaşma konusundaki resmi kılavuz. +- **[YouTube Kanalı](https://youtube.com/@roocodeyt?feature=shared):** Eğitimleri izleyin ve özellikleri çalışırken görün. +- **[Discord Sunucusu](https://discord.gg/roocode):** Gerçek zamanlı yardım ve tartışma için topluluğa katılın. +- **[Reddit Topluluğu](https://www.reddit.com/r/RooCode):** Deneyimlerinizi paylaşın ve başkalarının ne inşa ettiğini görün. +- **[GitHub Sorunları](https://github.com/RooCodeInc/Roo-Code/issues):** Hataları bildirin ve gelişimi takip edin. +- **[Özellik İstekleri](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** Bir fikriniz mi var? Geliştiricilerle paylaşın. --- ## Yerel Kurulum ve Geliştirme -1. Depoyu **klonlayın**: +1. **Depoyu klonlayın**: ```sh git clone https://github.com/RooCodeInc/Roo-Code.git @@ -134,102 +98,89 @@ git clone https://github.com/RooCodeInc/Roo-Code.git 2. **Bağımlılıkları yükleyin**: ```sh -npm run install:all +pnpm install ``` -3. **Webview'ı başlatın (HMR ile Vite/React uygulaması)**: +3. **Uzantıyı çalıştırın**: + +Roo Code uzantısını çalıştırmanın birkaç yolu vardır: + +### Geliştirme Modu (F5) + +Aktif geliştirme için VSCode'un yerleşik hata ayıklama özelliğini kullanın: + +VSCode'da `F5` tuşuna basın (veya **Çalıştır** → **Hata Ayıklamayı Başlat**'a gidin). Bu, Roo Code uzantısının çalıştığı yeni bir VSCode penceresi açacaktır. + +- Web görünümündeki değişiklikler anında görünecektir. +- Çekirdek uzantıdaki değişiklikler de otomatik olarak sıcak yeniden yüklenecektir. + +### Otomatik VSIX Kurulumu + +Uzantıyı bir VSIX paketi olarak derlemek ve doğrudan VSCode'a yüklemek için: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **Hata ayıklama**: - VSCode'da `F5` tuşuna basın (veya **Run** → **Start Debugging**) Roo Code yüklenmiş yeni bir oturum açmak için. +Bu komut şunları yapacaktır: -Webview'daki değişiklikler anında görünecektir. Ana uzantıdaki değişiklikler uzantı ana bilgisayarının yeniden başlatılmasını gerektirecektir. +- Hangi düzenleyici komutunun kullanılacağını sorar (code/cursor/code-insiders) - varsayılan 'code' +- Uzantının mevcut herhangi bir sürümünü kaldırır. +- En son VSIX paketini oluşturur. +- Yeni oluşturulan VSIX'i yükler. +- Değişikliklerin etkili olması için VS Code'u yeniden başlatmanızı ister. -Alternatif olarak, bir .vsix dosyası oluşturabilir ve doğrudan VSCode'a kurabilirsiniz: +Seçenekler: -```sh -npm run build -``` +- `-y`: Tüm onay istemlerini atlayın ve varsayılanları kullanın +- `--editor=`: Düzenleyici komutunu belirtin (ör. `--editor=cursor` veya `--editor=code-insiders`) -`bin/` dizininde bir `.vsix` dosyası görünecek ve şu komutla kurulabilir: +### Manuel VSIX Kurulumu -```sh -code --install-extension bin/roo-cline-.vsix -``` +VSIX paketini manuel olarak yüklemeyi tercih ederseniz: -Sürüm oluşturma ve yayınlama için [changesets](https://github.com/changesets/changesets) kullanıyoruz. Sürüm notları için `CHANGELOG.md` dosyamızı kontrol edin. +1. İlk olarak, VSIX paketini oluşturun: + ```sh + pnpm vsix + ``` +2. `bin/` dizininde bir `.vsix` dosyası oluşturulur (ör. `bin/roo-cline-.vsix`). +3. VSCode CLI kullanarak manuel olarak yükleyin: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` --- -## Sorumluluk Reddi +Sürüm oluşturma ve yayınlama için [changesets](https://github.com/changesets/changesets) kullanıyoruz. Sürüm notları için `CHANGELOG.md` dosyamıza göz atın. -**Lütfen dikkat** Roo Code, Inc, Roo Code ile bağlantılı olarak sağlanan veya kullanıma sunulan herhangi bir kod, model veya diğer araçlar, ilgili herhangi bir üçüncü taraf aracı veya herhangi bir sonuç çıktısı hakkında **hiçbir** temsil veya garanti vermemektedir. Bu tür araçların veya çıktıların kullanımıyla ilişkili **tüm riskleri** üstlenirsiniz; bu tür araçlar **"OLDUĞU GİBİ"** ve **"MEVCUT OLDUĞU GİBİ"** temelinde sağlanır. Bu riskler, fikri mülkiyet ihlali, siber güvenlik açıkları veya saldırılar, önyargı, yanlışlıklar, hatalar, kusurlar, virüsler, kesinti süresi, mal kaybı veya hasarı ve/veya kişisel yaralanma dâhil ancak bunlarla sınırlı olmamak üzere içerebilir. Bu tür araçların veya çıktıların kullanımından (yasallık, uygunluk ve sonuçlar dâhil ancak bunlarla sınırlı olmamak üzere) yalnızca siz sorumlusunuz. +--- + +## Sorumluluk Reddi Beyanı + +**Lütfen dikkat** Roo Code, Inc., Roo Code ile bağlantılı olarak sağlanan veya kullanıma sunulan herhangi bir kod, model veya diğer araçlar, ilgili üçüncü taraf araçları veya ortaya çıkan çıktılarla ilgili olarak **hiçbir** beyanda bulunmaz veya garanti vermez. Bu tür araçların veya çıktıların kullanımıyla ilişkili **tüm riskleri** üstlenirsiniz; bu tür araçlar **"OLDUĞU GİBİ"** ve **"MEVCUT OLDUĞU GİBİ"** esasına göre sağlanır. Bu tür riskler, fikri mülkiyet ihlali, siber güvenlik açıkları veya saldırıları, önyargı, yanlışlıklar, hatalar, kusurlar, virüsler, kesintiler, mal kaybı veya hasarı ve/veya kişisel yaralanmaları içerebilir, ancak bunlarla sınırlı değildir. Bu tür araçların veya çıktıların kullanımından (yasallığı, uygunluğu ve sonuçları dahil ancak bunlarla sınırlı olmamak üzere) yalnızca siz sorumlusunuz. --- ## Katkıda Bulunma -Topluluk katkılarını seviyoruz! [CONTRIBUTING.md](CONTRIBUTING.md) dosyasını okuyarak başlayın. +Topluluk katkılarını çok seviyoruz! [CONTRIBUTING.md](CONTRIBUTING.md) dosyamızı okuyarak başlayın. --- ## Katkıda Bulunanlar -Roo Code'u daha iyi hale getirmeye yardımcı olan tüm katkıda bulunanlara teşekkür ederiz! +Roo Code'u daha iyi hale getirmemize yardımcı olan tüm katkıda bulunanlarımıza teşekkür ederiz! -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) ## Lisans -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- -**Roo Code'un keyfini çıkarın!** İster kısa bir tasmayla tutun ister otonom dolaşmasına izin verin, ne inşa edeceğinizi görmek için sabırsızlanıyoruz. Sorularınız veya özellik fikirleriniz varsa, [Reddit topluluğumuza](https://www.reddit.com/r/RooCode/) veya [Discord'umuza](https://discord.gg/roocode) uğrayın. Mutlu kodlamalar! +**Roo Code'un keyfini çıkar!** Onu kısa tasmalı tut ya da otonom dolaşsın; ne inşa edeceğini görmek için sabırsızlanıyoruz. Soruların veya özellik fikirlerin varsa [Reddit topluluğumuza](https://www.reddit.com/r/RooCode/) ya da [Discord](https://discord.gg/roocode)'a uğra. İyi kodlamalar! diff --git a/locales/vi/CONTRIBUTING.md b/locales/vi/CONTRIBUTING.md index d0f1d5ee58..6b3126c807 100644 --- a/locales/vi/CONTRIBUTING.md +++ b/locales/vi/CONTRIBUTING.md @@ -13,126 +13,129 @@ # Đóng góp cho Roo Code -Roo Code là một dự án do cộng đồng dẫn dắt và chúng mình rất trân trọng mọi đóng góp. Để đơn giản hóa quy trình hợp tác, chúng mình áp dụng cách tiếp cận [Issue-First](#cách-tiếp-cận-issue-first), nghĩa là tất cả [Pull Request (PR)](#gửi-pull-request) phải được liên kết với một GitHub Issue trước. Vui lòng đọc kỹ hướng dẫn này. +Roo Code là một dự án do cộng đồng điều khiển và chúng tôi vô cùng trân trọng mọi đóng góp. Để hợp lý hóa việc cộng tác, chúng tôi hoạt động trên cơ sở [Ưu tiên vấn đề](#cách-tiếp-cận-ưu-tiên-vấn-đề), có nghĩa là tất cả các [Yêu cầu kéo (PR)](#gửi-yêu-cầu-kéo) trước tiên phải được liên kết với một Vấn đề trên GitHub. Vui lòng xem kỹ hướng dẫn này. -## Mục lục +## Bảng mục lục -- [Trước khi đóng góp](#trước-khi-đóng-góp) -- [Tìm kiếm & lên kế hoạch đóng góp](#tìm-kiếm--lên-kế-hoạch-đóng-góp) -- [Quy trình phát triển & gửi bài](#quy-trình-phát-triển--gửi-bài) +- [Trước khi bạn đóng góp](#trước-khi-bạn-đóng-góp) +- [Tìm kiếm và lập kế hoạch đóng góp của bạn](#tìm-kiếm-và-lập-kế-hoạch-đóng-góp-của-bạn) +- [Quy trình phát triển và gửi](#quy-trình-phát-triển-và-gửi) - [Pháp lý](#pháp-lý) -## Trước khi đóng góp +## Trước khi bạn đóng góp ### 1. Quy tắc ứng xử -Tất cả thành viên đóng góp phải tuân thủ [Quy tắc ứng xử](./CODE_OF_CONDUCT.md) của chúng mình. +Tất cả những người đóng góp phải tuân thủ [Quy tắc ứng xử](./CODE_OF_CONDUCT.md) của chúng tôi. -### 2. Lộ trình phát triển dự án +### 2. Lộ trình dự án -Lộ trình của chúng mình định hướng dự án. Hãy điều chỉnh đóng góp của bạn theo các mục tiêu chính: +Lộ trình của chúng tôi hướng dẫn định hướng của dự án. Hãy điều chỉnh những đóng góp của bạn với những mục tiêu chính này: -### Độ tin cậy là ưu tiên hàng đầu +### Ưu tiên độ tin cậy -- Đảm bảo việc chỉnh sửa diff và thực thi lệnh luôn đáng tin cậy -- Giảm thiểu các điểm cản trở khiến người dùng ngại sử dụng thường xuyên -- Đảm bảo hoạt động mượt mà trên mọi ngôn ngữ và nền tảng -- Mở rộng hỗ trợ mạnh mẽ cho nhiều nhà cung cấp và mô hình AI đa dạng +- Đảm bảo việc chỉnh sửa diff và thực thi lệnh luôn đáng tin cậy. +- Giảm các điểm ma sát ngăn cản việc sử dụng thường xuyên. +- Đảm bảo hoạt động trơn tru trên tất cả các ngôn ngữ và nền tảng. +- Mở rộng hỗ trợ mạnh mẽ cho nhiều nhà cung cấp và mô hình AI. -### Nâng cao trải nghiệm người dùng +### Trải nghiệm người dùng nâng cao -- Đơn giản hóa giao diện người dùng để tăng tính rõ ràng và trực quan -- Liên tục cải thiện quy trình làm việc để đáp ứng kỳ vọng cao của các nhà phát triển +- Hợp lý hóa giao diện người dùng/trải nghiệm người dùng để rõ ràng và trực quan. +- Liên tục cải thiện quy trình làm việc để đáp ứng những kỳ vọng cao của các nhà phát triển đối với các công cụ sử dụng hàng ngày. -### Dẫn đầu về hiệu suất agent +### Dẫn đầu về hiệu suất tác nhân -- Thiết lập các tiêu chuẩn đánh giá toàn diện (evals) để đo lường năng suất trong thực tế -- Giúp mọi người dễ dàng chạy và hiểu các đánh giá này -- Cung cấp các cải tiến thể hiện rõ sự tăng trưởng trong điểm đánh giá +- Thiết lập các tiêu chuẩn đánh giá toàn diện (evals) để đo lường năng suất trong thế giới thực. +- Giúp mọi người dễ dàng chạy và diễn giải các đánh giá này. +- Cung cấp các cải tiến cho thấy sự gia tăng rõ ràng về điểm số đánh giá. -Đề cập đến sự liên quan với các lĩnh vực này trong PR của bạn. +Hãy đề cập đến sự phù hợp với các lĩnh vực này trong PR của bạn. ### 3. Tham gia cộng đồng Roo Code -- **Cách chính:** Tham gia [Discord](https://discord.gg/roocode) của chúng mình và nhắn tin trực tiếp cho **Hannes Rudolph (`hrudolph`)**. -- **Cách thay thế:** Cộng tác viên có kinh nghiệm có thể tham gia trực tiếp qua [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1). +- **Chính:** Tham gia [Discord](https://discord.gg/roocode) của chúng tôi và nhắn tin trực tiếp cho **Hannes Rudolph (`hrudolph`)**. +- **Thay thế:** Những người đóng góp có kinh nghiệm có thể tham gia trực tiếp qua [Dự án GitHub](https://github.com/orgs/RooCodeInc/projects/1). -## Tìm kiếm & lên kế hoạch đóng góp +## Tìm kiếm và lập kế hoạch đóng góp của bạn ### Các loại đóng góp -- **Sửa lỗi:** Khắc phục vấn đề trong mã nguồn. -- **Tính năng mới:** Thêm chức năng mới. -- **Tài liệu:** Cải thiện hướng dẫn và độ rõ ràng. +- **Sửa lỗi:** giải quyết các vấn đề về mã. +- **Tính năng mới:** thêm chức năng. +- **Tài liệu:** cải thiện hướng dẫn và sự rõ ràng. -### Cách tiếp cận Issue-First +### Cách tiếp cận Ưu tiên vấn đề -Mọi đóng góp đều phải bắt đầu bằng một GitHub Issue. +Tất cả các đóng góp đều bắt đầu bằng một Vấn đề trên GitHub bằng cách sử dụng các mẫu gọn nhẹ của chúng tôi. -- **Kiểm tra issue hiện có:** Tìm kiếm trong [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). -- **Tạo issue mới:** Sử dụng mẫu phù hợp: - - **Lỗi:** Mẫu "Bug Report". - - **Tính năng:** Mẫu "Detailed Feature Proposal". Cần được phê duyệt trước khi bắt đầu. -- **Nhận issue:** Bình luận và chờ được gán chính thức. +- **Kiểm tra các vấn đề hiện có**: Tìm kiếm trong [Vấn đề trên GitHub](https://github.com/RooCodeInc/Roo-Code/issues). +- **Tạo một vấn đề** bằng cách sử dụng: + - **Cải tiến:** mẫu "Yêu cầu cải tiến" (ngôn ngữ đơn giản tập trung vào lợi ích của người dùng). + - **Lỗi:** mẫu "Báo cáo lỗi" (tái tạo tối thiểu + mong đợi so với thực tế + phiên bản). +- **Bạn muốn làm việc với nó?** Bình luận "Nhận" trên vấn đề và nhắn tin trực tiếp cho **Hannes Rudolph (`hrudolph`)** trên [Discord](https://discord.gg/roocode) để được giao. Việc giao nhiệm vụ sẽ được xác nhận trong chuỗi. +- **PR phải liên kết đến vấn đề.** Các PR không được liên kết có thể bị đóng. -**PR không có issue đã duyệt có thể bị đóng.** +### Quyết định nên làm gì -### Quyết định việc cần làm - -- Xem [Dự án GitHub](https://github.com/orgs/RooCodeInc/projects/1) để tìm "Good First Issues" chưa được gán. -- Về tài liệu, hãy xem [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs). +- Kiểm tra [Dự án GitHub](https://github.com/orgs/RooCodeInc/projects/1) để tìm các vấn đề "Vấn đề [Chưa được giao]". +- Để biết tài liệu, hãy truy cập [Tài liệu Roo Code](https://github.com/RooCodeInc/Roo-Code-Docs). ### Báo cáo lỗi -- Kiểm tra báo cáo hiện có trước. -- Tạo báo cáo lỗi mới bằng [mẫu "Bug Report"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose). -- **Lỗ hổng bảo mật:** Báo cáo riêng qua [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). +- Trước tiên hãy kiểm tra các báo cáo hiện có. +- Tạo một lỗi mới bằng cách sử dụng [mẫu "Báo cáo lỗi"](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) với: + - Các bước tái tạo rõ ràng, được đánh số + - Kết quả mong đợi so với thực tế + - Phiên bản Roo Code (bắt buộc); nhà cung cấp/mô hình API nếu có liên quan +- **Vấn đề bảo mật**: Báo cáo riêng tư qua [tư vấn bảo mật](https://github.com/RooCodeInc/Roo-Code/security/advisories/new). -## Quy trình phát triển & gửi bài +## Quy trình phát triển và gửi -### Thiết lập môi trường phát triển +### Thiết lập phát triển -1. **Fork & Clone:** +1. **Rẽ nhánh & Sao chép:** ``` -git clone https://github.com/TEN_TAI_KHOAN/Roo-Code.git +git clone https://github.com/TÊN_NGƯỜI_DÙNG_CỦA_BẠN/Roo-Code.git ``` -2. **Cài đặt phụ thuộc:** +2. **Cài đặt các phụ thuộc:** ``` -npm run install:all +pnpm install ``` -3. **Debug:** Mở bằng VS Code (`F5`). +3. **Gỡ lỗi:** Mở bằng VS Code (`F5`). ### Hướng dẫn viết mã -- Mỗi PR chỉ tập trung vào một tính năng hoặc sửa lỗi. -- Tuân thủ các thực hành tốt nhất của ESLint và TypeScript. -- Viết thông điệp commit rõ ràng, tham chiếu đến issue (ví dụ: `Fixes #123`). -- Cung cấp bài kiểm tra đầy đủ (`npm test`). -- Rebase trên nhánh `main` mới nhất trước khi gửi. +- Một PR tập trung cho mỗi tính năng hoặc bản sửa lỗi. +- Tuân thủ các phương pháp hay nhất của ESLint và TypeScript. +- Viết các cam kết rõ ràng, mô tả có tham chiếu đến các vấn đề (ví dụ: `Sửa lỗi #123`). +- Cung cấp thử nghiệm kỹ lưỡng (`npm test`). +- Rebase lên nhánh `main` mới nhất trước khi gửi. -### Gửi Pull Request +### Gửi yêu cầu kéo -- Bắt đầu với **PR nháp** nếu muốn nhận phản hồi sớm. -- Mô tả rõ ràng các thay đổi, tuân theo Mẫu Pull Request. -- Cung cấp ảnh chụp/video cho thay đổi UI. -- Chỉ rõ nếu cần cập nhật tài liệu. +- Bắt đầu với tư cách là **PR nháp** nếu bạn đang tìm kiếm phản hồi sớm. +- Mô tả rõ ràng những thay đổi của bạn theo Mẫu yêu cầu kéo. +- Liên kết vấn đề trong mô tả/tiêu đề PR (ví dụ: "Sửa lỗi #123"). +- Cung cấp ảnh chụp màn hình/video cho các thay đổi giao diện người dùng. +- Cho biết nếu cần cập nhật tài liệu. -### Chính sách Pull Request +### Chính sách yêu cầu kéo -- Phải tham chiếu đến issue đã được phê duyệt và gán. -- PR không tuân thủ chính sách có thể bị đóng. -- PR cần vượt qua kiểm tra CI, phù hợp với lộ trình và có tài liệu rõ ràng. +- Phải tham chiếu đến một Vấn đề GitHub đã được giao. Để được giao: bình luận "Nhận" trên vấn đề và nhắn tin trực tiếp cho **Hannes Rudolph (`hrudolph`)** trên [Discord](https://discord.gg/roocode). Việc giao nhiệm vụ sẽ được xác nhận trong chuỗi. +- Các PR không được liên kết có thể bị đóng. +- Các PR phải vượt qua các bài kiểm tra CI, phù hợp với lộ trình và có tài liệu rõ ràng. -### Quy trình đánh giá +### Quy trình xem xét -- **Phân loại hàng ngày:** Kiểm tra nhanh bởi maintainer. -- **Đánh giá chi tiết hàng tuần:** Đánh giá toàn diện. +- **Phân loại hàng ngày:** kiểm tra nhanh bởi những người bảo trì. +- **Xem xét sâu hàng tuần:** đánh giá toàn diện. - **Lặp lại nhanh chóng** dựa trên phản hồi. ## Pháp lý -Khi gửi pull request, bạn đồng ý rằng đóng góp của mình sẽ được cấp phép theo Giấy phép Apache 2.0, phù hợp với giấy phép của Roo Code. +Bằng cách đóng góp, bạn đồng ý rằng những đóng góp của bạn sẽ được cấp phép theo Giấy phép Apache 2.0, phù hợp với việc cấp phép của Roo Code. diff --git a/locales/vi/README.md b/locales/vi/README.md index 59a75a35c9..10687aad05 100644 --- a/locales/vi/README.md +++ b/locales/vi/README.md @@ -1,235 +1,186 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • Tiếng Việt • [简体中文](../zh-CN/README.md) • [繁體中文](../zh-TW/README.md) - - -
-
-
-

Tham Gia Cộng Đồng Roo Code

-

Kết nối với các nhà phát triển, đóng góp ý tưởng và cập nhật với các công cụ lập trình mới nhất được hỗ trợ bởi AI.

- - Tham gia Discord - Tham gia Reddit - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ Nhận trợ giúp nhanh → Tham gia Discord • Thích không đồng bộ? → Tham gia r/RooCode

-Tải từ VS Marketplace -Yêu cầu tính năng -Đánh giá & Nhận xét -Tài liệu +# Roo Code + +> Đội ngũ dev dùng AI của bạn, ngay trong trình chỉnh sửa + +
+ 🌐 Các ngôn ngữ có sẵn + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Roo Code có thể làm gì cho BẠN? + +- Tạo mã từ mô tả ngôn ngữ tự nhiên +- Thích ứng với các Chế độ: Mã, Kiến trúc sư, Hỏi, Gỡ lỗi và Chế độ tùy chỉnh +- Tái cấu trúc & gỡ lỗi mã hiện có +- Viết & cập nhật tài liệu +- Trả lời câu hỏi về cơ sở mã của bạn +- Tự động hóa các tác vụ lặp đi lặp lại +- Sử dụng Máy chủ MCP + +## Chế độ + +Roo Code thích ứng với cách bạn làm việc, chứ không phải ngược lại: + +- Chế độ Mã: viết mã hàng ngày, chỉnh sửa và các thao tác với tệp +- Chế độ Kiến trúc sư: lập kế hoạch hệ thống, thông số kỹ thuật và di chuyển +- Chế độ Hỏi: câu trả lời nhanh, giải thích và tài liệu +- Chế độ Gỡ lỗi: theo dõi sự cố, thêm nhật ký, cô lập nguyên nhân gốc rễ +- Chế độ Tùy chỉnh: xây dựng các chế độ chuyên biệt cho nhóm hoặc quy trình làm việc của bạn +- Roomote Control: Roomote Control cho phép bạn điều khiển từ xa các tác vụ đang chạy trên VS Code cục bộ của bạn. + +Xem thêm: [Sử dụng Chế độ](https://docs.roocode.com/basic-usage/using-modes) • [Chế độ tùy chỉnh](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## Video hướng dẫn & tính năng + +
+ +| | | | +| :--------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
Cài đặt Roo Code |
Định cấu hình Hồ sơ |
Lập chỉ mục cơ sở mã | +|
Chế độ tùy chỉnh |
Điểm kiểm tra |
Danh sách việc cần làm |
+

+Thêm video hướng dẫn và tính năng nhanh... +

-**Roo Code** là một **tác nhân lập trình tự trị** được hỗ trợ bởi AI sống trong trình soạn thảo của bạn. Nó có thể: +## Tài nguyên -- Giao tiếp bằng ngôn ngữ tự nhiên -- Đọc và ghi các tập tin trực tiếp trong không gian làm việc của bạn -- Chạy các lệnh terminal -- Tự động hóa các hành động trên trình duyệt -- Tích hợp với bất kỳ API/mô hình tương thích OpenAI hoặc tùy chỉnh -- Điều chỉnh "tính cách" và khả năng của nó thông qua **Chế độ tùy chỉnh** - -Cho dù bạn đang tìm kiếm một đối tác lập trình linh hoạt, một kiến trúc sư hệ thống, hay các vai trò chuyên biệt như kỹ sư QA hoặc quản lý sản phẩm, Roo Code có thể giúp bạn xây dựng phần mềm hiệu quả hơn. - -Kiểm tra [CHANGELOG](../../CHANGELOG.md) để biết thông tin chi tiết về các cập nhật và sửa lỗi. +- **[Tài liệu](https://docs.roocode.com):** Hướng dẫn chính thức để cài đặt, cấu hình và sử dụng thành thạo Roo Code. +- **[Kênh YouTube](https://youtube.com/@roocodeyt?feature=shared):** Xem các video hướng dẫn và các tính năng đang hoạt động. +- **[Máy chủ Discord](https://discord.gg/roocode):** Tham gia cộng đồng để được trợ giúp và thảo luận trong thời gian thực. +- **[Cộng đồng Reddit](https://www.reddit.com/r/RooCode):** Chia sẻ kinh nghiệm của bạn và xem những người khác đang xây dựng gì. +- **[Vấn đề trên GitHub](https://github.com/RooCodeInc/Roo-Code/issues):** Báo cáo lỗi và theo dõi quá trình phát triển. +- **[Yêu cầu tính năng](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** Có ý tưởng? Hãy chia sẻ với các nhà phát triển. --- -## 🎉 Đã Phát Hành Roo Code 3.25 +## Cài đặt và phát triển cục bộ -Roo Code 3.25 mang đến những tính năng mới mạnh mẽ và cải tiến đáng kể để nâng cao quy trình phát triển của bạn. - -- **Nhà Cung Cấp Hugging Face** - Truy cập hàng tấn mô hình nguồn mở tuyệt vời trực tiếp thông qua nhà cung cấp Hugging Face mới với tích hợp liền mạch và lựa chọn mô hình. -- **Điều Khiển Lệnh Nội Tuyến** - Các điều khiển tự động phê duyệt và từ chối mới cho việc thực thi lệnh cung cấp cho bạn quyền kiểm soát chính xác các hoạt động terminal với quyền hạn có thể tùy chỉnh. -- **Hỗ Trợ Quy Tắc AGENTS.md** - Thêm hỗ trợ cho tệp AGENTS.md tiêu chuẩn cộng đồng trong thư mục gốc của dự án. - ---- - -## Roo Code Có Thể Làm Gì? - -- 🚀 **Tạo mã** từ mô tả bằng ngôn ngữ tự nhiên -- 🔧 **Tái cấu trúc & Gỡ lỗi** mã hiện có -- 📝 **Viết & Cập nhật** tài liệu -- 🤔 **Trả lời câu hỏi** về cơ sở mã của bạn -- 🔄 **Tự động hóa** các tác vụ lặp đi lặp lại -- 🏗️ **Tạo** tập tin và dự án mới - -## Bắt Đầu Nhanh - -1. [Cài đặt Roo Code](https://docs.roocode.com/getting-started/installing) -2. [Kết nối Nhà cung cấp AI của bạn](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [Thử tác vụ đầu tiên của bạn](https://docs.roocode.com/getting-started/your-first-task) - -## Tính Năng Chính - -### Nhiều Chế Độ - -Roo Code thích ứng với nhu cầu của bạn với các [chế độ](https://docs.roocode.com/basic-usage/using-modes) chuyên biệt: - -- **Chế độ Code:** Cho các tác vụ lập trình đa dụng -- **Chế độ Architect:** Cho việc lập kế hoạch và lãnh đạo kỹ thuật -- **Chế độ Ask:** Để trả lời câu hỏi và cung cấp thông tin -- **Chế độ Debug:** Cho việc chẩn đoán vấn đề có hệ thống -- **[Chế độ tùy chỉnh](https://docs.roocode.com/advanced-usage/custom-modes):** Tạo vô số nhân vật chuyên biệt cho kiểm toán bảo mật, tối ưu hóa hiệu suất, tài liệu, hoặc bất kỳ tác vụ nào khác - -### Công Cụ Thông Minh - -Roo Code đi kèm với các [công cụ](https://docs.roocode.com/basic-usage/how-tools-work) mạnh mẽ có thể: - -- Đọc và ghi tập tin trong dự án của bạn -- Thực thi các lệnh trong terminal VS Code của bạn -- Điều khiển trình duyệt web -- Sử dụng công cụ bên ngoài thông qua [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) - -MCP mở rộng khả năng của Roo Code bằng cách cho phép bạn thêm vô số công cụ tùy chỉnh. Tích hợp với API bên ngoài, kết nối với cơ sở dữ liệu, hoặc tạo các công cụ phát triển chuyên biệt - MCP cung cấp khung để mở rộng chức năng của Roo Code để đáp ứng nhu cầu cụ thể của bạn. - -### Tùy Chỉnh - -Làm cho Roo Code hoạt động theo cách của bạn với: - -- [Hướng dẫn tùy chỉnh](https://docs.roocode.com/advanced-usage/custom-instructions) cho hành vi cá nhân hóa -- [Chế độ tùy chỉnh](https://docs.roocode.com/advanced-usage/custom-modes) cho các tác vụ chuyên biệt -- [Mô hình cục bộ](https://docs.roocode.com/advanced-usage/local-models) cho sử dụng ngoại tuyến -- [Cài đặt tự động phê duyệt](https://docs.roocode.com/advanced-usage/auto-approving-actions) cho quy trình làm việc nhanh hơn - -## Tài Nguyên - -### Tài Liệu - -- [Hướng Dẫn Sử Dụng Cơ Bản](https://docs.roocode.com/basic-usage/the-chat-interface) -- [Tính Năng Nâng Cao](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [Câu Hỏi Thường Gặp](https://docs.roocode.com/faq) - -### Cộng Đồng - -- **Discord:** [Tham gia máy chủ Discord của chúng tôi](https://discord.gg/roocode) để được trợ giúp và thảo luận trong thời gian thực -- **Reddit:** [Ghé thăm subreddit của chúng tôi](https://www.reddit.com/r/RooCode) để chia sẻ kinh nghiệm và mẹo -- **GitHub:** [Báo cáo vấn đề](https://github.com/RooCodeInc/Roo-Code/issues) hoặc [yêu cầu tính năng](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) - ---- - -## Thiết Lập & Phát Triển Cục Bộ - -1. **Clone** kho lưu trữ: +1. **Sao chép** kho lưu trữ: ```sh git clone https://github.com/RooCodeInc/Roo-Code.git ``` -2. **Cài đặt các phụ thuộc**: +2. **Cài đặt các dependency**: ```sh -npm run install:all +pnpm install ``` -3. **Khởi động webview (ứng dụng Vite/React với HMR)**: +3. **Chạy phần mở rộng**: + +Có một số cách để chạy phần mở rộng Roo Code: + +### Chế độ phát triển (F5) + +Để phát triển tích cực, hãy sử dụng tính năng gỡ lỗi tích hợp của VSCode: + +Nhấn `F5` (hoặc vào **Run** → **Start Debugging**) trong VSCode. Thao tác này sẽ mở một cửa sổ VSCode mới với phần mở rộng Roo Code đang chạy. + +- Các thay đổi đối với webview sẽ xuất hiện ngay lập tức. +- Các thay đổi đối với phần mở rộng cốt lõi cũng sẽ tự động được tải lại nóng. + +### Cài đặt VSIX tự động + +Để xây dựng và cài đặt phần mở rộng dưới dạng gói VSIX trực tiếp vào VSCode: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **Gỡ lỗi**: - Nhấn `F5` (hoặc **Run** → **Start Debugging**) trong VSCode để mở phiên mới với Roo Code được tải. +Lệnh này sẽ: -Các thay đổi đối với webview sẽ xuất hiện ngay lập tức. Các thay đổi đối với phần mở rộng cốt lõi sẽ yêu cầu khởi động lại máy chủ phần mở rộng. +- Hỏi lệnh soạn thảo nào sẽ sử dụng (code/cursor/code-insiders) - mặc định là 'code' +- Gỡ cài đặt mọi phiên bản hiện có của phần mở rộng. +- Xây dựng gói VSIX mới nhất. +- Cài đặt VSIX vừa được xây dựng. +- Yêu cầu bạn khởi động lại VS Code để các thay đổi có hiệu lực. -Hoặc bạn có thể xây dựng một tệp .vsix và cài đặt nó trực tiếp trong VSCode: +Tùy chọn: -```sh -npm run build -``` +- `-y`: Bỏ qua tất cả các lời nhắc xác nhận và sử dụng các giá trị mặc định +- `--editor=`: Chỉ định lệnh soạn thảo (ví dụ: `--editor=cursor` hoặc `--editor=code-insiders`) -Một tệp `.vsix` sẽ xuất hiện trong thư mục `bin/` có thể được cài đặt bằng: +### Cài đặt VSIX thủ công -```sh -code --install-extension bin/roo-cline-.vsix -``` +Nếu bạn muốn cài đặt gói VSIX theo cách thủ công: + +1. Đầu tiên, hãy xây dựng gói VSIX: + ```sh + pnpm vsix + ``` +2. Một tệp `.vsix` sẽ được tạo trong thư mục `bin/` (ví dụ: `bin/roo-cline-.vsix`). +3. Cài đặt thủ công bằng VSCode CLI: + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- Chúng tôi sử dụng [changesets](https://github.com/changesets/changesets) để quản lý phiên bản và xuất bản. Kiểm tra `CHANGELOG.md` của chúng tôi để biết ghi chú phát hành. --- -## Tuyên Bố Miễn Trừ Trách Nhiệm +## Tuyên bố miễn trừ trách nhiệm -**Xin lưu ý** rằng Roo Code, Inc **không** đưa ra bất kỳ tuyên bố hoặc bảo đảm nào liên quan đến bất kỳ mã, mô hình, hoặc công cụ khác được cung cấp hoặc cung cấp liên quan đến Roo Code, bất kỳ công cụ bên thứ ba liên quan, hoặc bất kỳ đầu ra nào. Bạn chịu **tất cả rủi ro** liên quan đến việc sử dụng bất kỳ công cụ hoặc đầu ra như vậy; các công cụ đó được cung cấp trên cơ sở **"NGUYÊN TRẠNG"** và **"NHƯ CÓ SẴN"**. Những rủi ro đó có thể bao gồm, không giới hạn, vi phạm sở hữu trí tuệ, lỗ hổng mạng hoặc tấn công, thành kiến, không chính xác, lỗi, khiếm khuyết, virus, thời gian ngừng hoạt động, mất mát hoặc hư hỏng tài sản, và/hoặc thương tích cá nhân. Bạn hoàn toàn chịu trách nhiệm về việc sử dụng bất kỳ công cụ hoặc đầu ra như vậy (bao gồm, không giới hạn, tính hợp pháp, phù hợp và kết quả của chúng). +**Xin lưu ý** rằng Roo Code, Inc. **không** đưa ra bất kỳ tuyên bố hay bảo đảm nào liên quan đến bất kỳ mã, mô hình hoặc công cụ nào khác được cung cấp hoặc cung cấp liên quan đến Roo Code, bất kỳ công cụ nào của bên thứ ba được liên kết hoặc bất kỳ kết quả đầu ra nào. Bạn chịu **mọi rủi ro** liên quan đến việc sử dụng bất kỳ công cụ hoặc kết quả đầu ra nào như vậy; các công cụ đó được cung cấp trên cơ sở **"NGUYÊN TRẠNG"** và **"NHƯ HIỆN CÓ"**. Những rủi ro đó có thể bao gồm, nhưng không giới hạn ở, vi phạm sở hữu trí tuệ, các lỗ hổng hoặc tấn công mạng, thiên vị, không chính xác, lỗi, khiếm khuyết, vi-rút, thời gian ngừng hoạt động, mất mát hoặc hư hỏng tài sản và/hoặc thương tích cá nhân. Bạn hoàn toàn chịu trách nhiệm về việc sử dụng bất kỳ công cụ hoặc kết quả đầu ra nào đó (bao gồm, nhưng không giới hạn ở, tính hợp pháp, tính phù hợp và kết quả của chúng). --- -## Đóng Góp +## Đóng góp -Chúng tôi rất hoan nghênh đóng góp từ cộng đồng! Bắt đầu bằng cách đọc [CONTRIBUTING.md](CONTRIBUTING.md) của chúng tôi. +Chúng tôi yêu thích những đóng góp của cộng đồng! Bắt đầu bằng cách đọc [CONTRIBUTING.md](CONTRIBUTING.md) của chúng tôi. --- -## Người Đóng Góp +## Những người đóng góp -Cảm ơn tất cả những người đóng góp đã giúp cải thiện Roo Code! +Cảm ơn tất cả những người đóng góp đã giúp Roo Code trở nên tốt hơn! -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) -## Giấy Phép +## Giấy phép -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- -**Hãy tận hưởng Roo Code!** Cho dù bạn giữ nó trên dây ngắn hay để nó tự do hoạt động, chúng tôi rất mong được thấy những gì bạn xây dựng. Nếu bạn có câu hỏi hoặc ý tưởng về tính năng, hãy ghé qua [cộng đồng Reddit](https://www.reddit.com/r/RooCode/) hoặc [Discord](https://discord.gg/roocode) của chúng tôi. Chúc lập trình vui vẻ! +**Thưởng thức Roo Code!** Dù bạn giữ nó trong tầm kiểm soát chặt chẽ hay để nó tự do hoạt động, chúng tôi rất nóng lòng muốn xem bạn sẽ xây dựng được gì. Nếu bạn có câu hỏi hoặc ý tưởng về tính năng, hãy ghé qua [cộng đồng Reddit](https://www.reddit.com/r/RooCode/) hoặc [Discord](https://discord.gg/roocode) của chúng tôi. Chúc bạn viết mã vui vẻ! diff --git a/locales/zh-CN/CONTRIBUTING.md b/locales/zh-CN/CONTRIBUTING.md index f1cbacc46c..fa1ce2a798 100644 --- a/locales/zh-CN/CONTRIBUTING.md +++ b/locales/zh-CN/CONTRIBUTING.md @@ -11,128 +11,131 @@
-# 参与 Roo Code 贡献 +# 为 Roo Code 做贡献 -Roo Code 是一个由社区驱动的项目,我们高度重视每一份贡献。为了简化协作流程,我们采用 [Issue-First](#issue-first-方式) 原则,这意味着所有 [Pull Request (PR)](#提交-pull-request) 必须首先关联到 GitHub Issue。请仔细阅读本指南。 +Roo Code 是一个由社区驱动的项目,我们非常重视每一份贡献。为了简化协作,我们采用 [“问题优先” 的方法](#问题优先方法),这意味着所有的 [拉取请求 (PR)](#提交拉取请求) 都必须首先链接到一个 GitHub 问题。请仔细阅读本指南。 ## 目录 -- [贡献前须知](#贡献前须知) -- [寻找与规划你的贡献](#寻找与规划你的贡献) -- [开发与提交流程](#开发与提交流程) -- [法律声明](#法律声明) +- [在您贡献之前](#在您贡献之前) +- [寻找和规划您的贡献](#寻找和规划您的贡献) +- [开发和提交流程](#开发和提交流程) +- [法律](#法律) -## 贡献前须知 +## 在您贡献之前 ### 1. 行为准则 -所有贡献者必须遵守我们的[行为准则](./CODE_OF_CONDUCT.md)。 +所有贡献者都必须遵守我们的 [行为准则](./CODE_OF_CONDUCT.md)。 ### 2. 项目路线图 -我们的路线图指引项目方向。请将你的贡献与这些关键目标保持一致: +我们的路线图指导着项目的方向。请将您的贡献与这些关键目标保持一致: -### 可靠性优先 +### 可靠性第一 -- 确保差异编辑和命令执行始终可靠 -- 减少阻碍常规使用的摩擦点 -- 确保在所有语言环境和平台上流畅运行 -- 扩展对各种 AI 提供商和模型的强大支持 +- 确保差异编辑和命令执行始终可靠。 +- 减少阻碍常规使用的摩擦点。 +- 保证在所有地区和平台上的流畅操作。 +- 扩大对各种人工智能提供商和模型的强大支持。 -### 增强用户体验 +### 增强的用户体验 -- 简化用户界面,提高清晰度和直观性 -- 持续改进工作流程,满足开发者对日常工具的高期望 +- 简化用户界面/用户体验,以提高清晰度和直观性。 +- 不断改进工作流程,以满足开发人员对日常使用工具的高期望。 -### 引领代理性能 +### 在代理性能上领先 -- 建立全面的评估基准(evals)衡量实际工作中的生产力 -- 让每个人都能轻松运行和解读这些评估 -- 提供明显提升评分的改进 +- 建立全面的评估基准 (evals) 来衡量真实世界的生产力。 +- 让每个人都能轻松运行和解释这些评估。 +- 发布能显示评估分数明显提高的改进。 -在 PR 中请提及与这些领域的关联。 +在您的 PR 中提及与这些领域的一致性。 ### 3. 加入 Roo Code 社区 - **主要方式:** 加入我们的 [Discord](https://discord.gg/roocode) 并私信 **Hannes Rudolph (`hrudolph`)**。 -- **替代方式:** 有经验的贡献者可通过 [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1) 直接参与。 +- **替代方式:** 经验丰富的贡献者可以通过 [GitHub 项目](https://github.com/orgs/RooCodeInc/projects/1) 直接参与。 -## 寻找与规划你的贡献 +## 寻找和规划您的贡献 ### 贡献类型 -- **Bug 修复:** 解决代码问题。 -- **新功能:** 添加新功能。 -- **文档:** 完善指南和提高清晰度。 +- **错误修复:** 解决代码问题。 +- **新功能:** 添加功能。 +- **文档:** 改进指南和清晰度。 -### Issue-First 方式 +### 问题优先方法 -所有贡献必须从 GitHub Issue 开始。 +所有贡献都始于使用我们精简模板的 GitHub 问题。 -- **检查现有 issue:** 搜索 [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues)。 -- **创建 issue:** 使用适当模板: - - **Bug:** "Bug Report" 模板。 - - **功能:** "Detailed Feature Proposal" 模板。开始前需获得批准。 -- **认领 issue:** 评论并等待正式分配。 +- **检查现有问题**:在 [GitHub 问题](https://github.com/RooCodeInc/Roo-Code/issues) 中搜索。 +- **使用以下模板创建问题**: + - **增强功能:** “增强请求”模板(侧重于用户利益的简单语言)。 + - **错误:** “错误报告”模板(最少的复现步骤 + 预期与实际 + 版本)。 +- **想参与其中吗?** 在问题上评论“领取”,并在[Discord](https://discord.gg/roocode)上私信 **Hannes Rudolph (`hrudolph`)** 以获得分配。分配将在帖子中确认。 +- **PR 必须链接到问题。** 未链接的 PR 可能会被关闭。 -**未关联已批准 issue 的 PR 可能会被关闭。** +### 决定做什么 -### 决定要做什么 +- 查看 [GitHub 项目](https://github.com/orgs/RooCodeInc/projects/1) 中的“问题 [未分配]”问题。 +- 如需文档,请访问 [Roo Code 文档](https://github.com/RooCodeInc/Roo-Code-Docs)。 -- 查看 [GitHub 项目](https://github.com/orgs/RooCodeInc/projects/1) 中未分配的 "Good First Issues"。 -- 文档相关,请访问 [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs)。 +### 报告错误 -### 报告 Bug +- 首先检查现有的报告。 +- 使用 [“错误报告”模板](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) 创建一个新错误,并提供: + - 清晰、编号的复现步骤 + - 预期与实际结果 + - Roo Code 版本(必需);如果相关,还需提供 API 提供商/模型 +- **安全问题**:通过 [安全公告](https://github.com/RooCodeInc/Roo-Code/security/advisories/new) 私下报告。 -- 先检查是否已有相关报告。 -- 使用 ["Bug Report" 模板](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) 创建新 bug 报告。 -- **安全问题:** 通过 [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new) 私下报告。 +## 开发和提交流程 -## 开发与提交流程 +### 开发设置 -### 开发环境配置 - -1. **Fork & Clone:** +1. **复刻和克隆:** ``` -git clone https://github.com/你的用户名/Roo-Code.git +git clone https://github.com/您的用户名/Roo-Code.git ``` -2. **安装依赖:** +2. **安装依赖项:** ``` -npm run install:all +pnpm install ``` -3. **调试:** 在 VS Code 中按 `F5` 打开。 +3. **调试:** 使用 VS Code 打开(`F5`)。 -### 编码规范 +### 编码指南 -- 每个 PR 专注于一个功能或修复。 -- 遵循 ESLint 和 TypeScript 最佳实践。 -- 编写清晰的提交信息,引用相关 issue(如 `Fixes #123`)。 -- 提供完整测试(`npm test`)。 -- 提交前先在最新 `main` 分支上进行 rebase。 +- 每个功能或修复一个集中的 PR。 +- 遵循 ESLint 和 TypeScript 的最佳实践。 +- 编写清晰、描述性的提交,并引用问题(例如,`修复 #123`)。 +- 提供全面的测试(`npm test`)。 +- 在提交前变基到最新的 `main` 分支。 -### 提交 Pull Request +### 提交拉取请求 -- 如需早期反馈,可先提交**草稿 PR**。 -- 清晰描述你的更改,遵循 Pull Request 模板。 -- 为 UI 变更提供截图/视频。 -- 说明是否需要更新文档。 +- 如果希望获得早期反馈,请以 **草稿 PR** 开始。 +- 遵循拉取请求模板,清晰地描述您的更改。 +- 在 PR 描述/标题中链接问题(例如,“修复 #123”)。 +- 为用户界面更改提供屏幕截图/视频。 +- 指明是否需要更新文档。 -### Pull Request 政策 +### 拉取请求政策 -- 必须引用已批准并分配的 issue。 -- 不遵守政策的 PR 可能会被关闭。 -- PR 应通过 CI 测试,符合路线图,并有清晰文档。 +- 必须引用一个已分配的 GitHub 问题。要获得分配:在问题上评论“领取”,并在[Discord](https://discord.gg/roocode)上私信 **Hannes Rudolph (`hrudolph`)**。分配将在帖子中确认。 +- 未链接的 PR 可能会被关闭。 +- PR 必须通过 CI 测试,与路线图保持一致,并有清晰的文档。 ### 审查流程 -- **每日筛查:** 维护者快速检查。 +- **每日分类:** 维护人员进行快速检查。 - **每周深入审查:** 全面评估。 -- **根据反馈快速迭代**。 +- **根据反馈及时迭代**。 -## 法律声明 +## 法律 -提交贡献即表示你同意你的贡献将基于 Apache 2.0 许可证,与 Roo Code 的许可一致。 +通过贡献,您同意您的贡献将根据 Apache 2.0 许可证进行许可,这与 Roo Code 的许可一致。 diff --git a/locales/zh-CN/README.md b/locales/zh-CN/README.md index c73bb44175..62d3dad983 100644 --- a/locales/zh-CN/README.md +++ b/locales/zh-CN/README.md @@ -1,129 +1,93 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • 简体中文 • [繁體中文](../zh-TW/README.md) - - -
-
-
-

加入 Roo Code 社区

-

与开发者联系,贡献想法,紧跟最新的 AI 驱动编码工具。

- - 加入 Discord - 加入 Reddit - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ 快速获取帮助 → 加入 Discord • 偏好异步?→ 加入 r/RooCode

-在 VS Marketplace 上下载 -功能请求 -评分 & 评论 -文档 +# Roo Code + +> 你的 AI 驱动开发团队,就在你的编辑器里 + +
+ 🌐 可用语言 + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Roo Code 能为您做什么? + +- 从自然语言描述生成代码 +- 使用模式进行调整:代码、架构师、提问、调试和自定义模式 +- 重构和调试现有代码 +- 编写和更新文档 +- 回答关于您的代码库的问题 +- 自动化重复性任务 +- 使用 MCP 服务器 + +## 模式 + +Roo Code 适应您的工作方式,而不是相反: + +- 代码模式:日常编码、编辑和文件操作 +- 架构师模式:规划系统、规范和迁移 +- 提问模式:快速回答、解释和文档 +- 调试模式:跟踪问题、添加日志、隔离根本原因 +- 自定义模式:为您的团队或工作流程构建专门的模式 +- Roomote Control:Roomote Control 允许你远程控制在本地 VS Code 实例中运行的任务。 + +了解更多:[使用模式](https://docs.roocode.com/basic-usage/using-modes) • [自定义模式](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## 教程和功能视频 + +
+ +| | | | +| :-----------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
安装 Roo Code |
配置个人资料 |
代码库索引 | +|
自定义模式 |
检查点 |
待办事项列表 |
- -**Roo Code** 是一个 AI 驱动的**自主编码代理**,它存在于您的编辑器中。它可以: - -- 用自然语言沟通 -- 直接在您的工作区读写文件 -- 运行终端命令 -- 自动化浏览器操作 -- 与任何 OpenAI 兼容或自定义的 API/模型集成 -- 通过**自定义模式**调整其"个性"和能力 - -无论您是寻找灵活的编码伙伴、系统架构师,还是像 QA 工程师或产品经理这样的专业角色,Roo Code 都可以帮助您更高效地构建软件。 - -查看 [CHANGELOG](../../CHANGELOG.md) 获取详细更新和修复信息。 - ---- - -## 🎉 Roo Code 3.25 已发布 - -Roo Code 3.25 带来强大的新功能和重大改进,提升您的开发工作流程。 - -- **Hugging Face 提供者** - 通过新的 Hugging Face 提供者直接访问大量优秀的开源模型,具有无缝集成和模型选择功能。 -- **内联命令控制** - 新的自动批准和拒绝控制功能为命令执行提供精确控制,具有可自定义的权限设置。 -- **AGENTS.md 规则支持** - 添加对项目根目录中社区标准 AGENTS.md 文件的支持。 - ---- - -## Roo Code 能做什么? - -- 🚀 从自然语言描述**生成代码** -- 🔧 **重构和调试**现有代码 -- 📝 **编写和更新**文档 -- 🤔 **回答关于**您代码库的问题 -- 🔄 **自动化**重复任务 -- 🏗️ **创建**新文件和项目 - -## 快速入门 - -1. [安装 Roo Code](https://docs.roocode.com/getting-started/installing) -2. [连接您的 AI 提供者](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [尝试您的第一个任务](https://docs.roocode.com/getting-started/your-first-task) - -## 主要特性 - -### 多种模式 - -Roo Code 通过专业化的[模式](https://docs.roocode.com/basic-usage/using-modes)适应您的需求: - -- **代码模式:** 用于通用编码任务 -- **架构师模式:** 用于规划和技术领导 -- **询问模式:** 用于回答问题和提供信息 -- **调试模式:** 用于系统性问题诊断 -- **[自定义模式](https://docs.roocode.com/advanced-usage/custom-modes):** 创建无限专业角色,用于安全审计、性能优化、文档编写或任何其他任务 - -### 智能工具 - -Roo Code 配备了强大的[工具](https://docs.roocode.com/basic-usage/how-tools-work),可以: - -- 读写项目中的文件 -- 在 VS Code 终端中执行命令 -- 控制网络浏览器 -- 通过 [MCP(模型上下文协议)](https://docs.roocode.com/advanced-usage/mcp)使用外部工具 - -MCP 通过允许您添加无限自定义工具来扩展 Roo Code 的能力。与外部 API 集成、连接数据库或创建专业开发工具 - MCP 提供了扩展 Roo Code 功能以满足您特定需求的框架。 - -### 自定义 - -使 Roo Code 按照您的方式工作: - -- [自定义指令](https://docs.roocode.com/advanced-usage/custom-instructions)实现个性化行为 -- [自定义模式](https://docs.roocode.com/advanced-usage/custom-modes)用于专业任务 -- [本地模型](https://docs.roocode.com/advanced-usage/local-models)用于离线使用 -- [自动批准设置](https://docs.roocode.com/advanced-usage/auto-approving-actions)加快工作流程 +

+更多快速教程和功能视频... +

## 资源 -### 文档 - -- [基本使用指南](https://docs.roocode.com/basic-usage/the-chat-interface) -- [高级功能](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [常见问题](https://docs.roocode.com/faq) - -### 社区 - -- **Discord:** [加入我们的 Discord 服务器](https://discord.gg/roocode)获取实时帮助和讨论 -- **Reddit:** [访问我们的 subreddit](https://www.reddit.com/r/RooCode)分享经验和技巧 -- **GitHub:** 报告[问题](https://github.com/RooCodeInc/Roo-Code/issues)或请求[功能](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[文档](https://docs.roocode.com):** 安装、配置和掌握 Roo Code 的官方指南。 +- **[YouTube 频道](https://youtube.com/@roocodeyt?feature=shared):** 观看教程和功能演示。 +- **[Discord 服务器](https://discord.gg/roocode):** 加入社区以获得实时帮助和讨论。 +- **[Reddit 社区](https://www.reddit.com/r/RooCode):** 分享您的经验,看看别人在构建什么。 +- **[GitHub 问题](https://github.com/RooCodeInc/Roo-Code/issues):** 报告错误并跟踪开发。 +- **[功能请求](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** 有想法吗?与开发人员分享。 --- -## 本地设置和开发 +## 本地设置与开发 1. **克隆**仓库: @@ -131,48 +95,75 @@ MCP 通过允许您添加无限自定义工具来扩展 Roo Code 的能力。与 git clone https://github.com/RooCodeInc/Roo-Code.git ``` -2. **安装依赖**: +2. **安装依赖项**: ```sh -npm run install:all +pnpm install ``` -3. **启动网页视图(Vite/React 应用,带热模块替换)**: +3. **运行扩展程序**: + +有几种方法可以运行 Roo Code 扩展程序: + +### 开发模式(F5) + +对于积极开发,请使用 VSCode 的内置调试功能: + +在 VSCode 中按 `F5`(或转到 **Run** → **Start Debugging**)。这将在运行 Roo Code 扩展程序的新 VSCode 窗口中打开。 + +- 对 webview 的更改将立即显示。 +- 对核心扩展程序的更改也会自动热重载。 + +### 自动化 VSIX 安装 + +要将扩展程序构建为 VSIX 包并直接安装到 VSCode 中: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **调试**: - 在 VSCode 中按 `F5`(或**运行** → **开始调试**)打开一个加载了 Roo Code 的新会话。 +此命令将: -网页视图的更改将立即显示。核心扩展的更改将需要重启扩展主机。 +- 询问要使用的编辑器命令(code/cursor/code-insiders) - 默认为“code” +- 卸载任何现有版本的扩展程序。 +- 构建最新的 VSIX 包。 +- 安装新构建的 VSIX。 +- 提示您重新启动 VS Code 以使更改生效。 -或者,您可以构建一个 .vsix 文件并直接在 VSCode 中安装: +选项: -```sh -npm run build -``` +- `-y`: 跳过所有确认提示并使用默认值 +- `--editor=`: 指定编辑器命令(例如,`--editor=cursor` 或 `--editor=code-insiders`) -`bin/` 目录中将出现一个 `.vsix` 文件,可以用以下命令安装: +### 手动 VSIX 安装 -```sh -code --install-extension bin/roo-cline-.vsix -``` +如果您希望手动安装 VSIX 包: -我们使用 [changesets](https://github.com/changesets/changesets) 进行版本控制和发布。查看我们的 `CHANGELOG.md` 获取发布说明。 +1. 首先,构建 VSIX 包: + ```sh + pnpm vsix + ``` +2. 将在 `bin/` 目录中生成一个 `.vsix` 文件(例如,`bin/roo-cline-.vsix`)。 +3. 使用 VSCode CLI 手动安装 + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- + +我们使用 [changesets](https://github.com/changesets/changesets) 进行版本控制和发布。有关发行说明,请查看我们的 `CHANGELOG.md`。 --- ## 免责声明 -**请注意**,Roo Code, Inc **不**对与 Roo Code 相关提供或可用的任何代码、模型或其他工具,任何相关的第三方工具,或任何结果作出任何陈述或保证。您承担使用任何此类工具或输出的**所有风险**;此类工具按**"原样"**和**"可用性"**提供。此类风险可能包括但不限于知识产权侵权、网络漏洞或攻击、偏见、不准确、错误、缺陷、病毒、停机时间、财产损失或损坏和/或人身伤害。您对任何此类工具或输出的使用(包括但不限于其合法性、适当性和结果)负全部责任。 +**请注意**,Roo Code, Inc. **不**对与 Roo Code 相关的任何代码、模型或其他工具、任何相关的第三方工具或任何由此产生的输出作出任何陈述或保证。您承担使用任何此类工具或输出的**所有风险**;此类工具均按**“原样”**和**“可用”**的基础提供。此类风险可能包括但不限于知识产权侵权、网络漏洞或攻击、偏见、不准确、错误、缺陷、病毒、停机、财产损失或损害和/或人身伤害。您对自己使用任何此类工具或输出负全部责任(包括但不限于其合法性、适当性和结果)。 --- ## 贡献 -我们热爱社区贡献!通过阅读我们的 [CONTRIBUTING.md](CONTRIBUTING.md) 开始。 +我们欢迎社区贡献!请阅读我们的 [CONTRIBUTING.md](CONTRIBUTING.md) 开始。 --- @@ -182,53 +173,13 @@ code --install-extension bin/roo-cline-.vsix -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) ## 许可证 -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- diff --git a/locales/zh-TW/CONTRIBUTING.md b/locales/zh-TW/CONTRIBUTING.md index 11f83863f6..82313d7561 100644 --- a/locales/zh-TW/CONTRIBUTING.md +++ b/locales/zh-TW/CONTRIBUTING.md @@ -11,128 +11,131 @@
-# 參與 Roo Code 貢獻 +# 為 Roo Code 做出貢獻 -Roo Code 是一個由社群驅動的專案,我們深深重視每一份貢獻。為了簡化協作流程,我們採用 [Issue-First](#issue-first-方式) 原則,這表示所有 [Pull Request (PR)](#提交-pull-request) 必須先關聯至 GitHub Issue。請仔細閱讀本指南。 +Roo Code 是一個由社群驅動的專案,我們非常重視每一份貢獻。為了簡化協作,我們採用 [「問題優先」的方法](#問題優先方法),這意味著所有的 [拉取請求 (PR)](#提交拉取請求) 都必須先連結到一個 GitHub 問題。請仔細閱讀本指南。 ## 目錄 -- [貢獻前須知](#貢獻前須知) -- [尋找與規劃你的貢獻](#尋找與規劃你的貢獻) -- [開發與提交流程](#開發與提交流程) -- [法律聲明](#法律聲明) +- [在您貢獻之前](#在您貢獻之前) +- [尋找和規劃您的貢獻](#尋找和規劃您的貢獻) +- [開發和提交流程](#開發和提交流程) +- [法律](#法律) -## 貢獻前須知 +## 在您貢獻之前 ### 1. 行為準則 -所有貢獻者必須遵守我們的[行為準則](./CODE_OF_CONDUCT.md)。 +所有貢獻者都必須遵守我們的 [行為準則](./CODE_OF_CONDUCT.md)。 -### 2. 專案藍圖 +### 2. 專案路線圖 -我們的藍圖指引專案方向。請將你的貢獻與這些關鍵目標保持一致: +我們的路線圖指導著專案的方向。請將您的貢獻與這些關鍵目標保持一致: -### 可靠性優先 +### 可靠性第一 -- 確保差異編輯和命令執行始終可靠 -- 減少阻礙常規使用的摩擦點 -- 確保在所有語言環境和平台上順暢運行 -- 擴展對各種 AI 供應商和模型的強大支援 +- 確保差異編輯和命令執行始終可靠。 +- 減少阻礙常規使用的摩擦點。 +- 保證在所有地區和平台上的流暢操作。 +- 擴大對各種人工智慧提供商和模型的強大支援。 -### 增強使用者體驗 +### 增強的使用者體驗 -- 簡化使用者介面,提高清晰度和直覺性 -- 持續改進工作流程,滿足開發者對日常工具的高期望 +- 簡化使用者介面/使用者體驗,以提高清晰度和直觀性。 +- 不斷改進工作流程,以滿足開發人員對日常使用工具的高期望。 -### 引領代理效能 +### 在代理效能上領先 -- 建立全面的評估基準(evals)衡量實際工作中的生產力 -- 讓每個人都能輕鬆執行和解讀這些評估 -- 提供明顯提升評分的改進 +- 建立全面的評估基準 (evals) 來衡量真實世界的生產力。 +- 讓每個人都能輕鬆執行和解釋這些評估。 +- 發布能顯示評估分數明顯提高的改進。 -在 PR 中請提及與這些領域的關聯。 +在您的 PR 中提及與這些領域的一致性。 ### 3. 加入 Roo Code 社群 - **主要方式:** 加入我們的 [Discord](https://discord.gg/roocode) 並私訊 **Hannes Rudolph (`hrudolph`)**。 -- **替代方式:** 有經驗的貢獻者可透過 [GitHub Projects](https://github.com/orgs/RooCodeInc/projects/1) 直接參與。 +- **替代方式:** 經驗豐富的貢獻者可以透過 [GitHub 專案](https://github.com/orgs/RooCodeInc/projects/1) 直接參與。 -## 尋找與規劃你的貢獻 +## 尋找和規劃您的貢獻 ### 貢獻類型 -- **Bug 修正:** 解決程式碼問題。 +- **錯誤修復:** 解決程式碼問題。 - **新功能:** 新增功能。 -- **文件:** 完善指南和提高清晰度。 +- **文件:** 改進指南和清晰度。 -### Issue-First 方式 +### 問題優先方法 -所有貢獻必須從 GitHub Issue 開始。 +所有貢獻都始於使用我們精簡範本的 GitHub 問題。 -- **檢查現有 issue:** 搜尋 [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues)。 -- **建立 issue:** 使用適當範本: - - **Bug:** 「Bug Report」範本。 - - **功能:** 「Detailed Feature Proposal」範本。開始前需獲得批准。 -- **認領 issue:** 留言並等待正式分配。 +- **檢查現有問題**:在 [GitHub 問題](https://github.com/RooCodeInc/Roo-Code/issues) 中搜尋。 +- **使用以下範本建立問題**: + - **增強功能:** 「增強請求」範本(著重於使用者利益的簡單語言)。 + - **錯誤:** 「錯誤報告」範本(最少的重現步驟 + 預期與實際 + 版本)。 +- **想參與其中嗎?** 在問題上評論“領取”,並在[Discord](https://discord.gg/roocode)上私訊 **Hannes Rudolph (`hrudolph`)** 以獲得分配。分配將在帖子中確認。 +- **PR 必須連結到問題。** 未連結的 PR 可能會被關閉。 -**未關聯已批准 issue 的 PR 可能會被關閉。** +### 決定做什麼 -### 決定要做什麼 +- 查看 [GitHub 專案](https://github.com/orgs/RooCodeInc/projects/1) 中的「問題 [未分配]」問題。 +- 如需文件,請造訪 [Roo Code 文件](https://github.com/RooCodeInc/Roo-Code-Docs)。 -- 查看 [GitHub 專案](https://github.com/orgs/RooCodeInc/projects/1) 中未分配的「Good First Issues」。 -- 文件相關,請訪問 [Roo Code Docs](https://github.com/RooCodeInc/Roo-Code-Docs)。 +### 報告錯誤 -### 回報 Bug +- 首先檢查現有的報告。 +- 使用 [「錯誤報告」範本](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) 建立一個新錯誤,並提供: + - 清晰、編號的重現步驟 + - 預期與實際結果 + - Roo Code 版本(必需);如果相關,還需提供 API 提供商/模型 +- **安全問題**:透過 [安全公告](https://github.com/RooCodeInc/Roo-Code/security/advisories/new) 私下報告。 -- 先檢查是否已有相關報告。 -- 使用 [「Bug Report」範本](https://github.com/RooCodeInc/Roo-Code/issues/new/choose) 建立新 bug 報告。 -- **安全問題:** 透過 [security advisories](https://github.com/RooCodeInc/Roo-Code/security/advisories/new) 私下回報。 +## 開發和提交流程 -## 開發與提交流程 +### 開發設定 -### 開發環境設定 - -1. **Fork & Clone:** +1. **複製和克隆:** ``` -git clone https://github.com/你的帳號/Roo-Code.git +git clone https://github.com/您的使用者名稱/Roo-Code.git ``` -2. **安裝相依套件:** +2. **安裝依賴項:** ``` -npm run install:all +pnpm install ``` -3. **除錯:** 在 VS Code 中按 `F5` 開啟。 +3. **偵錯:** 使用 VS Code 開啟(`F5`)。 -### 程式碼規範 +### 編碼指南 -- 每個 PR 專注於一個功能或修正。 -- 遵循 ESLint 和 TypeScript 最佳實踐。 -- 撰寫清晰的提交訊息,引用相關 issue(如 `Fixes #123`)。 -- 提供完整測試(`npm test`)。 -- 提交前先在最新 `main` 分支上進行 rebase。 +- 每個功能或修復一個集中的 PR。 +- 遵循 ESLint 和 TypeScript 的最佳實踐。 +- 編寫清晰、描述性的提交,並引用問題(例如,`修復 #123`)。 +- 提供全面的測試(`npm test`)。 +- 在提交前變基到最新的 `main` 分支。 -### 提交 Pull Request +### 提交拉取請求 -- 如需早期回饋,可先提交**草稿 PR**。 -- 清晰描述你的更改,遵循 Pull Request 範本。 -- 為 UI 變更提供截圖/影片。 -- 說明是否需要更新文件。 +- 如果希望獲得早期回饋,請以 **草稿 PR** 開始。 +- 遵循拉取請求範本,清晰地描述您的變更。 +- 在 PR 描述/標題中連結問題(例如,“修復 #123”)。 +- 為使用者介面變更提供螢幕截圖/影片。 +- 指明是否需要更新文件。 -### Pull Request 政策 +### 拉取請求政策 -- 必須引用已批准並分配的 issue。 -- 不遵守政策的 PR 可能會被關閉。 -- PR 應通過 CI 測試,符合藍圖,並有清晰文件。 +- 必須引用一個已分配的 GitHub 問題。要獲得分配:在問題上評論“領取”,並在[Discord](https://discord.gg/roocode)上私訊 **Hannes Rudolph (`hrudolph`)**。分配將在帖子中確認。 +- 未連結的 PR 可能會被關閉。 +- PR 必須通過 CI 測試,與路線圖保持一致,並有清晰的文件。 ### 審查流程 -- **每日篩查:** 維護者快速檢查。 +- **每日分類:** 維護人員進行快速檢查。 - **每週深入審查:** 全面評估。 -- **根據回饋快速迭代**。 +- **根據回饋及時迭代**。 -## 法律聲明 +## 法律 -提交貢獻即表示你同意你的貢獻將基於 Apache 2.0 授權條款,與 Roo Code 的授權一致。 +透過貢獻,您同意您的貢獻將根據 Apache 2.0 授權進行授權,這與 Roo Code 的授權一致。 diff --git a/locales/zh-TW/README.md b/locales/zh-TW/README.md index 2f65bf2f31..d89b52b287 100644 --- a/locales/zh-TW/README.md +++ b/locales/zh-TW/README.md @@ -1,130 +1,93 @@ -
- - -[English](../../README.md) • [Català](../ca/README.md) • [Deutsch](../de/README.md) • [Español](../es/README.md) • [Français](../fr/README.md) • [हिन्दी](../hi/README.md) • [Bahasa Indonesia](../id/README.md) • [Italiano](../it/README.md) • [日本語](../ja/README.md) - - - - -[한국어](../ko/README.md) • [Nederlands](../nl/README.md) • [Polski](../pl/README.md) • [Português (BR)](../pt-BR/README.md) • [Русский](../ru/README.md) • [Türkçe](../tr/README.md) • [Tiếng Việt](../vi/README.md) • [简体中文](../zh-CN/README.md) • 繁體中文 - - -
-
- -
-

加入 Roo Code 社群

-

與開發者連結,貢獻想法,並了解最新的 AI 驅動的程式設計工具。

- - 加入 Discord - 加入 Reddit - -
-
-
- -
-

Roo Code

- + VS Code + X + YouTube + Join Discord + Join r/RooCode +

+

+ 快速取得協助 → 加入 Discord • 偏好非同步?→ 加入 r/RooCode

-從 VS Marketplace 下載 -功能請求 -評分 & 評論 -文件 +# Roo Code + +> 你的 AI 驅動開發團隊,就在你的編輯器裡 + +
+ 🌐 可用語言 + +- [English](../../README.md) +- [Català](../ca/README.md) +- [Deutsch](../de/README.md) +- [Español](../es/README.md) +- [Français](../fr/README.md) +- [हिंदी](../hi/README.md) +- [Bahasa Indonesia](../id/README.md) +- [Italiano](../it/README.md) +- [日本語](../ja/README.md) +- [한국어](../ko/README.md) +- [Nederlands](../nl/README.md) +- [Polski](../pl/README.md) +- [Português (BR)](../pt-BR/README.md) +- [Русский](../ru/README.md) +- [Türkçe](../tr/README.md) +- [Tiếng Việt](../vi/README.md) +- [简体中文](../zh-CN/README.md) +- [繁體中文](../zh-TW/README.md) +- ... +
+ +--- + +## Roo Code 能為您做什麼? + +- 從自然語言描述生成程式碼 +- 使用模式進行調整:程式碼、架構師、詢問、偵錯和自訂模式 +- 重構和偵錯現有程式碼 +- 編寫和更新文件 +- 回答關於您程式碼庫的問題 +- 自動化重複性任務 +- 使用 MCP 伺服器 + +## 模式 + +Roo Code 適應您的工作方式,而不是相反: + +- 程式碼模式:日常編碼、編輯和檔案操作 +- 架構師模式:規劃系統、規格和遷移 +- 詢問模式:快速回答、解釋和文件 +- 偵錯模式:追蹤問題、新增日誌、隔離根本原因 +- 自訂模式:為您的團隊或工作流程建置專門的模式 +- Roomote Control:Roomote Control 讓你能遠端控制在本機 VS Code 執行個體中運行的工作。 + +更多資訊:[使用模式](https://docs.roocode.com/basic-usage/using-modes) • [自訂模式](https://docs.roocode.com/advanced-usage/custom-modes) • [Roomote Control](https://docs.roocode.com/roo-code-cloud/roomote-control) + +## 教學和功能影片 + +
+ +| | | | +| :-----------------------------------------------------------------------------------------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------: | +|
安裝 Roo Code |
設定設定檔 |
程式碼庫索引 | +|
自訂模式 |
檢查點 |
待辦事項清單 |
- -**Roo Code** 是一個存在於您編輯器中的 AI 驅動**自主程式開發助手**。它能夠: - -- 使用自然語言與您溝通 -- 直接讀寫您工作區中的檔案 -- 執行終端機命令 -- 自動化瀏覽器操作 -- 整合任何與 OpenAI 相容或自訂的 API/模型 -- 透過**自訂模式**調整其「個性」與功能 - -無論您需要的是一位靈活的程式設計夥伴、系統架構師,或是 QA 工程師、產品經理等特定角色,Roo Code 都能協助您更有效率地開發軟體。 - -請檢視 [CHANGELOG](../../CHANGELOG.md) 了解詳細的更新與修正內容。 - ---- - -## 🎉 Roo Code 3.25 已發布 - -Roo Code 3.25 帶來強大的新功能和重大改進,以提升您的開發工作流程。 - -- **Hugging Face 提供者** - 透過新的 Hugging Face 提供者直接存取大量優秀的開源模型,具有無縫整合和模型選擇功能。 -- **內嵌命令控制** - 新的自動核准和拒絕控制功能為命令執行提供精確控制,具有可自訂的權限設定。 -- **AGENTS.md 規則支援** - 新增對專案根目錄中社群標準 AGENTS.md 檔案的支援。 - ---- - -## Roo Code 可以做什麼? - -- 🚀 從自然語言描述**產生程式碼** -- 🔧 **重構與除錯**現有程式碼 -- 📝 **撰寫與更新**文件 -- 🤔 **回答**關於您的程式碼的問題 -- 🔄 **自動化**重複性工作 -- 🏗️ **建立**新檔案與專案 - -## 快速開始 - -1. [安裝 Roo Code](https://docs.roocode.com/getting-started/installing) -2. [連接您的 AI 提供者](https://docs.roocode.com/getting-started/connecting-api-provider) -3. [嘗試您的第一個任務](https://docs.roocode.com/getting-started/your-first-task) - -## 主要特點 - -### 多種模式 - -Roo Code 提供專業化的[模式](https://docs.roocode.com/basic-usage/using-modes),能滿足您的各種需求: - -- **程式碼模式:** 處理一般程式設計工作 -- **架構師模式:** 規劃架構與技術領導 -- **詢問模式:** 回答問題與提供資訊 -- **除錯模式:** 系統化地診斷問題 -- **[客製化模式](https://docs.roocode.com/advanced-usage/custom-modes):** 建立無限個專業角色,進行安全性審核、效能最佳化、文件撰寫或其他任何任務 - -### 智慧工具 - -Roo Code 內建強大的[工具](https://docs.roocode.com/basic-usage/how-tools-work),能夠: - -- 讀寫您專案中的檔案 -- 在您的 VS Code 終端機中執行命令 -- 控制網頁瀏覽器 -- 透過 [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp) 使用外部工具 - -透過 MCP,您可以無限制地新增自訂工具,進一步擴充 Roo Code 的功能。無論是整合外部 API、連接資料庫,或建立專屬的開發工具,MCP 都提供完整的框架,讓您依據自身需求靈活擴充 Roo Code。 - -### 客製化 - -Roo Code 可以配合您的需求進行調整: - -- [自訂指令](https://docs.roocode.com/advanced-usage/custom-instructions):個人化 Roo Code 的行為 -- [自訂模式](https://docs.roocode.com/advanced-usage/custom-modes):處理特定專業任務 -- [本機模型](https://docs.roocode.com/advanced-usage/local-models):支援離線使用 -- [自動核准設定](https://docs.roocode.com/advanced-usage/auto-approving-actions):加快工作流程 +

+更多快速教學和功能影片... +

## 資源 -### 文件 - -- [基本使用指南](https://docs.roocode.com/basic-usage/the-chat-interface) -- [進階功能](https://docs.roocode.com/advanced-usage/auto-approving-actions) -- [常見問題](https://docs.roocode.com/faq) - -### 社群 - -- **Discord:** [加入我們的 Discord 伺服器](https://discord.gg/roocode)取得即時幫助和討論 -- **Reddit:** [存取我們的 subreddit](https://www.reddit.com/r/RooCode)分享經驗和技巧 -- **GitHub:** [報告問題](https://github.com/RooCodeInc/Roo-Code/issues)或[請求功能](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) +- **[文件](https://docs.roocode.com):** 安裝、設定和掌握 Roo Code 的官方指南。 +- **[YouTube 頻道](https://youtube.com/@roocodeyt?feature=shared):** 觀看教學和功能實際操作。 +- **[Discord 伺服器](https://discord.gg/roocode):** 加入社群以獲得即時協助和討論。 +- **[Reddit 社群](https://www.reddit.com/r/RooCode):** 分享您的經驗,看看其他人正在建立什麼。 +- **[GitHub 問題](https://github.com/RooCodeInc/Roo-Code/issues):** 回報錯誤並追蹤開發進度。 +- **[功能請求](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop):** 有想法嗎?與開發人員分享。 --- -## 開發環境設定 +## 本地設定與開發 1. **複製**儲存庫: @@ -132,48 +95,75 @@ Roo Code 可以配合您的需求進行調整: git clone https://github.com/RooCodeInc/Roo-Code.git ``` -2. **安裝相依套件**: +2. **安裝依賴套件**: ```sh -npm run install:all +pnpm install ``` -3. **啟動網頁檢視(Vite/React 應用程式,支援 HMR)**: +3. **執行擴充功能**: + +有幾種方法可以執行 Roo Code 擴充功能: + +### 開發模式(F5) + +對於積極的開發,請使用 VSCode 的內建偵錯功能: + +在 VSCode 中按 `F5`(或前往 **執行** → **開始偵錯**)。這將在執行 Roo Code 擴充功能的新 VSCode 視窗中開啟。 + +- 對 webview 的變更將立即顯示。 +- 對核心擴充功能的變更也將自動熱重載。 + +### 自動化 VSIX 安裝 + +要將擴充功能建置為 VSIX 套件並直接安裝到 VSCode 中: ```sh -npm run dev +pnpm install:vsix [-y] [--editor=] ``` -4. **除錯**: - 在 VSCode 中按下 `F5`(或選擇**執行** → **開始除錯**)以開啟載入 Roo Code 的新工作階段。 +此命令將: -網頁檢視的變更會立即顯示。核心擴充功能的變更則需要重新啟動擴充主機。 +- 詢問要使用的編輯器命令(code/cursor/code-insiders) - 預設為“code” +- 解除安裝任何現有版本的擴充功能。 +- 建置最新的 VSIX 套件。 +- 安裝新建立的 VSIX。 +- 提示您重新啟動 VS Code 以使變更生效。 -或者,您也可以建置 .vsix 檔案並直接在 VSCode 中安裝: +選項: -```sh -npm run build -``` +- `-y`: 跳過所有確認提示並使用預設值 +- `--editor=`: 指定編輯器命令(例如 `--editor=cursor` 或 `--editor=code-insiders`) -建置完成後,`.vsix` 檔案會出現在 `bin/` 目錄中,可使用以下指令安裝: +### 手動 VSIX 安裝 -```sh -code --install-extension bin/roo-cline-.vsix -``` +如果您希望手動安裝 VSIX 套件: -我們使用 [changesets](https://github.com/changesets/changesets) 進行版本控制和發布。檢視我們的 `CHANGELOG.md` 取得發布說明。 +1. 首先,建置 VSIX 套件: + ```sh + pnpm vsix + ``` +2. 將在 `bin/` 目錄中產生一個 `.vsix` 檔案(例如 `bin/roo-cline-.vsix`)。 +3. 使用 VSCode CLI 手動安裝 + ```sh + code --install-extension bin/roo-cline-.vsix + ``` + +--- + +我們使用 [changesets](https://github.com/changesets/changesets) 進行版本控制和發布。有關發行說明,請查看我們的 `CHANGELOG.md`。 --- ## 免責聲明 -**請注意**,Roo Code, Inc. **不**對與 Roo Code 相關的任何程式碼、模型或其他工具、任何相關的第三方工具,或任何產生的輸出提供任何陳述或保證。您使用這些工具或輸出時,需自行承擔**所有相關風險**;這些工具係以**「現況」**及**「現有」**基礎提供。上述風險包括但不限於智慧財產權侵害、網路安全漏洞或攻擊、偏見、不準確性、錯誤、缺陷、病毒、停機時間、財產損失或損害,以及/或人身傷害。您須自行負責使用這些工具或輸出所產生的任何結果(包括但不限於其合法性、適當性及後果)。 +**請注意**,Roo Code, Inc. **不**對與 Roo Code 相關的任何程式碼、模型或其他工具、任何相關的第三方工具或任何由此產生的輸出作出任何陳述或保證。您承擔使用任何此類工具或輸出的**所有風險**;此類工具均按**「原樣」**和**「可用」**的基礎提供。此類風險可能包括但不限於智慧財產權侵權、網路漏洞或攻擊、偏見、不準確、錯誤、缺陷、病毒、停機、財產損失或損害和/或人身傷害。您對自己使用任何此類工具或輸出負全部責任(包括但不限於其合法性、適當性和結果)。 --- ## 貢獻 -我們喜歡社群貢獻!透過閱讀我們的 [CONTRIBUTING.md](CONTRIBUTING.md) 開始。 +我們歡迎社群貢獻!請閱讀我們的 [CONTRIBUTING.md](CONTRIBUTING.md) 開始。 --- @@ -183,53 +173,13 @@ code --install-extension bin/roo-cline-.vsix -| mrubens
mrubens
| saoudrizwan
saoudrizwan
| cte
cte
| daniel-lxs
daniel-lxs
| samhvw8
samhvw8
| hannesrudolph
hannesrudolph
| -| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| KJ7LNW
KJ7LNW
| a8trejo
a8trejo
| ColemanRoo
ColemanRoo
| MuriloFP
MuriloFP
| canrobins13
canrobins13
| stea9499
stea9499
| -| jr
jr
| joemanley201
joemanley201
| System233
System233
| nissa-seru
nissa-seru
| jquanton
jquanton
| roomote-agent
roomote-agent
| -| NyxJae
NyxJae
| elianiva
elianiva
| chrarnoldus
chrarnoldus
| d-oit
d-oit
| qdaxb
qdaxb
| wkordalski
wkordalski
| -| xyOz-dev
xyOz-dev
| punkpeye
punkpeye
| SannidhyaSah
SannidhyaSah
| zhangtony239
zhangtony239
| feifei325
feifei325
| cannuri
cannuri
| -| monotykamary
monotykamary
| Smartsheet-JB-Brown
Smartsheet-JB-Brown
| sachasayan
sachasayan
| dtrugman
dtrugman
| liwilliam2021
liwilliam2021
| hassoncs
hassoncs
| -| shariqriazz
shariqriazz
| vigneshsubbiah16
vigneshsubbiah16
| pugazhendhi-m
pugazhendhi-m
| lloydchang
lloydchang
| NaccOll
NaccOll
| Szpadel
Szpadel
| -| PeterDaveHello
PeterDaveHello
| diarmidmackenzie
diarmidmackenzie
| olweraltuve
olweraltuve
| psv2522
psv2522
| Premshay
Premshay
| kiwina
kiwina
| -| lupuletic
lupuletic
| ChuKhaLi
ChuKhaLi
| aheizi
aheizi
| afshawnlotfi
afshawnlotfi
| RaySinner
RaySinner
| noritaka1166
noritaka1166
| -| nbihan-mediware
nbihan-mediware
| brunobergher
brunobergher
| emshvac
emshvac
| kyle-apex
kyle-apex
| pdecat
pdecat
| Ruakij
Ruakij
| -| StevenTCramer
StevenTCramer
| dleffel
dleffel
| Lunchb0ne
Lunchb0ne
| SmartManoj
SmartManoj
| vagadiya
vagadiya
| slytechnical
slytechnical
| -| dlab-anton
dlab-anton
| arthurauffray
arthurauffray
| upamune
upamune
| NamesMT
NamesMT
| taylorwilsdon
taylorwilsdon
| sammcj
sammcj
| -| p12tic
p12tic
| gtaylor
gtaylor
| catrielmuller
catrielmuller
| aitoroses
aitoroses
| benzntech
benzntech
| ross
ross
| -| mr-ryan-james
mr-ryan-james
| heyseth
heyseth
| taisukeoe
taisukeoe
| avtc
avtc
| eonghk
eonghk
| GOODBOY008
GOODBOY008
| -| kcwhite
kcwhite
| ronyblum
ronyblum
| teddyOOXX
teddyOOXX
| thill2323
thill2323
| vincentsong
vincentsong
| yongjer
yongjer
| -| zeozeozeo
zeozeozeo
| ashktn
ashktn
| franekp
franekp
| yt3trees
yt3trees
| seedlord
seedlord
| QuinsZouls
QuinsZouls
| -| anton-otee
anton-otee
| axkirillov
axkirillov
| bramburn
bramburn
| olearycrew
olearycrew
| devxpain
devxpain
| snoyiatk
snoyiatk
| -| GitlyHallows
GitlyHallows
| jcbdev
jcbdev
| Chenjiayuan195
Chenjiayuan195
| julionav
julionav
| KanTakahiro
KanTakahiro
| kevint-cerebras
kevint-cerebras
| -| SplittyDev
SplittyDev
| mdp
mdp
| napter
napter
| philfung
philfung
| pwilkin
pwilkin
| dairui1
dairui1
| -| chris-garrett
chris-garrett
| bbenshalom
bbenshalom
| bannzai
bannzai
| axmo
axmo
| dqroid
dqroid
| ershang-fireworks
ershang-fireworks
| -| f14XuanLv
f14XuanLv
| janaki-sasidhar
janaki-sasidhar
| forestyoo
forestyoo
| hatsu38
hatsu38
| hongzio
hongzio
| im47cn
im47cn
| -| asychin
asychin
| amittell
amittell
| Yoshino-Yukitaro
Yoshino-Yukitaro
| Yikai-Liao
Yikai-Liao
| zxdvd
zxdvd
| s97712
s97712
| -| vladstudio
vladstudio
| vivekfyi
vivekfyi
| HahaBill
HahaBill
| tmsjngx0
tmsjngx0
| TGlide
TGlide
| Githubguy132010
Githubguy132010
| -| tgfjt
tgfjt
| maekawataiki
maekawataiki
| AlexandruSmirnov
AlexandruSmirnov
| abumalick
abumalick
| shoopapa
shoopapa
| qingyuan1109
qingyuan1109
| -| refactorthis
refactorthis
| robertheadley
robertheadley
| samir-nimbly
samir-nimbly
| sensei-woo
sensei-woo
| shaybc
shaybc
| shivamd1810
shivamd1810
| -| shohei-ihaya
shohei-ihaya
| shubhamgupta731
shubhamgupta731
| student20880
student20880
| takakoutso
takakoutso
| user202729
user202729
| cdlliuy
cdlliuy
| -| zetaloop
zetaloop
| PretzelVector
PretzelVector
| nevermorec
nevermorec
| jues
jues
| jwcraig
jwcraig
| kinandan
kinandan
| -| kohii
kohii
| lhish
lhish
| lightrabbit
lightrabbit
| olup
olup
| mecab
mecab
| mlopezr
mlopezr
| -| moqimoqidea
moqimoqidea
| mosleyit
mosleyit
| nobu007
nobu007
| oprstchn
oprstchn
| village-way
village-way
| philipnext
philipnext
| -| pokutuna
pokutuna
| thecolorblue
thecolorblue
| chadgauth
chadgauth
| CW-B-W
CW-B-W
| DarinVerheijke
DarinVerheijke
| dleen
dleen
| -| Deon588
Deon588
| dflatline
dflatline
| dbasclpy
dbasclpy
| EamonNerbonne
EamonNerbonne
| edwin-truthsearch-io
edwin-truthsearch-io
| ertan2002
ertan2002
| -| linegel
linegel
| celestial-vault
celestial-vault
| ExactDoug
ExactDoug
| pfitz
pfitz
| DeXtroTip
DeXtroTip
| adambrand
adambrand
| -| AMHesch
AMHesch
| adamhill
adamhill
| adamwlarson
adamwlarson
| adilhafeez
adilhafeez
| nexon33
nexon33
| alarno
alarno
| -| HadesArchitect
HadesArchitect
| alasano
alasano
| andreastempsch
andreastempsch
| andrewshu2000
andrewshu2000
| AntiMoron
AntiMoron
| atlasgong
atlasgong
| -| Atlogit
Atlogit
| benashby
benashby
| bogdan0083
bogdan0083
| hesara
hesara
| marvijo-code
marvijo-code
| mollux
mollux
| -| ecmasx
ecmasx
| kvokka
kvokka
| mohammad154
mohammad154
| Naam
Naam
| niteshbalusu11
niteshbalusu11
| OlegOAndreev
OlegOAndreev
| -| PaperBoardOfficial
PaperBoardOfficial
| Sarke
Sarke
| R-omk
R-omk
| SECKainersdorfer
SECKainersdorfer
| RandalSchwartz
RandalSchwartz
| RSO
RSO
| -| 01Rian
01Rian
| samsilveira
samsilveira
| jdilla1277
jdilla1277
| Jdo300
Jdo300
| Fovty
Fovty
| snova-jorgep
snova-jorgep
| -| joshualipman123
joshualipman123
| Juice10
Juice10
| AyazKaan
AyazKaan
| ksze
ksze
| KevinZhao
KevinZhao
| kevinvandijk
kevinvandijk
| -| Rexarrior
Rexarrior
| shtse8
shtse8
| libertyteeth
libertyteeth
| monkeyDluffy6017
monkeyDluffy6017
| mamertofabian
mamertofabian
| markijbema
markijbema
| +[![Contributors](https://contrib.rocks/image?repo=RooCodeInc/roo-code&max=120&columns=12&cacheBust=0000000000)](https://github.com/RooCodeInc/roo-code/graphs/contributors) ## 授權 -[Apache 2.0 © 2025 Roo Code, Inc.](../LICENSE) +[Apache 2.0 © 2025 Roo Code, Inc.](../../LICENSE) --- diff --git a/packages/build/src/__tests__/index.test.ts b/packages/build/src/__tests__/index.test.ts index eda70fac1c..8f5f6c711e 100644 --- a/packages/build/src/__tests__/index.test.ts +++ b/packages/build/src/__tests__/index.test.ts @@ -35,7 +35,7 @@ describe("generatePackageJson", () => { { command: "roo-cline.plusButtonClicked", title: "%command.newTask.title%", - icon: "$(add)", + icon: "$(edit)", }, { command: "roo-cline.openInNewTab", @@ -148,7 +148,7 @@ describe("generatePackageJson", () => { { command: "roo-code-nightly.plusButtonClicked", title: "%command.newTask.title%", - icon: "$(add)", + icon: "$(edit)", }, { command: "roo-code-nightly.openInNewTab", diff --git a/packages/cloud/src/CloudService.ts b/packages/cloud/src/CloudService.ts index 171b912858..ce9e34de8c 100644 --- a/packages/cloud/src/CloudService.ts +++ b/packages/cloud/src/CloudService.ts @@ -24,6 +24,7 @@ import { StaticSettingsService } from "./StaticSettingsService.js" import { CloudTelemetryClient as TelemetryClient } from "./TelemetryClient.js" import { CloudShareService } from "./CloudShareService.js" import { CloudAPI } from "./CloudAPI.js" +import { RetryQueue } from "./retry-queue/index.js" type AuthStateChangedPayload = CloudServiceEvents["auth-state-changed"][0] type AuthUserInfoPayload = CloudServiceEvents["user-info"][0] @@ -75,6 +76,12 @@ export class CloudService extends EventEmitter implements Di return this._cloudAPI } + private _retryQueue: RetryQueue | null = null + + public get retryQueue() { + return this._retryQueue + } + private constructor(context: ExtensionContext, log?: (...args: unknown[]) => void) { super() @@ -82,6 +89,8 @@ export class CloudService extends EventEmitter implements Di this.log = log || console.log this.authStateListener = (data: AuthStateChangedPayload) => { + // Handle retry queue based on auth state changes + this.handleAuthStateChangeForRetryQueue(data) this.emit("auth-state-changed", data) } @@ -131,7 +140,24 @@ export class CloudService extends EventEmitter implements Di this._cloudAPI = new CloudAPI(this._authService, this.log) - this._telemetryClient = new TelemetryClient(this._authService, this._settingsService) + // Initialize retry queue with auth header provider + this._retryQueue = new RetryQueue( + this.context, + undefined, // Use default config + this.log, + () => { + // Provide fresh auth headers for retries + const sessionToken = this._authService?.getSessionToken() + if (sessionToken) { + return { + Authorization: `Bearer ${sessionToken}`, + } + } + return undefined + }, + ) + + this._telemetryClient = new TelemetryClient(this._authService, this._settingsService, this._retryQueue) this._shareService = new CloudShareService(this._cloudAPI, this._settingsService, this.log) @@ -303,6 +329,10 @@ export class CloudService extends EventEmitter implements Di this.settingsService.dispose() } + if (this._retryQueue) { + this._retryQueue.dispose() + } + this.isInitialized = false } @@ -365,4 +395,67 @@ export class CloudService extends EventEmitter implements Di static isEnabled(): boolean { return !!this._instance?.isAuthenticated() } + + /** + * Handle auth state changes for the retry queue + * - Pause queue when not in 'active-session' state + * - Clear queue when user logs out or logs in as different user + * - Resume queue when returning to active-session with same user + */ + private handleAuthStateChangeForRetryQueue(data: AuthStateChangedPayload): void { + if (!this._retryQueue) { + return + } + + const newState = data.state + const userInfo = this.getUserInfo() + const newUserId = userInfo?.id + + this.log(`[CloudService] Auth state changed to: ${newState}, user: ${newUserId}`) + + // Handle different auth states + switch (newState) { + case "active-session": { + // Check if user changed (different user logged in) + const wasCleared = this._retryQueue.clearIfUserChanged(newUserId) + + if (!wasCleared) { + // Same user or first login, resume the queue + this._retryQueue.resume() + this.log("[CloudService] Resuming retry queue for active session") + } else { + // Different user, queue was cleared, but we can resume processing + this._retryQueue.resume() + this.log("[CloudService] Retry queue cleared for new user, resuming processing") + } + break + } + + case "logged-out": + // User is logged out, clear the queue + this._retryQueue.clearIfUserChanged(undefined) + this._retryQueue.pause() + this.log("[CloudService] Pausing and clearing retry queue for logged-out state") + break + + case "initializing": + case "attempting-session": + // Transitional states, pause the queue but don't clear + this._retryQueue.pause() + this.log(`[CloudService] Pausing retry queue during ${newState}`) + break + + case "inactive-session": + // Session is inactive (possibly expired), pause but don't clear + // The queue might resume if the session becomes active again + this._retryQueue.pause() + this.log("[CloudService] Pausing retry queue for inactive session") + break + + default: + // Unknown state, pause as a safety measure + this._retryQueue.pause() + this.log(`[CloudService] Pausing retry queue for unknown state: ${newState}`) + } + } } diff --git a/packages/cloud/src/TelemetryClient.ts b/packages/cloud/src/TelemetryClient.ts index 6afd118990..1213530a95 100644 --- a/packages/cloud/src/TelemetryClient.ts +++ b/packages/cloud/src/TelemetryClient.ts @@ -11,6 +11,7 @@ import { } from "@roo-code/types" import { getRooCodeApiUrl } from "./config.js" +import type { RetryQueue } from "./retry-queue/index.js" abstract class BaseTelemetryClient implements TelemetryClient { protected providerRef: WeakRef | null = null @@ -82,21 +83,21 @@ abstract class BaseTelemetryClient implements TelemetryClient { } export class CloudTelemetryClient extends BaseTelemetryClient { + private retryQueue: RetryQueue | null = null + constructor( private authService: AuthService, private settingsService: SettingsService, - debug = false, + retryQueue?: RetryQueue, ) { - super( - { - type: "exclude", - events: [TelemetryEventName.TASK_CONVERSATION_MESSAGE], - }, - debug, - ) + super({ + type: "exclude", + events: [TelemetryEventName.TASK_CONVERSATION_MESSAGE], + }) + this.retryQueue = retryQueue || null } - private async fetch(path: string, options: RequestInit) { + private async fetch(path: string, options: RequestInit, allowQueueing = true) { if (!this.authService.isAuthenticated()) { return } @@ -108,18 +109,46 @@ export class CloudTelemetryClient extends BaseTelemetryClient { return } - const response = await fetch(`${getRooCodeApiUrl()}/api/${path}`, { + const url = `${getRooCodeApiUrl()}/api/${path}` + const fetchOptions: RequestInit = { ...options, headers: { Authorization: `Bearer ${token}`, "Content-Type": "application/json", }, - }) + } - if (!response.ok) { - console.error( - `[TelemetryClient#fetch] ${options.method} ${path} -> ${response.status} ${response.statusText}`, - ) + try { + const response = await fetch(url, fetchOptions) + + if (!response.ok) { + console.error( + `[TelemetryClient#fetch] ${options.method} ${path} -> ${response.status} ${response.statusText}`, + ) + + // Queue for retry on server errors (5xx) or rate limiting (429) + // Do NOT retry on client errors (4xx) except 429 - they won't succeed + if (this.retryQueue && allowQueueing && (response.status >= 500 || response.status === 429)) { + await this.retryQueue.enqueue(url, fetchOptions, "telemetry") + } + } + + return response + } catch (error) { + console.error(`[TelemetryClient#fetch] Network error for ${options.method} ${path}: ${error}`) + + // Queue for retry on network failures (typically TypeError with "fetch failed" message) + // These are transient network issues that may succeed on retry + if ( + this.retryQueue && + allowQueueing && + error instanceof TypeError && + error.message.includes("fetch failed") + ) { + await this.retryQueue.enqueue(url, fetchOptions, "telemetry") + } + + throw error } } @@ -158,6 +187,7 @@ export class CloudTelemetryClient extends BaseTelemetryClient { }) } catch (error) { console.error(`[TelemetryClient#capture] Error sending telemetry event: ${error}`) + // Error is already queued for retry in the fetch method } } @@ -199,22 +229,26 @@ export class CloudTelemetryClient extends BaseTelemetryClient { ) } - // Custom fetch for multipart - don't set Content-Type header (let browser set it) - const response = await fetch(`${getRooCodeApiUrl()}/api/events/backfill`, { + const url = `${getRooCodeApiUrl()}/api/events/backfill` + const fetchOptions: RequestInit = { method: "POST", headers: { Authorization: `Bearer ${token}`, - // Note: No Content-Type header - browser will set multipart/form-data with boundary }, body: formData, - }) + } - if (!response.ok) { - console.error( - `[TelemetryClient#backfillMessages] POST events/backfill -> ${response.status} ${response.statusText}`, - ) - } else if (this.debug) { - console.info(`[TelemetryClient#backfillMessages] Successfully uploaded messages for task ${taskId}`) + try { + const response = await fetch(url, fetchOptions) + + if (!response.ok) { + console.error( + `[TelemetryClient#backfillMessages] POST events/backfill -> ${response.status} ${response.statusText}`, + ) + } + } catch (fetchError) { + console.error(`[TelemetryClient#backfillMessages] Network error: ${fetchError}`) + throw fetchError } } catch (error) { console.error(`[TelemetryClient#backfillMessages] Error uploading messages: ${error}`) diff --git a/packages/cloud/src/__tests__/TelemetryClient.test.ts b/packages/cloud/src/__tests__/TelemetryClient.test.ts index 96be400e0d..5cb952dc28 100644 --- a/packages/cloud/src/__tests__/TelemetryClient.test.ts +++ b/packages/cloud/src/__tests__/TelemetryClient.test.ts @@ -641,28 +641,6 @@ describe("TelemetryClient", () => { ) }) - it("should log debug information when debug is enabled", async () => { - const client = new TelemetryClient(mockAuthService, mockSettingsService, true) - - const messages = [ - { - ts: 1, - type: "say" as const, - say: "text" as const, - text: "test message", - }, - ] - - await client.backfillMessages(messages, "test-task-id") - - expect(console.info).toHaveBeenCalledWith( - "[TelemetryClient#backfillMessages] Uploading 1 messages for task test-task-id", - ) - expect(console.info).toHaveBeenCalledWith( - "[TelemetryClient#backfillMessages] Successfully uploaded messages for task test-task-id", - ) - }) - it("should handle empty messages array", async () => { const client = new TelemetryClient(mockAuthService, mockSettingsService) diff --git a/packages/cloud/src/index.ts b/packages/cloud/src/index.ts index dd40e6fc52..65b92ebc13 100644 --- a/packages/cloud/src/index.ts +++ b/packages/cloud/src/index.ts @@ -3,3 +3,6 @@ export * from "./config.js" export { CloudService } from "./CloudService.js" export { BridgeOrchestrator } from "./bridge/index.js" + +export { RetryQueue } from "./retry-queue/index.js" +export type { QueuedRequest, QueueStats, RetryQueueConfig, RetryQueueEvents } from "./retry-queue/index.js" diff --git a/packages/cloud/src/retry-queue/RetryQueue.ts b/packages/cloud/src/retry-queue/RetryQueue.ts new file mode 100644 index 0000000000..17362ad41d --- /dev/null +++ b/packages/cloud/src/retry-queue/RetryQueue.ts @@ -0,0 +1,371 @@ +import { EventEmitter } from "events" +import type { ExtensionContext } from "vscode" +import type { QueuedRequest, QueueStats, RetryQueueConfig, RetryQueueEvents } from "./types.js" + +type AuthHeaderProvider = () => Record | undefined + +export class RetryQueue extends EventEmitter { + private queue: Map = new Map() + private context: ExtensionContext + private config: RetryQueueConfig + private log: (...args: unknown[]) => void + private isProcessing = false + private retryTimer?: NodeJS.Timeout + private readonly STORAGE_KEY = "roo.retryQueue" + private authHeaderProvider?: AuthHeaderProvider + private queuePausedUntil?: number // Timestamp when the queue can resume processing + private isPaused = false // Manual pause state (e.g., for auth state changes) + private currentUserId?: string // Track current user ID for conditional clearing + private hasHadUser = false // Track if we've ever had a user (to distinguish from first login) + + constructor( + context: ExtensionContext, + config?: Partial, + log?: (...args: unknown[]) => void, + authHeaderProvider?: AuthHeaderProvider, + ) { + super() + this.context = context + this.log = log || console.log + this.authHeaderProvider = authHeaderProvider + + this.config = { + maxRetries: 0, + retryDelay: 60000, + maxQueueSize: 100, + persistQueue: true, + networkCheckInterval: 60000, + requestTimeout: 30000, + ...config, + } + + this.loadPersistedQueue() + this.startRetryTimer() + } + + private loadPersistedQueue(): void { + if (!this.config.persistQueue) return + + try { + const stored = this.context.workspaceState.get(this.STORAGE_KEY) + if (stored && Array.isArray(stored)) { + stored.forEach((request) => { + this.queue.set(request.id, request) + }) + this.log(`[RetryQueue] Loaded ${stored.length} persisted requests from workspace storage`) + } + } catch (error) { + this.log("[RetryQueue] Failed to load persisted queue:", error) + } + } + + private async persistQueue(): Promise { + if (!this.config.persistQueue) return + + try { + const requests = Array.from(this.queue.values()) + await this.context.workspaceState.update(this.STORAGE_KEY, requests) + } catch (error) { + this.log("[RetryQueue] Failed to persist queue:", error) + } + } + + public async enqueue( + url: string, + options: RequestInit, + type: QueuedRequest["type"] = "other", + operation?: string, + ): Promise { + if (this.queue.size >= this.config.maxQueueSize) { + const oldestId = Array.from(this.queue.keys())[0] + if (oldestId) { + this.queue.delete(oldestId) + } + } + + const request: QueuedRequest = { + id: `${Date.now()}-${Math.random().toString(36).substr(2, 9)}`, + url, + options, + timestamp: Date.now(), + retryCount: 0, + type, + operation, + } + + this.queue.set(request.id, request) + await this.persistQueue() + + this.emit("request-queued", request) + this.log(`[RetryQueue] Queued request: ${url}`) + } + + public async retryAll(): Promise { + if (this.isProcessing) { + this.log("[RetryQueue] Already processing, skipping retry cycle") + return + } + + // Check if the queue is manually paused (e.g., due to auth state) + if (this.isPaused) { + this.log("[RetryQueue] Queue is manually paused") + return + } + + // Check if the entire queue is paused due to rate limiting + if (this.queuePausedUntil && Date.now() < this.queuePausedUntil) { + this.log(`[RetryQueue] Queue is paused until ${new Date(this.queuePausedUntil).toISOString()}`) + return + } + + const requests = Array.from(this.queue.values()) + if (requests.length === 0) { + return + } + + this.isProcessing = true + + try { + // Sort by timestamp to process in FIFO order (oldest first) + requests.sort((a, b) => a.timestamp - b.timestamp) + + // Process all requests in FIFO order + for (const request of requests) { + try { + const response = await this.retryRequest(request) + + // Check if we got a 429 rate limiting response + if (response && response.status === 429) { + const retryAfter = response.headers.get("Retry-After") + if (retryAfter) { + // Parse Retry-After (could be seconds or a date) + let delayMs: number + const retryAfterSeconds = parseInt(retryAfter, 10) + if (!isNaN(retryAfterSeconds)) { + delayMs = retryAfterSeconds * 1000 + } else { + // Try parsing as a date + const retryDate = new Date(retryAfter) + if (!isNaN(retryDate.getTime())) { + delayMs = retryDate.getTime() - Date.now() + } else { + delayMs = 60000 // Default to 1 minute if we can't parse + } + } + // Pause the entire queue + this.queuePausedUntil = Date.now() + delayMs + this.log(`[RetryQueue] Rate limited, pausing entire queue for ${delayMs}ms`) + // Keep the request in the queue for later retry + this.queue.set(request.id, request) + // Stop processing further requests since the queue is paused + break + } + } + + this.queue.delete(request.id) + this.emit("request-retry-success", request) + } catch (error) { + request.retryCount++ + request.lastError = error instanceof Error ? error.message : String(error) + + // Check if we've exceeded max retries + if (this.config.maxRetries > 0 && request.retryCount >= this.config.maxRetries) { + this.log( + `[RetryQueue] Max retries (${this.config.maxRetries}) reached for request: ${request.url}`, + ) + this.queue.delete(request.id) + this.emit("request-max-retries-exceeded", request, error as Error) + } else { + this.queue.set(request.id, request) + this.emit("request-retry-failed", request, error as Error) + } + + // Add a small delay between retry attempts + await this.delay(100) + } + } + + await this.persistQueue() + } finally { + // Always reset the processing flag, even if an error occurs + this.isProcessing = false + } + } + + private async retryRequest(request: QueuedRequest): Promise { + this.log(`[RetryQueue] Retrying request: ${request.url}`) + + let headers = { ...request.options.headers } + if (this.authHeaderProvider) { + const freshAuthHeaders = this.authHeaderProvider() + if (freshAuthHeaders) { + headers = { + ...headers, + ...freshAuthHeaders, + } + } + } + + const controller = new AbortController() + const timeoutId = setTimeout(() => controller.abort(), this.config.requestTimeout) + + try { + const response = await fetch(request.url, { + ...request.options, + signal: controller.signal, + headers: { + ...headers, + "X-Retry-Queue": "true", + }, + }) + + clearTimeout(timeoutId) + + // Check for error status codes that should trigger retry + if (!response.ok) { + // Handle different status codes appropriately + if (response.status >= 500) { + // Server errors (5xx) should be retried + throw new Error(`Server error: ${response.status} ${response.statusText}`) + } else if (response.status === 429) { + // Rate limiting - return response to let caller handle Retry-After + return response + } else if (response.status >= 400 && response.status < 500) { + // Client errors (4xx including 401/403) should NOT be retried + // These errors indicate problems with the request itself that won't be fixed by retrying + this.log(`[RetryQueue] Non-retryable client error ${response.status}, removing from queue`) + return response + } + } + + return response + } catch (error) { + clearTimeout(timeoutId) + throw error + } + } + + private startRetryTimer(): void { + if (this.retryTimer) { + clearInterval(this.retryTimer) + } + + this.retryTimer = setInterval(() => { + this.retryAll().catch((error) => { + this.log("[RetryQueue] Error during retry cycle:", error) + }) + }, this.config.networkCheckInterval) + } + + private delay(ms: number): Promise { + return new Promise((resolve) => setTimeout(resolve, ms)) + } + + public getStats(): QueueStats { + const requests = Array.from(this.queue.values()) + const byType: Record = {} + let totalRetries = 0 + let failedRetries = 0 + + requests.forEach((request) => { + byType[request.type] = (byType[request.type] || 0) + 1 + totalRetries += request.retryCount + if (request.lastError) { + failedRetries++ + } + }) + + const timestamps = requests.map((r) => r.timestamp) + const oldestRequest = timestamps.length > 0 ? new Date(Math.min(...timestamps)) : undefined + const newestRequest = timestamps.length > 0 ? new Date(Math.max(...timestamps)) : undefined + + return { + totalQueued: requests.length, + byType, + oldestRequest, + newestRequest, + totalRetries, + failedRetries, + } + } + + public clear(): void { + this.queue.clear() + this.persistQueue().catch((error) => { + this.log("[RetryQueue] Failed to persist after clear:", error) + }) + this.emit("queue-cleared") + } + + /** + * Pause the retry queue. When paused, no retries will be processed. + * This is useful when auth state is not active or during logout. + */ + public pause(): void { + this.isPaused = true + this.log("[RetryQueue] Queue paused") + } + + /** + * Resume the retry queue. Retries will be processed again on the next interval. + */ + public resume(): void { + this.isPaused = false + this.log("[RetryQueue] Queue resumed") + } + + /** + * Check if the queue is paused + */ + public isPausedState(): boolean { + return this.isPaused + } + + /** + * Set the current user ID for tracking user changes + */ + public setCurrentUserId(userId: string | undefined): void { + this.currentUserId = userId + } + + /** + * Get the current user ID + */ + public getCurrentUserId(): string | undefined { + return this.currentUserId + } + + /** + * Conditionally clear the queue based on user ID change. + * If newUserId is different from currentUserId, clear the queue. + * Returns true if queue was cleared, false otherwise. + */ + public clearIfUserChanged(newUserId: string | undefined): boolean { + // First time ever setting a user (initial login) + if (!this.hasHadUser && newUserId !== undefined) { + this.currentUserId = newUserId + this.hasHadUser = true + return false + } + + // If user IDs are different (including logout case where newUserId is undefined) + if (this.currentUserId !== newUserId) { + this.log(`[RetryQueue] User changed from ${this.currentUserId} to ${newUserId}, clearing queue`) + this.clear() + this.currentUserId = newUserId + if (newUserId !== undefined) { + this.hasHadUser = true + } + return true + } + + return false + } + + public dispose(): void { + if (this.retryTimer) { + clearInterval(this.retryTimer) + } + this.removeAllListeners() + } +} diff --git a/packages/cloud/src/retry-queue/__tests__/RetryQueue.test.ts b/packages/cloud/src/retry-queue/__tests__/RetryQueue.test.ts new file mode 100644 index 0000000000..becee719c1 --- /dev/null +++ b/packages/cloud/src/retry-queue/__tests__/RetryQueue.test.ts @@ -0,0 +1,698 @@ +import type { ExtensionContext } from "vscode" +import { RetryQueue } from "../RetryQueue.js" +import type { QueuedRequest } from "../types.js" + +// Mock ExtensionContext +const createMockContext = (): ExtensionContext => { + const storage = new Map() + + return { + workspaceState: { + get: vi.fn((key: string) => storage.get(key)), + update: vi.fn(async (key: string, value: unknown) => { + storage.set(key, value) + }), + }, + } as unknown as ExtensionContext +} + +describe("RetryQueue", () => { + let mockContext: ExtensionContext + let retryQueue: RetryQueue + + beforeEach(() => { + vi.clearAllMocks() + mockContext = createMockContext() + retryQueue = new RetryQueue(mockContext) + }) + + afterEach(() => { + retryQueue.dispose() + }) + + describe("enqueue", () => { + it("should add a request to the queue", async () => { + const url = "https://api.example.com/test" + const options = { method: "POST", body: JSON.stringify({ test: "data" }) } + + await retryQueue.enqueue(url, options, "telemetry") + + const stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(1) + expect(stats.byType["telemetry"]).toBe(1) + }) + + it("should enforce max queue size with FIFO eviction", async () => { + // Create a queue with max size of 3 + retryQueue = new RetryQueue(mockContext, { maxQueueSize: 3 }) + + // Add 4 requests + for (let i = 1; i <= 4; i++) { + await retryQueue.enqueue(`https://api.example.com/test${i}`, { method: "POST" }, "telemetry") + } + + const stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(3) // Should only have 3 items (oldest was evicted) + }) + }) + + describe("persistence", () => { + it("should persist queue to workspace state", async () => { + await retryQueue.enqueue("https://api.example.com/test", { method: "POST" }, "telemetry") + + expect(mockContext.workspaceState.update).toHaveBeenCalledWith( + "roo.retryQueue", + expect.arrayContaining([ + expect.objectContaining({ + url: "https://api.example.com/test", + type: "telemetry", + }), + ]), + ) + }) + + it("should load persisted queue on initialization", () => { + const persistedRequests: QueuedRequest[] = [ + { + id: "test-1", + url: "https://api.example.com/test1", + options: { method: "POST" }, + timestamp: Date.now(), + retryCount: 0, + type: "telemetry", + }, + ] + + // Set up mock to return persisted data + const storage = new Map([["roo.retryQueue", persistedRequests]]) + mockContext = { + workspaceState: { + get: vi.fn((key: string) => storage.get(key)), + update: vi.fn(), + }, + } as unknown as ExtensionContext + + retryQueue = new RetryQueue(mockContext) + + const stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(1) + expect(mockContext.workspaceState.get).toHaveBeenCalledWith("roo.retryQueue") + }) + }) + + describe("clear", () => { + it("should clear all queued requests", async () => { + await retryQueue.enqueue("https://api.example.com/test1", { method: "POST" }, "telemetry") + await retryQueue.enqueue("https://api.example.com/test2", { method: "POST" }, "api-call") + + let stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(2) + + retryQueue.clear() + + stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(0) + }) + }) + + describe("getStats", () => { + it("should return correct statistics", async () => { + const now = Date.now() + + await retryQueue.enqueue("https://api.example.com/test1", { method: "POST" }, "telemetry") + await retryQueue.enqueue("https://api.example.com/test2", { method: "POST" }, "api-call") + await retryQueue.enqueue("https://api.example.com/test3", { method: "POST" }, "telemetry") + + const stats = retryQueue.getStats() + + expect(stats.totalQueued).toBe(3) + expect(stats.byType["telemetry"]).toBe(2) + expect(stats.byType["api-call"]).toBe(1) + expect(stats.oldestRequest).toBeDefined() + expect(stats.newestRequest).toBeDefined() + expect(stats.oldestRequest!.getTime()).toBeGreaterThanOrEqual(now) + expect(stats.newestRequest!.getTime()).toBeGreaterThanOrEqual(now) + }) + }) + + describe("events", () => { + it("should emit request-queued event when enqueueing", async () => { + const listener = vi.fn() + retryQueue.on("request-queued", listener) + + await retryQueue.enqueue("https://api.example.com/test", { method: "POST" }, "telemetry") + + expect(listener).toHaveBeenCalledWith( + expect.objectContaining({ + url: "https://api.example.com/test", + type: "telemetry", + }), + ) + }) + + it("should emit queue-cleared event when clearing", () => { + const listener = vi.fn() + retryQueue.on("queue-cleared", listener) + + retryQueue.clear() + + expect(listener).toHaveBeenCalled() + }) + }) + + describe("auth state management", () => { + it("should pause and resume the queue", () => { + expect(retryQueue.isPausedState()).toBe(false) + + retryQueue.pause() + expect(retryQueue.isPausedState()).toBe(true) + + retryQueue.resume() + expect(retryQueue.isPausedState()).toBe(false) + }) + + it("should not process retries when paused", async () => { + const fetchMock = vi.fn().mockResolvedValue({ ok: true }) + global.fetch = fetchMock + + await retryQueue.enqueue("https://api.example.com/test", { method: "POST" }, "telemetry") + + // Pause the queue + retryQueue.pause() + + // Try to retry all + await retryQueue.retryAll() + + // Fetch should not be called because queue is paused + expect(fetchMock).not.toHaveBeenCalled() + + // Resume and retry + retryQueue.resume() + await retryQueue.retryAll() + + // Now fetch should be called + expect(fetchMock).toHaveBeenCalledTimes(1) + }) + + it("should track and update current user ID", () => { + expect(retryQueue.getCurrentUserId()).toBeUndefined() + + retryQueue.setCurrentUserId("user_123") + expect(retryQueue.getCurrentUserId()).toBe("user_123") + + retryQueue.setCurrentUserId("user_456") + expect(retryQueue.getCurrentUserId()).toBe("user_456") + + retryQueue.setCurrentUserId(undefined) + expect(retryQueue.getCurrentUserId()).toBeUndefined() + }) + + it("should clear queue when user changes", async () => { + // Add some requests + await retryQueue.enqueue("https://api.example.com/test1", { method: "POST" }, "telemetry") + await retryQueue.enqueue("https://api.example.com/test2", { method: "POST" }, "telemetry") + + let stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(2) + + // Set initial user + retryQueue.setCurrentUserId("user_123") + + // Same user login - should not clear + let wasCleared = retryQueue.clearIfUserChanged("user_123") + expect(wasCleared).toBe(false) + stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(2) + + // Different user login - should clear + wasCleared = retryQueue.clearIfUserChanged("user_456") + expect(wasCleared).toBe(true) + stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(0) + expect(retryQueue.getCurrentUserId()).toBe("user_456") + }) + + it("should clear queue on logout (undefined user)", async () => { + // Set initial user + retryQueue.setCurrentUserId("user_123") + + // Add some requests + await retryQueue.enqueue("https://api.example.com/test1", { method: "POST" }, "telemetry") + await retryQueue.enqueue("https://api.example.com/test2", { method: "POST" }, "telemetry") + + let stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(2) + + // Logout (undefined user) - should clear + const wasCleared = retryQueue.clearIfUserChanged(undefined) + expect(wasCleared).toBe(true) + stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(0) + expect(retryQueue.getCurrentUserId()).toBeUndefined() + }) + + it("should not clear on first login (no previous user)", async () => { + // Add some requests before any user is set + await retryQueue.enqueue("https://api.example.com/test1", { method: "POST" }, "telemetry") + await retryQueue.enqueue("https://api.example.com/test2", { method: "POST" }, "telemetry") + + let stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(2) + + // First login - should not clear + const wasCleared = retryQueue.clearIfUserChanged("user_123") + expect(wasCleared).toBe(false) + stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(2) + expect(retryQueue.getCurrentUserId()).toBe("user_123") + }) + + it("should handle multiple user transitions correctly", async () => { + const clearListener = vi.fn() + retryQueue.on("queue-cleared", clearListener) + + // First user logs in + retryQueue.clearIfUserChanged("user_123") + await retryQueue.enqueue("https://api.example.com/user1-req", { method: "POST" }, "telemetry") + + // User logs out + const clearedOnLogout = retryQueue.clearIfUserChanged(undefined) + expect(clearedOnLogout).toBe(true) + expect(clearListener).toHaveBeenCalledTimes(1) + + // Different user logs in + await retryQueue.enqueue("https://api.example.com/user2-req", { method: "POST" }, "telemetry") + const clearedOnNewUser = retryQueue.clearIfUserChanged("user_456") + expect(clearedOnNewUser).toBe(true) + expect(clearListener).toHaveBeenCalledTimes(2) + + // Same user logs back in + await retryQueue.enqueue("https://api.example.com/user2-req2", { method: "POST" }, "telemetry") + const notCleared = retryQueue.clearIfUserChanged("user_456") + expect(notCleared).toBe(false) + expect(clearListener).toHaveBeenCalledTimes(2) // Still 2, not cleared + + const stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(1) // Only the last request remains + }) + }) + + describe("retryAll", () => { + let fetchMock: ReturnType + + beforeEach(() => { + // Mock global fetch + fetchMock = vi.fn() + global.fetch = fetchMock + }) + + afterEach(() => { + vi.restoreAllMocks() + }) + + it("should process requests in FIFO order", async () => { + const successListener = vi.fn() + retryQueue.on("request-retry-success", successListener) + + // Add multiple requests + await retryQueue.enqueue("https://api.example.com/test1", { method: "POST" }, "telemetry") + await retryQueue.enqueue("https://api.example.com/test2", { method: "POST" }, "telemetry") + await retryQueue.enqueue("https://api.example.com/test3", { method: "POST" }, "telemetry") + + // Mock successful responses + fetchMock.mockResolvedValue({ ok: true }) + + await retryQueue.retryAll() + + // Check that fetch was called in FIFO order + expect(fetchMock).toHaveBeenCalledTimes(3) + expect(fetchMock.mock.calls[0]?.[0]).toBe("https://api.example.com/test1") + expect(fetchMock.mock.calls[1]?.[0]).toBe("https://api.example.com/test2") + expect(fetchMock.mock.calls[2]?.[0]).toBe("https://api.example.com/test3") + + // Check that success events were emitted + expect(successListener).toHaveBeenCalledTimes(3) + + // Queue should be empty after successful retries + const stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(0) + }) + + it("should handle failed retries and increment retry count", async () => { + const failListener = vi.fn() + retryQueue.on("request-retry-failed", failListener) + + await retryQueue.enqueue("https://api.example.com/test", { method: "POST" }, "telemetry") + + // Mock failed response + fetchMock.mockRejectedValue(new Error("Network error")) + + await retryQueue.retryAll() + + // Check that failure event was emitted + expect(failListener).toHaveBeenCalledWith( + expect.objectContaining({ + url: "https://api.example.com/test", + retryCount: 1, + lastError: "Network error", + }), + expect.any(Error), + ) + + // Request should still be in queue + const stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(1) + }) + + it("should enforce max retries limit", async () => { + // Create queue with max retries of 2 + retryQueue = new RetryQueue(mockContext, { maxRetries: 2 }) + + const maxRetriesListener = vi.fn() + retryQueue.on("request-max-retries-exceeded", maxRetriesListener) + + await retryQueue.enqueue("https://api.example.com/test", { method: "POST" }, "telemetry") + + // Mock failed responses + fetchMock.mockRejectedValue(new Error("Network error")) + + // First retry + await retryQueue.retryAll() + let stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(1) // Still in queue + + // Second retry - should hit max retries + await retryQueue.retryAll() + + // Check that max retries event was emitted + expect(maxRetriesListener).toHaveBeenCalledWith( + expect.objectContaining({ + url: "https://api.example.com/test", + retryCount: 2, + }), + expect.any(Error), + ) + + // Request should be removed from queue after exceeding max retries + stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(0) + }) + + it("should not process if already processing", async () => { + // Add a request + await retryQueue.enqueue("https://api.example.com/test", { method: "POST" }, "telemetry") + + // Mock a slow response + fetchMock.mockImplementation(() => new Promise((resolve) => setTimeout(() => resolve({ ok: true }), 100))) + + // Start first retryAll (don't await) + const firstCall = retryQueue.retryAll() + + // Try to call retryAll again immediately + const secondCall = retryQueue.retryAll() + + // Both should complete without errors + await Promise.all([firstCall, secondCall]) + + // Fetch should only be called once (from the first call) + expect(fetchMock).toHaveBeenCalledTimes(1) + }) + + it("should handle empty queue gracefully", async () => { + // Call retryAll on empty queue + await expect(retryQueue.retryAll()).resolves.toBeUndefined() + + // No fetch calls should be made + expect(fetchMock).not.toHaveBeenCalled() + }) + + it("should use auth header provider if available", async () => { + const authHeaderProvider = vi.fn().mockReturnValue({ + Authorization: "Bearer fresh-token", + }) + + retryQueue = new RetryQueue(mockContext, {}, undefined, authHeaderProvider) + + await retryQueue.enqueue( + "https://api.example.com/test", + { + method: "POST", + headers: { "Content-Type": "application/json" }, + }, + "telemetry", + ) + + fetchMock.mockResolvedValue({ ok: true }) + + await retryQueue.retryAll() + + // Check that fresh auth headers were used + expect(fetchMock).toHaveBeenCalledWith( + "https://api.example.com/test", + expect.objectContaining({ + headers: expect.objectContaining({ + Authorization: "Bearer fresh-token", + "Content-Type": "application/json", + "X-Retry-Queue": "true", + }), + }), + ) + + expect(authHeaderProvider).toHaveBeenCalled() + }) + + it("should respect configurable timeout", async () => { + // Create queue with custom timeout (short timeout for testing) + retryQueue = new RetryQueue(mockContext, { requestTimeout: 100 }) + + await retryQueue.enqueue("https://api.example.com/test", { method: "POST" }, "telemetry") + + // Mock fetch to reject with abort error + const abortError = new Error("The operation was aborted") + abortError.name = "AbortError" + fetchMock.mockRejectedValue(abortError) + + const failListener = vi.fn() + retryQueue.on("request-retry-failed", failListener) + + await retryQueue.retryAll() + + // Check that the request failed with an abort error + expect(failListener).toHaveBeenCalledWith( + expect.objectContaining({ + url: "https://api.example.com/test", + lastError: "The operation was aborted", + }), + expect.any(Error), + ) + + // The timeout configuration is being used (verified by the constructor accepting it) + // The actual timeout behavior is handled by the browser's AbortController + }) + + it("should retry on 500+ status codes", async () => { + const failListener = vi.fn() + const successListener = vi.fn() + retryQueue.on("request-retry-failed", failListener) + retryQueue.on("request-retry-success", successListener) + + await retryQueue.enqueue("https://api.example.com/test", { method: "POST" }, "telemetry") + + // First attempt: 500 error + fetchMock.mockResolvedValueOnce({ ok: false, status: 500, statusText: "Internal Server Error" }) + + await retryQueue.retryAll() + + // Should fail and remain in queue + expect(failListener).toHaveBeenCalledWith( + expect.objectContaining({ + url: "https://api.example.com/test", + retryCount: 1, + lastError: "Server error: 500 Internal Server Error", + }), + expect.any(Error), + ) + + let stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(1) + + // Second attempt: success + fetchMock.mockResolvedValueOnce({ ok: true, status: 200 }) + + await retryQueue.retryAll() + + // Should succeed and be removed from queue + expect(successListener).toHaveBeenCalled() + stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(0) + }) + + it("should pause entire queue on 429 rate limiting with Retry-After header", async () => { + // Add multiple requests to test queue-wide pause + await retryQueue.enqueue("https://api.example.com/test1", { method: "POST" }, "telemetry") + await retryQueue.enqueue("https://api.example.com/test2", { method: "POST" }, "telemetry") + await retryQueue.enqueue("https://api.example.com/test3", { method: "POST" }, "telemetry") + + // Mock 429 response with Retry-After header (in seconds) for the first request + const retryAfterResponse = { + ok: false, + status: 429, + headers: { + get: vi.fn((header: string) => { + if (header === "Retry-After") return "2" // 2 seconds + return null + }), + }, + } + + fetchMock.mockResolvedValueOnce(retryAfterResponse) + + await retryQueue.retryAll() + + // All requests should still be in queue + const stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(3) + + // Only the first request should have been attempted + expect(fetchMock).toHaveBeenCalledTimes(1) + expect(fetchMock).toHaveBeenCalledWith("https://api.example.com/test1", expect.any(Object)) + + // Try to retry immediately - should be skipped due to queue-wide rate limiting + fetchMock.mockClear() + await retryQueue.retryAll() + + // No fetch calls should be made because the entire queue is paused + expect(fetchMock).not.toHaveBeenCalled() + }) + + it("should process all requests after rate limit period expires", async () => { + // Add multiple requests + await retryQueue.enqueue("https://api.example.com/test1", { method: "POST" }, "telemetry") + await retryQueue.enqueue("https://api.example.com/test2", { method: "POST" }, "telemetry") + + // Mock 429 response with very short Retry-After (for testing) + const retryAfterResponse = { + ok: false, + status: 429, + headers: { + get: vi.fn((header: string) => { + if (header === "Retry-After") return "0" // 0 seconds (immediate) + return null + }), + }, + } + + fetchMock.mockResolvedValueOnce(retryAfterResponse) + + await retryQueue.retryAll() + + // Queue should be paused but requests still in queue + expect(retryQueue.getStats().totalQueued).toBe(2) + + // Wait a tiny bit for the rate limit to "expire" + await new Promise((resolve) => setTimeout(resolve, 10)) + + // Mock successful responses for both requests + fetchMock.mockResolvedValue({ ok: true }) + + // Now retry should process all requests + await retryQueue.retryAll() + + // All requests should be processed and removed from queue + expect(retryQueue.getStats().totalQueued).toBe(0) + // First request will be retried plus the second one + expect(fetchMock).toHaveBeenCalledTimes(3) // 1 (429) + 2 (success) + }) + + it("should not retry on 401/403 auth errors", async () => { + const successListener = vi.fn() + retryQueue.on("request-retry-success", successListener) + + await retryQueue.enqueue("https://api.example.com/test", { method: "POST" }, "telemetry") + + // Mock 401 error + fetchMock.mockResolvedValueOnce({ ok: false, status: 401, statusText: "Unauthorized" }) + + await retryQueue.retryAll() + + // Should be removed from queue without retry (401 is a client error) + expect(successListener).toHaveBeenCalled() + const stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(0) + + // Test 403 as well + await retryQueue.enqueue("https://api.example.com/test2", { method: "POST" }, "telemetry") + fetchMock.mockResolvedValueOnce({ ok: false, status: 403, statusText: "Forbidden" }) + + await retryQueue.retryAll() + + // Should also be removed from queue without retry + expect(successListener).toHaveBeenCalledTimes(2) + const stats2 = retryQueue.getStats() + expect(stats2.totalQueued).toBe(0) + }) + + it("should not retry on 400/404/422 client errors", async () => { + const successListener = vi.fn() + retryQueue.on("request-retry-success", successListener) + + // Test various 4xx errors that should not be retried + const clientErrors = [ + { status: 400, statusText: "Bad Request" }, + { status: 404, statusText: "Not Found" }, + { status: 422, statusText: "Unprocessable Entity" }, + ] + + for (const error of clientErrors) { + await retryQueue.enqueue( + `https://api.example.com/test-${error.status}`, + { method: "POST" }, + "telemetry", + ) + fetchMock.mockResolvedValueOnce({ ok: false, ...error }) + } + + await retryQueue.retryAll() + + // All requests should be removed from queue without retry + expect(successListener).toHaveBeenCalledTimes(3) + const stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(0) + }) + + it("should prevent concurrent processing", async () => { + // Add a single request + await retryQueue.enqueue("https://api.example.com/test1", { method: "POST" }, "telemetry") + + // Mock slow response + let resolveFirst: () => void + const firstPromise = new Promise<{ ok: boolean }>((resolve) => { + resolveFirst = () => resolve({ ok: true }) + }) + + fetchMock.mockReturnValueOnce(firstPromise) + + // Start first retryAll (don't await) + const firstCall = retryQueue.retryAll() + + // Try to call retryAll again immediately - should return immediately without processing + const secondCall = retryQueue.retryAll() + + // Second call should return immediately + await secondCall + + // Fetch should only be called once (from first call) + expect(fetchMock).toHaveBeenCalledTimes(1) + + // Resolve the promise + resolveFirst!() + + // Wait for first call to complete + await firstCall + + // Queue should be empty + const stats = retryQueue.getStats() + expect(stats.totalQueued).toBe(0) + }) + }) +}) diff --git a/packages/cloud/src/retry-queue/index.ts b/packages/cloud/src/retry-queue/index.ts new file mode 100644 index 0000000000..13b1e654e1 --- /dev/null +++ b/packages/cloud/src/retry-queue/index.ts @@ -0,0 +1,2 @@ +export { RetryQueue } from "./RetryQueue.js" +export type { QueuedRequest, QueueStats, RetryQueueConfig, RetryQueueEvents } from "./types.js" diff --git a/packages/cloud/src/retry-queue/types.ts b/packages/cloud/src/retry-queue/types.ts new file mode 100644 index 0000000000..351ab71f08 --- /dev/null +++ b/packages/cloud/src/retry-queue/types.ts @@ -0,0 +1,36 @@ +export interface QueuedRequest { + id: string + url: string + options: RequestInit + timestamp: number + retryCount: number + type: "api-call" | "telemetry" | "settings" | "other" + operation?: string + lastError?: string +} + +export interface QueueStats { + totalQueued: number + byType: Record + oldestRequest?: Date + newestRequest?: Date + totalRetries: number + failedRetries: number +} + +export interface RetryQueueConfig { + maxRetries: number // 0 means unlimited + retryDelay: number + maxQueueSize: number // FIFO eviction when full + persistQueue: boolean + networkCheckInterval: number // milliseconds + requestTimeout: number // milliseconds for request timeout +} + +export interface RetryQueueEvents { + "request-queued": [request: QueuedRequest] + "request-retry-success": [request: QueuedRequest] + "request-retry-failed": [request: QueuedRequest, error: Error] + "request-max-retries-exceeded": [request: QueuedRequest, error: Error] + "queue-cleared": [] +} diff --git a/packages/types/npm/package.metadata.json b/packages/types/npm/package.metadata.json index f6140c3977..d244c0c5d2 100644 --- a/packages/types/npm/package.metadata.json +++ b/packages/types/npm/package.metadata.json @@ -1,6 +1,6 @@ { "name": "@roo-code/types", - "version": "1.75.0", + "version": "1.78.0", "description": "TypeScript type definitions for Roo Code.", "publishConfig": { "access": "public", diff --git a/packages/types/src/__tests__/cloud.test.ts b/packages/types/src/__tests__/cloud.test.ts new file mode 100644 index 0000000000..31a942c2d4 --- /dev/null +++ b/packages/types/src/__tests__/cloud.test.ts @@ -0,0 +1,173 @@ +// npx vitest run src/__tests__/cloud.test.ts + +import { + organizationFeaturesSchema, + organizationSettingsSchema, + type OrganizationFeatures, + type OrganizationSettings, +} from "../cloud.js" + +describe("organizationFeaturesSchema", () => { + it("should validate empty object", () => { + const result = organizationFeaturesSchema.safeParse({}) + expect(result.success).toBe(true) + expect(result.data).toEqual({}) + }) + + it("should validate with roomoteControlEnabled as true", () => { + const input = { roomoteControlEnabled: true } + const result = organizationFeaturesSchema.safeParse(input) + expect(result.success).toBe(true) + expect(result.data).toEqual(input) + }) + + it("should validate with roomoteControlEnabled as false", () => { + const input = { roomoteControlEnabled: false } + const result = organizationFeaturesSchema.safeParse(input) + expect(result.success).toBe(true) + expect(result.data).toEqual(input) + }) + + it("should reject non-boolean roomoteControlEnabled", () => { + const input = { roomoteControlEnabled: "true" } + const result = organizationFeaturesSchema.safeParse(input) + expect(result.success).toBe(false) + }) + + it("should allow additional properties (for future extensibility)", () => { + const input = { roomoteControlEnabled: true, futureProperty: "test" } + const result = organizationFeaturesSchema.safeParse(input) + expect(result.success).toBe(true) + expect(result.data?.roomoteControlEnabled).toBe(true) + // Note: Additional properties are stripped by Zod, which is expected behavior + }) + + it("should have correct TypeScript type", () => { + // Type-only test to ensure TypeScript compilation + const features: OrganizationFeatures = { + roomoteControlEnabled: true, + } + expect(features.roomoteControlEnabled).toBe(true) + + const emptyFeatures: OrganizationFeatures = {} + expect(emptyFeatures.roomoteControlEnabled).toBeUndefined() + }) +}) + +describe("organizationSettingsSchema with features", () => { + const validBaseSettings = { + version: 1, + defaultSettings: {}, + allowList: { + allowAll: true, + providers: {}, + }, + } + + it("should validate without features property", () => { + const result = organizationSettingsSchema.safeParse(validBaseSettings) + expect(result.success).toBe(true) + expect(result.data?.features).toBeUndefined() + }) + + it("should validate with empty features object", () => { + const input = { + ...validBaseSettings, + features: {}, + } + const result = organizationSettingsSchema.safeParse(input) + expect(result.success).toBe(true) + expect(result.data?.features).toEqual({}) + }) + + it("should validate with features.roomoteControlEnabled as true", () => { + const input = { + ...validBaseSettings, + features: { + roomoteControlEnabled: true, + }, + } + const result = organizationSettingsSchema.safeParse(input) + expect(result.success).toBe(true) + expect(result.data?.features?.roomoteControlEnabled).toBe(true) + }) + + it("should validate with features.roomoteControlEnabled as false", () => { + const input = { + ...validBaseSettings, + features: { + roomoteControlEnabled: false, + }, + } + const result = organizationSettingsSchema.safeParse(input) + expect(result.success).toBe(true) + expect(result.data?.features?.roomoteControlEnabled).toBe(false) + }) + + it("should reject invalid features object", () => { + const input = { + ...validBaseSettings, + features: { + roomoteControlEnabled: "invalid", + }, + } + const result = organizationSettingsSchema.safeParse(input) + expect(result.success).toBe(false) + }) + + it("should have correct TypeScript type for features", () => { + // Type-only test to ensure TypeScript compilation + const settings: OrganizationSettings = { + version: 1, + defaultSettings: {}, + allowList: { + allowAll: true, + providers: {}, + }, + features: { + roomoteControlEnabled: true, + }, + } + expect(settings.features?.roomoteControlEnabled).toBe(true) + + const settingsWithoutFeatures: OrganizationSettings = { + version: 1, + defaultSettings: {}, + allowList: { + allowAll: true, + providers: {}, + }, + } + expect(settingsWithoutFeatures.features).toBeUndefined() + }) + + it("should maintain all existing properties", () => { + const input = { + version: 1, + cloudSettings: { + recordTaskMessages: true, + enableTaskSharing: false, + }, + defaultSettings: {}, + allowList: { + allowAll: false, + providers: { + openai: { + allowAll: true, + models: ["gpt-4"], + }, + }, + }, + features: { + roomoteControlEnabled: true, + }, + hiddenMcps: ["test-mcp"], + hideMarketplaceMcps: true, + mcps: [], + providerProfiles: {}, + } + const result = organizationSettingsSchema.safeParse(input) + expect(result.success).toBe(true) + expect(result.data).toEqual(input) + }) +}) diff --git a/packages/types/src/cloud.ts b/packages/types/src/cloud.ts index 693868d486..7ffb28ae5d 100644 --- a/packages/types/src/cloud.ts +++ b/packages/types/src/cloud.ts @@ -133,6 +133,16 @@ export const organizationCloudSettingsSchema = z.object({ export type OrganizationCloudSettings = z.infer +/** + * OrganizationFeatures + */ + +export const organizationFeaturesSchema = z.object({ + roomoteControlEnabled: z.boolean().optional(), +}) + +export type OrganizationFeatures = z.infer + /** * OrganizationSettings */ @@ -142,6 +152,7 @@ export const organizationSettingsSchema = z.object({ cloudSettings: organizationCloudSettingsSchema.optional(), defaultSettings: organizationDefaultSettingsSchema, allowList: organizationAllowListSchema, + features: organizationFeaturesSchema.optional(), hiddenMcps: z.array(z.string()).optional(), hideMarketplaceMcps: z.boolean().optional(), mcps: z.array(mcpMarketplaceItemSchema).optional(), diff --git a/packages/types/src/cookie-consent.ts b/packages/types/src/cookie-consent.ts new file mode 100644 index 0000000000..b1e97c656d --- /dev/null +++ b/packages/types/src/cookie-consent.ts @@ -0,0 +1,22 @@ +/** + * Cookie consent constants and types + * Shared across all Roo Code repositories + */ + +/** + * The name of the cookie that stores user's consent preference + * Used by react-cookie-consent library + */ +export const CONSENT_COOKIE_NAME = "roo-code-cookie-consent" + +/** + * Possible values for the consent cookie + */ +export type ConsentCookieValue = "true" | "false" + +/** + * Cookie consent event names for communication between components + */ +export const COOKIE_CONSENT_EVENTS = { + CHANGED: "cookieConsentChanged", +} as const diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 38b8c750f7..7a7d5059eb 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -1,6 +1,7 @@ export * from "./api.js" export * from "./cloud.js" export * from "./codebase-index.js" +export * from "./cookie-consent.js" export * from "./events.js" export * from "./experiment.js" export * from "./followup.js" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2a9b4517f1..048141704e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -302,6 +302,9 @@ importers: react: specifier: ^18.3.1 version: 18.3.1 + react-cookie-consent: + specifier: ^9.0.0 + version: 9.0.0(react@18.3.1) react-dom: specifier: ^18.3.1 version: 18.3.1(react@18.3.1) @@ -317,6 +320,9 @@ importers: tailwindcss-animate: specifier: ^1.0.7 version: 1.0.7(tailwindcss@3.4.17) + tldts: + specifier: ^6.1.86 + version: 6.1.86 zod: specifier: ^3.25.61 version: 3.25.61 @@ -642,8 +648,8 @@ importers: specifier: ^0.5.0 version: 0.5.0 axios: - specifier: ^1.7.4 - version: 1.9.0 + specifier: ^1.12.0 + version: 1.12.0 cheerio: specifier: ^1.0.0 version: 1.0.0 @@ -985,8 +991,8 @@ importers: specifier: ^1.4.0 version: 1.4.0(react@18.3.1) axios: - specifier: ^1.7.4 - version: 1.9.0 + specifier: ^1.12.0 + version: 1.12.0 class-variance-authority: specifier: ^0.7.1 version: 0.7.1 @@ -2089,8 +2095,8 @@ packages: '@libsql/client@0.15.8': resolution: {integrity: sha512-TskygwF+ToZeWhPPT0WennyGrP3tmkKraaKopT2YwUjqD6DWDRm6SG5iy0VqnaO+HC9FNBCDX0oQPODU3gqqPQ==} - '@libsql/core@0.15.14': - resolution: {integrity: sha512-b2eVQma78Ss+edIIFi7LnhhyUy5hAJjYvrSAD5RFdO/YKP2rEvNAT1pIn2Li7NrqcsMmoEQWlpUWH4fWMdXtpQ==} + '@libsql/core@0.15.15': + resolution: {integrity: sha512-C88Z6UKl+OyuKKPwz224riz02ih/zHYI3Ho/LAcVOgjsunIRZoBw7fjRfaH9oPMmSNeQfhGklSG2il1URoOIsA==} '@libsql/darwin-arm64@0.5.22': resolution: {integrity: sha512-4B8ZlX3nIDPndfct7GNe0nI3Yw6ibocEicWdC4fvQbSs/jdq/RC2oCsoJxJ4NzXkvktX70C1J4FcmmoBy069UA==} @@ -4055,9 +4061,6 @@ packages: '@types/node@20.17.57': resolution: {integrity: sha512-f3T4y6VU4fVQDKVqJV4Uppy8c1p/sVvS3peyqxyWnzkqXFJLRU7Y1Bl7rMS1Qe9z0v4M6McY0Fp9yBsgHJUsWQ==} - '@types/node@20.19.13': - resolution: {integrity: sha512-yCAeZl7a0DxgNVteXFHt9+uyFbqXGy/ShC4BlcHkoE0AfGXYv/BUiplV72DjMYXHDBXFjhvr6DD1NiRVfB4j8g==} - '@types/node@24.2.1': resolution: {integrity: sha512-DRh5K+ka5eJic8CjH7td8QpYEV6Zo10gfRkjHCO3weqZHWDtAaSTFtl4+VMqOJ4N5jcuhZ9/l+yy8rVgw7BQeQ==} @@ -4489,8 +4492,8 @@ packages: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} - axios@1.9.0: - resolution: {integrity: sha512-re4CqKTJaURpzbLHtIi6XpDv20/CnpXOtjRY5/CU32L8gU8ek9UIivcfvSWvmKEngmVbrUtPpdDwWDWL7DNHvg==} + axios@1.12.0: + resolution: {integrity: sha512-oXTDccv8PcfjZmPGlWsPSwtOJCZ/b6W5jAMCNcfwJbCzDckwG0jrYJFaWH1yvivfCXjVzV/SPDEhMB3Q+DSurg==} azure-devops-node-api@12.5.0: resolution: {integrity: sha512-R5eFskGvOm3U/GzeAuxRkUsAl0hrAwGgWn6zAd2KrZmrEhWZVqLew4OOupbQlXUuojUzpGtq62SmdhJ06N88og==} @@ -5998,6 +6001,15 @@ packages: flatted@3.3.3: resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} + follow-redirects@1.15.11: + resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + follow-redirects@1.15.9: resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} engines: {node: '>=4.0'} @@ -8165,10 +8177,6 @@ packages: resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==} engines: {node: ^10 || ^12 || >=14} - postcss@8.5.3: - resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==} - engines: {node: ^10 || ^12 || >=14} - postcss@8.5.4: resolution: {integrity: sha512-QSa9EBe+uwlGTFmHsPKokv3B/oEMQZxfqW0QqNCyhpa6mB1afzulwn8hihglqAb2pOw+BJgNlmXQ8la2VeHB7w==} engines: {node: ^10 || ^12 || >=14} @@ -8335,6 +8343,12 @@ packages: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true + react-cookie-consent@9.0.0: + resolution: {integrity: sha512-Blyj+m+Zz7SFHYqT18p16EANgnSg2sIyU6Yp3vk83AnOnSW7qnehPkUe4+8+qxztJrNmCH5GP+VHsWzAKVOoZA==} + engines: {node: '>=10'} + peerDependencies: + react: '>=16' + react-dom@18.3.1: resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} peerDependencies: @@ -9488,9 +9502,6 @@ packages: undici-types@6.19.8: resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} - undici-types@6.21.0: - resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} - undici-types@7.10.0: resolution: {integrity: sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==} @@ -11475,7 +11486,7 @@ snapshots: '@libsql/client@0.15.8': dependencies: - '@libsql/core': 0.15.14 + '@libsql/core': 0.15.15 '@libsql/hrana-client': 0.7.0 js-base64: 3.7.8 libsql: 0.5.22 @@ -11485,7 +11496,7 @@ snapshots: - utf-8-validate optional: true - '@libsql/core@0.15.14': + '@libsql/core@0.15.15': dependencies: js-base64: 3.7.8 optional: true @@ -13266,7 +13277,7 @@ snapshots: '@alloc/quick-lru': 5.2.0 '@tailwindcss/node': 4.1.8 '@tailwindcss/oxide': 4.1.8 - postcss: 8.5.3 + postcss: 8.5.4 tailwindcss: 4.1.8 '@tailwindcss/typography@0.5.16(tailwindcss@3.4.17)': @@ -13589,11 +13600,6 @@ snapshots: dependencies: undici-types: 6.19.8 - '@types/node@20.19.13': - dependencies: - undici-types: 6.21.0 - optional: true - '@types/node@24.2.1': dependencies: undici-types: 7.10.0 @@ -13663,7 +13669,7 @@ snapshots: '@types/ws@8.18.1': dependencies: - '@types/node': 20.19.13 + '@types/node': 24.2.1 optional: true '@types/yargs-parser@21.0.3': {} @@ -14157,9 +14163,9 @@ snapshots: dependencies: possible-typed-array-names: 1.1.0 - axios@1.9.0: + axios@1.12.0: dependencies: - follow-redirects: 1.15.9 + follow-redirects: 1.15.11 form-data: 4.0.4 proxy-from-env: 1.1.0 transitivePeerDependencies: @@ -15827,6 +15833,8 @@ snapshots: flatted@3.3.3: {} + follow-redirects@1.15.11: {} + follow-redirects@1.15.9: {} for-each@0.3.5: @@ -18353,12 +18361,6 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 - postcss@8.5.3: - dependencies: - nanoid: 3.3.11 - picocolors: 1.1.1 - source-map-js: 1.2.1 - postcss@8.5.4: dependencies: nanoid: 3.3.11 @@ -18562,6 +18564,11 @@ snapshots: strip-json-comments: 2.0.1 optional: true + react-cookie-consent@9.0.0(react@18.3.1): + dependencies: + js-cookie: 2.2.1 + react: 18.3.1 + react-dom@18.3.1(react@18.3.1): dependencies: loose-envify: 1.4.0 @@ -19792,7 +19799,7 @@ snapshots: source-map: 0.8.0-beta.0 sucrase: 3.35.0 tinyexec: 0.3.2 - tinyglobby: 0.2.13 + tinyglobby: 0.2.14 tree-kill: 1.2.2 optionalDependencies: postcss: 8.5.4 @@ -19935,9 +19942,6 @@ snapshots: undici-types@6.19.8: {} - undici-types@6.21.0: - optional: true - undici-types@7.10.0: {} undici@6.21.3: {} diff --git a/releases/3.28.3-release.png b/releases/3.28.3-release.png new file mode 100644 index 0000000000..883ef80970 Binary files /dev/null and b/releases/3.28.3-release.png differ diff --git a/src/core/prompts/__tests__/custom-system-prompt.spec.ts b/src/core/prompts/__tests__/custom-system-prompt.spec.ts index b2ae067a3a..b211c2a27c 100644 --- a/src/core/prompts/__tests__/custom-system-prompt.spec.ts +++ b/src/core/prompts/__tests__/custom-system-prompt.spec.ts @@ -83,38 +83,42 @@ describe("File-Based Custom System Prompt", () => { mockedFs.readFile.mockRejectedValue({ code: "ENOENT" }) }) - it("should use default generation when no file-based system prompt is found", async () => { - const customModePrompts = { - [defaultModeSlug]: { - roleDefinition: "Test role definition", - }, - } + // Skipped on Windows due to timeout/flake issues + it.skipIf(process.platform === "win32")( + "should use default generation when no file-based system prompt is found", + async () => { + const customModePrompts = { + [defaultModeSlug]: { + roleDefinition: "Test role definition", + }, + } - const prompt = await SYSTEM_PROMPT( - mockContext, - "test/path", // Using a relative path without leading slash - false, // supportsComputerUse - undefined, // mcpHub - undefined, // diffStrategy - undefined, // browserViewportSize - defaultModeSlug, // mode - customModePrompts, // customModePrompts - undefined, // customModes - undefined, // globalCustomInstructions - undefined, // diffEnabled - undefined, // experiments - true, // enableMcpServerCreation - undefined, // language - undefined, // rooIgnoreInstructions - undefined, // partialReadsEnabled - ) + const prompt = await SYSTEM_PROMPT( + mockContext, + "test/path", // Using a relative path without leading slash + false, // supportsComputerUse + undefined, // mcpHub + undefined, // diffStrategy + undefined, // browserViewportSize + defaultModeSlug, // mode + customModePrompts, // customModePrompts + undefined, // customModes + undefined, // globalCustomInstructions + undefined, // diffEnabled + undefined, // experiments + true, // enableMcpServerCreation + undefined, // language + undefined, // rooIgnoreInstructions + undefined, // partialReadsEnabled + ) - // Should contain default sections - expect(prompt).toContain("TOOL USE") - expect(prompt).toContain("CAPABILITIES") - expect(prompt).toContain("MODES") - expect(prompt).toContain("Test role definition") - }) + // Should contain default sections + expect(prompt).toContain("TOOL USE") + expect(prompt).toContain("CAPABILITIES") + expect(prompt).toContain("MODES") + expect(prompt).toContain("Test role definition") + }, + ) it("should use file-based custom system prompt when available", async () => { // Mock the readFile to return content from a file diff --git a/src/integrations/claude-code/run.ts b/src/integrations/claude-code/run.ts index ac2e856f7a..1d617b9242 100644 --- a/src/integrations/claude-code/run.ts +++ b/src/integrations/claude-code/run.ts @@ -139,6 +139,9 @@ const claudeCodeTools = [ "TodoRead", "TodoWrite", "WebSearch", + "ExitPlanMode", + "BashOutput", + "KillBash", ].join(",") const CLAUDE_CODE_TIMEOUT = 600000 // 10 minutes diff --git a/src/package.json b/src/package.json index ad47fa6889..4016b06f22 100644 --- a/src/package.json +++ b/src/package.json @@ -3,7 +3,7 @@ "displayName": "%extension.displayName%", "description": "%extension.description%", "publisher": "RooVeterinaryInc", - "version": "3.28.2", + "version": "3.28.3", "icon": "assets/icons/icon.png", "galleryBanner": { "color": "#617A91", @@ -73,7 +73,7 @@ { "command": "roo-cline.plusButtonClicked", "title": "%command.newTask.title%", - "icon": "$(add)" + "icon": "$(edit)" }, { "command": "roo-cline.promptsButtonClicked", @@ -302,6 +302,16 @@ } ] }, + "keybindings": [ + { + "command": "roo-cline.addToContext", + "key": "cmd+y", + "mac": "cmd+y", + "win": "ctrl+y", + "linux": "ctrl+y", + "when": "editorTextFocus && editorHasSelection" + } + ], "submenus": [ { "id": "roo-cline.contextMenu", @@ -442,7 +452,7 @@ "@roo-code/types": "workspace:^", "@vscode/codicons": "^0.0.36", "async-mutex": "^0.5.0", - "axios": "^1.7.4", + "axios": "^1.12.0", "cheerio": "^1.0.0", "chokidar": "^4.0.1", "clone-deep": "^4.0.1", diff --git a/src/services/code-index/embedders/__tests__/openai-compatible.spec.ts b/src/services/code-index/embedders/__tests__/openai-compatible.spec.ts index 0353771f60..ecde769151 100644 --- a/src/services/code-index/embedders/__tests__/openai-compatible.spec.ts +++ b/src/services/code-index/embedders/__tests__/openai-compatible.spec.ts @@ -30,11 +30,26 @@ vitest.mock("../../../../i18n", () => ({ "embeddings:textExceedsTokenLimit": `Text at index ${params?.index} exceeds maximum token limit (${params?.itemTokens} > ${params?.maxTokens}). Skipping.`, "embeddings:rateLimitRetry": `Rate limit hit, retrying in ${params?.delayMs}ms (attempt ${params?.attempt}/${params?.maxRetries})`, "embeddings:unknownError": "Unknown error", + "common:errors.api.invalidKeyInvalidChars": + "API key contains invalid characters. Please check your API key for special characters.", } return translations[key] || key }, })) +// Mock i18n/setup module used by the error handler +vitest.mock("../../../../i18n/setup", () => ({ + default: { + t: (key: string) => { + const translations: Record = { + "common:errors.api.invalidKeyInvalidChars": + "API key contains invalid characters. Please check your API key for special characters.", + } + return translations[key] || key + }, + }, +})) + const MockedOpenAI = OpenAI as MockedClass describe("OpenAICompatibleEmbedder", () => { @@ -114,6 +129,22 @@ describe("OpenAICompatibleEmbedder", () => { "embeddings:validation.baseUrlRequired", ) }) + + it("should handle API key with invalid characters (ByteString conversion error)", () => { + // API key with special characters that cause ByteString conversion error + const invalidApiKey = "sk-test•invalid" // Contains bullet character (U+2022) + + // Mock the OpenAI constructor to throw ByteString error + MockedOpenAI.mockImplementationOnce(() => { + throw new Error( + "Cannot convert argument to a ByteString because the character at index 7 has a value of 8226 which is greater than 255.", + ) + }) + + expect(() => new OpenAICompatibleEmbedder(testBaseUrl, invalidApiKey, testModelId)).toThrow( + "API key contains invalid characters", + ) + }) }) describe("embedderInfo", () => { diff --git a/src/services/code-index/embedders/openai-compatible.ts b/src/services/code-index/embedders/openai-compatible.ts index 06c4ba5282..6eaf2b6c2c 100644 --- a/src/services/code-index/embedders/openai-compatible.ts +++ b/src/services/code-index/embedders/openai-compatible.ts @@ -12,6 +12,7 @@ import { withValidationErrorHandling, HttpError, formatEmbeddingError } from ".. import { TelemetryEventName } from "@roo-code/types" import { TelemetryService } from "@roo-code/telemetry" import { Mutex } from "async-mutex" +import { handleOpenAIError } from "../../../api/providers/utils/openai-error-handler" interface EmbeddingItem { embedding: string | number[] @@ -66,10 +67,18 @@ export class OpenAICompatibleEmbedder implements IEmbedder { this.baseUrl = baseUrl this.apiKey = apiKey - this.embeddingsClient = new OpenAI({ - baseURL: baseUrl, - apiKey: apiKey, - }) + + // Wrap OpenAI client creation to handle invalid API key characters + try { + this.embeddingsClient = new OpenAI({ + baseURL: baseUrl, + apiKey: apiKey, + }) + } catch (error) { + // Use the error handler to transform ByteString conversion errors + throw handleOpenAIError(error, "OpenAI Compatible") + } + this.defaultModelId = modelId || getDefaultModelId("openai-compatible") // Cache the URL type check for performance this.isFullUrl = this.isFullEndpointUrl(baseUrl) diff --git a/src/services/code-index/embedders/openai.ts b/src/services/code-index/embedders/openai.ts index 471c3fd090..b993e280d9 100644 --- a/src/services/code-index/embedders/openai.ts +++ b/src/services/code-index/embedders/openai.ts @@ -13,6 +13,7 @@ import { t } from "../../../i18n" import { withValidationErrorHandling, formatEmbeddingError, HttpError } from "../shared/validation-helpers" import { TelemetryEventName } from "@roo-code/types" import { TelemetryService } from "@roo-code/telemetry" +import { handleOpenAIError } from "../../../api/providers/utils/openai-error-handler" /** * OpenAI implementation of the embedder interface with batching and rate limiting @@ -28,7 +29,15 @@ export class OpenAiEmbedder extends OpenAiNativeHandler implements IEmbedder { constructor(options: ApiHandlerOptions & { openAiEmbeddingModelId?: string }) { super(options) const apiKey = this.options.openAiNativeApiKey ?? "not-provided" - this.embeddingsClient = new OpenAI({ apiKey }) + + // Wrap OpenAI client creation to handle invalid API key characters + try { + this.embeddingsClient = new OpenAI({ apiKey }) + } catch (error) { + // Use the error handler to transform ByteString conversion errors + throw handleOpenAIError(error, "OpenAI") + } + this.defaultModelId = options.openAiEmbeddingModelId || "text-embedding-3-small" } diff --git a/src/utils/__tests__/text-normalization.spec.ts b/src/utils/__tests__/text-normalization.spec.ts index a6c18c8cd9..e672617d18 100644 --- a/src/utils/__tests__/text-normalization.spec.ts +++ b/src/utils/__tests__/text-normalization.spec.ts @@ -75,5 +75,30 @@ describe("Text normalization utilities", () => { expect(unescapeHtmlEntities("")).toBe("") expect(unescapeHtmlEntities(undefined as unknown as string)).toBe(undefined) }) + + it("unescapes square bracket entities (numeric)", () => { + expect(unescapeHtmlEntities("string[]")).toBe("string[]") + expect(unescapeHtmlEntities("array[0]")).toBe("array[0]") + expect(unescapeHtmlEntities("matrix[i][j]")).toBe("matrix[i][j]") + }) + + it("unescapes square bracket entities (named)", () => { + expect(unescapeHtmlEntities("string[]")).toBe("string[]") + expect(unescapeHtmlEntities("array[0]")).toBe("array[0]") + expect(unescapeHtmlEntities("matrix[i][j]")).toBe("matrix[i][j]") + }) + + it("handles C# array syntax with escaped square brackets", () => { + // Test case based on the reported issue + const input = "string[] myArray = new string[5];\nmyArray[2] = "hello";" + const expected = 'string[] myArray = new string[5];\nmyArray[2] = "hello";' + expect(unescapeHtmlEntities(input)).toBe(expected) + }) + + it("handles mixed square bracket entities", () => { + const input = "array[0] and [1]" + const expected = "array[0] and [1]" + expect(unescapeHtmlEntities(input)).toBe(expected) + }) }) }) diff --git a/src/utils/text-normalization.ts b/src/utils/text-normalization.ts index 15f35c8437..9e25d140c4 100644 --- a/src/utils/text-normalization.ts +++ b/src/utils/text-normalization.ts @@ -91,5 +91,9 @@ export function unescapeHtmlEntities(text: string): string { .replace(/"/g, '"') .replace(/'/g, "'") .replace(/'/g, "'") + .replace(/[/g, "[") + .replace(/]/g, "]") + .replace(/[/g, "[") + .replace(/]/g, "]") .replace(/&/g, "&") } diff --git a/webview-ui/package.json b/webview-ui/package.json index a40b5df02e..4035e20d64 100644 --- a/webview-ui/package.json +++ b/webview-ui/package.json @@ -35,7 +35,7 @@ "@types/qrcode": "^1.5.5", "@vscode/codicons": "^0.0.36", "@vscode/webview-ui-toolkit": "^1.4.0", - "axios": "^1.7.4", + "axios": "^1.12.0", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "cmdk": "^1.0.0", diff --git a/webview-ui/src/components/chat/AutoApproveDropdown.tsx b/webview-ui/src/components/chat/AutoApproveDropdown.tsx index 86b567e18d..08e4a90f6b 100644 --- a/webview-ui/src/components/chat/AutoApproveDropdown.tsx +++ b/webview-ui/src/components/chat/AutoApproveDropdown.tsx @@ -1,14 +1,15 @@ import React from "react" -import { ListChecks, LayoutList, Settings, CheckCheck } from "lucide-react" +import { ListChecks, LayoutList, Settings, CheckCheck, X } from "lucide-react" import { vscode } from "@/utils/vscode" import { cn } from "@/lib/utils" import { useExtensionState } from "@/context/ExtensionStateContext" import { useAppTranslation } from "@/i18n/TranslationContext" import { useRooPortal } from "@/components/ui/hooks/useRooPortal" -import { Popover, PopoverContent, PopoverTrigger, StandardTooltip } from "@/components/ui" +import { Popover, PopoverContent, PopoverTrigger, StandardTooltip, ToggleSwitch } from "@/components/ui" import { AutoApproveSetting, autoApproveSettingsConfig } from "../settings/AutoApproveToggle" import { useAutoApprovalToggles } from "@/hooks/useAutoApprovalToggles" +import { useAutoApprovalState } from "@/hooks/useAutoApprovalState" interface AutoApproveDropdownProps { disabled?: boolean @@ -124,12 +125,7 @@ export const AutoApproveDropdown = ({ disabled = false, triggerClassName = "" }: Object.keys(autoApproveSettingsConfig).forEach((key) => { onAutoApproveToggle(key as AutoApproveSetting, false) }) - // Disable master auto-approval - if (autoApprovalEnabled) { - setAutoApprovalEnabled(false) - vscode.postMessage({ type: "autoApprovalEnabled", bool: false }) - } - }, [onAutoApproveToggle, autoApprovalEnabled, setAutoApprovalEnabled]) + }, [onAutoApproveToggle]) const handleOpenSettings = React.useCallback( () => @@ -137,7 +133,16 @@ export const AutoApproveDropdown = ({ disabled = false, triggerClassName = "" }: [], ) + // Handle the main auto-approval toggle + const handleAutoApprovalToggle = React.useCallback(() => { + const newValue = !(autoApprovalEnabled ?? false) + setAutoApprovalEnabled(newValue) + vscode.postMessage({ type: "autoApprovalEnabled", bool: newValue }) + }, [autoApprovalEnabled, setAutoApprovalEnabled]) + // Calculate enabled and total counts as separate properties + const settingsArray = Object.values(autoApproveSettingsConfig) + const enabledCount = React.useMemo(() => { return Object.values(toggles).filter((value) => !!value).length }, [toggles]) @@ -146,15 +151,21 @@ export const AutoApproveDropdown = ({ disabled = false, triggerClassName = "" }: return Object.keys(toggles).length }, [toggles]) - // Split settings into two columns - const settingsArray = Object.values(autoApproveSettingsConfig) - const halfLength = Math.ceil(settingsArray.length / 2) - const firstColumn = settingsArray.slice(0, halfLength) - const secondColumn = settingsArray.slice(halfLength) + const { effectiveAutoApprovalEnabled } = useAutoApprovalState(toggles, autoApprovalEnabled) + + const tooltipText = + !effectiveAutoApprovalEnabled || enabledCount === 0 + ? t("chat:autoApprove.tooltipManage") + : t("chat:autoApprove.tooltipStatus", { + toggles: settingsArray + .filter((setting) => toggles[setting.key]) + .map((setting) => t(setting.labelKey)) + .join(", "), + }) return ( - + - + {!effectiveAutoApprovalEnabled ? ( + + ) : ( + + )} + - {enabledCount === totalCount - ? t("chat:autoApprove.triggerLabelAll") - : t("chat:autoApprove.triggerLabel", { count: enabledCount })} + {!effectiveAutoApprovalEnabled + ? t("chat:autoApprove.triggerLabelOff") + : enabledCount === totalCount + ? t("chat:autoApprove.triggerLabelAll") + : t("chat:autoApprove.triggerLabel", { count: enabledCount })} @@ -179,7 +197,7 @@ export const AutoApproveDropdown = ({ disabled = false, triggerClassName = "" }: align="start" sideOffset={4} container={portalContainer} - className="p-0 overflow-hidden min-w-96 max-w-9/10" + className="p-0 overflow-hidden w-[min(440px,calc(100vw-2rem))]" onOpenAutoFocus={(e) => e.preventDefault()}>
{/* Header with description */} @@ -197,66 +215,32 @@ export const AutoApproveDropdown = ({ disabled = false, triggerClassName = "" }: {t("chat:autoApprove.description")}

- - {/* Two-column layout for approval options */} -
-
- {/* First Column */} -
- {firstColumn.map(({ key, labelKey, descriptionKey, icon }) => { - const isEnabled = toggles[key] - return ( - - - - ) - })} -
- - {/* Second Column */} -
- {secondColumn.map(({ key, labelKey, descriptionKey, icon }) => { - const isEnabled = toggles[key] - return ( - - - - ) - })} -
-
+
+ {settingsArray.map(({ key, labelKey, descriptionKey, icon }) => { + const isEnabled = toggles[key] + return ( + + + + ) + })}
{/* Bottom bar with Select All/None buttons */} @@ -265,6 +249,7 @@ export const AutoApproveDropdown = ({ disabled = false, triggerClassName = "" }:
+ +
diff --git a/webview-ui/src/components/chat/ChatTextArea.tsx b/webview-ui/src/components/chat/ChatTextArea.tsx index 3cc91b9a20..fb105056b5 100644 --- a/webview-ui/src/components/chat/ChatTextArea.tsx +++ b/webview-ui/src/components/chat/ChatTextArea.tsx @@ -908,12 +908,12 @@ export const ChatTextArea = forwardRef( return (
-
+
{ // Only allowed to drop images/files on shift key pressed. @@ -945,10 +945,10 @@ export const ChatTextArea = forwardRef( className={cn( "absolute", "bottom-full", - "left-0", + isEditMode ? "left-6" : "left-0", "right-0", "z-[1000]", - "mb-2", + isEditMode ? "-mb-3" : "mb-2", "filter", "drop-shadow-md", )}> @@ -1067,7 +1067,7 @@ export const ChatTextArea = forwardRef( : "bg-vscode-input-background", "transition-background-color duration-150 ease-in-out", "will-change-background-color", - "min-h-[90px]", + "min-h-[94px]", "box-border", "rounded", "resize-none", @@ -1082,7 +1082,32 @@ export const ChatTextArea = forwardRef( onScroll={() => updateHighlights()} /> -
+
+ + + -
- -
{isEditMode && (
-
+
{isTtsPlaying && ( -
diff --git a/webview-ui/src/components/chat/IndexingStatusBadge.tsx b/webview-ui/src/components/chat/IndexingStatusBadge.tsx index 356ef29962..5d4818a09a 100644 --- a/webview-ui/src/components/chat/IndexingStatusBadge.tsx +++ b/webview-ui/src/components/chat/IndexingStatusBadge.tsx @@ -91,7 +91,7 @@ export const IndexingStatusBadge: React.FC = ({ classN size="sm" aria-label={tooltipText} className={cn( - "relative h-7 w-7 p-0", + "relative h-5 w-5 p-0", "text-vscode-foreground opacity-85", "hover:opacity-100 hover:bg-[rgba(255,255,255,0.03)]", "focus:outline-none focus-visible:ring-1 focus-visible:ring-vscode-focusBorder", @@ -100,7 +100,7 @@ export const IndexingStatusBadge: React.FC = ({ classN diff --git a/webview-ui/src/components/settings/AutoApproveSettings.tsx b/webview-ui/src/components/settings/AutoApproveSettings.tsx index 5ce44c747d..eabd2ddf80 100644 --- a/webview-ui/src/components/settings/AutoApproveSettings.tsx +++ b/webview-ui/src/components/settings/AutoApproveSettings.tsx @@ -4,7 +4,7 @@ import { X, CheckCheck } from "lucide-react" import { useAppTranslation } from "@/i18n/TranslationContext" import { VSCodeCheckbox } from "@vscode/webview-ui-toolkit/react" import { vscode } from "@/utils/vscode" -import { Button, Input, Slider, StandardTooltip } from "@/components/ui" +import { Button, Input, Slider } from "@/components/ui" import { SetCachedStateField } from "./types" import { SectionHeader } from "./SectionHeader" @@ -88,7 +88,7 @@ export const AutoApproveSettings = ({ const toggles = useAutoApprovalToggles() - const { hasEnabledOptions, effectiveAutoApprovalEnabled } = useAutoApprovalState(toggles, autoApprovalEnabled) + const { effectiveAutoApprovalEnabled } = useAutoApprovalState(toggles, autoApprovalEnabled) const handleAddCommand = () => { const currentCommands = allowedCommands ?? [] @@ -124,32 +124,16 @@ export const AutoApproveSettings = ({
- {!hasEnabledOptions ? ( - - { - // Do nothing when no options are enabled - return - }}> - {t("settings:autoApprove.enabled")} - - - ) : ( - { - const newValue = !(autoApprovalEnabled ?? false) - setAutoApprovalEnabled(newValue) - vscode.postMessage({ type: "autoApprovalEnabled", bool: newValue }) - }}> - {t("settings:autoApprove.enabled")} - - )} + { + const newValue = !(autoApprovalEnabled ?? false) + setAutoApprovalEnabled(newValue) + vscode.postMessage({ type: "autoApprovalEnabled", bool: newValue }) + }}> + {t("settings:autoApprove.enabled")} +
{t("settings:autoApprove.description")}
diff --git a/webview-ui/src/hooks/__tests__/useAutoApprovalState.spec.ts b/webview-ui/src/hooks/__tests__/useAutoApprovalState.spec.ts index a0c2d65f84..18aed4964e 100644 --- a/webview-ui/src/hooks/__tests__/useAutoApprovalState.spec.ts +++ b/webview-ui/src/hooks/__tests__/useAutoApprovalState.spec.ts @@ -124,7 +124,7 @@ describe("useAutoApprovalState", () => { expect(result.current.effectiveAutoApprovalEnabled).toBe(false) }) - it("should return false when autoApprovalEnabled is true but no toggles are enabled", () => { + it("should return true when autoApprovalEnabled is true but no toggles are enabled", () => { const toggles = { alwaysAllowReadOnly: false, alwaysAllowWrite: false, @@ -140,7 +140,7 @@ describe("useAutoApprovalState", () => { const { result } = renderHook(() => useAutoApprovalState(toggles, true)) - expect(result.current.effectiveAutoApprovalEnabled).toBe(false) + expect(result.current.effectiveAutoApprovalEnabled).toBe(true) }) it("should return true when autoApprovalEnabled is true and at least one toggle is enabled", () => { @@ -217,7 +217,7 @@ describe("useAutoApprovalState", () => { rerender({ toggles: newToggles, autoApprovalEnabled: true }) expect(result.current.hasEnabledOptions).toBe(false) - expect(result.current.effectiveAutoApprovalEnabled).toBe(false) + expect(result.current.effectiveAutoApprovalEnabled).toBe(true) }) it("should recompute effectiveAutoApprovalEnabled when autoApprovalEnabled changes", () => { @@ -263,7 +263,7 @@ describe("useAutoApprovalState", () => { const { result } = renderHook(() => useAutoApprovalState(toggles, true)) expect(result.current.hasEnabledOptions).toBe(false) - expect(result.current.effectiveAutoApprovalEnabled).toBe(false) + expect(result.current.effectiveAutoApprovalEnabled).toBe(true) }) it("should handle mixed truthy/falsy values correctly", () => { diff --git a/webview-ui/src/hooks/useAutoApprovalState.ts b/webview-ui/src/hooks/useAutoApprovalState.ts index 74a165c09b..dd1d6d27f8 100644 --- a/webview-ui/src/hooks/useAutoApprovalState.ts +++ b/webview-ui/src/hooks/useAutoApprovalState.ts @@ -19,8 +19,8 @@ export function useAutoApprovalState(toggles: AutoApprovalToggles, autoApprovalE }, [toggles]) const effectiveAutoApprovalEnabled = useMemo(() => { - return hasEnabledOptions && (autoApprovalEnabled ?? false) - }, [hasEnabledOptions, autoApprovalEnabled]) + return autoApprovalEnabled ?? false + }, [autoApprovalEnabled]) return { hasEnabledOptions, diff --git a/webview-ui/src/i18n/locales/ca/chat.json b/webview-ui/src/i18n/locales/ca/chat.json index a46ec80537..96b5dacfce 100644 --- a/webview-ui/src/i18n/locales/ca/chat.json +++ b/webview-ui/src/i18n/locales/ca/chat.json @@ -247,15 +247,17 @@ "issues": "Sembla que estàs tenint problemes amb Windows PowerShell, si us plau consulta aquesta documentació per a més informació." }, "autoApprove": { - "tooltip": "Gestiona la configuració d'aprovació automàtica", + "tooltipManage": "Gestiona la configuració d'aprovació automàtica", + "tooltipStatus": "Aprovació automàtica activada per a: {{toggles}}", "title": "Aprovació automàtica", - "all": "Totes", + "all": "Tot", "none": "Cap", - "description": "Executeu aquestes accions sense demanar permís. Activeu-ho només per a les accions en què confieu plenament.", - "selectOptionsFirst": "Seleccioneu almenys una opció a continuació per activar l'aprovació automàtica", + "description": "Executa aquestes accions sense demanar permís. Activa-ho només per a accions de confiança.", + "selectOptionsFirst": "Selecciona almenys una opció a continuació per activar l'aprovació automàtica", "toggleAriaLabel": "Commuta l'aprovació automàtica", - "disabledAriaLabel": "Aprovació automàtica desactivada: seleccioneu primer les opcions", - "triggerLabel_zero": "Sense aprovació automàtica", + "disabledAriaLabel": "Aprovació automàtica desactivada - selecciona primer les opcions", + "triggerLabelOff": "Aprovació automàtica desactivada", + "triggerLabel_zero": "0 aprovacions automàtiques", "triggerLabel_one": "1 aprovació automàtica", "triggerLabel_other": "{{count}} aprovacions automàtiques", "triggerLabelAll": "YOLO" @@ -403,5 +405,17 @@ "problems": "Problemes", "terminal": "Terminal", "url": "Enganxa la URL per obtenir-ne el contingut" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "S'ha assolit el límit de sol·licituds aprovades automàticament", + "description": "Roo ha assolit el límit d'aprovació automàtica de {{count}} sol·licitud(s) d'API. Vols restablir el comptador i continuar amb la tasca?", + "button": "Restableix i Continua" + }, + "autoApprovedCostLimitReached": { + "title": "S'ha assolit el límit de cost aprovat automàticament", + "description": "Roo ha assolit el límit de cost d'aprovació automàtica de ${{count}}. Vols restablir el cost i continuar amb la tasca?", + "button": "Restableix i Continua" + } } } diff --git a/webview-ui/src/i18n/locales/de/chat.json b/webview-ui/src/i18n/locales/de/chat.json index 29db3f3137..4af514b583 100644 --- a/webview-ui/src/i18n/locales/de/chat.json +++ b/webview-ui/src/i18n/locales/de/chat.json @@ -247,15 +247,17 @@ "issues": "Es scheint, dass du Probleme mit Windows PowerShell hast, bitte sieh dir dies an" }, "autoApprove": { - "tooltip": "Einstellungen für die automatische Genehmigung verwalten", + "tooltipManage": "Einstellungen für die automatische Genehmigung verwalten", + "tooltipStatus": "Automatische Genehmigung aktiviert für: {{toggles}}", "title": "Automatische Genehmigung", "all": "Alle", "none": "Keine", "description": "Führe diese Aktionen aus, ohne um Erlaubnis zu fragen. Aktiviere dies nur für Aktionen, denen du voll vertraust.", - "selectOptionsFirst": "Wähle zuerst mindestens eine Option unten aus, um die automatische Genehmigung zu aktivieren", + "selectOptionsFirst": "Wähle mindestens eine Option unten aus, um die automatische Genehmigung zu aktivieren", "toggleAriaLabel": "Automatische Genehmigung umschalten", "disabledAriaLabel": "Automatische Genehmigung deaktiviert - wähle zuerst Optionen aus", - "triggerLabel_zero": "Keine automatische Genehmigung", + "triggerLabelOff": "Automatische Genehmigung aus", + "triggerLabel_zero": "0 automatisch genehmigt", "triggerLabel_one": "1 automatisch genehmigt", "triggerLabel_other": "{{count}} automatisch genehmigt", "triggerLabelAll": "YOLO" @@ -403,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo möchte einen Slash-Befehl ausführen:", "didRun": "Roo hat einen Slash-Befehl ausgeführt:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "Limit für automatisch genehmigte Anfragen erreicht", + "description": "Roo hat das Limit von {{count}} automatisch genehmigten API-Anfrage(n) erreicht. Möchtest du den Zähler zurücksetzen und mit der Aufgabe fortfahren?", + "button": "Zurücksetzen und fortfahren" + }, + "autoApprovedCostLimitReached": { + "title": "Automatisch genehmigtes Kostenlimit erreicht", + "description": "Roo hat das automatisch genehmigte Kostenlimit von ${{count}} erreicht. Möchtest du die Kosten zurücksetzen und mit der Aufgabe fortfahren?", + "button": "Zurücksetzen und fortfahren" + } } } diff --git a/webview-ui/src/i18n/locales/en/chat.json b/webview-ui/src/i18n/locales/en/chat.json index 0261978af8..d6fb807888 100644 --- a/webview-ui/src/i18n/locales/en/chat.json +++ b/webview-ui/src/i18n/locales/en/chat.json @@ -271,7 +271,8 @@ "issues": "It seems like you're having Windows PowerShell issues, please see this" }, "autoApprove": { - "tooltip": "Manage auto-approval settings", + "tooltipManage": "Manage auto-approval settings", + "tooltipStatus": "Auto-approval enabled for: {{toggles}}", "title": "Auto-approve", "all": "All", "none": "None", @@ -279,7 +280,8 @@ "selectOptionsFirst": "Select at least one option below to enable auto-approval", "toggleAriaLabel": "Toggle auto-approval", "disabledAriaLabel": "Auto-approval disabled - select options first", - "triggerLabel_zero": "No auto-approve", + "triggerLabelOff": "Auto-approve off", + "triggerLabel_zero": "0 auto-approve", "triggerLabel_one": "1 auto-approved", "triggerLabel_other": "{{count}} auto-approved", "triggerLabelAll": "YOLO" diff --git a/webview-ui/src/i18n/locales/es/chat.json b/webview-ui/src/i18n/locales/es/chat.json index 9fee0075b7..6dc17706e3 100644 --- a/webview-ui/src/i18n/locales/es/chat.json +++ b/webview-ui/src/i18n/locales/es/chat.json @@ -247,17 +247,19 @@ "issues": "Parece que estás teniendo problemas con Windows PowerShell, por favor consulta esta" }, "autoApprove": { - "tooltip": "Gestionar la configuración de aprobación automática", + "tooltipManage": "Administrar la configuración de aprobación automática", + "tooltipStatus": "Aprobación automática habilitada para: {{toggles}}", "title": "Aprobación automática", "all": "Todo", "none": "Ninguno", "description": "Ejecuta estas acciones sin pedir permiso. Habilita esto solo para acciones en las que confíes plenamente.", "selectOptionsFirst": "Selecciona al menos una opción a continuación para habilitar la aprobación automática", - "toggleAriaLabel": "Alternar aprobación automática", - "disabledAriaLabel": "Aprobación automática deshabilitada - selecciona primero las opciones", - "triggerLabel_zero": "Sin aprobación automática", - "triggerLabel_one": "1 aprobado automáticamente", - "triggerLabel_other": "{{count}} aprobados automáticamente", + "toggleAriaLabel": "Conmutar la aprobación automática", + "disabledAriaLabel": "Aprobación automática deshabilitada: selecciona primero las opciones", + "triggerLabelOff": "Aprobación automática desactivada", + "triggerLabel_zero": "0 aprobaciones automáticas", + "triggerLabel_one": "1 aprobación automática", + "triggerLabel_other": "{{count}} aprobaciones automáticas", "triggerLabelAll": "YOLO" }, "reasoning": { @@ -403,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo quiere ejecutar un comando slash:", "didRun": "Roo ejecutó un comando slash:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "Límite de solicitudes aprobadas automáticamente alcanzado", + "description": "Roo ha alcanzado el límite de aprobación automática de {{count}} solicitud(es) de API. ¿Te gustaría restablecer el contador y continuar con la tarea?", + "button": "Restablecer y continuar" + }, + "autoApprovedCostLimitReached": { + "title": "Límite de costo de aprobación automática alcanzado", + "description": "Roo ha alcanzado el límite de costo de aprobación automática de ${{count}}. ¿Te gustaría restablecer el costo y continuar con la tarea?", + "button": "Restablecer y continuar" + } } } diff --git a/webview-ui/src/i18n/locales/fr/chat.json b/webview-ui/src/i18n/locales/fr/chat.json index eaa16946d3..053ebdcae1 100644 --- a/webview-ui/src/i18n/locales/fr/chat.json +++ b/webview-ui/src/i18n/locales/fr/chat.json @@ -247,15 +247,17 @@ "issues": "Il semble que vous rencontriez des problèmes avec Windows PowerShell, veuillez consulter ce" }, "autoApprove": { - "tooltip": "Gérer les paramètres d'approbation automatique", + "tooltipManage": "Gérer les paramètres d'approbation automatique", + "tooltipStatus": "Approbation automatique activée pour : {{toggles}}", "title": "Approbation automatique", "all": "Tout", "none": "Aucun", "description": "Exécutez ces actions sans demander la permission. N'activez cette option que pour les actions en lesquelles vous avez entièrement confiance.", "selectOptionsFirst": "Sélectionnez au moins une option ci-dessous pour activer l'approbation automatique", - "toggleAriaLabel": "Activer/désactiver l'approbation automatique", + "toggleAriaLabel": "Basculer l'approbation automatique", "disabledAriaLabel": "Approbation automatique désactivée - sélectionnez d'abord les options", - "triggerLabel_zero": "Pas d'approbation automatique", + "triggerLabelOff": "Approbation automatique désactivée", + "triggerLabel_zero": "0 approuvé automatiquement", "triggerLabel_one": "1 approuvé automatiquement", "triggerLabel_other": "{{count}} approuvés automatiquement", "triggerLabelAll": "YOLO" @@ -403,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo veut exécuter une commande slash:", "didRun": "Roo a exécuté une commande slash:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "Limite de requêtes auto-approuvées atteinte", + "description": "Roo a atteint la limite de {{count}} requête(s) API auto-approuvée(s). Souhaitez-vous réinitialiser le compteur et poursuivre la tâche ?", + "button": "Réinitialiser et continuer" + }, + "autoApprovedCostLimitReached": { + "title": "Limite de coût auto-approuvé atteinte", + "description": "Roo a atteint la limite de coût auto-approuvé de ${{count}}. Souhaitez-vous réinitialiser le coût et poursuivre la tâche ?", + "button": "Réinitialiser et continuer" + } } } diff --git a/webview-ui/src/i18n/locales/hi/chat.json b/webview-ui/src/i18n/locales/hi/chat.json index 1017801679..a82ad90585 100644 --- a/webview-ui/src/i18n/locales/hi/chat.json +++ b/webview-ui/src/i18n/locales/hi/chat.json @@ -247,18 +247,20 @@ "issues": "ऐसा लगता है कि आपको Windows PowerShell के साथ समस्याएँ हो रही हैं, कृपया इसे देखें" }, "autoApprove": { - "tooltip": "स्वतः-अनुमोदन सेटिंग्स प्रबंधित करें", + "tooltipManage": "स्वतः-अनुमोदन सेटिंग्स प्रबंधित करें", + "tooltipStatus": "स्वतः-अनुमोदन इनके लिए सक्षम है: {{toggles}}", "title": "स्वतः-अनुमोदन", "all": "सभी", "none": "कोई नहीं", - "description": "अनुमति मांगे बिना इन क्रियाओं को चलाएं। इसे केवल उन क्रियाओं के लिए सक्षम करें जिन पर आप पूरी तरह भरोसा करते हैं।", - "selectOptionsFirst": "स्वतः-अनुमोदन सक्षम करने के लिए नीचे दिए गए कम से कम एक विकल्प का चयन करें", + "description": "अनुमति मांगे बिना इन क्रियाओं को चलाएं। इसे केवल उन क्रियाओं के लिए सक्षम करें जिन पर आपको पूरा भरोसा है।", + "selectOptionsFirst": "स्वतः-अनुमोदन सक्षम करने के लिए नीचे से कम से कम एक विकल्प चुनें", "toggleAriaLabel": "स्वतः-अनुमोदन टॉगल करें", - "disabledAriaLabel": "स्वतः-अनुमोदन अक्षम - पहले विकल्प चुनें", - "triggerLabel_zero": "कोई स्वतः-अनुमोदन नहीं", + "disabledAriaLabel": "स्वतः-अनुमोदन अक्षम है - पहले विकल्प चुनें", + "triggerLabelOff": "स्वतः-अनुमोदन बंद", + "triggerLabel_zero": "0 स्वतः-अनुमोदन", "triggerLabel_one": "1 स्वतः-अनुमोदित", "triggerLabel_other": "{{count}} स्वतः-अनुमोदित", - "triggerLabelAll": "योलो" + "triggerLabelAll": "YOLO" }, "reasoning": { "thinking": "विचार कर रहा है", @@ -403,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo एक स्लैश कमांड चलाना चाहता है:", "didRun": "Roo ने एक स्लैश कमांड चलाया:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "स्वतः-अनुमोदित अनुरोध सीमा तक पहुंच गया", + "description": "रू ने {{count}} एपीआई अनुरोध (नों) की स्वतः-अनुमोदित सीमा तक पहुंच गया है। क्या आप गिनती रीसेट करना और कार्य के साथ आगे बढ़ना चाहेंगे?", + "button": "रीसेट करें और जारी रखें" + }, + "autoApprovedCostLimitReached": { + "title": "स्वतः-स्वीकृत लागत सीमा तक पहुंच गया", + "description": "रू ने ${{count}} की स्वतः-अनुमोदित लागत सीमा तक पहुंच गया है। क्या आप लागत को रीसेट करना और कार्य के साथ आगे बढ़ना चाहेंगे?", + "button": "रीसेट करें और जारी रखें" + } } } diff --git a/webview-ui/src/i18n/locales/id/chat.json b/webview-ui/src/i18n/locales/id/chat.json index 229c74f36d..6c6d59474e 100644 --- a/webview-ui/src/i18n/locales/id/chat.json +++ b/webview-ui/src/i18n/locales/id/chat.json @@ -274,15 +274,17 @@ "issues": "Sepertinya kamu mengalami masalah Windows PowerShell, silakan lihat ini" }, "autoApprove": { - "tooltip": "Kelola pengaturan persetujuan otomatis", - "title": "Persetujuan otomatis", + "tooltipManage": "Kelola pengaturan persetujuan otomatis", + "tooltipStatus": "Persetujuan otomatis diaktifkan untuk: {{toggles}}", + "title": "Setujui Otomatis", "all": "Semua", - "none": "Tidak Ada", - "description": "Jalankan tindakan ini tanpa meminta izin. Aktifkan hanya untuk tindakan yang Anda percayai sepenuhnya.", - "selectOptionsFirst": "Pilih setidaknya satu opsi di bawah untuk mengaktifkan persetujuan otomatis", + "none": "Tidak ada", + "description": "Jalankan tindakan ini tanpa meminta izin. Hanya aktifkan untuk tindakan yang Anda percayai sepenuhnya.", + "selectOptionsFirst": "Pilih setidaknya satu opsi di bawah ini untuk mengaktifkan persetujuan otomatis", "toggleAriaLabel": "Beralih persetujuan otomatis", "disabledAriaLabel": "Persetujuan otomatis dinonaktifkan - pilih opsi terlebih dahulu", - "triggerLabel_zero": "Tidak ada persetujuan otomatis", + "triggerLabelOff": "Persetujuan otomatis mati", + "triggerLabel_zero": "0 disetujui otomatis", "triggerLabel_one": "1 disetujui otomatis", "triggerLabel_other": "{{count}} disetujui otomatis", "triggerLabelAll": "YOLO" @@ -346,13 +348,13 @@ "ask": { "autoApprovedRequestLimitReached": { "title": "Batas Permintaan yang Disetujui Otomatis Tercapai", - "description": "Roo telah mencapai batas {{count}} permintaan API yang disetujui otomatis. Apakah kamu ingin mengatur ulang hitungan dan melanjutkan tugas?", - "button": "Atur Ulang dan Lanjutkan" + "description": "Roo telah mencapai batas {{count}} permintaan API yang disetujui otomatis. Apakah Anda ingin mengatur ulang hitungan dan melanjutkan tugas?", + "button": "Setel Ulang dan Lanjutkan" }, "autoApprovedCostLimitReached": { - "description": "Roo telah mencapai batas biaya yang disetujui secara otomatis sebesar ${{count}}. Apakah Anda ingin mengatur ulang biaya dan melanjutkan tugas ini?", - "button": "Reset dan Lanjutkan", - "title": "Batas Biaya Otomatis-Disetujui Tercapai" + "title": "Batas Biaya yang Disetujui Otomatis Tercapai", + "description": "Roo telah mencapai batas biaya yang disetujui otomatis sebesar ${{count}}. Apakah Anda ingin mengatur ulang biaya dan melanjutkan tugas?", + "button": "Setel Ulang dan Lanjutkan" } }, "indexingStatus": { @@ -409,5 +411,17 @@ "slashCommand": { "wantsToRun": "Roo ingin menjalankan perintah slash:", "didRun": "Roo telah menjalankan perintah slash:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "Batas Permintaan yang Disetujui Otomatis Tercapai", + "description": "Roo telah mencapai batas {{count}} permintaan API yang disetujui otomatis. Apakah Anda ingin mengatur ulang hitungan dan melanjutkan tugas?", + "button": "Setel Ulang dan Lanjutkan" + }, + "autoApprovedCostLimitReached": { + "title": "Batas Biaya yang Disetujui Otomatis Tercapai", + "description": "Roo telah mencapai batas biaya yang disetujui otomatis sebesar ${{count}}. Apakah Anda ingin mengatur ulang biaya dan melanjutkan tugas?", + "button": "Setel Ulang dan Lanjutkan" + } } } diff --git a/webview-ui/src/i18n/locales/it/chat.json b/webview-ui/src/i18n/locales/it/chat.json index c5da5760c9..9ec5df2a76 100644 --- a/webview-ui/src/i18n/locales/it/chat.json +++ b/webview-ui/src/i18n/locales/it/chat.json @@ -247,15 +247,17 @@ "issues": "Sembra che tu stia avendo problemi con Windows PowerShell, consulta questa" }, "autoApprove": { - "tooltip": "Gestisci le impostazioni di approvazione automatica", - "title": "Approvazione automatica", + "tooltipManage": "Gestisci impostazioni di approvazione automatica", + "tooltipStatus": "Approvazione automatica abilitata per: {{toggles}}", + "title": "Approvazione Automatica", "all": "Tutti", "none": "Nessuno", - "description": "Esegui queste azioni senza chiedere il permesso. Abilita questa opzione solo per le azioni di cui ti fidi completamente.", + "description": "Esegui queste azioni senza chiedere il permesso. Abilita solo per azioni di cui ti fidi completamente.", "selectOptionsFirst": "Seleziona almeno un'opzione qui sotto per abilitare l'approvazione automatica", - "toggleAriaLabel": "Attiva/disattiva l'approvazione automatica", + "toggleAriaLabel": "Attiva/disattiva approvazione automatica", "disabledAriaLabel": "Approvazione automatica disabilitata - seleziona prima le opzioni", - "triggerLabel_zero": "Nessuna approvazione automatica", + "triggerLabelOff": "Approvazione automatica disattivata", + "triggerLabel_zero": "0 approvati automaticamente", "triggerLabel_one": "1 approvato automaticamente", "triggerLabel_other": "{{count}} approvati automaticamente", "triggerLabelAll": "YOLO" @@ -403,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo vuole eseguire un comando slash:", "didRun": "Roo ha eseguito un comando slash:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "Limite Richieste Approvate Automaticamente Raggiunto", + "description": "Roo ha raggiunto il limite di {{count}} richiesta/e API approvata/e automaticamente. Vuoi reimpostare il contatore e procedere con l'attività?", + "button": "Reimposta e Continua" + }, + "autoApprovedCostLimitReached": { + "title": "Limite di Costo Approvato Automaticamente Raggiunto", + "description": "Roo ha raggiunto il limite di costo approvato automaticamente di ${{count}}. Vuoi reimpostare il costo e procedere con l'attività?", + "button": "Reimposta e Continua" + } } } diff --git a/webview-ui/src/i18n/locales/ja/chat.json b/webview-ui/src/i18n/locales/ja/chat.json index 9f8d70d41b..4354772c6f 100644 --- a/webview-ui/src/i18n/locales/ja/chat.json +++ b/webview-ui/src/i18n/locales/ja/chat.json @@ -247,17 +247,19 @@ "issues": "Windows PowerShellに問題があるようです。こちらを参照してください" }, "autoApprove": { - "tooltip": "自動承認設定を管理", + "tooltipManage": "自動承認設定を管理する", + "tooltipStatus": "自動承認が有効です: {{toggles}}", "title": "自動承認", "all": "すべて", "none": "なし", - "description": "許可を求めずにこれらのアクションを実行します。完全に信頼できるアクションに対してのみ有効にしてください。", + "description": "許可を求めずにこれらのアクションを実行します。完全に信頼するアクションに対してのみ有効にしてください。", "selectOptionsFirst": "自動承認を有効にするには、以下のオプションを少なくとも1つ選択してください", - "toggleAriaLabel": "自動承認の切り替え", + "toggleAriaLabel": "自動承認を切り替える", "disabledAriaLabel": "自動承認が無効です - 最初にオプションを選択してください", - "triggerLabel_zero": "自動承認なし", - "triggerLabel_one": "1件自動承認済み", - "triggerLabel_other": "{{count}}件自動承認済み", + "triggerLabelOff": "自動承認オフ", + "triggerLabel_zero": "0個の自動承認", + "triggerLabel_one": "1個の自動承認済み", + "triggerLabel_other": "{{count}}個の自動承認済み", "triggerLabelAll": "YOLO" }, "reasoning": { @@ -403,5 +405,17 @@ "slashCommand": { "wantsToRun": "Rooはスラッシュコマンドを実行したい:", "didRun": "Rooはスラッシュコマンドを実行しました:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "自動承認されたリクエストの上限に達しました", + "description": "Rooは自動承認されたAPIリクエストの上限{{count}}件に達しました。カウントをリセットしてタスクを続行しますか?", + "button": "リセットして続行" + }, + "autoApprovedCostLimitReached": { + "title": "自動承認されたコスト制限に達しました", + "description": "Rooは自動承認されたコスト制限の${{count}}に達しました。コストをリセットしてタスクを続行しますか?", + "button": "リセットして続行" + } } } diff --git a/webview-ui/src/i18n/locales/ko/chat.json b/webview-ui/src/i18n/locales/ko/chat.json index 131e90b5c5..3b695f8fba 100644 --- a/webview-ui/src/i18n/locales/ko/chat.json +++ b/webview-ui/src/i18n/locales/ko/chat.json @@ -247,18 +247,20 @@ "issues": "Windows PowerShell에 문제가 있는 것 같습니다. 다음을 참조하세요" }, "autoApprove": { - "tooltip": "자동 승인 설정 관리", + "tooltipManage": "자동 승인 설정 관리", + "tooltipStatus": "자동 승인 활성화됨: {{toggles}}", "title": "자동 승인", "all": "모두", "none": "없음", - "description": "권한을 묻지 않고 이러한 작업을 실행합니다. 완전히 신뢰하는 작업에 대해서만 활성화하십시오.", - "selectOptionsFirst": "자동 승인을 활성화하려면 아래 옵션 중 하나 이상을 선택하십시오", - "toggleAriaLabel": "자동 승인 토글", + "description": "허가 없이 이러한 작업을 실행합니다. 전적으로 신뢰하는 작업에 대해서만 활성화하십시오.", + "selectOptionsFirst": "자동 승인을 활성화하려면 아래에서 하나 이상의 옵션을 선택하십시오", + "toggleAriaLabel": "자동 승인 전환", "disabledAriaLabel": "자동 승인 비활성화됨 - 먼저 옵션을 선택하십시오", - "triggerLabel_zero": "자동 승인 없음", + "triggerLabelOff": "자동 승인 꺼짐", + "triggerLabel_zero": "0개 자동 승인됨", "triggerLabel_one": "1개 자동 승인됨", "triggerLabel_other": "{{count}}개 자동 승인됨", - "triggerLabelAll": "욜로" + "triggerLabelAll": "YOLO" }, "reasoning": { "thinking": "생각 중", @@ -403,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo가 슬래시 명령어를 실행하려고 합니다:", "didRun": "Roo가 슬래시 명령어를 실행했습니다:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "자동 승인 요청 한도에 도달했습니다", + "description": "Roo가 자동 승인된 API 요청 한도인 {{count}}개에 도달했습니다. 카운트를 재설정하고 작업을 계속하시겠습니까?", + "button": "재설정하고 계속하기" + }, + "autoApprovedCostLimitReached": { + "title": "자동 승인 비용 한도에 도달했습니다", + "description": "Roo가 자동 승인 비용 한도인 ${{count}}에 도달했습니다. 비용을 재설정하고 작업을 계속하시겠습니까?", + "button": "재설정하고 계속" + } } } diff --git a/webview-ui/src/i18n/locales/nl/chat.json b/webview-ui/src/i18n/locales/nl/chat.json index 15e40fcf5a..c0889a8ca5 100644 --- a/webview-ui/src/i18n/locales/nl/chat.json +++ b/webview-ui/src/i18n/locales/nl/chat.json @@ -247,15 +247,17 @@ "issues": "Het lijkt erop dat je problemen hebt met Windows PowerShell, zie deze" }, "autoApprove": { - "tooltip": "Beheer instellingen voor automatische goedkeuring", + "tooltipManage": "Beheer instellingen voor automatische goedkeuring", + "tooltipStatus": "Automatische goedkeuring ingeschakeld voor: {{toggles}}", "title": "Automatisch goedkeuren", "all": "Alles", "none": "Geen", - "description": "Voer deze acties uit zonder toestemming te vragen. Schakel dit alleen in voor acties die je volledig vertrouwt.", - "selectOptionsFirst": "Selecteer hieronder minstens één optie om automatisch goedkeuren in te schakelen", - "toggleAriaLabel": "Automatisch goedkeuren in-/uitschakelen", - "disabledAriaLabel": "Automatisch goedkeuren uitgeschakeld - selecteer eerst opties", - "triggerLabel_zero": "Geen automatische goedkeuring", + "description": "Voer deze acties uit zonder om toestemming te vragen. Schakel dit alleen in voor acties die je volledig vertrouwt.", + "selectOptionsFirst": "Selecteer hieronder minstens één optie om automatische goedkeuring in te schakelen", + "toggleAriaLabel": "Automatische goedkeuring in-/uitschakelen", + "disabledAriaLabel": "Automatische goedkeuring uitgeschakeld - selecteer eerst opties", + "triggerLabelOff": "Automatisch goedkeuren uit", + "triggerLabel_zero": "0 automatisch goedgekeurd", "triggerLabel_one": "1 automatisch goedgekeurd", "triggerLabel_other": "{{count}} automatisch goedgekeurd", "triggerLabelAll": "YOLO" @@ -403,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo wil een slash commando uitvoeren:", "didRun": "Roo heeft een slash commando uitgevoerd:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "Limiet voor automatisch goedgekeurde verzoeken bereikt", + "description": "Roo heeft de limiet van {{count}} automatisch goedgekeurde API-verzoek(en) bereikt. Wil je de teller resetten en doorgaan met de taak?", + "button": "Reset en ga door" + }, + "autoApprovedCostLimitReached": { + "title": "Automatisch goedgekeurde kostenlimiet bereikt", + "description": "Roo heeft de automatisch goedgekeurde kostenlimiet van ${{count}} bereikt. Wil je de kosten resetten en doorgaan met de taak?", + "button": "Reset en ga door" + } } } diff --git a/webview-ui/src/i18n/locales/pl/chat.json b/webview-ui/src/i18n/locales/pl/chat.json index eab7ea57b3..3c97c4d7d2 100644 --- a/webview-ui/src/i18n/locales/pl/chat.json +++ b/webview-ui/src/i18n/locales/pl/chat.json @@ -247,7 +247,8 @@ "issues": "Wygląda na to, że masz problemy z Windows PowerShell, proszę zapoznaj się z tym" }, "autoApprove": { - "tooltip": "Zarządzaj ustawieniami automatycznego zatwierdzania", + "tooltipManage": "Zarządzaj ustawieniami automatycznego zatwierdzania", + "tooltipStatus": "Automatyczne zatwierdzanie włączone dla: {{toggles}}", "title": "Automatyczne zatwierdzanie", "all": "Wszystkie", "none": "Żadne", @@ -255,11 +256,10 @@ "selectOptionsFirst": "Wybierz co najmniej jedną opcję poniżej, aby włączyć automatyczne zatwierdzanie", "toggleAriaLabel": "Przełącz automatyczne zatwierdzanie", "disabledAriaLabel": "Automatyczne zatwierdzanie wyłączone - najpierw wybierz opcje", - "triggerLabel_zero": "Brak automatycznej akceptacji", - "triggerLabel_one": "1 automatycznie zaakceptowany", - "triggerLabel_few": "{{count}} automatycznie zaakceptowane", - "triggerLabel_many": "{{count}} automatycznie zaakceptowanych", - "triggerLabel_other": "{{count}} automatycznie zaakceptowanych", + "triggerLabelOff": "Automatyczne zatwierdzanie wyłączone", + "triggerLabel_zero": "0 automatycznie zatwierdzone", + "triggerLabel_one": "1 automatycznie zatwierdzony", + "triggerLabel_other": "{{count}} automatycznie zatwierdzonych", "triggerLabelAll": "YOLO" }, "reasoning": { @@ -405,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo chce uruchomić komendę slash:", "didRun": "Roo uruchomił komendę slash:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "Osiągnięto limit automatycznie zatwierdzonych żądań", + "description": "Roo osiągnął automatycznie zatwierdzony limit {{count}} żądania/żądań API. Czy chcesz zresetować licznik i kontynuować zadanie?", + "button": "Zresetuj i kontynuuj" + }, + "autoApprovedCostLimitReached": { + "title": "Osiągnięto limit kosztów z automatycznym zatwierdzaniem", + "description": "Roo osiągnął automatycznie zatwierdzony limit kosztów wynoszący ${{count}}. Czy chcesz zresetować koszt i kontynuować zadanie?", + "button": "Zresetuj i Kontynuuj" + } } } diff --git a/webview-ui/src/i18n/locales/pt-BR/chat.json b/webview-ui/src/i18n/locales/pt-BR/chat.json index 23dac32d1f..ca9460cc76 100644 --- a/webview-ui/src/i18n/locales/pt-BR/chat.json +++ b/webview-ui/src/i18n/locales/pt-BR/chat.json @@ -247,7 +247,8 @@ "issues": "Parece que você está tendo problemas com o Windows PowerShell, por favor veja este" }, "autoApprove": { - "tooltip": "Gerenciar configurações de aprovação automática", + "tooltipManage": "Gerenciar configurações de aprovação automática", + "tooltipStatus": "Aprovação automática habilitada para: {{toggles}}", "title": "Aprovação automática", "all": "Todos", "none": "Nenhum", @@ -255,7 +256,8 @@ "selectOptionsFirst": "Selecione pelo menos uma opção abaixo para ativar a aprovação automática", "toggleAriaLabel": "Alternar aprovação automática", "disabledAriaLabel": "Aprovação automática desativada - selecione as opções primeiro", - "triggerLabel_zero": "Nenhuma aprovação automática", + "triggerLabelOff": "Aprovação automática desativada", + "triggerLabel_zero": "0 aprovados automaticamente", "triggerLabel_one": "1 aprovado automaticamente", "triggerLabel_other": "{{count}} aprovados automaticamente", "triggerLabelAll": "YOLO" @@ -403,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo quer executar um comando slash:", "didRun": "Roo executou um comando slash:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "Limite de Solicitações Auto-aprovadas Atingido", + "description": "Roo atingiu o limite auto-aprovado de {{count}} solicitação(ões) de API. Deseja redefinir a contagem e prosseguir com a tarefa?", + "button": "Redefinir e Continuar" + }, + "autoApprovedCostLimitReached": { + "title": "Limite de Custo com Aprovação Automática Atingido", + "description": "Roo atingiu o limite de custo com aprovação automática de US${{count}}. Você gostaria de redefinir o custo e prosseguir com a tarefa?", + "button": "Redefinir e Continuar" + } } } diff --git a/webview-ui/src/i18n/locales/ru/chat.json b/webview-ui/src/i18n/locales/ru/chat.json index 7ac8dbcd66..596c2c8e37 100644 --- a/webview-ui/src/i18n/locales/ru/chat.json +++ b/webview-ui/src/i18n/locales/ru/chat.json @@ -247,7 +247,8 @@ "issues": "Похоже, у вас проблемы с Windows PowerShell, пожалуйста, ознакомьтесь с этим" }, "autoApprove": { - "tooltip": "Управление настройками автоматического одобрения", + "tooltipManage": "Управление настройками автоматического одобрения", + "tooltipStatus": "Авто-одобрение включено для: {{toggles}}", "title": "Авто-утверждение", "all": "Все", "none": "Ни одного", @@ -255,11 +256,10 @@ "selectOptionsFirst": "Выберите хотя бы один вариант ниже, чтобы включить авто-утверждение", "toggleAriaLabel": "Переключить авто-утверждение", "disabledAriaLabel": "Авто-утверждение отключено - сначала выберите опции", - "triggerLabel_zero": "Нет авто-утверждения", + "triggerLabelOff": "Авто-утверждение выкл", + "triggerLabel_zero": "0 авто-утвержденных", "triggerLabel_one": "1 авто-утвержден", - "triggerLabel_few": "{{count}} авто-утверждено", - "triggerLabel_many": "{{count}} авто-утверждено", - "triggerLabel_other": "{{count}} авто-утверждено", + "triggerLabel_other": "{{count}} авто-утвержденных", "triggerLabelAll": "YOLO" }, "announcement": { @@ -405,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo хочет выполнить слеш-команду:", "didRun": "Roo выполнил слеш-команду:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "Достигнут лимит автоматически одобренных запросов", + "description": "Roo достиг автоматически одобренного лимита в {{count}} API-запрос(ов). Хотите сбросить счетчик и продолжить задачу?", + "button": "Сбросить и продолжить" + }, + "autoApprovedCostLimitReached": { + "title": "Достигнут лимит автоматически одобряемых расходов", + "description": "Roo достиг автоматически утвержденного лимита расходов в размере ${{count}}. Хотите сбросить расходы и продолжить выполнение задачи?", + "button": "Сбросить и продолжить" + } } } diff --git a/webview-ui/src/i18n/locales/tr/chat.json b/webview-ui/src/i18n/locales/tr/chat.json index 3fa655475b..dddcab4640 100644 --- a/webview-ui/src/i18n/locales/tr/chat.json +++ b/webview-ui/src/i18n/locales/tr/chat.json @@ -247,7 +247,8 @@ "issues": "Windows PowerShell ile ilgili sorunlar yaşıyor gibi görünüyorsunuz, lütfen şu konuya bakın" }, "autoApprove": { - "tooltip": "Otomatik onay ayarlarını yönet", + "tooltipManage": "Otomatik onay ayarlarını yönet", + "tooltipStatus": "Otomatik onay şunlar için etkinleştirildi: {{toggles}}", "title": "Otomatik onayla", "all": "Tümü", "none": "Hiçbiri", @@ -255,7 +256,8 @@ "selectOptionsFirst": "Otomatik onayı etkinleştirmek için aşağıdan en az bir seçenek seçin", "toggleAriaLabel": "Otomatik onayı aç/kapat", "disabledAriaLabel": "Otomatik onay devre dışı - önce seçenekleri seçin", - "triggerLabel_zero": "Otomatik onay yok", + "triggerLabelOff": "Otomatik onay kapalı", + "triggerLabel_zero": "0 otomatik onaylandı", "triggerLabel_one": "1 otomatik onaylandı", "triggerLabel_other": "{{count}} otomatik onaylandı", "triggerLabelAll": "YOLO" @@ -403,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo bir slash komutu çalıştırmak istiyor:", "didRun": "Roo bir slash komutu çalıştırdı:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "Otomatik Onaylanan İstek Limiti Aşıldı", + "description": "Roo, {{count}} API isteği/istekleri için otomatik onaylanan limite ulaştı. Sayacı sıfırlamak ve göreve devam etmek istiyor musunuz?", + "button": "Sıfırla ve Devam Et" + }, + "autoApprovedCostLimitReached": { + "title": "Otomatik Onaylanan Maliyet Sınırına Ulaşıldı", + "description": "Roo otomatik olarak onaylanmış ${{count}} maliyet sınırına ulaştı. Maliyeti sıfırlamak ve göreve devam etmek ister misiniz?", + "button": "Sıfırla ve Devam Et" + } } } diff --git a/webview-ui/src/i18n/locales/vi/chat.json b/webview-ui/src/i18n/locales/vi/chat.json index 8c66d8c850..b14dc02a1c 100644 --- a/webview-ui/src/i18n/locales/vi/chat.json +++ b/webview-ui/src/i18n/locales/vi/chat.json @@ -247,7 +247,8 @@ "issues": "Có vẻ như bạn đang gặp vấn đề với Windows PowerShell, vui lòng xem" }, "autoApprove": { - "tooltip": "Quản lý cài đặt tự động phê duyệt", + "tooltipManage": "Quản lý cài đặt tự động phê duyệt", + "tooltipStatus": "Tự động phê duyệt được bật cho: {{toggles}}", "title": "Tự động phê duyệt", "all": "Tất cả", "none": "Không có", @@ -255,7 +256,8 @@ "selectOptionsFirst": "Chọn ít nhất một tùy chọn bên dưới để bật tính năng tự động phê duyệt", "toggleAriaLabel": "Bật/tắt tự động phê duyệt", "disabledAriaLabel": "Tự động phê duyệt đã tắt - trước tiên hãy chọn các tùy chọn", - "triggerLabel_zero": "Không có tự động phê duyệt", + "triggerLabelOff": "Tự động phê duyệt tắt", + "triggerLabel_zero": "0 được tự động phê duyệt", "triggerLabel_one": "1 được tự động phê duyệt", "triggerLabel_other": "{{count}} được tự động phê duyệt", "triggerLabelAll": "YOLO" @@ -403,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo muốn chạy lệnh slash:", "didRun": "Roo đã chạy lệnh slash:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "Đã Đạt Giới Hạn Yêu Cầu Tự Động Phê Duyệt", + "description": "Roo đã đạt đến giới hạn tự động phê duyệt là {{count}} yêu cầu API. Bạn có muốn đặt lại bộ đếm và tiếp tục nhiệm vụ không?", + "button": "Đặt lại và Tiếp tục" + }, + "autoApprovedCostLimitReached": { + "title": "Đã Đạt Giới Hạn Chi Phí Tự Động Phê Duyệt", + "description": "Roo đã đạt đến giới hạn chi phí tự động phê duyệt là ${{count}}. Bạn có muốn đặt lại chi phí và tiếp tục với nhiệm vụ không?", + "button": "Đặt lại và Tiếp tục" + } } } diff --git a/webview-ui/src/i18n/locales/zh-CN/chat.json b/webview-ui/src/i18n/locales/zh-CN/chat.json index 66629df274..d09909239b 100644 --- a/webview-ui/src/i18n/locales/zh-CN/chat.json +++ b/webview-ui/src/i18n/locales/zh-CN/chat.json @@ -247,7 +247,8 @@ "issues": "看起来您遇到了Windows PowerShell问题,请参阅此" }, "autoApprove": { - "tooltip": "管理自动批准设置", + "tooltipManage": "管理自动批准设置", + "tooltipStatus": "自动批准已启用:{{toggles}}", "title": "自动批准", "all": "全部", "none": "无", @@ -255,10 +256,11 @@ "selectOptionsFirst": "请至少选择以下一个选项以启用自动批准", "toggleAriaLabel": "切换自动批准", "disabledAriaLabel": "自动批准已禁用 - 请先选择选项", - "triggerLabel_zero": "无自动批准", + "triggerLabelOff": "自动批准已关闭", + "triggerLabel_zero": "0 个自动批准", "triggerLabel_one": "1 个自动批准", "triggerLabel_other": "{{count}} 个自动批准", - "triggerLabelAll": "人生只有一次" + "triggerLabelAll": "YOLO" }, "reasoning": { "thinking": "思考中", @@ -403,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo 想要运行斜杠命令:", "didRun": "Roo 运行了斜杠命令:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "已达自动批准请求限制", + "description": "Roo 已达到 {{count}} 次 API 请求的自动批准限制。您想重置计数并继续任务吗?", + "button": "重置并继续" + }, + "autoApprovedCostLimitReached": { + "title": "已达到自动批准的费用限额", + "description": "Roo已经达到了${{count}}的自动批准成本限制。您想重置成本并继续任务吗?", + "button": "重置并继续" + } } } diff --git a/webview-ui/src/i18n/locales/zh-TW/chat.json b/webview-ui/src/i18n/locales/zh-TW/chat.json index 2a9dc60f83..f09a66f785 100644 --- a/webview-ui/src/i18n/locales/zh-TW/chat.json +++ b/webview-ui/src/i18n/locales/zh-TW/chat.json @@ -271,7 +271,8 @@ "issues": "您似乎遇到了 Windows PowerShell 的問題,請參閱此說明文件" }, "autoApprove": { - "tooltip": "管理自動批准設定", + "tooltipManage": "管理自動批准設定", + "tooltipStatus": "自動批准已啟用:{{toggles}}", "title": "自動批准", "all": "全部", "none": "無", @@ -279,10 +280,11 @@ "selectOptionsFirst": "請至少選擇以下一個選項以啟用自動批准", "toggleAriaLabel": "切換自動批准", "disabledAriaLabel": "自動批准已禁用 - 請先選擇選項", - "triggerLabel_zero": "無自動核准", + "triggerLabelOff": "自動批准已關閉", + "triggerLabel_zero": "0 個自動核准", "triggerLabel_one": "1 個自動核准", "triggerLabel_other": "{{count}} 個自動核准", - "triggerLabelAll": "人生只有一次" + "triggerLabelAll": "YOLO" }, "announcement": { "title": "🎉 Roo Code {{version}} 已發布", @@ -403,5 +405,17 @@ "slashCommand": { "wantsToRun": "Roo 想要執行斜線指令:", "didRun": "Roo 執行了斜線指令:" + }, + "ask": { + "autoApprovedRequestLimitReached": { + "title": "已達自動核准請求上限", + "description": "Roo 已達到 {{count}} 次 API 請求的自動核准上限。您想重設計數並繼續工作嗎?", + "button": "重設並繼續" + }, + "autoApprovedCostLimitReached": { + "title": "已達自動核准費用上限", + "description": "Roo 已達到 ${{count}} 的自動核准費用上限。您想重設費用並繼續工作嗎?", + "button": "重設並繼續" + } } }