Token导航 LogoToken导航TokenDH.com
RLM Tools logo
开发工具stdio官方级别未说明来源级核验

RLM Tools

MCP Server

RLM Tools是一款AI代码代理工具,通过服务器端沙盒减少上下文消耗,提升代码探索效率。

工具数

3

提示词数

0

GitHub Stars

7

资源数

0
PythonClaude开发工具ClaudeWindsurf

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

stefanoshea

提供方

stefanoshea

最后核验

2026/5/17 20:51

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uvx rlm-tools

详细介绍

RLM工具

您的AI编码代理仅将其大部分代币预算用于 *阅读* 你的代码——而不是推理。每个grep、文件读取和glob结果都会被转储到对话中。在大型代码库中,这相当于模型永远不需要看到的原始数据上消耗了25-35%的上下文(和成本)。

RLM Tools为您的代理提供了一个持久的沙盒来探索其中的代码。数据保持在服务器端。只有结论才会回来。

# Install in one line (Claude Code)
claude mcp add rlm-tools -- uvx rlm-tools

# Or Codex
codex mcp add rlm-tools -- uvx rlm-tools

就是这样。你的代理会自动使用沙盒进行探索。无配置,无提示更改。

改变

没有RLM工具 --代理greps import UIKit,将500个匹配项转储到上下文中。读取10个文件,将其所有内容作为令牌刻录。上下文窗口已满。特工忘记了自己在做什么。

使用RLM工具 --代理在服务器端Python沙箱中运行相同的探索。数据保留在沙盒内存中。唯有 print() 输出进入上下文:

matches = grep("import UIKit")
by_module = {}
for m in matches:
    module = m["file"].split("/")[0]
    by_module.setdefault(module, []).append(m)
for module, ms in sorted(by_module.items(), key=lambda x: -len(x[1]))[:5]:
    print(f"{module}: {len(ms)} files")

500行grep结果变成了5行摘要。代理人看到了它需要什么,仅此而已。

现实世界影响

在典型的编码工作流程中: 上下文减少25-35%。 这意味着您的代理可以在达到上下文限制之前探索大约40-50%的代码。

在繁重的探索任务中(读取许多文件、进行广泛搜索),节省的成本要高得多:

场景标准工具RLM工具已保存
在整个应用程序中快速浏览40045个字符1644个字符95.9%
读取10个大文件1493720个字符13588个字符99.1%
多步探索136102个字符5285个字符96.1%
然后读取匹配项340408个字符6022个字符98.2%
查找模式的所有用法13478个字符3691个字符72.6%
理解一个模块94745个字符16925个字符82.1%

完整的基准方法和复制步骤: docs/benchmarks.md

运作原理

三个MCP工具。这就是整个API:

工具目的
rlm_start(path, query)在目录中打开会话
rlm_execute(session_id, code)在沙盒中运行Python
rlm_end(session_id)关闭会话,免费资源

沙盒提供了内置的助手:

  • read_file(path) / read_files(paths) --将文件读入变量(跨调用缓存)
  • grep(pattern) / grep_summary(pattern) / grep_read(pattern) --搜索
  • glob_files(pattern) --按模式查找文件
  • tree(path, max_depth) --目录结构
  • llm_query(prompt, context) -Sub-LLM分析(可选,需要API密钥)

变量持续存在 rlm_execute 会话内的呼叫。代理可以逐步建立理解——搜索、过滤、读取、分析——而无需任何中间数据接触上下文窗口。

兼容

RLM工具是标准配置 主控程序 服务器。它适用于任何兼容MCP的客户端: 克劳德代码, 法典, 光标以及其他。

Other installation methods

JSON MCP配置(游标、Windsurf等)

{
  "mcpServers": {
    "rlm-tools": {
      "command": "uvx",
      "args": ["rlm-tools"]
    }
  }
}

直接运行

uvx rlm-tools

来源

git clone https://github.com/stefanoshea/rlm-tools.git
cd rlm-tools
uv sync
uv run rlm-tools

然后将您的MCP客户端指向 command: uv, args: ["--directory", "/path/to/rlm-tools", "run", "rlm-tools"].

配置

复制 .env.example.env 定制。所有设置都是可选的——RLM工具可以在零配置的情况下开箱即用。

核心探索功能(read、grep、glob、tree)不需要API密钥。可选 llm_query() 助手调用Anthropic API在沙箱中进行语义分析-这是唯一需要密钥的功能。

变量默认值描述
ANTHROPIC_API_KEY--必需 llm_query() 只有。使用Anthropic的API(Claude)。
RLM_SUB_MODELclaude-haiku-4-5-20251001克劳德模型用于 llm_query()
RLM_MAX_SESSIONS5最大并发会话数
RLM_SESSION_TIMEOUT10会话超时(分钟)

安全

沙盒是只读和受限的:

  • 进口:仅安全的stdlib(re、json、集合、数学等)
  • 内置:块exec、eval、compile、, __import__,断点
  • 文件访问:只读,作用域为会话目录,路径遍历被阻止
  • 执行:可配置每次呼叫超时(默认30秒)
  • 费率限制:每个会话可配置的最大呼叫数

背景

RLM工具实现了 RLM风格 探索循环:将原始数据保存在工具端内存中,只向模型发送压缩输出。建立在 模型上下文协议.

发展

git clone https://github.com/stefanoshea/rlm-tools.git
cd rlm-tools
uv sync --dev
pytest tests

运行比较基准测试(需要本地项目检查):

RLM_EVAL_PROJECT_PATH=/path/to/project pytest evals -q -s

许可证

麻省理工学院

目录标签

目录标签

PythonClaude开发工具AI代码代理本地部署代码探索上下文优化沙盒环境

支持客户端

ClaudeWindsurf

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP