我们感谢您的支持! 如果您发现这个项目有用,请考虑:
⭐ 给这个仓库加星 • 📢 分享给您的网络 • 🐛 报告问题 • 🤝 贡献代码
每个星标、分享和贡献都帮助我们改进这个工具以服务于社区!
</div>此服务器是100%免费且开源的,并可以与任何兼容MCP的客户端一起工作。
我们还提供一个付费订阅的原生移动应用(SystemPrompt),旨在实现与该服务器的第一语音交互。 移动应用程序仍处于早期开发阶段,但提供了从任何地方控制您的编码代理的原生移动体验。
<a href="https://apps.apple.com/us/app/systemprompt-mcp-client/id6746670168"> <img src="https://tools.applemediaservices.com/api/badges/download-on-the-app-store/black/en-us" alt="下载于App Store" height="50"> </a> <a href="https://play.google.com/store/apps/details?id=com.systemprompt.mcp"> <img src="https://upload.wikimedia.org/wikipedia/commons/7/78/Google_Play_Store_badge_EN.svg" alt="在Google Play获取" height="50"> </a> </div>开始使用: 快速入门 | 安全 | 远程访问
文档: 架构 | 工具 | 模板
组件: 守护进程 | Docker | MCP服务器 | 代理管理器
特性: 隧道访问 | 推送通知 | 状态持久化
这是 SystemPrompt 编码代理 —— 一个前沿项目,它将您的工作站转换成一个任何MCP(模型上下文协议)客户端都可以连接的远程可访问的MCP服务器。它是 SystemPrompt.io 生态系统的一部分,该生态系统正在为开发者开创原生移动语音控制的人工智能编排。
SystemPrompt 是一个实验性的、由社区驱动的项目(目前处于v0.01版本),它使开发者能够通过自然语言语音命令与人工智能互动并执行复杂的流程。该项目:
从任何地方发送编码任务,AI代理(默认为Claude,可扩展到任何其他代理)将在您的实际机器上直接执行。您的代码永远不会离开您的计算机,但您可以从任何地方通过以下方式控制它:
此项目将您的本地机器暴露为一个可以通过远程控制的MCP服务器。AI代理直接在您的机器上运行,并具有对您的真实开发环境和工具的访问权限。
SystemPrompt移动应用程序用户一直在问“那我用它做什么?”答案:远程管理您自己的开发环境和代理。这个编码代理是当前采用曲线中MCP服务器的杀手级用例——允许开发者仅使用他们的声音从任何地方进行编码。
# 克隆并设置
git clone https://github.com/systempromptio/systemprompt-code-orchestrator
cd systemprompt-code-orchestrator
# 安装并运行
npm i
npm run setup
npm run start
# 使用检查器测试
npm run inspector
创建的任务可以通过检查器执行,应该通过隧道连接到您的Claude Code安装,保存在Docker容器中的结构化日志(作为MCP资源公开),并通过检查器(以及任何MCP客户端)启用执行。
设置脚本会自动检查这些内容:
npm run start # 启动所有服务(守护进程 + Docker)
npm run stop # 平稳停止所有服务
npm run status # 检查服务健康状况
npm run logs # 查看实时日志
npm run tunnel # 开启互联网隧道(需要Cloudflare)
# 必需(设置脚本会提示)
PROJECT_ROOT=/path/to/your/code # ⚠️ AI代理在此处拥有完全访问权限
# 可选(带有默认值)
PORT=3000
COMPOSE_PROJECT_NAME=systemprompt-coding-agent
# 可选(用于附加功能)
CLOUDFLARE_TOKEN=your_token # 用于隧道访问
PUSH_TOKEN=your_token # 用于移动通知
MCP客户端(移动/桌面)
|
v
Docker容器(MCP服务器)
- 处理MCP协议
- 资源订阅
- 事件流
|
v
主机桥接守护进程(TCP套接字)
- 命令路由
|
v
主机机器
- AI代理执行
- 文件系统访问
1. 实时资源订阅模型
服务器实现了MCP SDK的listChanged模式用于资源订阅。当任务状态发生变化时:
// 客户端订阅任务资源,由listChanged通知
client.listResources()
client.getResource({ uri: "task://abc-123" })
// 当任务更新时,服务器自动:
// 1. 将任务保存到磁盘(JSON持久化)
await this.persistence.saveTask(updatedTask);
// 2. 发出内部事件
this.emit("task:updated", updatedTask);
// 3. 向已订阅的客户端发送MCP通知
await sendResourcesUpdatedNotification(`task://${taskId}`, sessionId);
// 这触发:{ method: "notifications/resources/updated", params: { uri: "task://abc-113" } }
// 客户端接收通知并可以重新获取更新的资源
这使得实时任务监控无需轮询 —— 客户端随着任务状态变化同步更新。
2. 任务完成的推送通知
集成Firebase云消息(FCM)支持,在任务完成后向移动设备发送推送通知:
// 任务完成 → 发送推送通知
{
notification: {
title: "任务完成",
body: "您的重构任务成功完成"
},
data: {
taskId: "abc-123",
status: "已完成",
duration: "45秒"
}
}
非常适合长时间运行的任务 —— 开始一个任务,继续您的日常活动,任务完成时收到通知。
3. 有状态的过程管理
待处理 → 进行中 → 等待 → 完成
↓
失败
所有操作都会发出事件,被多个子系统消费:
更复杂的选项如打开一个Cloudflare隧道来公开一个HTTPS URL到您的本地机器已被记录,但默认情况下不包括(自行承担风险)。
npm run tunnel
这将:
如果您希望保持一切在局域网内:
正常启动服务器:
npm start
从同一网络内的设备访问:
http://YOUR_IP:3000/mcp连接| 工具 | 描述 | 示例 |
|---|---|---|
create_task | 开始新的AI编码会话 | {"title": "添加认证", "tool": "CLAUDECODE", "instructions": "..."} |
update_task | 发送额外指令 | {"process": "session_123", "instructions": "..."} |
end_task | 完成并清理 | {"task_id": "task_123", "status": "已完成"} |
report_task | 生成任务报告 | {"task_ids": ["task_123"], "format": "markdown"} |
| 工具 | 描述 | 示例 |
|---|---|---|
check_status | 验证代理可用性 | {"test_sessions": true, "verbose": true} |
update_stats | 获取系统统计信息 | {"include_tasks": true} |
clean_state | 清理旧任务 | {"keep_recent": true, "dry_run": true} |
SystemPrompt 包含强大的提示模板,用于常见的编码任务。→ 完整提示模板文档
{
"prompt_template": "错误修复",
"variables": {
"错误描述": "密码重置后登录失败",
"错误日志": "401未经授权在auth.js:42"
}
}
{
"prompt_template": "react组件",
"variables": {
"组件名称": "用户仪表板",
"功能": ["数据可视化", "实时更新", "导出功能"]
}
}
{
"prompt_template": "单元测试",
"variables": {
"目标文件": ["src/auth/*.js"],
"框架": "jest",
"覆盖率目标": 85
}
}
systemprompt-coding-agent/
├── src/
│ ├── server.ts # MCP服务器设置
│ ├── handlers/ # 协议处理器
│ ├── services/ # 代理服务
│ ├── constants/ # 工具定义
│ └── types/ # TypeScript类型
├── docker-compose.yml
└── package.json
对于安全问题,请发送邮件至 security@systemprompt.io
虽然此服务器可以与任何兼容MCP的客户端一起工作,但为了获得移动语音控制体验,请查看 SystemPrompt.io —— 仍处于早期阶段,但是一款专门为语音驱动的AI编码工作流程设计的原生iOS/Android应用程序。我们希望异步地通过我们的声音创建这些任务并与它们互动!
MIT许可 —— 详见 LICENSE