* 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 • 简体中文 • 繁體中文
Roo Code 是一個存在於您編輯器中的 AI 驅動自主程式開發助手。它能夠:
- 使用自然語言與您溝通
- 直接讀寫您工作區中的檔案
- 執行終端機命令
- 自動化瀏覽器操作
- 整合任何與 OpenAI 相容或自訂的 API/模型
- 透過自訂模式調整其「個性」與功能
無論您需要的是一位靈活的程式設計夥伴、系統架構師,或是 QA 工程師、產品經理等特定角色,Roo Code 都能協助您更有效率地開發軟體。
請檢視 CHANGELOG 了解詳細的更新與修正內容。
🎉 Roo Code 3.18 已發布
Roo Code 3.18 根據您的回饋帶來強大的新功能和改進!
- Gemini 2.5 Flash 預覽模型 - 存取最新的 Gemini Flash 模型,獲得更快速、更高效的回應。
- 智慧型上下文壓縮按鈕 - 工作標頭的新按鈕讓您能夠智慧地壓縮內容,並提供視覺回饋。
- 模式定義的 YAML 支援 - 透過 YAML 支援更輕鬆地建立和自訂模式。
Roo Code 可以做什麼?
- 🚀 從自然語言描述產生程式碼
- 🔧 重構與除錯現有程式碼
- 📝 撰寫與更新文件
- 🤔 回答關於您的程式碼的問題
- 🔄 自動化重複性工作
- 🏗️ 建立新檔案與專案
快速開始
主要特點
多種模式
Roo Code 提供專業化的模式,能滿足您的各種需求:
- 程式碼模式: 處理一般程式設計工作
- 架構師模式: 規劃架構與技術領導
- 詢問模式: 回答問題與提供資訊
- 除錯模式: 系統化地診斷問題
- 客製化模式: 建立無限個專業角色,進行安全性審核、效能最佳化、文件撰寫或其他任何任務
智慧工具
Roo Code 內建強大的工具,能夠:
- 讀寫您專案中的檔案
- 在您的 VS Code 終端機中執行命令
- 控制網頁瀏覽器
- 透過 MCP (Model Context Protocol) 使用外部工具
透過 MCP,您可以無限制地新增自訂工具,進一步擴充 Roo Code 的功能。無論是整合外部 API、連接資料庫,或建立專屬的開發工具,MCP 都提供完整的框架,讓您依據自身需求靈活擴充 Roo Code。
客製化
Roo Code 可以配合您的需求進行調整:
資源
文件
社群
- Discord: 加入我們的 Discord 伺服器取得即時幫助和討論
- Reddit: 存取我們的 subreddit分享經驗和技巧
- GitHub: 報告問題或請求功能
開發環境設定
- 複製儲存庫:
git clone https://github.com/RooCodeInc/Roo-Code.git
- 安裝相依套件:
npm run install:all
- 啟動網頁檢視(Vite/React 應用程式,支援 HMR):
npm run dev
- 除錯:
在 VSCode 中按下
F5(或選擇執行 → 開始除錯)以開啟載入 Roo Code 的新工作階段。
網頁檢視的變更會立即顯示。核心擴充功能的變更則需要重新啟動擴充主機。
或者,您也可以建置 .vsix 檔案並直接在 VSCode 中安裝:
npm run build
建置完成後,.vsix 檔案會出現在 bin/ 目錄中,可使用以下指令安裝:
code --install-extension bin/roo-cline-<version>.vsix
我們使用 changesets 進行版本控制和發布。檢視我們的 CHANGELOG.md 取得發布說明。
免責聲明
請注意,Roo Code, Inc. 不對與 Roo Code 相關的任何程式碼、模型或其他工具、任何相關的第三方工具,或任何產生的輸出提供任何陳述或保證。您使用這些工具或輸出時,需自行承擔所有相關風險;這些工具係以**「現況」及「現有」**基礎提供。上述風險包括但不限於智慧財產權侵害、網路安全漏洞或攻擊、偏見、不準確性、錯誤、缺陷、病毒、停機時間、財產損失或損害,以及/或人身傷害。您須自行負責使用這些工具或輸出所產生的任何結果(包括但不限於其合法性、適當性及後果)。
貢獻
我們喜歡社群貢獻!透過閱讀我們的 CONTRIBUTING.md 開始。
貢獻者
感謝所有幫助改進 Roo Code 的貢獻者!
授權
Apache 2.0 © 2025 Roo Code, Inc.
享受 Roo Code! 無論您是將它拴在短繩上還是讓它自主漫遊,我們迫不及待地想看看您會建構什麼。如果您有問題或功能想法,請造訪我們的 Reddit 社群或 Discord。祝您開發愉快!