AIDAWORK / SEQUENCE

产品目录单向发布(ADR-0096)

独立图页 ↗
机制说明(SoT)图是辅读 · 结论以说明与证据为准

本主题回答:一次带 agentId 的请求,如何从 Desktop/API 入口走到可注入 orchestrate 的 Turn 依赖。权威在 Config DB 的 agents 行与 Providers catalog;本主题不覆盖 dest/W1、多实例扩缩容、或按会话自选模型。

本页可直接往下读完整机制说明,不需要「演示 / 播放故事」。术语不熟先看 术语表。

先读机制说明,结论以说明与证据为准 · 基于固定代码版本核验 · 部署状态另行确认

机制说明(全文)

agents 配置如何串起运行时链路

读法

本主题回答:一次带 agentId 的请求,如何从 Desktop/API 入口走到可注入 orchestrate 的 Turn 依赖。权威在 Config DB 的 agents 行与 Providers catalog;本主题不覆盖 dest/W1、多实例扩缩容、或按会话自选模型。

主路径:

  1. 入口 — Desktop / HTTP API 携带 agentId(及租户、用户、角色、部门)。
  2. resolveAgent 门 — 租户 entitlement → 非 archived → 角色可见 → 部门可见;任一失败 → agent_unavailable。
  3. resolveAgentPipeline 组装本轮执行面:
    • Model:resolveLiveLlmRoute 读 Providers catalog(active + supported_models[0])为 Platform Live Model SoT;agents.provider_id / model_id 只是 Admin「唯一生效」投影(ADR-0059),不是运行时权威。
    • Capabilities:skill_ids + tool_domains → loadAgentCapabilities(读工具挂载;写工具主要进 catalog,经 discoverTools)。
    • Prompt:instructions + skills + write catalog → assembleSystemPrompt。
    • Context policy:租户默认与 Agent 覆盖按键合并。
  4. 注入 orchestrate — prepareExecution / resolveAndRun 把 pipeline 结果编入 deps;循环结束 ≠ 业务结束(Interaction / Run / Workflow 仍各自推进)。

侧路径:

  • Admin「唯一生效」→ activateLiveModel 改 catalog 并投影全部 active Agent → 下一调用 / 受控 reload 读新值;进行中的 Run 可能仍持旧进程态(reload 可 409,配置已提交)。
  • Child 复入同一 resolveAgentPipeline,用 activeSkillNames 收窄,不得扩大 Agent 授权。

相关:control-plane(厚控制面)、prompt-llm(组装与路由细节)、capability-plugins(工具/插件面)、desktop-client(入口与本机会话)。

视图

  • main — 入口 → 门控 → pipeline 四段 → orchestrate;旁挂热切换与 Child 收窄。

证据与范围

  • aida-agent · packages/agent/src/config/services/agent-resolver.ts L130–160 · resolveAgentForSession · e2adc9a3c325
  • aida-agent · packages/agent/src/gateway/resolve-and-orchestrate.ts L106–362 · resolveAgentPipeline · e2adc9a3c325
  • aida-agent · packages/agent/src/config/services/default-llm-service.ts L117–147 · resolveLiveLlmRoute · e2adc9a3c325
  • aida-agent · docs/adr/0059-platform-live-model.md L8–27 · Platform Live Model · e2adc9a3c325
  • aida-agent · packages/agent/src/gateway/load-agent-capabilities.ts L81–121 · loadAgentCapabilities · e2adc9a3c325
  • aida-agent · packages/agent/src/gateway/orchestrator-runtime.ts L372–400 · resolveAndRun/orchestrate · e2adc9a3c325
  • aida-agent · packages/agent/src/config/services/provider-service.ts L437–467 · activateLiveModel · e2adc9a3c325
  • aida-agent · packages/agent/src/gateway/admin-config.ts L799–875 · activate-model reload · e2adc9a3c325
  • aida-agent · packages/agent/src/gateway/child-agent-readiness.ts L54–82 · activeSkillNames · e2adc9a3c325
  • aida-agent · packages/agent/src/llm/model-router.ts L128–158 · Exclusive live · e2adc9a3c325

