Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Capture tool workflows, save typed tools, and replay with human approval. Includes an MCP Apps UI.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
ROUTINEKIT_CONFIG, ROUTINEKIT_HOME你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"routinekit": {
"command": "npx",
"args": [
"-y",
"routinekit",
"mcp"
],
"env": {
"ROUTINEKIT_CONFIG": "your-value",
"ROUTINEKIT_HOME": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add routinekit --env ROUTINEKIT_CONFIG=your-value --env ROUTINEKIT_HOME=your-value -- npx -y routinekit mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"routinekit": {
"command": "npx",
"args": [
"-y",
"routinekit",
"mcp"
],
"env": {
"ROUTINEKIT_CONFIG": "your-value",
"ROUTINEKIT_HOME": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"routinekit": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"routinekit",
"mcp"
],
"env": {
"ROUTINEKIT_CONFIG": "your-value",
"ROUTINEKIT_HOME": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
ROUTINEKIT_CONFIG envROUTINEKIT_HOME env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 sjh9714 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.2.0)于2个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Kanal Varna — drains, leaks & plumbing (Varna, BG)
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Drain unblocking, leak detection & plumbing in Varna, Bulgaria: services, prices, areas, contact
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Your agent did it once. Make it a tool you can run again.
RoutineKit turns successful, explicitly selected tool calls into reviewed, parameterized, executable routines. Change the inputs, check the live tools, approve the run, and replay without asking a model to reconstruct each step.
*A scripted capture/replay tutorial through the official filesystem MCP server: a new file path, new content, and a read-back success check. Watch the recording.*
Start in DeepSeek Harness (DSH), or use the standalone workbench and MCP server with native WebMCP pages. Export a routine with a companion SKILL.md for another agent to discover and run.
v0.2 preview. Connect an explicitly configured local MCP server, capture its calls, Save as Tool, and reuse typed inputs. The workbench also runs as an MCP App in compatible hosts. This is a deterministic runner for reviewed linear workflows, not a general computer-use agent or OS sandbox.
Requires Node 22.19+. Native WebMCP additionally needs a current Chrome/Edge or Playwright Chromium. Tested locally with Chromium 151 and Chrome 152; browser APIs are experimental and may change. Local MCP file workflows do not require a WebMCP-capable browser.
npx routinekit doctor
npx routinekit demo
The demo opens a local workbench beside a real browser playground. A disclosed scripted tutorial, not an LLM, has made two real WebMCP calls: find a sample project and open its returned id.
step_2 /opened, and enter true. Check Save as a named tool, then Review & save and approve the exact routine. The JSON editor is optional.timer (or drawing) as the new category, then Review & run.The demo's localhost origin exists only while that process runs. Demo routines deliberately do not silently rebind to a different origin after a restart. For persistent use, connect your own WebMCP app at a stable origin.
No account, model API key, or GPU is needed for the tutorial. If no supported browser is installed:
npx playwright-core@1.62.1 install chromium
In a new empty demo directory, explicitly install the reference server and RoutineKit:
npm init -y
npm install routinekit @modelcontextprotocol/server-filesystem@2026.8.31 npx routinekit demo-files ./node_modules/@modelcontextprotocol/server-filesystem/dist/index.js
This disclosed scripted tutorial starts the installed official filesystem MCP server with a new temporary workspace, writes first-note.txt, and reads it back. It does not use your existing files. In the workbench:
step_2 /content compared with Input: content.routine_saved_write_and_check with direct file and content inputs in its owning MCP session. Choose Export skill ZIP to keep it.Exiting removes the demo's temporary files and routines. An exported routine needs a freshly approved matching files server before it can run elsewhere; permissions and file access are not transferred. The capture is scripted, not evidence of autonomous model success.
dsh plugin --profile web add routinekit
Use DSH 0.1.2-rc.1 for this preview. The plugin registers tools and adds a RoutineKit button to the web sidebar. It does not modify the DSH core or replace your existing tool permissions.
Open the panel and choose Initialize RoutineKit in DSH, or ask:
Use routine_tools to list the tools you can record. I want to repeat [my task] with [these changing inputs]. Before doing it, use routine_record with only the needed tools and exact example argument values. Complete the task, show me routine_preview, and propose checks that prove its result. Save only after I approve.
When replaying a DSH-native routine, the panel's Run in DSH button queues a routine_run request through the current conversation. That launch can use the host model. The replay engine itself makes zero model calls and dispatches each step through ctx.tools.execute, retaining the same agent scope, cancellation, approval policies, and guards.
Recording is task-local. Saved DSH routines are kept under DSH_HOME/routinekit (partitioned by the available workspace/task identity); standalone storage uses ROUTINEKIT_HOME or ~/.routinekit. Explicitly exposed saved tools are registered in the owning agent scope, never globally for every workspace. Saving a routine does not grant permission to run it.
The web panel is loopback-only in this preview. Remote/LAN access is not supported. If DSH's package-age policy rejects a just-published package, wait for that policy window; do not lower it to install RoutineKit.
Add this stdio server using your client's normal MCP configuration:
{
"mcpServers": { "routinekit": { "command": "npx", "args": ["-y", "routinekit", "mcp"] } } }
Human form elicitation is required for actions. A client without it can list/inspect routines but cannot auto-approve execution. Use npx routinekit open for the standalone workbench instead. Do not infer full client compatibility merely from basic MCP support.
Stop settles the active server operation and sends protocol cancellation for pending elicitation. Dismissing the client's approval UI depends on that client's cancellation support.
In an MCP Apps host, call routine_workbench to open the inline UI. It uses the same tool execution path and still requires the host's human form-elicitation prompt; no model-callable approval bypass is exposed. The packaged HTML has no external scripts, styles, or network assets. Browser integration is tested against the official @modelcontextprotocol/ext-apps AppBridge SDK, not certified across individual desktop clients. Hosts may block ZIP downloads; CLI export remains available.
RoutineKit does not inspect sibling MCP configurations or capture their calls automatically. Create your own local configuration with absolute paths to an installed executable and server, then run routinekit open --config /absolute/path/routinekit.config.json or routinekit mcp --config /absolute/path/routinekit.config.json. In DSH, supply the same path via ROUTINEKIT_CONFIG before starting your host.
{
"servers": { "files": { "command": "/absolute/path/to/node", "args": ["/absolute/path/to/server-filesystem/dist/index.js", "/absolute/path/to/allowed-workspace"], "tools": ["write_file", "read_text_file"] } } }
On Windows use absolute Windows paths, escaped normally in JSON. Review & connect (or routine_mcp_connect with server: "files") shows the command and arguments before starting it. Select the resulting mcp:files:write_file and mcp:files:read_text_file tools for capture; invoke them via the workbench forms or routine_mcp_call. An optional envFrom array names environment variables to inherit; never put credential values in the file or routine.
This preview supports local stdio, an explicit tool allowlist, and structured JSON or one text result. It does not proxy HTTP/OAuth servers, sampling, roots requests, or upstream elicitation. The launched process is trusted local code with your OS user's authority, not a container; its own configured file/network restrictions matter. RoutineKit does not install the server for you. Review any configured command that could itself install software or start subprocesses.
Use routine_save with expose: true, or check the workbench checkbox. A routine named write-and-check becomes `routine_saved_write_and_check` and accepts its named inputs directly instead of inputs_json. Names longer than the compatibility limit receive a deterministic hash suffix. MCP advertises a tool-list change; DSH registers the tool only for the owning agent. Reopening the same workspace loads its saved tool definitions. New inputs, live contract validation, host guards, and fresh approval still apply.
Typical flow:
routine_web_open → routine_tools → routine_record
→ routine_web_call … → routine_preview → routine_save → routine_run with new inputs
routine_record takes name, inputs_json (a JSON object of scalar examples), and an explicit tools array. routine_web_call takes an exact webmcp: tool name and arguments_json. routine_run takes name and inputs_json. JSON strings keep the interface consistent between DSH and MCP.
Other tools: routine_list, routine_inspect, routine_import, routine_export, routine_discard, and routine_stop. Native DSH tools use the dsh: namespace and still require those tools in DSH; RoutineKit does not invent cross-host equivalents.
A small JSON routine containing:
Raw recording outputs are kept only in memory, up to 40 calls / 15 minutes / bounded JSON size. They are not saved in the routine. Reviewed literal arguments are saved and can contain private business data. Inspect them before sharing.
Bindings are inferred only for exact scalar matches. RoutineKit does not infer substrings, loops, branches, transformations, or ambiguous dependencies. Small numeric constants (0/1), booleans, short result strings, and ambiguous values are not automatically linked to earlier results. Review the proposed bindings and test representative changed inputs before relying on a routine.
Contract fingerprints detect schema/origin changes and, for upstream MCP, the server alias/name/version, not a changed implementation that reports the same identity and schema. Shape checks do not prove business success: add checks such as /opened == true or a result field matching a named input. Earlier side effects are not rolled back when a later step fails.
routinekit list
routinekit inspect my-routine routinekit export my-routine ./my-routine
The new directory contains SKILL.md and routine.json. Export skill ZIP downloads those same two files from the workbench without a CLI. Extract the ZIP and choose routine.json in the import form. Existing destinations are never overwritten. Another user reviews the JSON, imports it, supplies their own inputs, reconnects compatible tools, and approves a fresh run.
An exported skill is not a transfer of credentials or consent. Different hosts, tools, origins, or schemas can make a routine intentionally non-runnable. Never silently replace a missing tool with a shell or computer-use fallback.
只显示了开头部分;其余内容请在仓库中阅读