Rust CLI · MCP Server · Agent Skill

ToolScout 工具优先门卫。

AI Agent 很容易在本来应该调用成熟工具的时候,顺手写一段临时代码。ToolScout 的目标很简单:在 Agent 重复造轮子之前,先检查本机已有工具、候选工具和历史经验。

01 / Why

它不是为了多一个工具,而是为了少写不必要的代码。

pre-code gate

写代码前触发

只在即将用临时代码重做通用本地操作时触发,例如文档转换、图片处理、JSON 提取、压缩、搜索等。

tool first

成熟工具优先

先查询 registry,再检测本机是否有 pandoc、jq、ffmpeg、magick、rg 等候选工具。

memory last

经验可复用但不越权

tool-memory 只保存工具经验,不是企业知识库,也不能被提升为高权威记忆。

02 / Architecture

三层设计:规则、运行时、共享工具记忆。

ToolScout 包含什么

  • SKILL.md:Agent 如何触发、何时不触发的唯一规则源。
  • Rust runtime core:提供 CLI、MCP、registry 查询、工具检测和诊断。
  • shared tool-memory:默认保存在 ~/.config/toolscout/tool-memory,记录实际验证过的工具经验。

ToolScout 不做什么

  • 不代替 Agent 执行危险命令。
  • 不自动安装软件。
  • 不修改用户业务文件。
  • 不维护第二份高权威规则。
  • 不把 tool-memory 当成 Vault / 企业知识权威。
03 / Flow

Agent 工作流:先判断,再行动。

ToolScout workflow and architecture diagram
04 / Decisions

输出不是“必须用工具”,而是给 Agent 一个明确行动建议。

01

use_existing_tool

本机已有成熟工具,优先使用它,而不是写临时代码。

02

verify_recalled_recipe

历史经验里有可复用命令,但需要重新检测工具仍然存在、命令仍然有效。

03

tool_known_but_missing

存在合适工具但本机缺失,Agent 应使用 fallback,或在获得许可后安装。

04

write_code_allowed

没有合适成熟工具,或者任务本身需要自定义逻辑,才允许写代码。

05 / Install

macOS 快速安装;Linux 可从源码构建。

curl -sL https://github.com/licat233/toolscout/releases/download/v1.0.1/toolscout-universal-apple-darwin.tar.gz | tar xz
mv toolscout-universal /usr/local/bin/toolscout

toolscout memory init --json
toolscout doctor

toolscout advise --task 'extract text from a docx file' --intent avoid_custom_code --category document --json
06 / Agents

面向 Codex、Claude Code 和 Hermes Agent 的统一工具优先规则。

关键边界:不要在任务开始时默认运行 ToolScout。只有当 Agent 即将写临时代码去重做通用本地操作,或准备为这类操作安装依赖时,才触发 ToolScout。普通聊天、方案讨论、代码阅读、代码审查、仓库检查、正常软件开发,不应该触发。
GitHub

让 Agent 少造轮子,多用成熟工具。

项目源码、安装教程、MCP 集成示例和完整规则都在 GitHub 仓库中维护。

打开仓库 ↗