配合 ant-copilot 新增的 login 工具(回环 OAuth 授权):技能里 auth_required 的处置从"让用户去终端跑命令"改为"调 login 工具 + 浏览器点一下允许";三份 README 同步,终端助手降为无 login 工具形态(CLI 等)的兜底。
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "studio",
|
||||
"version": "0.3.5",
|
||||
"version": "0.3.6",
|
||||
"description": "DETA Studio 插件:以 AML 为唯一事实源编辑建筑模型,编译为建筑模型并执行规则校验。",
|
||||
"author": {
|
||||
"name": "DETA",
|
||||
|
||||
@@ -89,19 +89,23 @@ codex plugin add studio@deta
|
||||
bash <插件目录>/bin/deta-mcp.sh --profile studio
|
||||
```
|
||||
|
||||
装完即用,**没有 OAuth 登录步骤**。需要云侧能力(项目列表 / 项目同步 / 打开 Studio)时登录一次
|
||||
(`~/.deta/bin/deta` 由启动器自动注册,无需手工创建):
|
||||
装完即用,**没有 OAuth 登录步骤、也不需要终端**。需要云侧能力(项目列表 / 新建项目 / 项目同步 / 打开 Studio)时:
|
||||
|
||||
```
|
||||
在对话里说"登录"或直接让助手新建项目/上传到云 —— 助手会调 login 工具给出一个授权地址,
|
||||
你在浏览器打开(首次输一次账号密码或邮箱验证码)→ 点「登录并授权」→ 完成。
|
||||
令牌自动写入 ~/.deta 并即时生效;凭据过期时先用 refresh token 静默续期,用户无感。
|
||||
```
|
||||
|
||||
命令行形态(无 `login` 工具时)的兜底做法:
|
||||
|
||||
```bash
|
||||
~/.deta/bin/deta login # 输入账号 + 密码,或 --email-code <邮箱> 走验证码
|
||||
~/.deta/bin/deta status # 看凭据来源 / 运行时 / 工作区(不打印令牌)
|
||||
~/.deta/bin/deta login # 由启动器自动注册;账号密码或 --email-code <邮箱>
|
||||
~/.deta/bin/deta doctor # 端到端自检:运行时、凭据、GSA、MCP 握手
|
||||
```
|
||||
|
||||
登录后**开新会话**(MCP 服务重新拉起时读到凭据)。启动器自己按
|
||||
`DETA_TOKEN` 环境变量 → `~/.deta/env` → `~/.deta/credentials.json` 的顺序解析令牌,
|
||||
所以**不需要 source、不需要 launchctl 注入、不需要改 .zshrc、也不需要重启应用**——
|
||||
Finder/Dock 启动的宿主不继承终端环境,令牌由启动器直接读取才可靠。
|
||||
启动器按 `DETA_TOKEN` 环境变量 → `~/.deta/env` → `~/.deta/credentials.json` 的顺序解析令牌,
|
||||
所以浏览器授权后的下一次会话也自动带着登录态——不需要 source、不需要 launchctl、不需要重启应用。
|
||||
|
||||
### 登录助手(云侧能力用)
|
||||
|
||||
|
||||
Generated
+2
-2
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "deta-studio-plugin",
|
||||
"version": "0.3.5",
|
||||
"version": "0.3.6",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "deta-studio-plugin",
|
||||
"version": "0.3.5",
|
||||
"version": "0.3.6",
|
||||
"license": "Proprietary"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "deta-studio-plugin",
|
||||
"version": "0.3.5",
|
||||
"version": "0.3.6",
|
||||
"description": "DETA Studio:AML 建筑模型读写与编译校验(Codex 插件 / dsh 组合包 双壳)",
|
||||
"type": "module",
|
||||
"license": "Proprietary",
|
||||
|
||||
@@ -111,10 +111,12 @@ Studio 就是deta.city 上的建筑性能应用。在 Codex 右侧内置浏览
|
||||
deta.city 登录并跳到 Studio。
|
||||
- 典型节奏:`open_studio()` 拿 `url` → 面板打开 → `open_studio({ waitSeconds: 20 })`
|
||||
确认 `executor_online: true` → 再调 `simulate` / `studio_command` 等执行器侧工具。
|
||||
- 若返回 `auth_required` → 云令牌未注入(**本机形态没有 MCP 授权,不要去找 `codex mcp login`**):
|
||||
让用户在终端运行 `~/.deta/bin/deta login`(按提示输入账号与密码或邮箱验证码,由用户本人输入),
|
||||
随后**开新会话**重试;命令不存在时可回落到插件目录下的 `bin/deta-login.mjs`。
|
||||
排查用 `~/.deta/bin/deta doctor`(一条命令自检运行时 / 凭据 / GSA / MCP 握手)。
|
||||
- 若返回 `auth_required` → 未登录:**直接调 `login` 工具**(建议 `waitSeconds: 90`),把返回的 `url`
|
||||
交给用户在内置浏览器打开——首次输一次账号密码或邮箱验证码,之后只需点「登录并授权」按钮。
|
||||
**不需要终端,也不要去找 `codex mcp login`**;用户点完后本工具会自动换取令牌并写入当前会话
|
||||
(凭据过期时 `login` 会先用 refresh token 静默续期,用户完全无感)。
|
||||
仅当当前形态没有 `login` 工具(CLI 等)时,才让用户在终端运行 `~/.deta/bin/deta login`;
|
||||
排查用 `~/.deta/bin/deta doctor`(自检运行时 / 凭据 / GSA / MCP 握手)。
|
||||
若 `url` 报「票据无效或已过期」→ 重新调一次,不要改成手工登录。
|
||||
2. 按 browser 插件技能(`control-in-app-browser`)的 Bootstrap 初始化,再取内置浏览器句柄:
|
||||
`const iab = await agent.browsers.get("iab");`,并先读一次 `await iab.documentation()`。
|
||||
|
||||
Reference in New Issue
Block a user