Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Rust implementation of a codebase context engine that enables AI assistants to search and understand codebases using natural language queries.
| Date | Stars |
|---|---|
| 2026-07-31 | 404 |
| 2026-08-06 | 404 |
| 2026-08-19 | 403 |
| 2026-08-23 | 403 |
| 2026-08-24 | 402 |
| 2026-08-31 | 401 |
| 2026-09-15 | 400 |
| 2026-09-16 | 400 |
| 2026-09-17 | 399 |
| 2026-09-19 | 400 |
| 2026-09-20 | 399 |
Today
-1 stars today
This week
-2 stars this week
This month
-4 stars this month
Momentum
0.0
growth rate 0.00%/day
# ace-tool-rs English | [简体中文](README-zh-CN.md) A high-performance MCP (Model Context Protocol) server for codebase indexing, semantic search, and prompt enhancement, written in Rust. ## Overview ace-tool-rs is a Rust implementation of a codebase context engine that enables AI assistants to search and understand codebases using natural language queries. It provides: - **Real-time codebase indexing** - Automatically indexes your project files and keeps the index up-to-date - **Semantic search** - Find relevant code using natural language descriptions - **Prompt enhancement** - Enhance user prompts with codebase context for clearer, more actionable requests - **Multi-language support** - Works with 50+ programming languages and file types - **Incremental updates** - Uses mtime caching to skip unchanged files and only uploads new/modified content - **Parallel processing** - Multi-threaded file scanning and processing for faster indexing - **Smart exclusions** - Respects `.gitignore`, `.aceignore` and common ignore patterns ## Features - **MCP Protocol Support** - Full JSON-RPC 2.0 implementation over stdio transport - **Adaptive Upload Strategy** - AIMD (Additive Increase, Multiplicative Decrease) algorithm dynamically adjusts concurrency and timeout based on runtime metrics - **Multi-encoding Support** - Handles UTF-8, GBK, GB18030, and Windows-1252 encoded files - **Concurrent Uploads** - Parallel batch uploads with sliding window for faster indexing of large projects - **Mtime Caching** - Tracks file modification times to avoid re-processing unchanged files - **Robust Error Handling** - Retry logic with exponential backoff and rate limiting support ## Installation ### Quick Start (Recommended) The easiest way to install and run ace-tool-rs is via npx: ```bash npx ace-tool-rs --base-url <API_URL> --token <AUTH_TOKEN> ``` This will automatically download the appropriate binary for your platform and run it. **Supported platforms:** - Windows (x64) - macOS (x64, ARM64) - Linux (x64, ARM64) ### From Source ```bash # Clone the repository git clone https://github.com/missdeer/ace-tool-rs.git cd ace-tool-rs # Build release binary cargo build --release # The binary will be at target/release/ace-tool-rs ``` ### Requirements - Rust 1.70 or later - An API endpoint for the indexing service - Authentication token ## Usage ### Command Line ```bash ace-tool-rs --base-url <API_URL> --token <AUTH_TOKEN> ``` ### Arguments | Argument | Description | |----------|-------------| | `--base-url` | API base URL for the indexing service (optional for `--enhance-prompt` with third-party endpoints) | | `--token` | Authentication token for API access (optional for `--enhance-prompt` with third-party endpoints) | | `--transport` | Transport framing: `auto` (default), `lsp`, `line` | | `--upload-timeout` | Override upload timeout in seconds (disables adaptive timeout) | | `--upload-concurrency` | Override upload concurrency (disables adaptive concurrency) | | `--no-adaptive` | Disable adaptive strategy, use static heuristic values | | `--no-webbrowser-enhance-prompt` | Disable web browser interaction for enhance_prompt, return API result directly | | `--force-xdg-open` | Force using xdg-open instead of explorer.exe in WSL environment | | `--webui-addr` | Bind address and port for the enhance_prompt Web UI server (e.g., `127.0.0.1:8754`, `0.0.0.0:3456`). If not specified, automatically selects an available port on 127.0.0.1. **Warning:** binding to a non-loopback address exposes the unauthenticated Web UI to the network | | `--index-only` | Index current directory and exit (no MCP server) | | `--enhance-prompt` | Enhance a prompt and output the result to stdout, then exit | | `--max-lines-per-blob` | Maximum lines per blob chunk (default: 800) | | `--retrieval-timeout` | Search retrieval timeout in seconds (default: 180) | ### Environment Variables | Variable | Description | |----------|-------------| | `RUST_LOG` | Set log level (e.
Excerpt of 19,678 characters
Read on GitHubWould you bet a product on this? Bounded 0–100 and slow moving.
matched fp:56463d3f248a88f5, llm:description: 'Rust implementation of a codebase context engine that enables AI assistants to search and understand codebases using natural language queries.'
matched fp:56463d3f248a88f5, llm:description: 'Rust implementation of a codebase context engine that enables AI assistants to search and understand codebases using natural language queries.'
matched fp:56463d3f248a88f5, llm:description: 'Rust implementation of a codebase context engine that enables AI assistants to search and understand codebases using natural language queries.'