PI

pyini-ini/skeletonkey_v2-toolforge_tools_mcp

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

1 stars 0 forks 质量 81 趋势 16Apache-2.0

Dime的定制工具包

概览

一个自适应工具集 + 技能 + MCP 服务器,构建于:动态工具调度、三种 shell 方言(bash、PowerShell、python)、带有日志和撤销功能的沙盒文件系统,以及保持上下文窗口完整的预算。 阶段0和阶段1已实施;P2至P7的路线图已在 PLAN.md。 用MCP Extra安装,布线连接所有检测到的主机,并验证——三个命令: SK Wire --Project 会丢弃 project-scope 配置(.mcp.json、.cursor/mcp.json、.vscode/mcp.json),沙盒固定在项目上;SK Wire --Only 只暴露只读表面;SK Wire --remove 会完全收回它写的内容。更喜欢 URL?SK MCP --transport Streamable-http --port 8765 为任何 Streamable-HTTP 客户端提供相同工具包,SK Wire --transport Streamable-HTTP 指向支持 URL 的主机。每个主机的节、医生的模式和故障排除表都存放在 docs/CONNECT-A-HOST.md。 107辆注册,105辆广告,~8辆。

概述(AI 翻译)

Dime的定制工具包

一个为自动驾驶和自主代理打造的自适应工具集+技能+MCP服务器: 动态工具调度,三种shell方言(bash、PowerShell、python),一个沙箱化的 文件系统支持日志和撤销功能,预算保持上下文窗口完整。

阶段0和阶段1已实现;P2–P7的路线图为PLAN.md。

把它放进任何项目

用MCP Extra安装,布线连接所有检测到的主机,并验证——三个命令:

sk wire --project 丢弃项目范围配置(.mcp.json, .cursor/mcp.json, .vscode/mcp.json)当沙盒钉在项目上时;sk wire --read-only 暴露 只有只读的表面;sk wire --remove 会完全取回它写入的内容。更倾向于 URL?[sk mcp --transport streamable-http --port 8765 为任何用户提供相同的工具包 streamable-http客户端,并且sk wire --transport streamable-http指向支持URL。 主持人在其中。每个主持人段落、医生的模式和故障排除表实时存在 docs/CONNECT-A-HOST.md。

两种驾驶方式

这里有什么

组 工具 注释
‘fs’。

本页由 AI 翻译,技术细节请以原文为准。

README

以下为原文 README 节选,完整内容请查看原文。

SkeletonKey & ToolForge v2 — MCP

Dime’s Custom Toolkit

An adaptive toolset + skills + MCP server built for autopilot and autonomous agents: dynamic tool dispatch, three shell dialects (bash, PowerShell, python), a sandboxed filesystem with journal-and-undo, and budgets that keep the context window intact.

Phase 0 and Phase 1 are implemented; the roadmap for P2–P7 is PLAN.md.

pip install -e .            # core has zero mandatory dependencies (ADR-0001)
pip install -e ".[mcp,dev]" # + MCP server + pytest/ruff
                            # install with -e: some tests shell out to `sk`
                            # see CONTRIBUTING.md if the suite is not green

Drop it into any project

Install with the MCP extra, wire every detected host, and prove it — three commands:

$ pip install "skeletonkey-toolforge[mcp]"     # or pipx; the core alone has zero deps
$ sk wire                                      # writes the mcpServers entry into every
                                               # detected host (merge, backup, idempotent)
$ sk doctor                                    # live end-to-end proof: starts the real
                                               # server, lists tools, calls fs.stat

sk wire --project drops project-scope configs (.mcp.json, .cursor/mcp.json, .vscode/mcp.json) with the sandbox pinned to the project; sk wire --read-only exposes only the read-only surface; sk wire --remove takes back exactly what it wrote. Prefer a URL? sk mcp --transport streamable-http --port 8765 serves the same toolkit to any streamable-http client, and sk wire --transport streamable-http points URL-capable hosts at it. Per-host stanzas, the doctor’s schema and the troubleshooting table live in docs/CONNECT-A-HOST.md.

Two ways to drive it

sk profile                      # what can this host actually run, with probe receipts
sk tools search "rename a symbol across the repo"
sk call fs.patch '{"path":"src/app.py","edits":[{"old_text":"x = 1","new_text":"x = 2"}]}'
sk shell "Get-Process | Select-Object -First 3" --dialect pwsh   # one protocol, any dialect
sk fs undo-task turn-7          # retract everything one turn touched
sk call shell.quote '{"args":["/tmp/a b","$HOME"],"dialect":"pwsh"}'   # literal tokens per dialect
// mcpServers entry for any stdio client
{ "mcpServers": { "skeletonkey": { "command": "python", "args": ["-m", "skeletonkey.mcp"] } } }
from skeletonkey.toolkit import build
tk = build()
tk.engine.call("fs.search", {"pattern": "TODO", "path": "src"})
tk.engine.advertise()          # the tool list a host is allowed to see, with a digest
tk.skills.context_block("fix the flaky windows path test")
tk.engine.call("shell.run", {"script": 'printf "[%s]" "$@"', "dialect": "bash",
                             "argv": ["a b", "it's", "$HOME"]})   # argv never meets a shell

What is here

在 GitHub 查看完整 README

安装

This server does not publish a one-line install command.

Open the repository installation guide 新手?先看 mcpskill.org 教程 →

配置

// mcpServers entry for any stdio client { "mcpServers": { "skeletonkey": { "command": "python", "args": ["-m", "skeletonkey.mcp"] } } }