Files
account-manager/references/INTEGRATION.md
chendelian 97d970dd1b
All checks were successful
技能自动化发布 / release (push) Successful in 43s
chore: account-manager — runtime_env sibling root, wait-login and browser fixes
2026-04-07 10:36:40 +08:00

1.9 KiB
Raw Blame History

与其它 Skill 集成account-manager

推荐调用方式

使用 subprocess 调用技能根目录下的 scripts/main.py,工作目录可为技能根或 scripts/(只要命令中的 python 与路径一致)。宿主注入的 JIANGCHANG_DATA_ROOT / JIANGCHANG_USER_ID 必须与最终用户会话一致,否则读写到错误库。

机器可读命令摘要

目的 命令 成功时 stdout
取单条账号 JSON get <id> 单行 JSON 对象
批量账号 JSON list-json <平台或all> [--limit N] 单行 JSON 数组
网页自动化候选账号 pick-web <平台> 单行 JSON 对象(按 updated_at 选一条,表示当前已登录)

解析协议(强建议)

  1. 读取子进程 stdout 全文或首行。
  2. 若首行以 ERROR: 开头 → 失败,不要 json.loads 整段 stdout。
  3. get / list-json / pick-web:成功时应对第一行json.loads;后续行应不存在,若有则视为非协议内容。

JSON 对象字段(与 get 一致)

典型字段见仓库 assets/examples/get-response.jsonassets/schemas/account-record.schema.json

常见键名包括:id, name, platform, phone, profile_dir, url, created_at, updated_atextra_json 列中的扁平扩展可能并入同一对象。

库中不再持久化「是否已登录」;编排侧需登录时请调用 wait-login <id>(始终以本次 Playwright DOM 检测为准)或在业务页内自行判断。

Publisher / 自动化流水线示例

  1. pick-web 搜狐号(或目标平台)→ 解析 JSON → 取 idprofile_dirurl
  2. 需要确保会话有效时:调用 wait-login <id>,成功则 stdout 首行含 OK:WAIT_LOGIN

退出码

请以 stdout 首行前缀JSON 可解析性 为准;不要仅依赖退出码。