结论来自固定版本的静态源码与合同阅读;实现存在、默认开关和生产启用分别判断。本站代码证据面板列出声明状态与具体限制。

产品目录仓库所有(ADR-0096,钉点 e2adc9a3c325)

  • Accepted:产品目录(能力、产品 Agent、Skill、标准场景包)以仓库 master 为准,只经 catalog:plan / catalog:apply 单向发布;Admin 产品字段只读(写接口 409 product_catalog_code_owned);租户层保留订阅 / Edition / 授权。产品口径上 AidaWork = VMS/MSP 产品包(Pack×有界 Edition),MSP ≠ 单纯多租户,见 product-narrative(2026-10-29,非 tip 事实);接线校验用于发布与启动;运行时不再兜底缺失专属 Skill。见视图 catalog-publish。
  • 证据:aida-agent · docs/adr/0096-product-catalog-is-repo-owned.md L1–10 · Accepted · e2adc9a3c325;aida-agent · docs/adr/0096-product-catalog-is-repo-owned.md L29–36 · catalog:plan · e2adc9a3c325

机制说明

agents 配置如何串起运行时链路

读法

本主题回答:一次带 agentId 的请求,如何从 Desktop/API 入口走到可注入 orchestrate 的 Turn 依赖。权威在 Config DB 的 agents 行与 Providers catalog;本主题不覆盖 dest/W1、多实例扩缩容、或按会话自选模型。

主路径:

  1. 入口 — Desktop / HTTP API 携带 agentId(及租户、用户、角色、部门)。
  2. resolveAgent 门 — 租户 entitlement → 非 archived → 角色可见 → 部门可见;任一失败 → agent_unavailable。
  3. resolveAgentPipeline 组装本轮执行面:
    • Model:resolveLiveLlmRoute 读 Providers catalog(active + supported_models[0])为 Platform Live Model SoT;agents.provider_id / model_id 只是 Admin「唯一生效」投影(ADR-0059),不是运行时权威。
    • Capabilities:skill_ids + tool_domains → loadAgentCapabilities(读工具挂载;写工具主要进 catalog,经 discoverTools)。
    • Prompt:instructions + skills + write catalog → assembleSystemPrompt。
    • Context policy:租户默认与 Agent 覆盖按键合并。
  4. 注入 orchestrate — prepareExecution / resolveAndRun 把 pipeline 结果编入 deps;循环结束 ≠ 业务结束(Interaction / Run / Workflow 仍各自推进)。

侧路径:

  • Admin「唯一生效」→ activateLiveModel 改 catalog 并投影全部 active Agent → 下一调用 / 受控 reload 读新值;进行中的 Run 可能仍持旧进程态(reload 可 409,配置已提交)。
  • Child 复入同一 resolveAgentPipeline,用 activeSkillNames 收窄,不得扩大 Agent 授权。

相关:control-plane(厚控制面)、prompt-llm(组装与路由细节)、capability-plugins(工具/插件面)、desktop-client(入口与本机会话)。

视图

  • main — 入口 → 门控 → pipeline 四段 → orchestrate;旁挂热切换与 Child 收窄。

