搜索文档

浏览 Awaken Agents 文档
Docs/Awaken Agentsv1.0.0-dev/参考/参考部署配置
提示·你正在阅读发布前文档(v1.0.0-dev)。接口与行为在稳定发布前仍可能变化。

参考 · 参考

部署配置

本页内容

awaken 命令的规范 TOML、命令行优先级、进程角色、store 所有权、secret-file 边界与校验规则。

写 TOML 前先选择要运行的进程。为该进程使用一份配置文件,校验生效结果,再用同一份文件 启动同一个命令。

任务命令配置边界
评估完整本地产品awaken all-in-one合并运行 Control、Coordinator、Resources、本地 Worker、Console 与协议 API
单独运行编写与发布awaken controlControl store 与经过认证的 Coordinator 边界
单独运行 Session 与 Worker 协调awaken coordinatorCoordinator store、dispatch、commit 与经过认证的 Control 边界
增加执行容量awaken-worker --config <path> --server <url>严格、无数据库的 Worker schema
准备共享 server schemaawaken database migrate --config <path>Application process 启动前的显式 migration

不要在这些边界之间复制字段。严格 schema 会拒绝未知或与 role 不兼容的值,不会忽略它们。

值解析

awaken 产品命令严格按以下顺序解析三个来源:

  1. --port--data-dir--no-browser 等展示层 override;
  2. 显式 --config <path> 或标准 ~/.awaken/config.toml
  3. typed default。

进程环境不是部署、模型、业务或凭据配置来源。使用 awaken configawaken config --json 检查生效的脱敏结果和值来源。

flowchart LR
  C[命令与展示层 override] --> R[Typed resolver]
  F[显式或标准 TOML] --> R
  D[Typed defaults] --> R
  R --> V{Role 与跨字段校验}
  V -->|有效| E[脱敏 effective configuration]
  V -->|无效| X[Service 启动前退出]
  E --> S[启动已选择进程]

通用字段

TOML key用途默认值 / 约束
roleall-in-onecontrolcoordinatorworkerall-in-one;退役的 serve/server 名称会被拒绝
modelocalserver schema-lifecycle policylocal
data_dir内嵌数据、生成的本地 seal key 与本地 artifact~/.awaken
bindIP:PORT 形式的服务监听地址127.0.0.1:8080
run_local_pool允许 AllInOne 消费自己的 dispatchtrue;仅 AllInOne
no_browser禁止自动打开浏览器false
suite_hub_url可选的 browser-console suite navigation未设置
identity_modeno-loginself-managedawaken-cloud部署 policy
cloud_modelsdisabledenableddisabled;启用时要求 Awaken Cloud identity
org_id, iam_workspaces本地 organization 与允许的 Workspace scope经过校验的 typed value

未知 TOML 字段会导致解析失败。角色子命令(controlcoordinatorworker) 会覆盖文件中的 role,因此被调用进程不能从文件悄悄取得更宽角色。

Store 与 schema lifecycle

TOML key所有者规则
runtime_database_urlCoordinator dispatch/commitPostgreSQL URL;拆分 Coordinator 必填
resource_database_urlResources component共享 Resource 内容的 PostgreSQL URL
catalog_db, credential_db, config_db, admin_db, data_subject_dbControl内嵌路径或 PostgreSQL URL
environment_db, sessions_db, captured_content_dbCoordinator内嵌路径或 PostgreSQL URL
management_database_url_fileAllInOne 部署快捷方式文件内包含一个共享 PostgreSQL URL;不能与逐 store URL 混用
postgres_max_connections共享 PostgreSQL pool正整数

Local mode 在启动时迁移内嵌 store。共享 server 部署必须先于 application Pod 运行:

awaken database migrate --config /etc/awaken/config.toml

Server mode 的应用启动只校验已有 schema,不写 DDL。Worker 拒绝全部权威数据库字段; Control 拒绝 Coordinator 执行数据库;Coordinator 拒绝 Control 数据库与 Control seal key。

私有服务边界与 secret

TOML key使用者规则
coordinator_internal_url拆分 Control精确 executable-Agent registration 目的地
executable_agent_registration_token_fileControl 与 Coordinator二者读取同一份 operator-projected 最小权限 bearer 文件
control_internal_url拆分 Coordinator已认证 Control application boundary
control_service_token_fileControl 与 Coordinator反向边界 token 文件
control_seal_key / control_seal_key_fileAllInOne 或 Control二选一;Worker 与拆分 Coordinator 均拒绝
mcp_bearer_tokenMCP export非空时才挂载 route
cloud_iam_service_token_fileCloud identity integration优先使用文件投射,不把 token 内联

