尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Ruflo DDD 领域建模 Agent 实战指南:从有界上下文到防腐层的建模流水线
Ruflo DDD 领域建模 Agent 实战指南从有界上下文到防腐层的建模流水线【免费下载链接】ruflo The original agent meta-harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory, self-learning intelligence, RAG integration, and native Claude Code / Codex / Hermes and many more Integrated项目地址: https://gitcode.com/GitHub_Trending/cl/ruflo导读本文围绕 Ruflo 插件体系中的ruflo-ddd领域建模 Agentdomain-modeler展开完整讲解它如何在 Ruflo 协调蜂群swarm中把业务领域转化为结构良好的有界上下文Bounded Context软件模型——包括职责边界、六步建模工作流、DDD 构建块词汇、有界上下文关系、按上下文的目录结构、基于 AgentDB 的领域图持久化以及与/ddd命令、ddd-context/ddd-aggregate/ddd-validate三个技能和smoke.sh契约的配合方式。读完本文你将掌握如何在 Ruflo 中指挥domain-modeler完成从领域语言提取、上下文划分、聚合根设计、领域事件定义到防腐层ACL生成的完整建模流水线并理解其记忆复用与神经学习闭环的运作机制。一、domain-modeler在 Ruflo 蜂群中的定位domain-modeler是ruflo-ddd插件暴露的唯一 Agent其定义文件位于 agents/domain-modeler.mdfrontmatter 明确声明--- name: domain-modeler description: Domain-Driven Design specialist -- maps domains to bounded contexts, designs aggregate roots, defines domain events, and generates anti-corruption layers model: sonnet ---nameAgent 标识供蜂群协调器与ruflo-swarm按名调度description面向调度器与用户的能力摘要一句话覆盖四项核心能力——上下文映射、聚合根设计、领域事件定义、防腐层生成model: sonnet该 Agent 固定使用 sonnet 模型执行建模任务属于成本/能力折中的默认配置。插件级定位在 README.md 中有明确定义ruflo-ddd 是一个“Domain-Driven Design scaffolding”插件将业务领域转换为带聚合根、值对象、领域事件、仓储与防腐层的结构化有界上下文并把领域模型以可导航图的形式存入 AgentDB分层节点 因果边表达上下文依赖。ADR-00010001-ddd-contract.md进一步注明该插件自身不带 MCP 工具是纯代码脚手架插件表面由 1 个 Agent 3 个技能 1 个/ddd命令6 个子命令 1 份REFERENCE.md组成。安装方式仓库 README 提供claude --plugin-dir plugins/ruflo-ddd二、四大职责领域模型 Agent 的核心能力domain-modeler提示词明确列出四项职责这也是建模工作的验收边界Map domains to bounded contexts— 识别子域subdomain、统一语言ubiquitous language与上下文边界回答“系统该切成几块、每块说什么语言”的问题Design aggregate roots with invariants— 在一致性边界内设计聚合根把业务规则invariants固化到聚合根上所有变更必须经过聚合根Define domain events and commands— 把状态迁移建模为显式事件使领域中的“发生的事”成为可持久化、可订阅、可追溯的一等公民Generate anti-corruption layer interfaces— 生成防腐层接口把外部系统与遗留代码的模型翻译成本上下文的统一语言防止外部模型“污染”领域内核。三、六步建模工作流Scaffold workflow提示词规定domain-modeler按以下六步推进建模这是整个建模流水线的骨架步骤动作产出1Identify domain language— 从需求中抽取名词、动词、规则构建术语表glossary统一语言词汇表2Map bounded contexts— 聚合相关概念定义边界与关系partnership、customer-supplier、conformist、ACL、open-host、published-language上下文地图3Define aggregates with invariants— 为每个上下文识别聚合根及其业务规则聚合根与不变量清单4Wire domain events— 定义跨上下文边界的事件绘制事件流事件流图5Generate repository interfaces— 每个聚合根一个仓储接口标准 CRUD 领域专属查询仓储接口集6Create ACL for external integrations— 编写在统一语言间翻译的适配器接口防腐层接口这六步与仓库中的技能一一对应步骤 2 对应/ddd-context技能创建上下文目录步骤 3/4/5 对应/ddd-aggregate技能的实体、事件、仓储脚手架步骤 6 的落地结构位于每个上下文目录的infrastructure/子目录ACL 适配器所在地。四、DDD 构建块词汇表建模时的规则基准提示词将“DDD building-block 词汇表Entity / Value Object / Aggregate Root / Domain Event / Repository / Domain Service / Factory 及其关键规则”外包到 REFERENCE.md 按需读取——这是刻意为之的 token 优化设计。REFERENCE.md 第一张表即完整词汇表构建块用途关键规则Entity有身份与生命周期的对象基于身份判等可变状态Value Object无身份、不可变的描述符按值判等无副作用Aggregate Root带不变量的一致性边界所有变更必须经过聚合根Domain Event“已发生之事”的记录不可变过去时命名携带载荷Repository每个聚合根的持久化抽象一个聚合根对应一个仓储Domain Service无状态的跨实体操作逻辑跨多个聚合时使用Factory复杂对象创建封装构造不变量REFERENCE.md 还提供一套命名约定供建模时统一风格聚合根PascalCase 单数名词Order、Customer、Invoice领域事件PascalCase 过去时OrderPlaced、InvoiceVoided、CustomerEmailChanged命令PascalCase 祈使式PlaceOrder、VoidInvoice仓储接口聚合根RepositoryOrderRepository领域服务动词名词ServicePriceQuoteService、InventoryAllocationService。五、有界上下文关系六种协作模式提示词步骤 2 要求定义上下文间关系REFERENCE.md 提供了六种标准关系及其适用场景这也是/ddd map输出上下文地图时的分类依据关系何时使用Partnership伙伴关系两个上下文同生共死需要协调发布节奏Customer-Supplier客户-供应商上游提供、下游消费下游需求被尊重Conformist遵奉者下游逐字遵从上游模型不做翻译Anti-Corruption Layer防腐层下游通过统一语言互译来保护自己Open Host Service开放主机服务上游为多个下游发布稳定协议Published Language发布语言共享交换格式常与 Open Host Service 配对六、按上下文的目录结构模型落地的标准布局无论是domain-modeler提示词引用的“per-context directory structure”还是 REFERENCE.md 与ddd-context技能仓库中反复出现的标准目录如下src/context-name/ domain/ entities/ # 实体与聚合根 value-objects/ # 不可变值对象 events/ # 领域事件 services/ # 领域服务 repositories/ # 仓储接口 application/ # 用例 / 应用服务 infrastructure/ # 仓储实现、ACL 适配器 index.ts # 上下文公共 APIddd-context技能skills/ddd-context/SKILL.md把这一布局细化为一组生成动作校验名称上下文名必须是 kebab-case且不能与src/下已有上下文冲突创建目录结构生成上述domain/含 5 个子目录、application/、infrastructure/生成 barrel 索引每个子目录一个index.tsdomain/index.ts再统一 re-export顶层src/context-name/index.ts作为上下文公共 API——注意它只 re-export domain 与 application绝不暴露 infrastructure这正是保护领域内核的机制之一写入领域图通过 AgentDB 分层存储把新上下文登记进领域模型图汇报确认创建并列出生成文件。mcp__plugin_ruflo-core_ruflo__agentdb_hierarchical-store --parent domain --child context:context-name --relation contains七、聚合根脚手架ddd-aggregate技能ddd-aggregate技能skills/ddd-aggregate/SKILL.md将提示词“Design aggregate roots with invariants”落成可重复执行的脚手架流程参数为context aggregate-name校验确认src/context/domain/存在否则建议先跑/ddd-contextPre-task 钩子npx claude-flow/clilatest hooks pre-task --description DDD aggregate: aggregate-name in context创建聚合根实体src/context/domain/entities/aggregate-name.entity.ts包含唯一 ID 字段、带不变量校验的构造函数、强制业务规则的领域方法、基于身份的equals()创建值对象src/context/domain/value-objects/aggregate-name-id.value-object.ts不可变 ID 值对象工厂方法 校验并建议补充聚合属性所需的其余值对象创建仓储接口src/context/domain/repositories/aggregate-name.repository.ts含findById、save、delete只定义接口不实现实现属于 infrastructure 关注点创建领域事件aggregate-name-created.event.ts与aggregate-name-updated.event.ts均含过去时事件名、时间戳、聚合 ID 与载荷创建单测桩aggregate-name.entity.test.ts覆盖构造不变量、领域方法、相等性用例命名遵循should [behavior] when [condition]更新 barrel 导出把新文件登记进相关index.ts写入领域图agentdb_hierarchical-store --parent context:context --child aggregate:aggregate-name --relation contains并在tasks命名空间记忆建模决策Post-task 钩子hooks post-task --task-id ddd-aggregate-aggregate-name --success true --train-neural true把本次成功模式喂给神经训练。由此domain-modeler每次建模产出的“聚合根 值对象 仓储接口 事件 测试桩”五件套具有完全一致的形态便于ddd validate统一校验。八、/ddd命令六个子命令与实操ddd-modeler提示词未直接覆盖命令层但实际建模过程由/ddd命令驱动commands/ddd.md# 上下文管理 ddd context create name # 脚手架新有界上下文目录内部调用 /ddd-context 技能 ddd context list # 扫描 src/*/domain/ 列出所有有界上下文 # 聚合脚手架 ddd aggregate context name # 生成聚合根实体、值对象、仓储接口、事件、测试桩内部调用 /ddd-aggregate ddd event context name # 在目标上下文创建领域事件类 # 校验与可视化 ddd validate # 检查领域边界违规内部调用 /ddd-validate 技能 ddd map # 可视化带关系的上下文地图其中ddd context list的底层实现就是一条扫描命令find src -maxdepth 2 -name domain -type d | sed s|src/||;s|/domain||ddd event的产物约定为src/context/domain/events/name.event.ts必须包含过去时事件名、时间戳、载荷接口与静态工厂方法并登记到上下文的 event index。ddd map则分三步扫描src/下所有有界上下文 → 分析 import 检测上下文间依赖 → 输出上下文地图每个上下文及其聚合、upstream/downstream 关系、ACL/shared kernel/published language、以及“直接 import 而非事件/ACL 通信”的边界违规。九、边界守护ddd validate技能的五大检查ddd-validate 技能把“检测跨上下文 import 违规与聚合不变量问题”拆成 5 项结构化检查发现上下文扫描src/*/domain/跨边界违规检查对每个上下文扫描.tsimport凡直接 import 到其他上下文的domain/内部如src/other-context/domain/entities/...即违规允许的是从对方公共index.ts应用层import。仓库给出了可复制的检测命令for ctx in $(find src -maxdepth 2 -name domain -type d | sed s|src/||;s|/domain||); do grep -rn from [\].*src/ src/$ctx/ --include*.ts | grep -v src/$ctx/ || true done聚合不变量检查扫描聚合根实体的公开 setter 是否绕过校验、可变公开属性是否缺失不变量检查、子实体是否被直接访问必须经由聚合根事件命名约定事件应过去时命名OrderCreated而非CreateOrder、不可变无公开 setter、必须携带聚合 ID仓储模式接口必须在domain/repositories/不能在infrastructure/实现在infrastructure/不能在domain/且每个聚合根恰好一个仓储。检查结果以违规表输出文件路径、行号、违规类型、建议按BOUNDARY/INVARIANT/EVENT/REPOSITORY分类并汇总严重级别最后把结果写入tasks命名空间并触发hooks post-task --task-id ddd-validate --success true --store-results true。十、把领域模型存成图AgentDB 分层存储与因果边提示词在 “Reference” 一节明确指出DDD 构建块词汇、每上下文目录结构、以及“用于持久化领域图的 AgentDB hierarchical-store / causal-edge 命令”都在 REFERENCE.md 中。领域图存储的核心命令如下REFERENCE.md 原文# 存储有界上下文层级 mcp__plugin_ruflo-core_ruflo__agentdb_hierarchical-store --parent domain \ --child context:ordering --relation contains mcp__plugin_ruflo-core_ruflo__agentdb_hierarchical-store --parent context:ordering \ --child aggregate:order --relation contains # 存储上下文依赖 mcp__plugin_ruflo-core_ruflo__agentdb_causal-edge --from context:ordering \ --to context:inventory --type depends-on mcp__plugin_ruflo-core_ruflo__agentdb_causal-edge --from context:ordering \ --to context:payments --type publishes-events-toREFERENCE.md 建议跨项目标准化的边类型有四种depends-on— 上下文依赖另一上下文存在同步耦合publishes-events-to— 即发即忘的事件流translates-via-acl-to— 由防腐层中介翻译conforms-to— 下游逐字采纳上游模型。这样建模产出的领域模型是一张可导航的图后续会话可借助路径搜索 Agent 遍历复用同时ddd-patterns命名空间见 README 的 Namespace coordination 一节专门存放可跨项目复用的有界上下文形态、聚合模板与事件词汇通过memory_*工具按命名空间路由访问。十一、记忆复用与神经学习闭环domain-modeler提示词把“开工前查记忆、收工后存模式”固化为两条命令链。开工前——检索既有模型与模式Memory 一节npx claude-flow/clilatest memory search --query bounded context DOMAIN --namespace patterns npx claude-flow/clilatest memory search --query aggregate DOMAIN --namespace tasksTools 一节还提供基于工具层的检索与持久化npx claude-flow/clilatest memory search --query domain MODEL --namespace patterns npx claude-flow/clilatest memory store --key domain-CONTEXT --value MODEL --namespace tasks收工后——沉淀成功模式Neural learning 一节npx claude-flow/clilatest hooks post-task --task-id TASK_ID --success true --train-neural true npx claude-flow/clilatest memory store --key ddd-pattern-CONTEXT --value APPROACH --namespace patterns配合ddd-aggregate/ddd-validate技能内的 pre/post-task 钩子可见每一次建模任务都会触发--train-neural true让未来的领域模型继承已验证的成功形态形成“建模 → 校验 → 沉淀 → 复用”的闭环。十二、Token 优化设计为什么 REFERENCE 要独立成文件提示词在 Reference 一节明确解释了这一架构取舍把精确规则与目录布局的查找数据移出 Agent 提示词每次 spawn 大约节省 40% token——依据是 ADR-098 Part 2v3/docs/adr/ADR-098-plugin-capability-sync-and-optimization.md。REFERENCE.md 就是这份“按需读取”的配套参考词汇表、上下文关系、目录结构、AgentDB 图存储配方、命名约定全部集中于此domain-modeler提示词只保留职责、工作流与工具入口需要查精确规则时再让 Agent 去读 REFERENCE。ADR-0001 的 Consequences 一节也确认reference 数据集中化REFERENCE.md遵循 ADR-098 Part 2 的 token-diet 模式而 ruflo-adr 的 ADR-00010001-adr-plugin-pattern.md 是 REFERENCE.md token-diet 的先例。十三、质量契约smoke.sh十项结构检查插件以 scripts/smoke.sh 为验证契约README Compatibility 一节bash plugins/ruflo-ddd/scripts/smoke.sh期望输出10 passed, 0 failed。十个检查项ADR-0001 也有对应描述即插件质量的硬约束plugin.json声明版本 0.2.1 且包含acl、value-objects、repositories、mcp关键字三个技能ddd-context、ddd-aggregate、ddd-validate齐全且 frontmatter 含name:、description:、allowed-tools:domain-modelerAgent 与ddd命令文件存在/ddd命令覆盖 6 个子命令context、aggregate、event、validate、map、listREFERENCE.md存在且非空README 将claude-flow/cli固定到 v3.6majorminorREADME 引用了 ruflo-agentdb 的 Namespace conventionREADME 声明了ddd-patterns命名空间归属ADR-0001 存在且状态为 Accepted技能中无通配符工具授权allowed-tools: *被禁止。第 10 项特别值得注意技能清单中的allowed-tools均为显式枚举如ddd-context允许Bash Read Write Edit Grep Glob加 AgentDB / memory 工具安全上不允许通配授权。十四、跨插件协作建模产物的下游去向domain-modeler提示词的 Cross-references 一节给出三条协作链路ruflo-adr把领域决策上下文划分理由、关系选型、不变量取舍沉淀为架构决策记录ruflo-adr 插件 提供 ADR 生成与维护能力ruflo-testgen为聚合与服务生成领域层单元测试与ddd-aggregate技能自带的测试桩形成“先桩后补”的双层覆盖ruflo-swarm与架构师 Agent 协调保证系统级设计与领域建模对齐。此外README 的 Related Plugins 还列出ruflo-agentdb是命名空间约定的所有者、也是领域图的后端存储ruflo-sparc的 Architecture 阶段复用 DDD 有界上下文模式ruflo-migrations让迁移边界与聚合根对齐。十五、命名空间协调与兼容性前提ruflo-ddd 插件拥有ddd-patterns这个 AgentDB 命名空间kebab-case命名约定遵循 ruflo-agentdb ADR-0001plugins/ruflo-agentdb/docs/adrs/0001-agentdb-optimization.md 的 “Namespace convention” 一节pattern、claude-memories、default等保留命名空间严禁被遮蔽。兼容性方面CLI 固定为claude-flow/cliv3.6 majorminor所有命令均以npx claude-flow/clilatest或mcp__plugin_ruflo-core_ruflo__*工具形式调用——实际运行时需确保仓库已安装对应 CLI 版本且 ruflo-core 插件的 AgentDB / memory MCP 工具可用agentdb_hierarchical-store、agentdb_causal-edge均来自 ruflo-core 插件命名空间。结语从提示词到可执行的建模流水线domain-modeler的价值不在于它是一段提示词而在于它把 DDD 的抽象方法论锚定到 Ruflo 的具体执行层六步建模工作流有对应的技能与目录结构领域模型通过 AgentDB 分层节点与因果边变成可导航图ddd validate与smoke.sh从代码边界与插件结构两个维度守护质量记忆搜索、--train-neural true钩子与ddd-patterns命名空间让每一次建模都成为下一次建模的经验输入。对希望在企业级 TypeScript 项目中引入 DDD 纪律的团队而言直接参考 ruflo-ddd 插件目录 的 Agent、技能、命令与契约设计即可复刻一条完整、可验证、可持续进化的领域建模流水线。【免费下载链接】ruflo The original agent meta-harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory, self-learning intelligence, RAG integration, and native Claude Code / Codex / Hermes and many more Integrated项目地址: https://gitcode.com/GitHub_Trending/cl/ruflo创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

