Claudex
为 Claude Code 提供可搜索的会话档案与跨会话持久记忆。
按维度查看评分与理由
证据显示 Docker 部署使用非 root 用户并将 Claude 项目目录只读挂载,默认作用范围也可通过 PROJECT_ROOT 配置;但原生运行会扫描包含私密对话的目录,并写入本地数据库,未见更细粒度的目录、会话或字段权限控制,因此 least_privilege 为 2。索引重建、清除和导出是显式操作,MCP 记忆 CRUD 也属于具名工具调用,但没有首次扫描同意、敏感操作确认或删除保护说明,因此 user_confirmation 为 1。README 清楚描述数据来源、SQLite 索引、端口、卷、API 与导出路径,但没有完整的数据生命周期、网络暴露和保留说明,因此 data_flow_transparency 为 2。未见凭据窃取或隐蔽外传证据;不过对话可能含密钥、源码和个人数据,材料没有认证、访问控制、加密、脱敏或秘密过滤措施,因此 sensitive_data_handling 为 1。依赖和运行要求被列出,但使用宽松版本范围,且没有锁文件、漏洞扫描、SBOM 或依赖更新政策证据,因此 dependency_security 为 1。外部效果主要是本地读取、建库、记忆写入、索引清除和导出,且基本有文档,但网页服务可绑定 0.0.0.0 的暴露影响未充分讨论,因此 external_effects 为 2。可以清除或重建索引,也能停止 Docker,但未说明记忆数据备份、事务恢复或误删恢复,因此 rollback 为 1。仓库、作者、问题渠道和 MIT 版权归属明确,但作者邮箱看似占位符且发布者身份未经企业注册表验证,所以 source_attribution 为 2;未知身份本身未被视为可疑。
README、项目结构和 package.json 对 CLI、MCP 二进制、版本及用途大体一致,因此 self_consistency 为 2;扣分点是 README 主推 1.3.0 而包版本为 1.3.4,并残留 claude-viewer 目录名等旧命名。Node.js 18+、npm、Claude Code 历史、端口和安装流程都有说明,系统检查器声称会检查依赖、权限、JSONL 和数据库,因此 dependency_availability 为 2;但没有锁文件或材料内的兼容性矩阵可证明完全可复现。故障排查覆盖无项目、搜索失效、端口、权限及依赖问题,并给出诊断命令,因此 failure_messages 为 2;但所给材料没有展示 MCP 工具自身的错误结构或失败响应。
开发者、QA、研究人员以及浏览、检索、分析、导出和持久记忆场景均被明确描述,并提供多种使用路径,因此 audience_and_scenarios 为 3。功能、API、10 个 MCP 工具的类别、3 个提示、索引要求和路线图边界都有说明,但未列出每个 MCP 工具的完整输入、输出和禁止行为,因此 capability_boundaries 为 2。索引重建时机和 MCP 安装命令较明确,工具通过显式 MCP 调用而非隐式后台触发;不过具体工具触发条件和记忆写入策略未展示,所以 trigger_precision 为 2。支持 npm、源码、Docker、自定义端口和项目目录,并列出 Linux/macOS、WSL2 路径;但没有证明原生 Windows、不同 SQLite/Node 组合或非 Claude Code 数据源的兼容性,因此 environment_fit 为 2。
README 的快速开始、配置、结构、格式、搜索、API、开发、排障和部署层次完整,information_architecture 为 3。npm、npx、源码、MCP、Docker和生产安装均有可执行说明,故 install_notes 为 3。CLI 和包名较稳定,但 claude-viewer 遗留名称、README 的 1.3.0 标题与 1.3.4 包版本造成轻微漂移,因此 naming_stability 为 2。搜索、API、Docker、模板扩展示例以及常见问题丰富,examples_and_faq 为 3。索引需手动重建、设置项尚未完成和路线图有所披露,但隐私、安全、规模上限、并发与 MCP 兼容限制没有集中说明,因此 known_limitations 为 2。LICENSE 含完整 MIT 文本且 package.json 一致,license 为 3。README 提供带日期的多版本摘要和完整 changelog 路径,versioning_changelog 为 3。作者、仓库、Issues、Discussions 和贡献流程明确,但没有维护团队、支持承诺、发布签名或安全报告渠道,且发布者身份未经验证,因此 maintenance_responsibility 为 2。
网页提供对话渲染、过滤搜索、分析仪表板和 JSON/HTML/TXT 导出,MCP 提供分级细节和结构化记忆,产出可直接用于浏览或代理上下文,因此 output_usability 为 3。将分散的 Claude Code JSONL 历史统一索引并通过网页和 MCP 暴露,较手工查找有明确增量价值,因此 marginal_value 为 3。软件为 MIT 且本地部署,但首次安装、三套依赖、索引维护、SQLite 存储和隐私保护均带来运维成本;材料也未量化资源消耗,所以 cost_benefit 为 2。
功能声明多数可对应到所列目录、脚本、端点、二进制和配置,故 claim_traceability 为 2;但“enterprise-grade”“121x faster”“universal”等较强声明在所给材料中没有基准、测试结果或方法。README 与 package.json 对名称、用途、MCP 二进制、许可证和版本系列相互印证,LICENSE 也确认 MIT,因此 cross_source_corroboration 为 2;所给证据仅三份文件,且没有锁文件、实现源码或测试内容支持更全面交叉验证。营销性描述与可核查事实混杂,性能及全面兼容性声明没有清晰标注为主张或推断,因此 fact_inference_separation 为 1。
- Claude Code 对话可能包含 API 密钥、源码、个人信息和内部决策;在将 Claudex 绑定到非本机接口或多人环境前,应增加认证、网络访问限制、脱敏和保留策略。
- MCP 结构化记忆具有写入、更新和删除效果;在缺少确认与恢复说明的情况下,应先备份数据库并限制可调用的写工具。
- 所给材料没有锁文件、依赖审计、SBOM 或安全更新政策;部署前应固定依赖并执行独立漏洞检查。
- “121x faster”“enterprise-grade”和全面格式兼容性属于未由所给静态证据充分支持的声明,不应视为已验证结果。
- 发布者身份未经 FollowAgents 企业注册表验证;这表示维护身份未知,而非存在恶意证据。
这个 Agent 能做什么,适合哪些场景?
Claudex 是面向 Claude Code 的本地全栈会话查看、搜索和记忆系统。后端使用 Fastify 扫描 ~/.claude/projects 中的 JSONL 会话,通过 SQLite FTS5 建立索引,并提供项目、会话、搜索和导出 API。React 前端用于浏览对话、查看分析数据、收藏会话,并以代码高亮、Markdown、差异和 JSON 等形式呈现内容。它还包含一个基于标准输入输出运行的 MCP 服务器,向 Claude Code 提供 10 个工具、3 个提示词以及带优先级、置信度和 TTL 的结构化记忆。产品可通过 npm、本地源码或 Docker 自托管;生产环境由 Fastify 在默认 3400 端口同时提供 API 和已构建的前端。
Claudex 的 fileScanner.js 从 PROJECT_ROOT(默认 ~/.claude/projects)发现项目和会话,templateDetector.js 与 messageParser.js 自动识别并解析 V1、V2-Mixed 和 V3 格式。searchIndexer.js 将会话内容写入 SQLite FTS5 索引,searchDatabase.js 支持按项目、会话、角色、日期范围和内容查询,并返回高亮结果。Web 界面通过 ProjectSelector.jsx、SessionList.jsx、ConversationThread.jsx、ClaudeMessageRenderer.jsx 和 SearchPage.jsx 展示会话、工具使用、文件操作与统计图表。Fastify 提供 /api/projects、/api/search、/api/search/index/build、/api/search/index/status、/api/export/session/:projectId/:sessionId 和 /api/health 等端点,可将单次会话输出为 JSON、HTML 或 TXT。MCP 入口通过 stdio 接入 Claude Code,提供项目上下文、会话搜索、对话读取和结构化记忆 CRUD,并支持 minimal、standard、full 三档上下文细节。
- 使用 Claude Code 处理多个代码库的开发者,需要从所有本地项目中查找过去讨论过的迁移方案、命令或实现细节。
- 希望让 Claude Code 在新会话中继续遵循既有架构决策、编码约定和已知错误处理方式的团队。
- QA 工程师需要检查完整会话、工具调用和文件操作,并将相关记录导出为 JSON、HTML 或 TXT。
- 研究人员需要按角色、项目、日期和内容检索 Claude Code 历史,并通过分析仪表板观察消息分布和会话统计。
- 需要在本机或自管服务器上集中浏览 Claude Code 会话,同时保持项目目录只读挂载的用户。
- 维护不同 Claude Code 历史格式的用户,需要自动处理 V1、V2-Mixed、V3 以及迁移期间的混合记录。
这个 Agent 有哪些优点和局限?
- 将 Web 会话查看器、SQLite FTS5 全文搜索和 Claude Code MCP 持久记忆整合在同一套本地应用中。
- 明确支持 V1、V2-Mixed、V3 和混合迁移状态,可降低 Claude Code 历史格式变化带来的读取问题。
- 搜索可按项目、会话、角色和日期过滤,并提供内容高亮,而不只是逐文件浏览 JSONL。
- 结构化记忆带有 1–10 优先级、置信度和 TTL,并提供三档细节级别控制上下文量。
- 支持 npm、源码和多架构 Docker 部署;Docker 配置将 Claude 项目目录只读挂载,并包含健康检查和日志轮转。
- 支持 JSON、HTML、TXT 三种导出格式,并提供可脚本化的 HTTP API。
- 核心数据源和 MCP 集成都专用于 Claude Code;没有文档证明可直接读取其他助手的会话或连接其他模型平台。
- 全文搜索不是实时更新:首次使用及新增会话后需要手动重建索引,WebSocket 实时更新仍在路线图中。
- 本地运行需要 Node.js 18+、npm、可读取的 Claude Code 项目文件以及可写的 SQLite 数据目录。
- 默认开发模式占用前端 3000 和后端 3400 两个端口,端口冲突或文件权限问题需要额外处理。
- 令牌成本计算器和自定义解析器插件系统尚未完成。
- 结构化记忆会形成额外的本地数据库状态;来源只说明了持久卷,但未给出备份、迁移或多用户同步机制。
如何安装或部署这个 Agent?
前提是安装 Node.js 18+、npm 和 Claude Code,并确保 ~/.claude/projects 中已有会话历史。推荐安装:
npm install -g @kunwarshah/claudexclaudex
随后在浏览器访问默认服务;也可使用 npx @kunwarshah/claudex,或用 claudex --port 3500、claudex --project-root ~/my-claude-projects 调整端口和数据目录。启用持久记忆 MCP 集成:
claude mcp add --transport stdio claudex -- claudex-mcp首次搜索前需要在搜索页点击“Rebuild Index”,或执行:
curl -X POST http://localhost:3400/api/search/index/build源码安装可运行 git clone https://github.com/kunwar-shah/claudex.git,进入目录后依次执行 npm install、server 和 client 目录中的 npm install,再运行 npm run dev。README 未要求 API 密钥或云服务凭据。
如何使用这个 Agent?
运行 claudex 后,使用 Web 界面选择项目和会话、浏览消息、查看分析结果或进入搜索页重建索引。命令行可检查服务与索引:
curl http://localhost:3400/api/health
curl http://localhost:3400/api/search/index/status执行全文检索:
curl -X POST http://localhost:3400/api/search -H "Content-Type: application/json" -d '{"q":"database","projectId":"my-project","role":"user","limit":20,"offset":0}'会话可通过 /api/export/session/:projectId/:sessionId?format=json 导出,并可将 format 改为 html 或 txt。新增会话后应通过 UI 或 POST /api/search/index/build 重建索引。完成 MCP 注册后,Claude Code 可通过该 MCP 服务器访问历史上下文和结构化记忆;/recall、/catchup、/history 是文档列出的三个快捷提示词。