* feat: apply changes from local main * fix: add missing types * feat: deduplicate code blocks coming out of parser * feat: implement a cache manager to improve cache handling * refactor: move code index service initialization to extension and remove await from indexing process * fix: return undefined instead of throwing if no workspace is detected * feat: allow auto approve if it is active for read tools * refactor: improve UI of the results and allow opening the ranges directly in the editor * refactor: use dependency injection to improve performance * feat: implement result filtering by directory path * refactor: centralize path normalization logic * refactor: remove unnecessary barrel file * refactor: prevent restarting the service if no settings change * fix: the indexing process should never be awaited * refactor: cleanup unused method * refactor: remove batch limits for ollama * refactor(parser): simplify method signatures and improve chunking logic - Remove redundant min/max chars parameters - Add better handling for oversized lines - Improve chunking logic with segment handling - Clean up method signatures and parameter ordering * fix(settings): make select inputs full width in CodeIndexSettings * refactor: increase max list file limit * feat(ui): improve codebase search result display formatting * test: add tests for cache and config managers * test: create unit tests for parser and scanner * feat(parser): improve segment hash uniqueness - Added startCharIndex to segment hash calculation in _chunkTextByLines - Track character position when splitting oversized lines - Ensures unique identification of segments from same line * feat(file-watcher): add error logging and optional ignoreController injection * fix: allow getting the state if the service is disabled * fix: set the embedding models when cline provider is initialized * feat: use zod to validate form * feat(file-watcher): enhance file watcher for batched deletions and improved vector store interactions Improve file watcher to handle file deletions in batches and optimize vector store operations. * feat(CodeIndexSettings): move OpenAI key input to a conditional rendering block * feat(CodeIndexSettings): update button visibility based on indexing status * feat(file-watcher): refactor vscode mock and enhance file watcher tests * fix(CodeIndexManager): do not await startIndexing on configuration changes * feat(types): add codeIndexOpenAiKey and codeIndexQdrantApiKey to ProviderSettings and IpcMessage * feat(FileWatcher): enhance file processing with batch operations and new status handling * fix(webviewMessageHandler): handle errors during CodeIndexManager initialization * refactor(CodeIndexManager): streamline service creation by consolidating into a single method * feat(CodeIndex): implement minimum search score configuration and update search methods * refactor(CodeIndexSettings): replace ApiConfiguration with ProviderSettings and update related methods * refactor: move contants to centralized file * refactor(constants): rename CODEBASE_INDEX_SEARCH_MIN_SCORE to SEARCH_MIN_SCORE * feat(QdrantVectorStore): enhance search functionality with new query structure and indexing * feat(FileWatcher): implement batch processing and retry logic for upserting points * fix(CodeIndexSettings): rename setProviderSettingsField to setApiConfigurationField and move model label * fix(ChatRow): remove limit from search query messages * refactor(CodebaseSearchResult): remove unused props from component * feat: implement batch processing for file events in FileWatcher - Introduced a new mechanism to accumulate file events (create, change, delete) and process them in batches. - Added debounce functionality to optimize processing frequency. - Emitted events for batch processing start, progress updates, and completion with detailed summaries. - Refactored existing processing logic to handle batch deletions and upserts efficiently. - Enhanced error handling and logging for better traceability during batch operations. * feat(CodeIndex): implement batch processing and update progress reporting * fix: define a default url for qdrant * feat(CodeIndexManager): add initialization check and update startIndexing logic * feat(CodeIndexSettings): validate Qdrant URL and update settings commitment logic * feat: refactor progress calculation and update progress bar rendering * refactor: remove webview provider and related methods * fix: simplify indexing status update by directly using update values * feat: integrate .gitignore support into file processing and scanning logic * fix: update clearCacheFile method to write an empty object instead of deleting the cache file * Revert this * Run prettier * fix: add new dependencies for qdrant client and directory scanner * feat: add codebase search functionality to localization files * feat: add localization strings for codebase indexing settings * feat: integrate CodeIndexSettings into ExperimentalSettings and update settings localization * refactor: remove console logs from various components for cleaner output * feat: enhance capabilities section and codebase search tool description * feat: add code indexing localization for multiple languages * fix: correct indentation for CodeIndexSettings component in ExperimentalSettings * refactor: update unit tests to properly test current functionality * feat: add mock implementation for p-limit and update Jest config * feat: track file creation, change, and deletion events in accumulatedEvents * refactor: simplify file watcher tests by removing waitForFileProcessingToFinish and using direct event accumulation * refactor: mock ContextProxy's getValue method to return current config name in ClineProvider tests * refactor: mock missing properties required by codebase indexing manager --------- Co-authored-by: cte <cestreich@gmail.com> |
||
|---|---|---|
| .. | ||
| CODE_OF_CONDUCT.md | ||
| CONTRIBUTING.md | ||
| README.md | ||
English • Català • Deutsch • Español • Français • हिन्दी • Italiano • Nederlands • Русский
日本語 • 한국어 • Polski • Português (BR) • Türkçe • Tiếng Việt • 简体中文 • 繁體中文
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.
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ể:
- 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 để biết thông tin chi tiết về các cập nhật và sửa lỗi.
🎉 Đã Phát Hành Roo Code 3.18
Roo Code 3.18 mang đến những tính năng mạnh mẽ mới và cải tiến dựa trên phản hồi của bạn!
- Các mô hình Gemini 2.5 Flash Preview - Truy cập các mô hình Gemini Flash mới nhất để có phản hồi nhanh hơn và hiệu quả hơn.
- Nút nén ngữ cảnh thông minh - Nút mới trong tiêu đề tác vụ cho phép bạn nén nội dung một cách thông minh với phản hồi trực quan.
- Hỗ trợ YAML cho định nghĩa chế độ - Tạo và tùy chỉnh các chế độ dễ dàng hơn với hỗ trợ YAML.
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
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ế độ 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: 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ụ 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)
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 cho hành vi cá nhân hóa
- Chế độ tùy chỉnh cho các tác vụ chuyên biệt
- Mô hình cục bộ cho sử dụng ngoại tuyến
- Cài đặt tự động phê duyệt cho quy trình làm việc nhanh hơn
Tài Nguyên
Tài Liệu
Cộng Đồng
- Discord: Tham gia máy chủ Discord của chúng tôi để đượ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 để chia sẻ kinh nghiệm và mẹo
- GitHub: Báo cáo vấn đề hoặc yêu cầu tính năng
Thiết Lập & Phát Triển Cục Bộ
- Clone kho lưu trữ:
git clone https://github.com/RooCodeInc/Roo-Code.git
- Cài đặt các phụ thuộc:
npm run install:all
- Khởi động webview (ứng dụng Vite/React với HMR):
npm run dev
- 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.
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.
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:
npm run build
Một tệp .vsix sẽ xuất hiện trong thư mục bin/ có thể được cài đặt bằng:
code --install-extension bin/roo-cline-<version>.vsix
Chúng tôi sử dụng 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
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).
Đó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 của chúng tôi.
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!
Giấy Phép
Apache 2.0 © 2025 Roo Code, Inc.
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 hoặc Discord của chúng tôi. Chúc lập trình vui vẻ!