证据与范围

  • aida-agent · packages/agent/src/config/services/agent-resolver.ts L130–160 · resolveAgentForSession · e2adc9a3c325
  • aida-agent · packages/agent/src/gateway/resolve-and-orchestrate.ts L106–362 · resolveAgentPipeline · e2adc9a3c325
  • aida-agent · packages/agent/src/config/services/default-llm-service.ts L117–147 · resolveLiveLlmRoute · e2adc9a3c325
  • aida-agent · docs/adr/0059-platform-live-model.md L8–27 · Platform Live Model · e2adc9a3c325
  • aida-agent · packages/agent/src/gateway/load-agent-capabilities.ts L81–121 · loadAgentCapabilities · e2adc9a3c325
  • aida-agent · packages/agent/src/gateway/orchestrator-runtime.ts L372–400 · resolveAndRun/orchestrate · e2adc9a3c325
  • aida-agent · packages/agent/src/config/services/provider-service.ts L437–467 · activateLiveModel · e2adc9a3c325
  • aida-agent · packages/agent/src/gateway/admin-config.ts L799–875 · activate-model reload · e2adc9a3c325
  • aida-agent · packages/agent/src/gateway/child-agent-readiness.ts L54–82 · activeSkillNames · e2adc9a3c325
  • aida-agent · packages/agent/src/llm/model-router.ts L128–158 · Exclusive live · e2adc9a3c325

结论来自固定版本的静态源码与合同阅读;实现存在、默认开关和生产启用分别判断。本站代码证据面板列出声明状态与具体限制。

产品目录仓库所有(ADR-0096,钉点 e2adc9a3c325)

  • Accepted:产品目录(能力、产品 Agent、Skill、标准场景包)以仓库 master 为准,只经 catalog:plan / catalog:apply 单向发布;Admin 产品字段只读(写接口 409 product_catalog_code_owned);租户层保留订阅 / Edition / 授权。产品口径上 AidaWork = VMS/MSP 产品包(Pack×有界 Edition),MSP ≠ 单纯多租户,见 product-narrative(2026-10-29,非 tip 事实);接线校验用于发布与启动;运行时不再兜底缺失专属 Skill。见视图 catalog-publish。
  • 证据:aida-agent · docs/adr/0096-product-catalog-is-repo-owned.md L1–10 · Accepted · e2adc9a3c325;aida-agent · docs/adr/0096-product-catalog-is-repo-owned.md L29–36 · catalog:plan · e2adc9a3c325

代码证据

引用核验检查固定 commit 的文件与范围;实现结论来自代码阅读。自动检查不证明生产环境已启用。

已核验实现

resolveAgentForSession 按序门控:Agent 存在且非 archived → 租户 entitlement → 角色可见 → 部门可见;失败抛 AgentResolveError(AGENT_ARCHIVED / AGENT_NOT_AVAILABLE)。

aida-agentpackages/agent/src/config/services/agent-resolver.ts:134–1647f2e519936b57902d4907ed8026fe1ecdd146e82符号:resolveAgentForSession
已核验实现

resolveAgentPipeline 在 resolved Agent 上优先 facade.resolveLiveLlmRoute() 作为 primary;否则才回落到 agents.provider_id/model_id。Platform Live Model SoT 在 Providers catalog(ADR-0059);agents 两列仅为投影。

aida-agentpackages/agent/src/gateway/resolve-and-orchestrate.ts:382–4127f2e519936b57902d4907ed8026fe1ecdd146e82符号:resolveLiveLlmRoute
aida-agentpackages/agent/src/config/services/default-llm-service.ts:120–1507f2e519936b57902d4907ed8026fe1ecdd146e82符号:resolveLiveLlmRoute
aida-agentdocs/adr/0059-platform-live-model.md:12–277f2e519936b57902d4907ed8026fe1ecdd146e82符号:投影
已核验实现

Exclusive live:DbModelRouter 对 primary 同一 Provider 不把历史 supported_models 当 fallback;仅其他同 protocol active sibling Providers 可入链。

aida-agentpackages/agent/src/llm/model-router.ts:128–1587f2e519936b57902d4907ed8026fe1ecdd146e82符号:Exclusive live
aida-agentpackages/agent/src/llm/model-router.ts:20–507f2e519936b57902d4907ed8026fe1ecdd146e82符号:exclusive live
已核验实现

