with one click
secondme-init
初始化 SecondMe 项目配置和功能模块选择,创建 state.json 和 CLAUDE.md
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
初始化 SecondMe 项目配置和功能模块选择,创建 state.json 和 CLAUDE.md
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
让 OpenClaw Agent 参与 Agent-Zhihu 社区讨论(提问、回答、投票)
基于配置和需求生成 Next.js 项目,支持 --quick 快速模式跳过 PRD 阶段
通过对话定义产品需求,根据已选模块针对性提问,更新 state.json
SecondMe API 技术参考文档,供开发时查阅
一站式创建 SecondMe 集成项目,依次执行初始化、需求定义、项目生成
| name | secondme-init |
| description | 初始化 SecondMe 项目配置和功能模块选择,创建 state.json 和 CLAUDE.md |
| user-invocable | true |
初始化 SecondMe 项目配置,支持直接解析 App Info 格式或手动输入凭证。
工具使用: 收集用户输入时使用 AskUserQuestion 工具。
重要提醒: 当前目录将作为项目根目录,Next.js 项目会直接在此目录中初始化。
显示当前工作目录路径,让用户确认:
📂 当前工作目录: /path/to/current/dir
⚠️ Next.js 项目将直接在此目录中初始化,请确保你已在一个新建的空文件夹中运行。
检查当前目录内容(除 .secondme/、.git/、CLAUDE.md、.claude/ 等配置文件外):
⚠️ 当前目录不为空,包含以下文件/文件夹:
- src/
- package.json
- ...
继续操作可能会覆盖现有文件。是否确认继续?
AskUserQuestion 让用户确认是否继续首先检查项目根目录是否存在 .secondme/state.json:
如果存在:
📋 已有配置:
- App Name: secondme-tinder
- Client ID: 71658da7-***
- 数据库: postgresql://***
- 已选模块: auth, chat, profile
- 当前阶段: init
如果不存在:继续到第二步
首先询问用户是否已有 SecondMe 应用的 Client ID 和 Client Secret。
如果用户没有凭证,引导用户前往开发者平台注册:
📌 你还没有 SecondMe 应用凭证?请按以下步骤获取:
1. 访问 SecondMe 开发者平台:https://develop.second.me
2. 注册并登录账号
3. 创建一个新的 App
4. 创建完成后,你会获得 App Info(包含 Client ID、Client Secret 等信息)
5. 将 App Info 复制粘贴到这里即可
提示用户获取到凭证后再继续。如果用户已有凭证,继续以下流程。
如果用户提供了以下格式的信息,自动解析:
## App Info
- App Name: secondme-tinder
- Client ID: 71658da7-659c-414a-abdf-cb6472037fc2
- Client Secret: <your-secret>
- Redirect URIs:
- http://localhost:3000/api/auth/callback
- https://xxx.vercel.app/api/auth/callback
- Allowed Scopes: user.info, user.info.shades, user.info.softmemory, chat, note.add, voice
解析规则:
| 字段 | 提取方式 |
|---|---|
app_name | 直接提取 App Name |
client_id | 直接提取 Client ID |
client_secret | 直接提取 Client Secret |
redirect_uri | 优先选择 localhost:3000 的 URI(开发用) |
redirect_uris | 保存所有 Redirect URIs 列表 |
modules | 根据 Allowed Scopes 自动推断(见下表) |
Scopes 到模块的映射:
| Scope | 模块 |
|---|---|
user.info | auth(必选) |
user.info.shades | profile |
user.info.softmemory | profile |
chat | chat |
chat | act |
note.add | note |
voice | 记录但暂不生成代码 |
解析后只需额外收集:
如果用户没有提供 App Info,则依次收集:
App Name (可选)
secondme-appClient ID (必填)
Client Secret (必填)
Redirect URI (可选)
http://localhost:3000/api/auth/callbackDatabase URL (必填)
postgresql://user:pass@localhost:5432/dbnamemysql://user:pass@localhost:3306/dbnamefile:./dev.db功能模块选择(多选)
展示根据 Scopes 推断的模块(或用户选择的模块):
| 模块 | 说明 | 备注 |
|---|---|---|
auth | OAuth 认证 | 必选,自动包含 |
profile | 用户信息展示 | 可选 |
chat | 聊天功能 | 可选 |
act | 结构化动作判断(返回 JSON) | 可选,权限复用 chat scope |
note | 笔记功能 | 可选 |
询问用户是否需要调整模块选择。
.secondme/state.json{
"version": "1.0",
"stage": "init",
"app_name": "secondme-tinder",
"modules": ["auth", "chat", "profile"],
"config": {
"client_id": "71658da7-659c-414a-abdf-cb6472037fc2",
"client_secret": "用户输入的 Client Secret",
"redirect_uri": "http://localhost:3000/api/auth/callback",
"redirect_uris": [
"http://localhost:3000/api/auth/callback",
"https://xxx.vercel.app/api/auth/callback"
],
"database_url": "用户输入的数据库连接串",
"allowed_scopes": ["user.info", "user.info.shades", "chat", "note.add"]
},
"api": {
"base_url": "https://app.mindos.com/gate/lab",
"oauth_url": "https://go.second.me/oauth/",
"token_endpoint": "https://app.mindos.com/gate/lab/api/oauth/token",
"access_token_ttl": 7200,
"refresh_token_ttl": 2592000
},
"docs": {
"quickstart": "https://develop-docs.second.me/zh/docs",
"oauth2": "https://develop-docs.second.me/zh/docs/authentication/oauth2",
"api_reference": "https://develop-docs.second.me/zh/docs/api-reference/secondme",
"errors": "https://develop-docs.second.me/zh/docs/errors"
},
"prd": {}
}
CLAUDE.md在项目根目录创建 CLAUDE.md,内容如下:
# SecondMe 集成项目
## 应用信息
- **App Name**: [app_name]
- **Client ID**: [client_id 部分隐藏]
## API 文档
开发时请参考官方文档(从 `.secondme/state.json` 的 `docs` 字段读取):
| 文档 | 配置键 |
|------|--------|
| 快速入门 | `docs.quickstart` |
| OAuth2 认证 | `docs.oauth2` |
| API 参考 | `docs.api_reference` |
| 错误码 | `docs.errors` |
## 关键信息
- API 基础 URL: [从 state.json api.base_url 读取]
- OAuth 授权 URL: [从 state.json api.oauth_url 读取]
- Access Token 有效期: 2 小时
- Refresh Token 有效期: 30 天
> 所有 API 端点配置请参考 `.secondme/state.json` 中的 `api` 和 `docs` 字段
## 已选模块
[根据推断/选择动态生成模块列表]
## 权限列表 (Scopes)
根据 App Info 中的 Allowed Scopes:
| 权限 | 说明 | 状态 |
|------|------|------|
| `user.info` | 用户基础信息 | ✅ 已授权 |
| `user.info.shades` | 用户兴趣标签 | ✅ 已授权 |
| `chat` | 聊天功能 | ✅ 已授权 |
| `note.add` | 添加笔记 | ✅ 已授权 |
显示成功信息和下一步操作:
✅ SecondMe 项目配置已完成!
应用名称: secondme-tinder
已保存配置到 .secondme/state.json
已创建/更新 CLAUDE.md(包含 SecondMe API 文档链接)
已选择模块(根据 Allowed Scopes 推断):
- auth ✓
- profile ✓ (user.info.shades)
- chat ✓
- note ✓
⚠️ 重要:请将 .secondme/ 添加到 .gitignore 以保护敏感信息
下一步:
- 运行 /secondme-prd 定义产品需求(推荐)
- 或运行 /secondme-nextjs --quick 快速生成项目
| 文件 | 说明 |
|---|---|
.secondme/state.json | 项目状态和配置 |
CLAUDE.md | API 参考文档,供开发时查阅 |
以下是完整的 App Info 格式,用户可以直接从 SecondMe 开发者后台复制:
## App Info
- App Name: my-app
- Client ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
- Client Secret: your-secret-here
- Redirect URIs:
- http://localhost:3000/api/auth/callback
- https://my-app.vercel.app/api/auth/callback
- https://my-app.com/api/auth/callback
- Allowed Scopes: user.info, user.info.shades, user.info.softmemory, chat, note.add