Skip to main content

User 与 Minds API

账户管理 — 注册、登录、创建 Mind、列出 Mind、删除 Mind。由 JWT 保护。


User 与 Minds API

User 与 Minds API 负责账户管理。这些端点使用 JWT 认证(而非 Mind Key),因为它们作用于账户级别,而非 Mind 级别。

认证端点

POST /register

创建新用户账户。

curl -X POST https://synapse.schaefer.zone/register \
  -H "Content-Type: application/json" \
  -d '{
    "email": "you@example.com",
    "password": "your-secure-password",
    "display_name": "Michael"
  }'

响应:

{
  "jwt": "eyJhbGci...",
  "user": {
    "id": "u_abc123",
    "email": "you@example.com",
    "display_name": "Michael",
    "created_at": "2026-06-27T..."
  }
}

POST /login

登录已有账户。

curl -X POST https://synapse.schaefer.zone/login \
  -H "Content-Type: application/json" \
  -d '{
    "email": "you@example.com",
    "password": "your-secure-password"
  }'

响应:与 /register 相同。

Minds 端点

POST /minds

创建新 Mind。返回 Mind Key — 请立即保存,它只显示一次。

curl -X POST https://synapse.schaefer.zone/minds \
  -H "Authorization: Bearer YOUR_JWT" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Work Mind",
    "description": "Job-related memories"
  }'

响应:

{
  "id": "m_xyz789",
  "name": "Work Mind",
  "description": "Job-related memories",
  "mind_key": "mk_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789",
  "created_at": "2026-06-27T..."
}
`mind_key` 只显示一次。如果丢失,无法找回 — 你必须删除该 Mind 并创建新 Mind(会丢失所有已存储的记忆)。

GET /minds

列出当前用户的所有 Mind。

curl -H "Authorization: Bearer YOUR_JWT" \
     https://synapse.schaefer.zone/minds

响应:

{
  "minds": [
    {
      "id": "m_xyz789",
      "name": "Work Mind",
      "description": "Job-related memories",
      "created_at": "2026-06-27T...",
      "memory_count": 142,
      "last_activity": "2026-06-27T..."
    }
  ]
}

DELETE /minds/:id

永久删除某个 Mind。

curl -X DELETE -H "Authorization: Bearer YOUR_JWT" \
     https://synapse.schaefer.zone/minds/m_xyz789
删除 Mind **不可逆**。该 Mind 中的所有记忆、任务、聊天记录和脚本都会永久丢失。如需备份,请先通过 `GET /memory/mind-export` 导出。

多 Mind 模式

大多数用户会受益于使用多个 Mind 以隔离上下文:

# 为不同上下文创建 Mind
curl -X POST .../minds -d '{"name": "work", "description": "Job"}'
# → mind_key: mk_work...

curl -X POST .../minds -d '{"name": "personal", "description": "Personal life"}'
# → mind_key: mk_personal...

curl -X POST .../minds -d '{"name": "project-synapse", "description": "Synapse dev"}'
# → mind_key: mk_synapse...

在不同 LLM 会话中使用不同的 Mind Key 即可隔离上下文。

账户安全

密码要求

  • 至少 6 个字符
  • 无最大长度限制(请使用密码管理器)
  • 以 bcrypt 哈希存储(绝不存明文)

JWT 过期

JWT 在 7 天后过期。过期后再次调用 /login 即可。

Mind Key 安全

Mind Key 永不过期。如果 Mind Key 泄露:

  1. 通过 POST /minds 创建新 Mind
  2. 用新的 Mind Key 更新你的 LLM 配置
  3. 通过 DELETE /minds/:id 删除被泄露的 Mind

下一步