dsh-TableRAG
September 2, 2026 · View on GitHub
English | 中文
dsh-TableRAG 把一个已经构建的 TableRAG 目录连接到 DeepSeek Harness profile。DSH 通过随附的 MCP client 启动本地只读 TableRAG stdio server,并把目录工具暴露为 mcp__tablerag__<tool>。
这个 bundle 不包含表格、项目 YAML、DuckDB 数据库、凭据或 Python 运行时。TableRAG 继续负责索引、来源证据和只读查询行为。
前置条件
- 安装 DeepSeek Harness。
- 安装 TableRAG,创建项目 YAML 并完成索引构建。
- 准备项目 YAML 的绝对路径,以及启动 DSH 的 PowerShell 进程能够访问的
table-rag可执行文件。
TableRAG 仓库提供项目配置和索引构建说明。使用源码 checkout 时,常用构建命令为:
uv sync --extra dev --locked
uv run table-rag build --project projects\my-project.local.yaml
从 GitHub 安装
在即将启动 DSH 的同一个 PowerShell 进程中设置目录路径。table-rag 不在 PATH 时还要设置 TABLERAG_EXECUTABLE:
$env:TABLERAG_PROJECT = 'C:\path\to\TableRAG\projects\my-project.local.yaml'
$env:TABLERAG_EXECUTABLE = 'C:\path\to\TableRAG\.venv\Scripts\table-rag.exe'
dsh plugin --profile web add github:BitDG/dsh-TableRAG
dsh --profile web --dump-config
dsh --profile web
--dump-config 必须显示 mcp-tablerag 配置项。缺少项目变量、执行文件无效、索引不存在或 MCP 发现失败时,插件激活会直接失败,不会发布一个空的 TableRAG 连接。
移除 bundle:
dsh plugin --profile web remove dsh-tablerag
可以换用其他 profile 名称,让这条连接不影响无关会话。只有 MCP 子进程必须从项目 YAML 所在目录之外启动时,才需要设置可选的 TABLERAG_CWD。
模型获得的能力
DSH MCP client 会发现 TableRAG 工具,并注册以下稳定名称:
mcp__tablerag__get_projectmcp__tablerag__find_tablesmcp__tablerag__search_knowledgemcp__tablerag__get_record
调用与受限结果经过 DSH 的普通工具执行流程和会话日志。验收部署时应调用 mcp__tablerag__get_project,并核对返回的项目身份和目录统计。
工作原理
cordis.patch.yml 插入一条 @deepseek-ai/dsh-mcp-client 配置:
TABLERAG_PROJECT选择项目 YAML 和目录。TABLERAG_EXECUTABLE选择 TableRAG 控制台程序,默认使用PATH中的table-rag。TABLERAG_CWD可以覆盖子进程工作目录。serverName: tablerag让模型工具名和权限规则在重启后保持稳定。failOnStartupError: true防止 DSH 在没有 TableRAG 工具时静默启动。
所选 DSH profile 拥有连接生命周期和重连行为。TableRAG 继续拥有表格发现、索引构建、DuckDB 访问、来源证据和只读查询语义。
限制
- 一个 bundle 实例在固定的
tableragnamespace 下连接一个项目 YAML。一个 DSH 进程需要暴露另一个目录时,应增加一条使用不同名称的 profile 配置。 - DSH 只消费 MCP tools,不桥接可选的
tablerag://catalogMCP resource;等价的项目和表信息可以通过工具读取。 - 环境变量属于启动进程。需要跨 shell 持久保存路径时,使用可信的本地启动脚本或明确覆盖 profile 配置项。不要提交本机路径或凭据。
- 这个 bundle 不安装 TableRAG、不构建索引,也不修改源表。
开发验证
npm test
npm run pack:check
从本地 checkout 安装:
dsh plugin --profile web add 'file:C:/path/to/dsh-TableRAG'
采用 Apache-2.0 许可证。