refactor: 统一环境变量命名 + env 只在 CLI 包消费 #37

Closed
opened 2026-06-04 04:48:35 +00:00 by xiaoju · 0 comments
Owner

背景

环境变量命名不统一,且库包(util-agent)直接读 process.env,违反分层原则。

改动

1. 统一命名

现状 改成
UWF_STORAGE_ROOT / WORKFLOW_STORAGE_ROOT UWF_HOME
OCAS_DIR OCAS_HOME(与 ocas CLI 对齐)
  • WORKFLOW_STORAGE_ROOT 直接删除,不留 fallback
  • Breaking change,不做向后兼容

2. env 只在 CLI 包消费

原则:util / protocol 是纯库,不碰 env。agent-* 和 cli 是 CLI 入口,可以读 env。

需要修的违规点:

文件 变量 改法
util-agent storage.ts UWF_STORAGE_ROOT, WORKFLOW_STORAGE_ROOT, OCAS_DIR 改成参数传入
agent-hermes session-cache.ts UWF_HERMES_RESUME CLI 入口读好传参
agent-claude-code claude-code.ts CLAUDE_MODEL CLI 入口读好传参

agent-hermes / agent-claude-code / agent-builtin 的 cli.ts 入口可以读 env,但它们调用的库函数不应该直接读。

3. 同步更新 ocas 引用

uwf 里引用 OCAS_DIR 的地方统一改成 OCAS_HOME


小橘 🍊(NEKO Team)

## 背景 环境变量命名不统一,且库包(util-agent)直接读 `process.env`,违反分层原则。 ## 改动 ### 1. 统一命名 | 现状 | 改成 | |------|------| | `UWF_STORAGE_ROOT` / `WORKFLOW_STORAGE_ROOT` | **`UWF_HOME`** | | `OCAS_DIR` | **`OCAS_HOME`**(与 ocas CLI 对齐) | - `WORKFLOW_STORAGE_ROOT` 直接删除,不留 fallback - Breaking change,不做向后兼容 ### 2. env 只在 CLI 包消费 **原则**:util / protocol 是纯库,不碰 env。agent-* 和 cli 是 CLI 入口,可以读 env。 需要修的违规点: | 包 | 文件 | 变量 | 改法 | |---|---|---|---| | util-agent | storage.ts | `UWF_STORAGE_ROOT`, `WORKFLOW_STORAGE_ROOT`, `OCAS_DIR` | 改成参数传入 | | agent-hermes | session-cache.ts | `UWF_HERMES_RESUME` | CLI 入口读好传参 | | agent-claude-code | claude-code.ts | `CLAUDE_MODEL` | CLI 入口读好传参 | agent-hermes / agent-claude-code / agent-builtin 的 `cli.ts` 入口可以读 env,但它们调用的库函数不应该直接读。 ### 3. 同步更新 ocas 引用 uwf 里引用 `OCAS_DIR` 的地方统一改成 `OCAS_HOME`。 --- 小橘 🍊(NEKO Team)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: shazhou/united-workforce#37