Mantic is a context-aware code search engine that prioritizes relevance over raw speed. After testing across 5 repositories (cal.com, next.js, tensorflow, supabase, chromium), it demonstrates superior result quality compared to grep/ripgrep, despite some trade-offs in speed for very large codebases.
Overall Assessment: 4/5 - Excellent for AI agents, good for developers, needs speed optimization for 100K+ file repos.
Enterprise-Grade Context Infrastructure
- Semantic Reranking (Hybrid Intelligence): Combines heuristic speed with neural understanding. Uses local embeddings (
transformers.js) to find "conceptually relevant" code even without exact keyword matches.- Usage:
mantic "verify user" --semantic
- Usage:
- Code Intelligence: Deep understanding of your codebase structure using Tree-sitter.
- Go to Definition:
mantic goto UserServicereturns the exact line number across your entire monorepo. - Find References:
mantic references handleLoginfinds every usage, respecting.gitignore.
- Go to Definition:
- Learned Context (Team Memories): Mantic now remembers which files solved previous queries. These patterns are saved locally (
.mantic/search-patterns.json) and can be committed to git to share knowledge across your team. - Python Support: Now includes first-class support for Python imports in the dependency graph.
- Security & Stability:
- Regex DoS protection for user inputs.
- Command injection mitigations for VS Code extension.
- Safe fallback for non-git directories (scans allow-listed extensions).
Performance Update: v1.0.25 is ~2x faster than previous versions, scanning Chromium (481K files) in <2 seconds.
Tested on 481K files (Chromium) with 100% multi-repo accuracy.
See the CHANGELOG for detailed release notes.
- About the Project
- Proprietary vs Mantic
- Performance Benchmarks
- Accuracy & Relevance
- Feature Comparison
- Use Case Recommendations
- Installation
- Usage
- Agent Rules
- How It Works
- License
Mantic is an infrastructure layer designed to remove unnecessary context retrieval overhead for AI agents. It infers intent from file structure and metadata rather than brute-force reading content, enabling retrieval speeds faster than human reaction time.
- Speed: Retrieval is consistently under 500ms for most repos, under 4s for massive monorepos (Chromium).
- Efficiency: Reduces token usage by up to 63% by filtering irrelevant files before reading.
- Privacy: Runs entirely locally with zero data egress.
For a team of 100 developers performing 100 searches per day (approx. 3M searches/year):
| Tool | Annual Cost (Est.) | Per-Search Cost | Privacy |
|---|---|---|---|
| Mantic | $0 | $0 | Local-First |
| Vector Embeddings (DIY) | $1,680 - $10,950* | $0.0005 - $0.003 | Cloud |
| SaaS Alternatives | $46,800+ | $0.015+ | Cloud |
Note: Mantic costs are zero. Vector/SaaS costs are estimates based on standard managed infrastructure (e.g. Pinecone/Weaviate managed pods + compute) or per-seat Enterprise licensing (e.g. GitHub Copilot Enterprise).
| Repository | Files | Query | Mantic v1.0.25 | ripgrep | fzf | Verdict |
|---|---|---|---|---|---|---|
| cal.com | 9.7K | "stripe payment" | 0.288s | 0.121s | 0.534s | Fast |
| next.js | 25K | "router server" | 0.440s | 0.034s | 0.049s | Fast |
| tensorflow | 35K | "gpu" | 0.550s | 0.022s | N/A | Fast |
| chromium | 481K | "ScriptController" | 1.961s | 0.380s | 0.336s | <2s (Massive) |
Speed Verdict:
- Caching works well for most repos (4-17% improvement on second run).
- Large repos (Chromium) show modest but consistent improvements.
- Mantic is slower than ripgrep/fzf on raw speed but prioritizes ranking.
- Query:
"router server"in next.js - Mantic: Found
packages/next/src/server/lib/router-server.ts(Score: 220) - ripgrep: Found files mentioning "router" and "server" separately (many false positives)
- Verdict: Mantic found the exact file that matches the intent.
- Query:
"ScriptController"in chromium - Mantic: Found
script_controller.h,script_controller.cc(Score: 200) - ripgrep: Requires manual regex
script.*controller - Verdict: Mantic's CamelCase detection is production-ready.
- Query:
"gpu"in tensorflow - Mantic: Prioritized files in
tensorflow/lite/delegates/gpu/ - Verdict: Mantic correctly prioritizes structural relevance.
- Query:
"blink renderer core dom"in chromium - Mantic: Found
third_party/blink/renderer/core/dom/README.md - Verdict: Mantic matches multi-term path queries perfectly.
| Feature | Mantic | ripgrep | ag | fzf |
|---|---|---|---|---|
| Text Search Speed | 2-10x slower | Fastest | Slow (large repos) | Very Fast |
| Relevance Ranking | Excellent | None | None | Basic |
| Path Structure Awareness | Perfect | None | None | Partial |
| CamelCase Detection | Yes | No | No | No |
| Exact Filename Matching | Yes | No | No | Yes |
| Multi-Word Queries | Semantic | Regex needed | Regex needed | AND logic |
| Go to Definition | Yes (Cross-Repo) | No | No | No |
| Find References | Yes | No | No | No |
| Impact Analysis | Yes | No | No | No |
| Zero-Query Mode | Yes | No | No | No |
- AI Agents (Context-aware search with metadata)
- Finding Files by Intent ("Where is payment code?")
- Understanding Code Structure (Path sequence queries)
- Code Reviews (Impact analysis shows blast radius)
- Quick Text Searches ("Find all TODOs" -> Use ripgrep)
- Very Large Repos (100K+) (Speed tradeoff: 4s vs 0.3s)
- Exact String Matching (Use ripgrep with -F)
- Interactive File Browsing (Use fzf)
Quick Start (no installation required):
npx mantic.sh@latest "your search query"New Commands:
# Semantic Search (Neural Reranking)
npx mantic.sh@latest "verify user identity" --semantic
# Go to Definition
npx mantic.sh@latest goto "UserService"
# Find References
npx mantic.sh@latest references "handleLogin"From Source:
git clone https://github.com/marcoaapfortes/Mantic.sh.git
cd Mantic.sh
npm install
npm run build
npm linkMantic works as an MCP (Model Context Protocol) server for Claude Desktop, Cursor, VS Code, and other MCP-compatible tools.
One-Click Install:
Manual Configuration (for Claude Desktop or other MCP clients):
Add this to your MCP settings file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"mantic": {
"command": "npx",
"args": ["-y", "mantic.sh@latest", "server"]
}
}
}Find files matching your intent:
mantic "stripe payment integration"Returns JSON with ranked files, confidence scores, and token estimates.
Zero-Query Mode (proactive context):
mantic ""
# Shows modified files, related dependencies, impact analysisContext Carryover (session mode):
mantic "auth logic" --session my-task
# Previously viewed files get +150 boostImpact Analysis:
mantic "payment processing" --impact
# Shows blast radius and dependents
### Session Management (CLI)
You can manage sessions directly from the terminal to persist context across multiple runs:
```bash
# Start a named session with an intent
mantic session start my-feature --intent "implement payment webhook"
# List all active sessions
mantic session list
# Get detailed info (viewed files, query history)
mantic session info <sessionId>
# End a session
mantic session end <sessionId>
### CLI Options
```bash
mantic <query> [options]
Options:
--code Only search code files (.ts, .js, etc)
--config Only search config files
--test Only search test files
--json Output as JSON (default, includes metadata)
--files Output as newline-separated file paths
--markdown Pretty terminal output
--impact Include dependency analysis and blast radius
--session <id> Use session for context carryover
--path <dir> Restrict search to specific directory
--include-generated Include generated files (.lock, dist/, etc)
--quiet, -q Minimal output mode
--semantic Enable neural reranking (slower, but "smarter")
Code Intelligence Commands:
mantic goto <symbol> # Find definition of a symbol
mantic references <symbol> # Find all usages of a symbolWhen using Mantic through MCP (Claude Desktop, Cursor):
search_files- Primary search (supportssemantic: truefor neural reranking)get_definition- Go to definition of a symbolfind_references- Find usages of a symbolget_context- Zero-query mode for proactive contextsession_start/end- Manage coding sessionssession_record_view- Track viewed filessession_list/info- View session historyanalyze_intent- Understand query intent
Want Cursor or Claude to use Mantic automatically?
- Copy the Agent Rules.
- Paste them into your AI tool's system prompt or "Rules for AI" section.
- The Agent will now automatically use
manticto find context before writing code.
User Query
↓
Intent Analyzer (categorizes: UI/backend/auth/etc)
↓
Brain Scorer (ranks files using metadata)
↓
File Classifier (filters by type: code/config/test)
↓
Impact Analyzer (calculates blast radius)
↓
Output (JSON/Files/Markdown/MCP)
- Intent Recognition: Analyzes query to determine code category (e.g., "auth", "ui")
- File Enumeration: Uses
git ls-filesfor tracked files (significantly faster than traversals) - Normalization & Matching:
- CamelCase detection: "ScriptController" -> "script controller" for matching
- Word-boundary matching: "script" won't match "javascript"
- Path sequence matching: Multi-term queries match consecutive path components
- Directory boosting: Single-term queries prioritize files in matching directories
- Structural Scoring: Ranks files based on:
- Exact filename match: +10,000 points for perfect matches
- Path relevance:
packages/features/paymentsindicates high signal - Filename matching:
stripe.service.ts>stripe.txt - Business logic awareness:
.service.tsboosted over.test.ts - Boilerplate penalties:
index.tsorpage.tsxranked lower
- Progressive Disclosure: Calculates metadata (size, tokens, confidence, timestamps)
- Context Carryover: Applies +150 boost to session-viewed files
- Learning: Caches successful patterns for future queries
Mantic works out of the box with zero configuration for most projects.
MANTIC_MAX_FILES=5000 # Maximum files to scan
MANTIC_TIMEOUT=30000 # Search timeout in ms (default: 30000)
MANTIC_IGNORE_PATTERNS=... # Custom glob patterns to ignore
MANTIC_FUNCTION_SCAN_LIMIT=30 # Top files to scan for function names (default: dynamic, max 50)Mantic.sh is Dual Licensed to support both open access and sustainable development.
Ideal for: Individuals, Internal Business Tools, Open Source Projects.
- Free for internal use (e.g., using Mantic.sh CLI in your company's dev team).
- Free for open source (integrating into other AGPL/GPL projects).
- Requirement: If you distribute Mantic.sh (or a modified version) as part of your own application (e.g., embedding it in a proprietary IDE or SaaS), you must open-source your entire application under AGPL-3.0. For hosted services, users must have access to the modified source code.
Ideal for: Commercial IDEs, SaaS Platforms, Proprietary Products.
- Embed Mantic.sh in proprietary software (e.g., VS Code forks, AI Agents, SaaS tools).
- No open-source requirement (keep your source code private).
- Support & Indemnification: Priority email support and legal indemnification included.
Pricing:
- Internal Use: Free (under AGPL-3.0).
- Commercial Integration: Contact for pricing (starts at $500/year, based on usage).
Enforcement: All derivatives must comply with AGPL-3.0 unless under a commercial license. Unauthorized copying or rewrites may violate copyright laws.
Contributing: To maintain the dual-license model, all contributors must sign a Contributor License Agreement (CLA) granting relicensing rights.
Contact: license@mantic.sh
See LICENSE for the full AGPL-3.0 terms.