内容
地思维
**赋予每款 AI 代理对代码库的完美记忆 — 离线.**
本地思维是一款面向开发者和 AI 编程代理的本地优先的知识与上下文引擎。它将您的代码仓库索引到一个可搜索的知识库25 + 可选的嵌入),构建一个轻量级的导入 **CLI** 和 **M**提供问题回答和一切。
[](https://www.npmjs.com/package/@ixxrllg/localmind)
[](https://nodejs.org/)
[](LICENSE)
[](https://modelcontext/)
[](https://github.com/ixxrllg/localmind)
[](https://github.com/ixxrllg/issues)
---
## 为什么选择?
| 痛点 | 本地思维 |
|------|| AI 代理忘记项目 持久的本地索引 +工具 |
| 云 RAG 泄露私有代码 | 默认 100% 本地(SQLite) |
| Grep 不足以回答问题 | BM25 排名 + 提取 / 生成答案 |
| “什么依赖于此文件?” | 导入 / 链接知识图谱 |
在无需 API 密钥的情况下工作。可选 OpenAI 或 Ollama 用于嵌入答案。
---
## 快速开始
**要求:** Node 22.5
### 安装
```bash
npmg @ixxrllg/localmind
# 在任何项目中
localmind init
localmind index
localmind ask "在哪里处理身份验证?"
localmind search "jwt 中间件"
localmind status
```
或无需全局安装:
```bash
npx @ixxrllg/localmind init
npx @ixxrllg/localmind index
npx @ixxrllg/localmind ask "在哪里处理身份验证?"
```
### 从源码
```bash
git clone https://github.com/ixxrllg/localmind.git
cd localmind
npm install
npm run build
node dist/bin/localmind.js init --root /path/to/your/project
```
---
## CLI
| 命令 | 描述 |
|---------|-------------|
| `localmind init` | 创建 `.localmind/config.json` + SQLite 数据库 |
| `localmind index` | 遍历代码仓库,分割文件,构建倒排索引(+ 可选嵌入) |
| `localmind index --full` | 强制完全重新索引 |
| `localmind search <查询>` | 排名代码/文档搜索 |
| `localmind ask <问题>` | 带引用的问答 |
| `localmind related <路径>` | 通过导入 / Markdown 链接的文件 |
| `localmind status` | 索引统计 |
| `localmind mcp` | 在 **stdio** 上启动 MCP 服务器 |
| `localmind config` | 显示 / 更新配置 |
全局选项:
```
-r, --root <路径> 项目根目录(默认为当前工作目录)
-q, --quiet
--verbose
```
### 示例
```bash
localmind init --provider ollama
localmind index
localmind search "chunkText 重叠" --mode bm25
localmind ask "如何在索引过程中忽略文件?" --extractive
localmind related src/indexer/indexer.ts
localmind status --json
```
---
## MCP(Cursor / Claude Code / 代理)
```bash
localmind mcp --root /path/to/your/project
```
MCP 配置示例(Cursor / Claude Desktop):
```json
{
"mcpServers": {
"localmind": {
"command": "node",
"args": [
"/absolute/path/to/localmind/dist/bin/localmind.js",
"mcp",
"--root",
"/absolute/path/to/your/project"
]
}
}
}
```
> 将路径替换为您的 [ixxrllg/localmind](https://github.com/ixxrllg/localmind) 克隆和您要索引的项目。
### 工具
| 工具 | 用途 |
|------|---------|
| `search_code` | 索引上的语义/词法搜索 |
| `ask_codebase` | 带引用的问题回答 |
| `find_related_files` | 路径的图邻域 |
| `explain_file` | 转储文件的索引块 / 行范围 |
| `index_status` | 统计信息 |
| `reindex` | 增量或完全重新索引 |
---
## 工作原理
```
您的代码仓库
│
▼
遍历器 + 忽略规则(.gitignore,默认值)
│
▼
行感知分割器 ──► SQLite
│ ├─ 文件 / 块
│ ├─ BM25 倒排索引(术语 + 发布)
│ ├─ 导入/链接边
│ └─ 可选嵌入
▼
搜索(BM25 / 向量 / 混合) ──► 提问(提取或 LLM)
│
▼
CLI · MCP · 库 API
```
- **存储:** `.localmind/localmind.db`(Node.js 内置 `node:sqlite`)
- **默认搜索:** BM25(无网络,无模型)
- **可选:** OpenAI / Ollama 嵌入 + 聊天
`.localmind/config.json`(由 `init` 创建):
```json
{
"version": 1,
provider": "none",
include": [],
"exclude": [],
"maxFileBytes": 524288,
Size": 1200 "chunkOverlap": 150 "incremental": true```
### 环境(可选)
参见 `.env.example`:
| 变量 | 角色 |
|----------|------|
| `OPENAI_API_KEY` | 嵌入 + 生成答案 |
| `OPENAI_BASE_URL` | 兼容网关 |
| `OPENAI_MODEL` | 聊天模型(默认 `gpt-4o-mini`) |
| `OPENBEDDING_MODEL` | 默认 `text-embedding-` |
| `OLL_URL` | 默认 `http://127.0.0:11434` |
| `OLLAMA_MODEL` / `OLLAMA_EMBEDDING_MODEL地模型 |
```bash
localmind config --provider openai
# 或
localmind config --provider ollama
```
---
## 库 API
```ts
import {
initConfig,
loadConfig,
runIndex,
openDb,
closeDb,
search,
ask,
} from "@ixxrllg/localmind";
const { config } = initConfig({ root: process.cwd() });
await runIndex(config, { full: true });
const db = openDb(config.root);
const hits = await search(db, "身份验证中间件");
const answer = await ask(db, config, "身份验证如何工作?");
closeDb(db);
```
---
## 开发
```bash
npm install
npm run build
npm test
npm run dev -- init
npm run dev -- index
npm run dev -- ask "什么是本地思维?"
```
要求:
- **Node.js ≥ 22.5**(使用内置 `node:sqlite`)
---
## 项目布局
```
src/
bin/localmind.ts CLI 入口
cli/ Commander 程序 + 格式化
core/ 配置,路径,SQLite
indexer/ 遍历,分割,关系,索引管道
search/ 分词,BM25,嵌入,混合
ask/ 提取 + 生成式问答
graph/ 相关文件
mcp/ MCP 服务器 + 工具
index.ts 公共导出
tests/ 单元测试 + 集成测试
```
---
## 路线图
- [ ] 文件监视器 / 实时重新索引
- [ ] Tree-sitter 感知分割
- [ ] sqlite-vec 加速
- [ ] 探索的 Web UI
- [ ] 多代码仓库工作区
---
## 贡献
参见 [CONTRIBUTING.md](CONTRIBUTING.md)。欢迎提出问题和 PR。
## 许可证
MIT — 参见 [LICENSE](LICENSE)。
## 作者
由 [@ixxrllg](https://github.com/ixxrllg) 维护。
---
<p align="center">
<b>如果本地思维为您节省了上下文切换,请给这个仓库点个 ⭐。</b><br/>
为代理构建。对人类也很有用。
</p>