awaken config 永不输出 token 值、数据库 URL 或 seal-key material。

Worker 字段

独立进程命令是 awaken-worker --config <path> --server <coordinator-url>;TOML 中也可用 worker_server 提供 URL。它使用严格 schema,可接受的字段如下:

TOML key用途
role, mode, worker_server, worker_server_ca_certificate_file可选 role/mode 断言与 Coordinator connection
worker_id, worker_zone, worker_build_digest, worker_capabilities, worker_max_concurrentWorker identity、placement fact 与 capacity
worker_request_credential_fileWorker request authentication material
worker_credential_material_root, worker_credential_trust_domainWorker trust domain 内的精确凭据投射
worker_admin_listen, worker_drain_grace_secshealth/admin listener 与 graceful drain
worker_credential_probe_interval_secs, worker_credential_observation_ttl_secsliveness observation;TTL 必须大于非零 probe interval
sandbox_tier, sandbox_dir, sandbox_allow_local_fallback, k8s_namespace, container_image, acp_clis独立 Worker 接受的 Sandbox 子集

Worker 不持有数据库。它在 registration 时获得 claim-fenced File、Memory、Skill、 Repository verification、credential 与 commit client。

Product launcher 的 execution、Sandbox 与 wake 字段

以下字段属于 awaken product launcher 配置。不要把其中的 warm pool、proxy、package builder 或 wake 字段复制到独立 awaken-worker 文件;严格的 Worker schema 会拒绝未知 key。

TOML key值 / 作用
sandbox_tierlocalnamespacedockerpodmank8s;默认 namespace
sandbox_dir, container_image, container_forward_proxy, k8s_namespaceSandbox placement 与 container 输入
sandbox_allow_local_fallback显式 opt-in;默认 false
sandbox_warm_pool_size非负 warm capacity;默认 0
package_image_registrypackage_registry_auth_filepackage_registry_insecure派生 image repository、Worker 侧 registry credential 与显式不安全 registry 开关
package_image_builderdockerpodmank8s;必须同时配置 package_image_registry
package_local_cache_ttl_secs非零的本地派生 image retention
acp_clis, acp_default_cli, acp_session_blob_root接受的本地 ACP Brain 与 portable Session storage
dispatch_wakenonepg-notifynats
dispatch_wake_channel, nats_url, dispatch_ownerwake channel/broker 与唯一 claim owner

任务说明见配置 Sandbox tier使用 NATS wake signal

Observability 与内容采集

产品命令从同一 TOML 读取 log_filterlog_formattrace_fileotlp_* / otel_* 字段、content_capturecontent_redactionlog_formattextjson;内容采集是 offstructuredfull。启用 full 之前先配置保留与隐私 policy。

最小 profile

本地 AllInOne:

role = "all-in-one"
mode = "local"
data_dir = "/srv/awaken"
bind = "127.0.0.1:8080"
run_local_pool = true
no_browser = false

无数据库 Worker:

role = "worker"
mode = "server"
worker_server = "http://awaken-coordinator:8080"
worker_credential_material_root = "/run/awaken/credentials"
worker_credential_trust_domain = "awaken.worker"

启动前校验

sequenceDiagram
  participant U as 你
  participant C as awaken config
  participant S as Strict file schema
  participant V as Deployment validator
  participant P as Selected process

  U->>C: 提供 command、override 与 config path
  C->>S: 解析已知字段
  S->>V: 解析 default 与 role constraint
  alt 配置有效
    V-->>U: 打印脱敏值与来源
    U->>P: 使用同一 config path 启动
  else 解析或校验失败
    V-->>U: 退出,并指出字段或 constraint
  end
结果系统行为需要的动作
awaken config --config <path> 打印脱敏配置File、default 与 command override 组成一份有效 profile检查 effective role 与 path,再启动同一进程
报告未知字段、退役 role 或不兼容字段Service 启动前停止校验修正该字段,或把它移到上表所示配置 owner
本地 profile 需要 embedded schema migrationLocal startup 自动执行
共享 server schema 缺失或过期Application startup 只检查,不写 DDL使用同一配置运行 awaken database migrate,再启动 application process
启动报告 listener address 已被占用Bind 失败并退出,不会自动选择其他端口修改 --portbindinternal_bind 后重新启动

部署 TOML 刻意不提供 Hand placement。获得 claim 的 Worker 会实现 Session 冻结的 Environment,而该 Environment 是 Native 或 ACP 执行所用唯一 Hand 的 owner。独立的 awaken-sandbox hand relay 是底层执行原语,不是第二条 产品 placement 路径。