loadAgentCapabilities 用 agents.tool_domains 与 skill_ids(或 Child 的 activeSkillNames 收窄)过滤工具:读工具挂载到 rawTools,写工具主要进 writeToolCatalog;再 assembleSystemPrompt(instructions + skills + write catalog)。

aida-agentpackages/agent/src/gateway/load-agent-capabilities.ts:81–1217f2e519936b57902d4907ed8026fe1ecdd146e82符号:loadAgentCapabilities
aida-agentpackages/agent/src/gateway/load-agent-capabilities.ts:203–2437f2e519936b57902d4907ed8026fe1ecdd146e82符号:writeToolCatalog
已核验实现

resolveAgentPipeline 合并 context policy 后返回 LLM/tools/prompt;OrchestratorRuntime.resolveAndRun → prepareExecution 调用 pipeline,再注入 orchestrate;循环结束不等于 Interaction/Run/Workflow 业务结束。

aida-agentpackages/agent/src/gateway/resolve-and-orchestrate.ts:316–3567f2e519936b57902d4907ed8026fe1ecdd146e82符号:resolveContextPolicySafe
aida-agentpackages/agent/src/gateway/orchestrator-runtime.ts:408–4367f2e519936b57902d4907ed8026fe1ecdd146e82符号:orchestrate
aida-agentpackages/agent/src/gateway/orchestrator-runtime.ts:779–8067f2e519936b57902d4907ed8026fe1ecdd146e82符号:resolveAgentPipeline
已核验实现

Admin activateLiveModel(唯一生效)停用兄弟 Provider、把 model 提到 supported_models[0],并投影全部 active agents.provider_id/model_id;activate-model 接口随后触发 runtime reload——配置已提交时 in-flight Run 可导致 reload 409/失败,进程态可能暂留旧值。

aida-agentpackages/agent/src/config/services/provider-service.ts:437–4677f2e519936b57902d4907ed8026fe1ecdd146e82符号:activateLiveModel
aida-agentpackages/agent/src/gateway/admin-config.ts:1006–10367f2e519936b57902d4907ed8026fe1ecdd146e82符号:RUNTIME_RELOAD_FAILED
aida-agentdocs/adr/0059-platform-live-model.md:27–277f2e519936b57902d4907ed8026fe1ecdd146e82符号:热切换
已核验实现

Child 经 isChildAgentReady / resolveAgentPipeline 复入同一管道,并以 activeSkillNames=[capability skill] 收窄;active skill 必须已绑定在 Agent.skillIds,不得扩大授权。

aida-agentpackages/agent/src/gateway/child-agent-readiness.ts:65–937f2e519936b57902d4907ed8026fe1ecdd146e82符号:activeSkillNames
aida-agentpackages/agent/src/gateway/load-agent-capabilities.ts:152–1827f2e519936b57902d4907ed8026fe1ecdd146e82符号:ACTIVE_SKILL_NOT_BOUND
已核验实现

ADR-0096(Accepted,2026-10-23):产品目录(能力、产品 Agent、Skill、标准场景包)以仓库 master 为准,只经 catalog:plan / catalog:apply 单向发布;Admin 产品字段改为只读(写接口 409 product_catalog_code_owned);租户层保留订阅/Edition/授权;接线校验用于发布与启动;运行时不再兜底缺失的专属 Skill。

aida-agentdocs/adr/0096-product-catalog-is-repo-owned.md:3–87f2e519936b57902d4907ed8026fe1ecdd146e82符号:Accepted
aida-agentdocs/adr/0096-product-catalog-is-repo-owned.md:27–347f2e519936b57902d4907ed8026fe1ecdd146e82符号:catalog:plan
aida-agentpackages/agent/src/gateway/admin-config.ts:593–6007f2e519936b57902d4907ed8026fe1ecdd146e82符号:product_catalog_code_owned
aida-agentpackages/agent/scripts/catalog-plan.ts:3–107f2e519936b57902d4907ed8026fe1ecdd146e82符号:catalog:plan