我使用22个提示规划整个MuleSoft到.NET迁移。以下是攻略。
Source: Dev.to
请提供您希望翻译的完整文本(除代码块和 URL 之外的内容),我将为您翻译成简体中文并保持原有的 Markdown 格式。
上周我坐下来将 MuleSoft 集成项目迁移到 .NET 10 Minimal APIs。
与其花费数天时间手动编写迁移规范、架构文档和 agent‑team 定义,我与 Claude 只用一次对话就完成了。
22 次提示。 这就是从“我该从哪里开始?”到完整结构化、已审计、可直接执行的迁移工具包——包括扫描器 agents、分阶段提示、集成模式和项目脚手架——所需的全部。
下面是任何开发团队都可以遵循的可复用剧本。
Phase 1 – 探索并让 AI 与你的代码库接地
大多数开发者会在 AI 对话开始时一次性提供大量文字解释所有细节。不要这么做。
-
先宽泛地提问。 让 AI 先提出一种方法,然后再引导它。
What is the best approach to convert MuleSoft to C# Minimal API? -
Claude 返回了一个扎实的通用策略(Strangler Fig 模式、connector‑mapping 表、分阶段方法)。这是个好基础,但太通用——它并不知道我的技术栈。
-
把它指向真实代码:
Check my project on GitHub for the target architecture经过一次失误(指错了仓库)后,我纠正了它:
That's not the right repo – try this URL instead
关键洞察: 当 AI 以你的真实项目为依据,而不是假设情境时,输出会显著提升。它阅读了我的解决方案结构、EF Core 配置、Polly 设置以及 Azure AD 认证后,随后生成的所有内容都具备上下文准确性。
要点: 不要用散文解释你的架构。把 AI 指向你的代码,让它自行读取。
Phase 2 – 请求与你的工具链匹配的交付物
AI 已经了解代码库后,要求它以你将使用的确切格式输出。
Can you create detailed agent‑team definitions I can use with Claude Code CLI?
Claude 生成了一整套 agent‑team 角色、提示和协作规则——专为 Claude Code 的 agent teams 功能定制。在审阅时,我发现了一个缺口:
We're missing a step – we need to scan and inventory the source project before migrating anything
因为我没有提到 Phase 0 扫描器,AI 并未自行想到它。标记出缺口后,它构建了一个完整的 5‑agent 扫描器团队,该团队:
- 解析 MuleSoft XML 流程
- 编目 DataWeave 转换
- 将连接器映射到 NuGet 包
- 生成分阶段迁移计划
随后,我向它提供了它无法自行发现的领域知识:
I already know the integrations we use – Azure AD auth, Key Vault for secrets, Graph API for user management, Box for documents, and SQL Server stored procedures
扫描器预先注入了针对每个集成的可直接使用的 C# 实现模式——包括强类型客户端、DI 注册和配置示例。没有幻觉 API,也没有过时的 SDK 调用。
要点: AI 读取不到你的生产系统。把你已知的内容喂给它,它会在此基础上构建,而不是盲目猜测。
Phase 3 – 挑战架构决策
大多数人会接受 AI 的首个答案。不要。 与它辩论。
我最初建议:
I think we should copy the source code into a docs folder inside the project
随后我立刻质疑自己的想法:
Actually no – the source should stay external and never be modified. Ask the user for the path at runtime instead
这段 30 秒的来回产生了根本更好的设计:
- MuleSoft 项目保持只读,保留在原始位置。
- 扫描器在运行时请求路径(
MULE_SOURCE_PATH)。 - 没有文件复制,没有意外修改,保持了清晰的分离。
AI 立刻适应:它重写了 Phase 0 初始化提示,更新了所有 agent‑team 定义以引用 MULE_SOURCE_PATH,并为目录结构添加了验证。
要点: 最佳架构来源于辩论,而非单次提示。推动对话,持续质疑。
Source: …
ck on the AI – and on yourself. The AI is fast enough to restructure everything in seconds.
Phase 4 – 随着上下文变化演进设计
真实项目在你规划时并不会停下来。会话中途,项目结构发生了变化。
我意识到:
This is a reusable template, not the actual project – we need a scaffolding step that renames everything
Claude 立刻为 Bash 和 PowerShell 生成了初始化脚本。随后另一个会话使用 dotnet new 模板引擎和 sourceName 以不同方式处理它:
Another session is handling the template config already, so we don't need the init script anymore – drop it
大多数开发者会忘记告诉 AI 这件事,结果会出现重复工作、冲突的做法以及引用已删除文件的文档。一个提示——“drop it”——让 Claude:
- 删除脚本
- 更新所有交叉引用
- 简化工作流
要点: 当其他环节已经处理了某个关注点时,告诉 AI 删除 相关工作——而不是继续添加。带有陈旧引用的 AI 生成文档比没有文档更糟。
Phase 5 – 上线前的质量门
AI 可能会出现一致性错误。在六个相互关联的文件中,你会发现命名泄漏、破损的交叉引用和过时的路径。一定要在发布前审计。
-
第一个问题:
The generated config still has hardcoded project name references – it needs to use generic placeholders -
仓库结构变更:
These files belong in a separate toolkit repo – here's the folder structure, reorganize everything to fit -
最后、最重要的提示:
Do a deep review of every file – check cross‑references, path consistency, typos, and logical errors
Claude 进行了一次 全项目审查,纠正了占位符、更新了路径、修复了命名不匹配,并生成了一个干净、可直接提交的工具包。
要点: 在认为输出“完成”之前,运行系统化的、AI 辅助的审计。
TL;DR 操作手册
| 阶段 | 操作 | 原因 |
|---|---|---|
| 1 – 探索 | 将 AI 指向真实仓库(URL) | 基于上下文的定位可产生准确的输出 |
| 2 – 可交付物 | 请求具体的产物(代理‑团队定义、脚本) | 你将获得可用的代码,而非文字描述 |
| 3 – 挑战 | 对每个设计建议进行辩论 | 打造更稳固的架构 |
| 4 – 演进 | 当外部工具更改计划时,更新 AI | 避免重复或过时的工作 |
| 5 – 质量关卡 | 进行深入的跨文件审计 | 在发布前捕获一致性错误 |
遵循这些步骤,你就能把数周的迁移工作转化为 单次 AI 驱动的冲刺。迁移愉快!
跨所有文件的 2 分钟审计
它发现并修复了:
- 不一致的占位符名称(
{Name}与{ProjectName}) - 快速参考提示中错误的 MuleSoft 目录路径
- JSON 配置中的拼写错误(
EnterprisId) - 过时的 “copied to” 表述,应该改为 “accessible at”
- 交叉引用中的旧文件名
如果没有这次最终审计,我本会发布指向不存在文件且使用了错误 MuleSoft 路径的文档。审计仅用了 2 分钟。否则以后会花数小时调试。
要点: 切勿在没有最终审计的情况下发布 AI 生成的输出。让 AI 检查自己的工作——当你明确要求时,它在捕捉自身错误方面出奇地有效。
The Playbook
以下是提炼后的模式:
- 先宽泛 – 让 AI 提出方案;不要一开始就过度指定。
- 以真实代码为依据 – 指向你实际的仓库,而不是假想的仓库。
- 请求可用的产物 – 要求的格式必须是你的工具实际能消费的。
- 提供领域知识 – 告诉它你对集成、约束和系统的了解。
- 识别缺口 – 审查输出并标记缺失的内容。
- 讨论架构 – 对假设(包括你自己的假设)提出质疑。
- 演进计划 – 当上下文变化时,更新 AI 并移除过时的工作。
- 审计所有内容 – 在交付前要求进行彻底的跨文件审查。
- 22 条提示。一次对话。
- 一个完整的迁移工具包,包含扫描代理、分阶段迁移提示、集成模式、设置指南和项目脚手架——全部已验证、交叉引用,随时可用。
AI 并没有取代我的判断。它是对我的判断的放大。每一个架构决策都是我的。AI 只是让这些决策能够在数小时而非数天内执行。