OpenCore Legacy Patcher 实战指南:让老 Mac 免费装上最新版 macOS

OpenCore Legacy Patcher 实战指南:让老 Mac 免费装上最新版 macOS

OpenCore Legacy Patcher 实战指南:让老 Mac 免费装上最新版 macOS 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher OpenCore Legacy Patcher&…

📅 2026/9/10 8:34:42
nanobot Gateway源码解析:从消息标准化到多渠道集成实践

nanobot Gateway源码解析:从消息标准化到多渠道集成实践

最近看到不少人在折腾openclaw平替,其中nanobot是被讨论得比较多的一个。这篇是nanobot源码解析系列的第七篇,正好讲到Gateway与多渠道集成,我把自己读代码、跑通微信和飞书的完整过程整理出来,给后面想接多渠道的朋友做一个参考。…

📅 2026/9/10 8:29:41
Spring Boot旅游管理系统开发实战:从架构到订单流程全解析

Spring Boot旅游管理系统开发实战:从架构到订单流程全解析

做了这么多年Java后端,我拆解过不少管理系统项目,但要论最适合入门、最能覆盖完整业务链路的题目,旅游管理系统绝对排得上前三。这个编号00639的springboot旅游管理系统,就是一个非常典型的完整项目:Spring Boot做后端…

