声明式工作流配置
Declarative Workflow Configuration
通过YAML/JSON声明式定义工作流行为,支持继承、引用解析和Schema校验
子问题
1.配置继承与覆盖
2.运行时风格切换
3.Schema校验
4.环境变量与配置融合
5.$style.* 引用解析:配置中动态引用风格参数
6.Agent 注册表与动态过滤:按 style_switch 字段自动启停增强 Agent
7.双重开关机制:环境变量全局开关与运行时 StyleProfile 开关的 AND 逻辑
各项目的解法1 solutions
Signals
横向对比
| 维度 | vibe-blog |
|---|---|
| 配置格式 | YAML 工作流模板 + Python dataclass StyleProfile 双层配置 |
| 继承机制 | DeclarativeEngine.resolve_extends() 递归合并,default_style 浅合并 + phases 按 key 覆盖 |
| 校验方式 | 手写 Python 校验函数(validate_workflow_config),检查 phases/layers/default_style 结构 |
| 引用解析 | $style.* 前缀递归替换,将配置中的风格引用解析为 StyleProfile 实际值 |
| Agent 过滤 | agent_registry.yaml 声明 style_switch,WorkflowEngine 按 StyleProfile enable_* 字段动态过滤 |
| 开关层级 | 环境变量(全局) AND StyleProfile(运行时) 双重开关,运维与用户各控一层 |
最佳实践
1.工作流行为与代码分离,用配置文件声明
2.支持extends继承减少配置重复
3.用 dataclass 工厂方法提供预设套餐,from_xxx() 保持向后兼容
4.Agent 注册表区分 critical/enhancement 类型,critical 始终激活不受配置影响
5.环境变量控制全局开关(运维层),StyleProfile 控制运行时开关(用户层),两层 AND 逻辑