chore: auto release commit (2026-04-06 12:57:26)
Some checks failed
技能自动化发布 / release (push) Failing after 21s
Some checks failed
技能自动化发布 / release (push) Failing after 21s
This commit is contained in:
54
references/RUNTIME.md
Normal file
54
references/RUNTIME.md
Normal file
@@ -0,0 +1,54 @@
|
||||
# 运行环境与数据路径(account-manager)
|
||||
|
||||
## 数据落盘位置(当前实现)
|
||||
|
||||
代码见 `scripts/util/runtime_paths.py`、`scripts/util/constants.py`。
|
||||
|
||||
- **数据根目录** `get_data_root()`:优先环境变量 **`JIANGCHANG_DATA_ROOT`**;未设置时 Windows 默认 `D:\jiangchang-data`,其它系统默认 `~/.jiangchang-data`。
|
||||
- **用户/工作空间 id** `get_user_id()`:优先 **`JIANGCHANG_USER_ID`**;未设置时为 **`_anon`**。
|
||||
- **技能数据目录**:`{数据根}/{用户id}/account-manager/`
|
||||
- **SQLite**:`account-manager.db`
|
||||
- **Profile**:`profiles/<平台展示名>/<手机号>/`(由 `get_default_profile_dir` 生成)
|
||||
- **日志目录**:`logs/`(见下)
|
||||
|
||||
> OpenClaw 工作区文档中的 **`CLAW_*`** 变量:本技能**当前仍以 `JIANGCHANG_*` 为准**读取数据根与用户 id;若宿主已统一注入 `CLAW_*`,需在代码层做别名兼容(未做前请只依赖本文列出的变量)。
|
||||
|
||||
## 调试:为什么「list 没数据」
|
||||
|
||||
- 本地终端未设置 `JIANGCHANG_DATA_ROOT` / `JIANGCHANG_USER_ID` 时,会落到 **默认盘路径** 与 **`_anon`**,与网关中运行的实例**不是同一个库文件**。
|
||||
- 设置 **`JIANGCHANG_ACCOUNT_DEBUG_PATHS=1`**(`1`/`true`/`yes`/`on`)后,每次 CLI 子命令前会在 **stderr** 打印实际使用的根目录、用户 id 与数据库路径(由 `_maybe_print_paths_debug_cli` 输出)。
|
||||
|
||||
## 本地 CLI 开发注入(慎用)
|
||||
|
||||
`util/constants.py` 中 **`_apply_cli_local_dev_env()`** 仅在 CLI 入口调用:
|
||||
|
||||
- 若开启本地开发开关(代码内 `_ACCOUNT_MANAGER_CLI_LOCAL_DEV` 或环境变量 **`JIANGCHANG_ACCOUNT_CLI_LOCAL_DEV=1`**),且当前未设置 `JIANGCHANG_DATA_ROOT` / `JIANGCHANG_USER_ID`,会注入代码内配置的默认路径与用户 id。
|
||||
- **发版前务必关闭**,避免个人路径进入制品。详见该文件内注释。
|
||||
|
||||
## 日志
|
||||
|
||||
`scripts/util/logging_config.py`:
|
||||
|
||||
| 变量 | 作用 |
|
||||
|------|------|
|
||||
| `JIANGCHANG_LOG_LEVEL` | 日志级别,默认 `INFO` |
|
||||
| `JIANGCHANG_LOG_TO_STDERR` | 设为 `1`/`true` 等时,WARNING 及以上同步 stderr |
|
||||
| `JIANGCHANG_ACCOUNT_MANAGER_LOG_FILE` | 覆盖日志文件绝对路径(默认 `{技能数据目录}/logs/account-manager.log`) |
|
||||
|
||||
## 登录 / 浏览器子进程(login)
|
||||
|
||||
`service/browser_service.py` 与子进程 `service/login_child_runner.py`:
|
||||
|
||||
| 变量 | 作用 |
|
||||
|------|------|
|
||||
| `JIANGCHANG_LOGIN_TIMEOUT_SECONDS` | 登录检测最长秒数,默认 `300`,不少于 `60` |
|
||||
| `JIANGCHANG_LOGIN_POLL_INTERVAL_SECONDS` | DOM 轮询间隔,默认 `1.5`,限制在 `0.5..10` |
|
||||
| `JIANGCHANG_LOGIN_DOM_GRACE_SECONDS` | 打开 URL 后等待再检测,默认 `4`,减轻跳转误判 |
|
||||
|
||||
依赖:**本机已安装 Chrome 或 Edge**;Python 环境需 **`playwright`** 且已执行 `playwright install chromium`(错误信息见 CLI 输出)。
|
||||
|
||||
## 常见问题(简要)
|
||||
|
||||
- **`ERROR:需要 playwright`**:安装 `playwright` 并安装浏览器内核。
|
||||
- **`ERROR:PROFILE_DIR_MISSING`**:库中该账号 `profile_dir` 为空,需检查数据或重新添加账号流程。
|
||||
- **登录检测一直失败**:关闭占用同一 profile 目录的其它浏览器;可调高超时与环境变量;查看技能日志文件。
|
||||
Reference in New Issue
Block a user