📅 2026/9/10 8:29:41
MORE NEWS

更多资讯

📰

CANN/GE算子编译接口

aclopCompile 【免费下载链接】ge GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前…

📰

激光SLAM超帧技术解析:从单帧配准到连续联合优化的工程实践

前阵子把一台低速巡检机器人拉去地下车库跑测试,用的还是那套“单帧配准+局部地图”的经典 LiDAR SLAM 方案。结果很有意思:过弯道的地方漂了十几厘米,到了两边全是立柱的区域,位姿估计曲线直接出现锯齿。查了半天&…

📰

CVAT 计算机视觉标注工具部署指南:3步启动图像与视频数据标注平台

CVAT 计算机视觉标注工具部署指南:3步启动图像与视频数据标注平台 【免费下载链接】cvat Computer Vision Annotation Tool (CVAT) is a leading platform for building high-quality visual datasets for vision AI. It offers open-source, cloud, and enterprise…

📰

Diffusers 模块化流水线(Modular Pipelines)之 Pipeline Blocks 完全指南

Diffusers 模块化流水线(Modular Pipelines)之 Pipeline Blocks 完全指南 【免费下载链接】diffusers 🤗 Diffusers: State-of-the-art diffusion models for image, video, and audio generation in PyTorch. 项目地址: https://gitcode.c…

📰

GitHub MCP Server 在 Copilot IDE 中的安装指南:Visual Studio、JetBrains、Xcode 与 Eclipse 完整配置

GitHub MCP Server 在 Copilot IDE 中的安装指南:Visual Studio、JetBrains、Xcode 与 Eclipse 完整配置 【免费下载链接】github-mcp-server GitHubs official MCP Server 项目地址: https://gitcode.com/GitHub_Trending/gi/github-mcp-server GitHub MCP …

📰

Codex前端协作五层分工法:结构、逻辑、契约、质量、交付

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