佐藤宫雄
miyo satori是一个MCP网关服务器,它在捕获会话上下文的同时将工具调用路由到下游MCP服务器。它位于Claude Code和MCP服务器之间,将活动记录到本地SQLite数据库中,并为上下文检索、工具发现和模式检查提供工具。
快速启动
无需安装——将以下条目添加到MCP配置中 npx 将根据需要取回并运行satori。
MCP配置
将以下内容添加到您的Claude代码设置中(.claude/settings.json 或 ~/.claude/settings.json):
{
"mcpServers": {
"satori": {
"command": "npx",
"args": ["-y", "miyo-satori"]
}
}
}第一次启动会下载并缓存该包;随后的发射立即开始。
本地开发
如果您正在处理satori本身,请克隆repo并将MCP配置指向构建文件:
git clone https://github.com/MMoMM-org/miyo-satori.git
cd miyo-satori
npm install && npm run build{
"mcpServers": {
"satori": {
"command": "node",
"args": ["/absolute/path/to/miyo-satori/dist/src/index.js"]
}
}
}配置:satori.toml
Satori合并了三个级别的配置(全局→ 项目→ 回购)。创建一个 satori.toml 在repo根目录(或 ~/.satori/config.toml 对于全局默认值)。看 satori.toml.example 对于所有带有注释的可用字段。
Satori写的每一行都被标记为 client (默认为 basename(repoRoot))从而共享一个存储位置的两个存储库保持隔离。覆盖 --client 在MCP中 args,或与 [context] client = "..." 在 satori.toml。参见 docs/configuration.md 和 docs/concepts.md 对于全租户模式。
工具
| 工具 | 说明 |
|---|---|
satori_context | 检索当前会话快照——活动文件、任务状态、决策和最近的MCP工具调用 |
satori_manage | 启动、停止或检查下游服务器状态;在运行时注册服务器 |
satori_find | 按关键字在所有注册的服务器上搜索工具目录 |
satori_schema | 获取特定服务器上特定工具的完整输入模式 |
satori_exec | 将工具调用路由到下游服务器;如果服务器未运行,则启动服务器 |
satori_kb | 知识库搜索(索引/搜索/fetch_and_index) |
注:bash是一个内置的代码执行工具(未作为单独的MCP工具列出——直接用作satori_exec("bash", ...))
文档
docs/getting-started.md--设置和第一次工具调用docs/concepts.md--架构:网关、上下文数据库、知识库docs/configuration.md--所有satori.toml字段和服务器配置docs/tools.md-完整工具API参考docs/hooks.md--Claude Code挂钩被动上下文捕获设置
挂钩设置
Satori附带了捕获文件活动、git操作和其他会话事件的Claude Code钩子。这 miyo-satori install-hooks 子命令将它们注册到Claude代码中 settings.json 为你。
为了在satori更新中获得稳定的挂钩路径,请全局安装satori,这样安装路径就不会移动:
npm install -g miyo-satori
miyo-satori install-hooks这将在中注册挂钩条目 /.claude/settings.json 如果存在,否则 ~/.claude/settings.json.用覆盖目标 --settings 或 SATORI_HOOKS_SETTINGS 环境变量。之后重新运行相同的命令 npm install -g miyo-satori@latest 如果全局位置发生移动,则刷新路径。
npx -y miyo-satori install-hooks 也可以工作,但会将路径写入npx缓存目录,该目录在版本升级时会失效。当安装程序检测到此情况时,您将看到一条警告。
使用示例
satori_find("read file")
→ returns: filesystem:read_file
satori_schema("filesystem", "read_file")
→ returns input schema with required "path" parameter
satori_exec("filesystem", "read_file", { "path": "/path/to/file" })
→ routes call to the filesystem server, captures output to context DB发布新版本
发布是通过GitHub Actions自动完成的。推a v* 标签触发一个工作流,该工作流运行类型检查、测试、构建和 npm publish 来源。
git checkout main && git pull
npm version patch # or: minor / major
git push --follow-tags这就是整个释放流程。工作流程在 .github/workflows/release.yml 强制标签匹配 package.json 所以两者不能漂移。
对于预发布标签(例如。 v0.2.0-beta.0)工作流仍在发布;消费者通过以下方式选择加入 npx -y miyo-satori@beta.
