
Devrag
io.github.tomohiro-owada由 GitHub 账号 tomohiro-owada 发布v1.2.0更新于 Oct 24, 2026
Lightweight local RAG MCP server. 40x token reduction.
概览
本地 RAG 服务器,为 Markdown 文档建立索引,让助手用语义向量检索相关内容以节省 token。
- 可以做什么
- 用自然语言查询对已索引文档做语义检索,可按目录或文件名通配符过滤
- 索引 Markdown 文件、重新索引已变更文件,或从索引中删除文档
- 列出所有已索引文档及其文件名和时间戳
- 启动时按配置的路径与通配符自动索引文档
- 通过独立命令行以 JSON 或文本格式执行同样的操作
- 适用场景
- 适合助手反复整篇读取大量 Markdown 文档、希望只取回相关片段的场景。面向使用 Claude Code、并把笔记、API 文档或 wiki 放在 Git 中的开发者。
- 运行要求
- 以本地 stdio 进程运行;需下载 macOS、Linux 或 Windows 的预编译二进制(或用 Go 1.21+ 并启用 CGO 从源码构建)。配置文件需指定文档路径、数据库路径、分块大小和嵌入模型。首次运行需联网下载嵌入模型;未声明任何 API 密钥或账号。
安装
在 SourceWeft 中
- 打开 控制台中的 Devrag,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
DevRag
Free Local RAG for Claude Code - Save Tokens & Time
DevRag is a lightweight RAG (Retrieval-Augmented Generation) system designed specifically for developers using Claude Code. Stop wasting tokens by reading entire documents - let vector search find exactly what you need.
Why DevRag?
When using Claude Code, reading documents with the Read tool consumes massive amounts of tokens:
- ❌ Wasting Context: Reading entire docs every time (3,000+ tokens per file)
- ❌ Poor Searchability: Claude doesn't know which file contains what
- ❌ Repetitive: Same documents read multiple times across sessions
With DevRag:
- ✅ 40x Less Tokens: Vector search retrieves only relevant chunks (~200 tokens)
- ✅ 15x Faster: Search in 100ms vs 30 seconds of reading
- ✅ Auto-Discovery: Claude Code finds documents without knowing file names
Features
- 🤖 Simple RAG - Retrieval-Augmented Generation for Claude Code
- 📝 Markdown Support - Auto-indexes .md files
- 🔍 Semantic Search - Natural language queries like "JWT authentication method"
- 🚀 Single Binary - No Python, models auto-download on first run
- 💻 CLI & MCP - Use as MCP server or standalone CLI commands
- 🖥️ Cross-Platform - macOS / Linux / Windows
- ⚡ Fast - Auto GPU/CPU detection, incremental sync
- 🌐 Multilingual - Supports 100+ languages including Japanese & English
Quick Start
1. Download Binary
Get the appropriate binary from Releases:
macOS/Linux:
Note: macOS releases include
libonnxruntime.dylibfor CoreML GPU acceleration. Keep it in the same directory as thedevragbinary.
Windows:
- Extract the zip file
- Place in your preferred location (e.g.,
C:\Program Files\devrag\)
2. Configure Claude Code
Add to ~/.claude.json or .mcp.json:
Using a custom config file:
3. Add Your Documents
That's it! Documents are automatically indexed on startup.
4. Search with Claude Code
In Claude Code:
Configuration
Create config.json:
Configuration Options
document_patterns: Array of document paths and glob patterns- Supports directory paths:
"./documents" - Supports glob patterns:
"./docs/**/*.md"(recursive) - Multiple patterns: Index files from different locations
- Note: Old
documents_dirfield is still supported (automatically migrated)
- Supports directory paths:
db_path: Vector database file pathchunk_size: Document chunk size in characterssearch_top_k: Number of search results to returncompute.device: Compute device (auto,cpu,gpu)compute.fallback_to_cpu: Fallback to CPU if GPU unavailablemodel.name: Embedding model namemodel.dimensions: Vector dimensions
Command-Line Options
--config <path>: Specify a custom configuration file path (default:config.json)
Example:
This is useful for:
- Running multiple instances with different configurations
- Testing different models or chunk sizes
- Maintaining separate dev/test/prod configurations
Pattern Examples
MCP Tools
DevRag provides the following tools via Model Context Protocol:
search
Perform semantic vector search with optional filtering
Parameters:
query(string, required): Search query in natural languagetop_k(number, optional): Maximum number of results (default: 5)directory(string, optional): Filter to specific directory (e.g., "docs/api")file_pattern(string, optional): Glob pattern for filename (e.g., "api-.md", ".md")
Returns: Array of search results with filename, chunk content, and similarity score
Examples:
index_markdown
Index a markdown file
Parameters:
filepath(string): Path to the file to index
list_documents
List all indexed documents
Returns: Document list with filenames and timestamps
delete_document
Remove a document from the index
Parameters:
filepath(string): Path to the file to delete
reindex_document
Re-index a document
Parameters:
filepath(string): Path to the file to re-index
CLI Usage
DevRag can also be used as a standalone CLI tool. All MCP tools are available as CLI commands.
Output Format
All commands output JSON by default. Use --output text for human-readable output.
MCP Tool Name Compatibility
CLI commands also accept MCP tool names with underscores:
Flag Syntax
Flags must be placed before positional arguments:
Team Development
Perfect for teams with large documentation repositories:
- Manage docs in Git: Normal Git workflow
- Each developer runs DevRag: Local setup on each machine
- Search via Claude Code: Everyone can search all docs
- Auto-sync:
git pullautomatically updates the index
Configure for your project's docs directory:
Performance
Environment: MacBook Pro M2, 100 files (1MB total)
260x faster search, 40x fewer tokens
Development
Run Tests
Build
Creating a Release
GitHub Actions automatically:
- Builds for all platforms
- Creates GitHub Release
- Uploads binaries
- Generates checksums
Project Structure
Troubleshooting
Model Download Fails
Cause: Internet connection or Hugging Face server issues
Solutions:
- Check internet connection
- For proxy environments:
- Manual download (see
models/DOWNLOAD.md) - Retry (incomplete files are auto-removed)
GPU / CoreML Not Working
On macOS, DevRag uses Apple CoreML for GPU/Neural Engine acceleration. Requirements:
libonnxruntime.dylibmust be in the same directory as thedevragbinary- macOS releases from GitHub include this file automatically
If CoreML is not available, DevRag falls back to CPU automatically. To tune performance:
To explicitly force CPU mode:
Won't Start
- Ensure Go 1.21+ is installed (for building)
- Check CGO is enabled:
go env CGO_ENABLED - Verify dependencies are installed
- Internet required for first run (model download)
Unexpected Search Results
- Adjust
chunk_size(default: 500) - Rebuild index (delete vectors.db and restart)
High Memory Usage
- GPU mode loads model into VRAM
- Switch to CPU mode for lower memory usage
Requirements
- Go 1.21+ (for building from source)
- CGO enabled (for sqlite-vec)
- macOS, Linux, or Windows
License
MIT License
Credits
- Embedding Model: intfloat/multilingual-e5-small
- Vector Database: sqlite-vec
- MCP Protocol: Model Context Protocol
- ONNX Runtime: onnxruntime-go
Contributing
Issues and Pull Requests are welcome!
Contributors
Special thanks to all contributors who helped improve DevRag:
- @badri - Multiple document paths with glob patterns (#2),
--configCLI flag (#3) - @io41 - Project cleanup and documentation improvements (#4)
Your contributions make DevRag better for everyone!
Author
日本語版
Claude Code用の無料ローカルRAG - トークン&時間を節約
DevRagは、Claude Codeを使う開発者のための軽量RAG(Retrieval-Augmented Generation)システムです。ドキュメント全体を読み込んでトークンを無駄にするのをやめて、ベクトル検索で必要な情報だけを取得しましょう。
なぜDevRagが必要か?
Claude Codeでドキュメントを読み込むと、大量のトークンを消費します:
- ❌ コンテキストの浪費: 毎回ドキュメント全体を読み込み(1ファイル3,000トークン以上)
- ❌ 検索性の欠如: Claudeはどのファイルに何が書いてあるか知らない
- ❌ 繰り返し: セッションをまたいで同じドキュメントを何度も読む
DevRagを使えば:
- ✅ トークン消費1/40: ベクトル検索で必要な部分だけ取得(約200トークン)
- ✅ 15倍高速: 検索100ms vs 読み込み30秒
- ✅ 自動発見: ファイル名を知らなくてもClaude Codeが見つける
特徴
- 🤖 簡易RAG - Claude Code用の検索拡張生成
- 📝 マークダウン対応 - .mdファイルを自動インデックス化
- 🔍 意味検索 - 「JWTの認証方法」のような自然言語クエリ
- 🚀 ワンバイナリー - Python不要、モデルは初回起動時に自動ダウンロード
- 💻 CLI & MCP - MCPサーバーとしても、CLIコマンドとしても使える
- 🖥️ クロスプラットフォーム - macOS / Linux / Windows
- ⚡ 高速 - GPU/CPU自動検出、差分同期
- 🌐 多言語 - 日本語・英語を含む100以上の言語対応
クイックスタート
1. バイナリダウンロード
Releasesから環境に合ったファイルをダウンロード:
macOS/Linux:
注意: macOS版リリースにはCoreML GPU高速化用の
libonnxruntime.dylibが含まれています。devragバイナリと同じディレクトリに配置してください。
Windows:
- zipファイルを解凍
- 任意の場所に配置(例:
C:\Program Files\devrag\)
2. Claude Code設定
~/.claude.json または .mcp.json に追加:
カスタム設定ファイルを使用する場合:
3. ドキュメントを配置
これで完了!起動時に自動的にインデックス化されます。
4. Claude Codeで検索
Claude Codeで:
設定
config.jsonを作成:
設定項目
document_patterns: ドキュメントのパスとglobパターンの配列- ディレクトリパス対応:
"./documents" - globパターン対応:
"./docs/**/*.md"(再帰的) - 複数パターン: 異なる場所からファイルをインデックス化
- 注意: 旧形式の
documents_dirもサポート(自動的に移行)
- ディレクトリパス対応:
db_path: ベクトルデータベースのパスchunk_size: ドキュメントのチャンクサイズ(文字数)search_top_k: 検索結果の返却件数compute.device: 計算デバイス(auto,cpu,gpu)compute.fallback_to_cpu: GPU利用不可時にCPUにフォールバックmodel.name: 埋め込みモデル名model.dimensions: ベクトル次元数
コマンドラインオプション
--config <path>: カスタム設定ファイルのパスを指定(デフォルト:config.json)
使用例:
これは以下の用途で便利です:
- 異なる設定で複数のインスタンスを実行
- 異なるモデルやチャンクサイズをテスト
- 開発/テスト/本番環境の設定を分離
パターン例
MCPツール
Model Context Protocolを通じて以下のツールを提供:
search
フィルター機能付き意味ベクトル検索を実行
パラメータ:
query(string, 必須): 自然言語の検索クエリtop_k(number, 任意): 最大結果数(デフォルト: 5)directory(string, 任意): 特定ディレクトリに絞り込み(例: "docs/api")file_pattern(string, 任意): ファイル名のglobパターン(例: "api-.md", ".md")
戻り値: ファイル名、チャンク内容、類似度スコアを含む検索結果の配列
使用例:
index_markdown
マークダウンファイルをインデックス化
パラメータ:
filepath(string): インデックス化するファイルのパス
list_documents
インデックス化されたドキュメントの一覧を取得
戻り値: ファイル名とタイムスタンプを含むドキュメントリスト
delete_document
ドキュメントをインデックスから削除
パラメータ:
filepath(string): 削除するファイルのパス
reindex_document
ドキュメントを再インデックス化
パラメータ:
filepath(string): 再インデックス化するファイルのパス
CLI使用方法
DevRagはスタンドアロンのCLIツールとしても使用できます。すべてのMCPツールがCLIコマンドとして利用可能です。
出力形式
全コマンドはデフォルトでJSONを出力します。--output textで人間が読みやすい形式になります。
MCPツール名との互換性
CLIコマンドはアンダースコア形式のMCPツール名でも動作します:
フラグの構文
フラグは位置引数の前に置く必要があります:
チーム開発
大量のドキュメントがあるチームに最適:
- Gitでドキュメント管理: 通常のGitワークフロー
- 各開発者がDevRagを起動: 各マシンでローカルセットアップ
- Claude Codeで検索: 全員が全ドキュメントを検索可能
- 自動同期:
git pullでインデックスを自動更新
プロジェクトのdocsディレクトリ用に設定:
パフォーマンス
環境: MacBook Pro M2, 100ファイル (合計1MB)
検索は260倍速、トークンは40分の1
開発
テスト実行
ビルド
リリース作成
GitHub Actionsが自動的に:
- 全プラットフォーム向けにビルド
- GitHub Releaseを作成
- バイナリをアップロード
- チェックサムを生成
プロジェクト構造
トラブルシューティング
モデルのダウンロードに失敗
原因: インターネット接続またはHugging Faceサーバーの問題
解決方法:
- インターネット接続を確認
- プロキシ環境の場合:
- 手動ダウンロード(
models/DOWNLOAD.md参照) - 再試行(不完全なファイルは自動削除)
GPU / CoreMLが動作しない
macOSではApple CoreMLによるGPU/Neural Engine高速化を使用します。条件:
libonnxruntime.dylibがdevragバイナリと同じディレクトリにあること- GitHubのmacOS版リリースにはこのファイルが含まれています
CoreMLが利用できない場合は自動的にCPUにフォールバックします。パフォーマンス調整:
明示的にCPUモードを指定する場合:
起動しない
- Go 1.21+がインストールされているか確認(ソースからビルドする場合)
- CGOが有効か確認:
go env CGO_ENABLED - 依存関係がインストールされているか確認
- 初回起動時はインターネット接続が必要(モデルダウンロード)
検索結果が期待と異なる
chunk_sizeを調整(デフォルト: 500)- インデックスを再構築(vectors.dbを削除して再起動)
メモリ使用量が多い
- GPUモードではモデルがVRAMにロード
- CPUモードに切り替えるとメモリ使用量が減少
必要要件
- Go 1.21+(ソースからビルドする場合)
- CGO有効(sqlite-vecのため)
- macOS, Linux, または Windows
ライセンス
MIT License
クレジット
- 埋め込みモデル: intfloat/multilingual-e5-small
- ベクトルデータベース: sqlite-vec
- MCPプロトコル: Model Context Protocol
- ONNX Runtime: onnxruntime-go
コントリビューション
IssuesとPull Requestsを歓迎します!
コントリビューター
DevRagの改善に貢献してくださった皆様に感謝します:
皆様の貢献がDevRagをより良くしています!
作者
来源:README.md,提交 288ad59
工具
0版本历史
1- v1.2.0最新Sep 16, 2026
评分
已满足适用检查项的 40%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
请在仓库或注册中心条目中声明许可证。