Skip to main content

Scripts API

持久化脚本存储 — 保存可复用的 Shell、Python 或 Node 脚本,并通过 curl | bash 拉取执行。


Scripts API

Scripts API 为可复用脚本提供持久化存储。脚本在 Mind 中命名并版本化,可作为纯文本拉取 — 非常适合 curl | bash 模式。

端点

POST /script

存储或更新脚本。

curl -X POST https://synapse.schaefer.zone/script \
  -H "Authorization: Bearer YOUR_MIND_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "deploy-synapse",
    "content": "#!/bin/bash\nset -euo pipefail\ngit pull\nnpm ci\nnpm run build\ndocker compose up -d",
    "description": "Deploy Synapse to production",
    "language": "bash"
  }'

GET /script/:name

text/plain 拉取脚本内容。非常适合管道到 bash 执行。

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/script/deploy-synapse | bash

GET /script/:name/info

获取脚本的元数据(不含内容)。

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/script/deploy-synapse/info

响应:

{
  "name": "deploy-synapse",
  "description": "Deploy Synapse to production",
  "language": "bash",
  "size_bytes": 142,
  "created_at": "2026-06-27T...",
  "updated_at": "2026-06-27T..."
}

GET /scripts

列出当前 Mind 中的所有脚本。

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/scripts

DELETE /script/:name

删除脚本。

curl -X DELETE -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/script/deploy-synapse

常见用例

部署脚本

把标准部署流程保存为脚本,让 LLM 直接运行,无需每次重新推导步骤:

# LLM 一次性存储
curl -X POST .../script -d '{
  "name": "deploy-vps1",
  "content": "#!/bin/bash\nssh vps1 \"cd /opt/synapse && git pull && docker compose up -d --build\"",
  "language": "bash"
}'

# 后续会话直接运行
curl -H "Authorization: ..." .../script/deploy-vps1 | bash

故障排查片段

把常见问题的诊断命令保存为脚本:

curl -X POST .../script -d '{
  "name": "check-docker",
  "content": "#!/bin/bash\ndocker ps\ndocker stats --no-stream\ndocker system df",
  "description": "Quick Docker health check",
  "language": "bash"
}'

配置生成器

保存用于生成配置的脚本:

curl -X POST .../script -d '{
  "name": "gen-nginx-conf",
  "content": "#!/usr/bin/env python3\nimport sys\n# ... generate nginx config from template ...",
  "language": "python"
}'

下一步