顶针
用于AI编码助手的单个二进制MCP插件。提供FTS5知识库、多语言代码执行、会话持久性和安全实施——所有这些都是进程内的,不需要守护进程。
特性
- MCP服务器 -具有46个原生工具的stdio传输+~80个GitHub API工具+动态插件(执行、搜索、索引、获取、分析、批处理、委派、报告、git、gh、lint、目标、工作空间、共享知识)
- 单一二进制 --每个实例都是独立的;没有守护进程,没有gRPC,没有发现链
- FTS5知识库 --BM25排名搜索,具有5层回退(波特、三元组、模糊、嵌入、TF-IDF)
- 多边形执行器 --11种语言(shell、Python、JS/TS、Go、Rust、Ruby、PHP、Perl、R、Elixir)
- 代码分析 --8个解析器(Go、Python、Rust、TypeScript、Protobuf、Shell、C、Java)、符号提取、跨语言调用图
- Git集成 --13个git MCP工具(状态、差异、日志、责备、分支、隐藏、提交、更改日志、合并、重基、冲突、validate_branch、lint_mit)+git感知安全策略
- GitHub 集成 -8 gh CLI子流程工具(包括PR模板)+~80通过GitHub-mcp-server导入的GitHub API工具
- Lint集成 --golangci lint v2通过子流程(需要
golangci-lintPATH),自动修复支持 - 插件市场 --从安装社区插件 注册表 (
thimble plugin install docker),或从任何URL/GGitHub路径。基于JSON的工具定义,带有模板命令替换。 - 会话保持 --按项目事件跟踪、简历快照、优先级预算上下文
- 安全 --Bash策略执行、文件路径拒绝globs、shell转义检测、git/gh危险命令阻止
- 9个IDE适配器 --Claude Code、Gemini CLI、VS代码副本、游标、OpenCode、Codex、Kiro、OpenClaw、反重力
- 自动报告 --AI消耗品降价中的医生和统计报告
- OpenTetry跟踪 --跨MCP工具调用的分布式跟踪
安装
步骤1——安装:
# Linux / macOS
curl -fsSL https://raw.githubusercontent.com/inovacc/thimble/main/scripts/install.sh | bash
# Windows (PowerShell)
irm https://raw.githubusercontent.com/inovacc/thimble/main/scripts/install.ps1 | iex步骤2——选择您的IDE:
thimble setup这显示了一个交互式菜单,用于选择您的AI编码助手(Claude Code、Gemini CLI、Cursor等)并自动配置所有内容。
Other install methods
去安装:
go install github.com/inovacc/thimble/cmd/thimble@latestnpm(GitHub包):
echo @inovacc:registry=https://npm.pkg.github.com >> ~/.npmrc
npm install -g @inovacc/thimble预构建二进制文件: 发布
可选外部工具: golangci-lint (用于棉绒工具)和 gh 如果要使用这些功能,必须单独安装CLI(用于gh工具)。如果未在PATH中找到,则两者都会优雅地降级。
快速开始
1.为IDE配置挂钩
# Plugin mode (Claude Code — recommended)
claude --plugin-dir ~/.thimble/plugin
# Or manual setup for other IDEs
thimble setup --client gemini
thimble setup --client cursor2.用作MCP服务器(默认)
# Runs MCP server on stdio (used by IDE hook config)
thimble3.诊断
thimble doctor # Run diagnostic checks
thimble hooklog # View hook interaction logs
thimble hooklog --blocked # Show only blocked hooks命令
| 命令 | 描述 | ||
|---|---|---|---|
| *(默认)* | 在stdio上运行MCP服务器 | ||
| `hook | |||
| ` | 调度挂钩事件(正在处理中,~10ms) | ||
setup --client | 为IDE配置挂钩 | ||
doctor | 运行诊断检查 | ||
| `report [list\ | show\ | delete]` | 管理自动生成的报告 |
upgrade | GitHub发布的自我更新 | ||
lint [--fix] [--fast] | 运行golangci lint | ||
plugin list | 列出已安装的插件及其工具 | ||
plugin install | 从注册表、URL或GitHub路径安装插件 | ||
plugin remove | 删除已安装的插件 | ||
plugin search | 从注册表浏览可用插件 | ||
plugin dir | 显示插件目录路径 | ||
plugin update [name] | 从注册表更新插件(--check 干运行) | ||
hooklog [--blocked] [--clear] | 显示钩子交互日志 | ||
release-notes | 从git changelog生成发行说明 | ||
publish | 提交、标记、推送和监控CI管道 | ||
publish-status | 检查发布/发布管道状态 | ||
version | 打印版本信息 |
MCP工具
原生工具(46)
| 工具 | 说明 |
|---|---|
ctx_execute | 以11种语言执行代码,自动索引输出 |
ctx_execute_file | 通过执行包含文件内容的代码 FILE_CONTENT 变量 |
ctx_index | 将内容编入FTS5知识库 |
ctx_search | 使用5层回退搜索知识库 |
ctx_fetch_and_index | 获取URL,将HTML转换为Markdown,索引 |
ctx_batch_execute | 在一次调用中运行多个命令+搜索查询 |
ctx_stats | 知识库统计 |
ctx_doctor | 健康检查和运行时信息 |
ctx_analyze | 解析代码库,提取符号,索引到知识库中 |
ctx_symbols | 按名称、种类或包查询提取的代码符号 |
ctx_delegate | 提交后台任务以进行异步执行 |
ctx_delegate_status | 检查后台任务进度/结果 |
ctx_delegate_cancel | 取消正在运行的后台任务 |
ctx_delegate_list | 列出所有后台任务及其状态 |
ctx_report_list | 列出自动生成的报告 |
ctx_report_show | 显示特定报告 |
ctx_report_delete | 删除报告 |
ctx_git_status | 回购状态、分支、阶段性/非阶段性变更 |
ctx_git_diff | 与上下文控制、文件过滤不同 |
ctx_git_log | 通过范围过滤提交历史记录 |
ctx_git_blame | 每行归因与提交信息 |
ctx_git_branches | 列出具有上游跟踪功能的分支机构 |
ctx_git_stash | 列出、显示、保存、弹出、删除隐藏 |
ctx_git_commit | 阶段文件,创建带有验证的提交 |
ctx_git_changelog | 常规提交更改日志生成 |
ctx_gh | 运行gh CLI命令 |
ctx_gh_pr_status | 当前分支的拉取请求状态 |
ctx_gh_run_status | GitHub操作工作流运行状态 |
ctx_gh_issue_list | 列出存储库问题 |
ctx_gh_search | 在GitHub上搜索问题、PR和代码 |
ctx_gh_api | 原始GitHub API请求 |
ctx_gh_repo_view | 存储库元数据和信息 |
ctx_gh_pr_template | 获取存储库的PR模板 |
ctx_git_merge | 使用冲突检测合并分支 |
ctx_git_rebase | 使用中止/继续/跳过重新建立基础 |
ctx_git_conflicts | 检测并解决git冲突 |
ctx_git_validate_branch | 验证分支命名约定 |
ctx_git_lint_commit | Lint违反惯例提交消息 |
ctx_lint | 在项目/文件上运行golangci-lint |
ctx_lint_fix | 使用--fix运行golangci-lint进行自动修复 |
ctx_set_goal | 为事件分组设置活动目标标签 |
ctx_clear_goal | 清除活动目标标签 |
ctx_workspace_info | 多项目工作空间检测 |
ctx_session_insights | 会话分析(顶级工具、错误率、持续时间) |
ctx_plugin_conflicts | 检测插件工具名称冲突 |
ctx_upgrade | 自更新顶针二进制文件 |
GitHub API工具(~80)
进口自 github-mcp-server v0.3.0--涵盖问题、PR、repo、操作、代码扫描、Dependabot、讨论、注册表、项目、通知、标签、安全建议、星号、用户/团队和Copilot。需要 GITHUB_PERSONAL_ACCESS_TOKEN.
动态插件工具
从安装社区插件 插件注册表 或任何URL:
# Browse available plugins
thimble plugin search
# Install from registry (by name)
thimble plugin install docker
thimble plugin install kubernetes
thimble plugin install terraform
# Install from GitHub
thimble plugin install github.com/user/repo/my-plugin.json
# Install from URL
thimble plugin install https://example.com/plugin.json
# Manage
thimble plugin list # show installed
thimble plugin update # update all from registry
thimble plugin update docker # update specific plugin
thimble plugin remove docker # uninstall可用的注册表插件:
| 插件 | 工具 | 说明 |
|---|---|---|
| 码头工人 | ctx_docker_ps, ctx_docker_logs, ctx_docker_images, ctx_docker_stats | 集装箱管理 |
| Kubernetes | ctx_k8s_pods, ctx_k8s_logs, ctx_k8s_describe, ctx_k8s_events | 集群操作 |
| 地形改造 | ctx_tf_plan, ctx_tf_state, ctx_tf_output, ctx_tf_validate | 基础设施管理 |
创建自己的插件 --看看 插件创作指南.
发展
task build # Build binary
task test # Run tests
task lint # golangci-lint
task release # GoReleaser (requires git tag)建筑
thimble (single binary)
|
|-- MCP Bridge (stdio) ---- ContentStore (FTS5/SQLite)
| (46 native + ~80 GH) SessionDB (events, snapshots)
| PolyglotExecutor (11 langs)
|-- Hook Dispatcher -------- Security Engine (policies)
| (PreToolUse/PostToolUse) CodeAnalysis (8 parsers)
| TaskDelegate (background)
|-- CLI Commands ----------- GitOps (13 operations)
| (lint, hooklog, doctor) GhCli (subprocess)
| Linter (subprocess)
|-- Plugin System ---------- Report Engine
(hot-reload, registry) OTel Tracing许可证
BSD 3-条款
