本节课没有语音摘要。
屏幕 1:结束时你将能够做什么
导向 开发者模块 5 · 2 分钟 结束时你将能够做什么
记录好构建过程,使下一次参与能够在此基础上进行,而不是从头开始。
在前三个模块中,你构建了一个生产级代理,将其连接到 Claude Code 并设置了正确的权限和上下文控制,还建立了通过安全审查的 MCP 连接。每一个都是可运行的构建。
本模块涵盖构建完成后会发生什么。你可以在下一次参与中从头开始重建,或者将其打包一次,以便下一个团队只需进行配置。第二条路径让你有时间投入新工作,而不是重复重建。
在本模块结束时,你将能够:
1 将可运行的解决方案打包为可重用的加速器,无论是参数化的代理模板、可配置的 MCP 服务器,还是便携的评估套件,以便下一次参与配置资产而不是完全重建。 2 通过文档化的渠道贡献工具、模式或修复,并准备好让维护者接受,将私有资产转化为共享基础设施。 3 选择 Claude 工作负载在第一方 API、Amazon Bedrock、Google Vertex AI 和第三方平台上的运行位置,并对发布的内容进行版本控制,确保模型或提示的更改不会无声地破坏生产环境。 4 比较这些平台的延迟、合规性和成本,使选择能够通过采购和安全团队的审批,而不是团队默认的选择。 5 构建一个应用程序,将多个 Claude 部署协调到一个工作流程中,并确定其范围,以便数据和身份边界在安全或合规审查下得到维护。
本模块面向那些已经拥有可运行构建的开发者,现在需要使其持久化。你务实、代码优先、模式导向,之前的模块假设并基于此构建。此时,你可以编写生产级代理,在 Claude Code 中配置它,建立通过安全审查的 MCP 连接,并通过评估证明其有效性。本模块不再重新教授这些内容。它从代码正确运行的时刻开始,提出更困难的问题:其他人能否重用它,维护者能否接受它,它能否在模型更新后存活,以及安全或采购团队能否批准其运行位置。这里的工作较少涉及编写代码,更多是关于使完成的代码可重用、可部署并对未编写它的人具有防御性的决策。
“构建”在本模块中的含义
本模块中的所有内容都围绕一个反复出现的差距展开:一个可运行的构建尚未成为一个能够经受重用、审查或部署的构建。在开发中,模板运行了,贡献解决了你的问题,模型响应了,平台易于构建,每个平台都通过了其自身的测试。这些都不是最终状态。相同的模板必须为从未与你交谈的团队进行配置。相同的贡献必须可由维护者验证,而无需重建任何内容。相同的模型必须被固定,以便上游更改是一个决定而不是意外。相同的平台必须通过客户的驻留和合规审查。相同的连接平台必须在审计下保持其信任边界。本模块中的每个主题都是同一课程的不同版本:代码开始运行的地方正是本模块工作的起点。你可能没有预料到,这些决策中有许多是由客户现有的云、合规姿态和审查流程驱动的。
免责声明 / 教育内容通知
我们构建了这个开发者课程模块 5:加速器与知识产权贡献,以帮助你使用 Claude 完成实际工作。请将其视为教育内容。它不构成法律、财务或其他专业建议,因此请将所学内容适应于你自己的情况。我们的产品和服务发展迅速,因此某些内容可能包含错误或已过时;请记得在 Anthropic 的网站或文档中验证。课程中使用的示例和场景是说明性的,通常是虚构的。如果课程材料提到公司或产品,并不意味着 Anthropic 认可它们,它们认可 Anthropic,或者我们有关联。另请注意,你对 Anthropic 产品和服务的使用受我们的条款、政策和文档的约束;如果本课程中的任何内容与之冲突,以它们为准。
屏幕 2:打包可运行的构建,以便下一次参与从资产开始
教学打包以供重用·16 分钟 打包可运行的构建,以便下一次参与从资产开始 你在之前的模块中完成了一个可运行的构建:一个代理循环、一个配置好的 MCP 服务器、一个证明提示有效的评估。团队中最耗时和昂贵的是为下一个客户重建相同内容所花费的工程时间。 加速器的作用:保留可重用的部分并分离其余部分 加速器是一个打包的解决方案,以便未来的参与从一个可运行的基础开始,而不是从一个空白仓库开始。用蓝图术语来说,这是为重用而打包:将特定于参与的代码与可重用的核心分离,并将其余部分参数化。取一个可运行的构建,分离出特定于客户的部分,并将它们作为带有文档化默认值的参数暴露出来。然后,资产进行配置而不是完全重写。在构建新鲜时进行重用打包比几个月后重建意图更便宜,因为知道某个值为何硬编码的人已经离开了。 大多数可重用的工作分为不同的资产类型,每种类型的打包方式不同 大多数可重用的工作分为本模块中使用的三类:模板、可配置的服务器或便携的评估套件。每种类型包含不同类型的工作,需要以自己的方式进行打包。选择错误的类型可能会使资产看起来可重用,但仍然难以应用。
资产类型它捆绑的内容正确打包所需的内容 代理模板来自可运行代理的系统提示、工具模式和循环结构。将特定于域的值提取到配置中,并带有文档化的默认值,以便新团队设置值而不是编辑循环。 MCP 服务器包服务器公开的工具及其输入,以及安装团队控制的范围。记录每个工具的输入,并让安装团队设置范围,以便服务器无需代码编辑即可安装到新环境中。 评估套件证明资产有效的分级测试集和评判标准。将数据集和评判标准一起发布,以便新团队可以在自己的上下文中运行它们并确认资产仍然有效。相同的评估套件也充当部署时的关卡。当你将新模型版本推广到生产环境时,在版本上线前将其与固定的基线分数进行比较。
将代理作为一组松散脚本发布而不是模板是最常见的错误方法。脚本运行了,因此看起来可重用,但每个特定于客户的值都埋在不同的文件中,下一个团队复制并分叉它们而不是配置一个资产。 记录代码和假设 代码描述行为。文档涵盖未来的构建者无法从阅读源代码中可靠推断的内容:资产对其环境的假设、它期望的输入、它已经处理的故障模式,以及定义它是否仍然有效的评估。没有这些,下一个团队将资产视为黑匣子并重建它。 将审计日志作为包的一部分捆绑 受监管客户的审查者会询问资产接触的数据、它运行的身份以及它留下的日志。没有这些的加速器通过演示但在第一次安全审查时停滞。将审计日志视为包的一部分。 打包清单 在打包时将此清单放在构建旁边。每列是你为每个资产做出的一次决策。
资产类型要参数化的内容要记录的内容要为审计捆绑的内容 代理模板每个客户更改的值:提示、路径、范围、凭据引用和阈值。环境假设、预期输入、处理的故障模式以及定义有效的评估。接触的数据、运行的身份以及资产操作的日志。 MCP 服务器范围、凭据引用和每个客户的路径。每个工具的预期输入、范围边界和处理的故障模式。接触的数据、运行的身份以及资产操作的日志。 评估套件每个客户或环境更改的阈值和数据集路径。评判逻辑、分数的含义以及资产固定的基线。接触的数据、运行的身份以及资产操作的日志。
处理得当 在构建新鲜时进行参数化,将一次交付转化为下一个参与在几小时内配置的资产。
增加成本或复杂性 将通用部分与特定于客户的部分分离并记录假设,确实会增加第一次构建的时间。
使用不同的方法 对于客户永远不会重用的一次性构建,打包开销不值得:发布构建并继续前进。
屏幕 3:快速发布但无法重用的模板
注意打包以供重用·2 分钟 快速发布但无法重用的模板
设置 硬编码发布更快,而你在截止日期下工作,因此你将演示所需的值硬编码到代码中。模板运行了。这正是为什么直到下一个团队尝试重用它时,没有人再看它。
这是一个事后分析,写在一个团队在重用尝试失败后写的方式,以便你可以在任何人将其标记为错误之前看到失败的形成。 发生了什么 一个团队为客户参与构建了一个代理模板,并按时发布了它。为了赶上截止日期,特定于客户的值直接写入了代码:仓库路径、模型名称、审查阈值以及一些特定于该客户领域的提示片段。模板运行了,参与结束了,构建进入了共享仓库,标记为可重用。 几个月后,第二个团队为类似的参与选择了它。他们无法配置它,因为没有可配置的内容。每个需要更改的值都嵌入在循环中,第二个团队在不阅读整个文件的情况下无法看到它。没有文档说明哪些值是特定于客户的,哪些是关键的。也没有捆绑的评估,因此即使他们猜测了编辑,也没有任何内容确认模板在新上下文中仍然有效。他们不得不从头开始重写。
为什么失败了 构建在运行的那一刻被视为完成,而不是在它可以重用的那一刻。在截止日期下,硬编码是合理的决定,并且从未被重新审视。一个可运行的模板不会宣布它无法重用。成本仅在第二个团队支付了重建费用时出现,而打包本应防止这种情况,以及他们发现模板是死胡同所花费的时间。
需要注意什么 一个可运行的模板尚未为重用打包。这些是不同的完成状态。警告标志是缺少三件事:没有参数用于特定于客户的值,没有文档描述假设,也没有捆绑的评估证明资产在不同上下文中仍然有效。在构建新鲜时打包资产。在掌握特定于客户的知识的人离开后,重建这些知识是最昂贵的。
屏幕 4:检查点 1:修复损坏的加速器模板
检查点打包可重用的加速器·4 分钟 检查点 1:修复损坏的加速器模板 现在试试。以下是另一个团队应该重用的代理模板。它有一个缺陷:特定于客户的值被硬编码在应该参数化的地方。 发布的模板
def build_review_agent(): return Agent( model="claude-opus-4-8", system_prompt=SYSTEM_PROMPT, tools=[read_file, run_linter], repo_path="/home/acme/checkout-service", # 客户仓库 ) (在构建时确认当前模型 ID 在 platform. claude. com/docs/en/about-claude/models。) 识别硬编码的值,然后编写修正后的函数签名和替换它的参数化行。
与模型答案比较 暂时跳过
跳过如果需要,继续前进,但在累积任务之前回来。后面的检查点会在两层负载下植入相同硬编码缺陷的两个版本,更难发现。
屏幕 5:将资产从私有重用转移到共享基础设施,维护者可以接受
教学贡献回馈·12 分钟 将资产从私有重用转移到共享基础设施,维护者可以接受 你已经完成了使资产可共享的大部分工作。当你为团队内部重用打包时,你提取了参数,写下了假设,并捆绑了评估。参数显示资产可以配置而不是重写。文档化的假设告诉维护者资产期望的环境。捆绑的评估为他们提供了一种确认它仍然有效的方法。为内部重用打包的资产已经接近维护者接受它所需的内容。 贡献渠道设计用于接收该打包资产。它携带版本、安装步骤和组件作为一个单元,以便从未与你交谈的团队可以安装它并获得相同的可运行设置。 将贡献与为其构建的渠道匹配 贡献回馈意味着通过文档化的渠道将资产从私有重用转移到共享基础设施。每个渠道都是为特定类型的贡献构建的。Claude Cookbook 是一个 GitHub 仓库,包含专注的参考实现。它设计用于自包含的单模式或多模式实现,清晰地展示并端到端运行。开源的 MCP 服务器和工具各自存在于自己的仓库中,有自己的贡献约定。将完整的多组件应用程序发送到 Cookbook 是不匹配的。仓库设置为审查一个专注的模式而不是整个应用程序,因此如此大的提交不符合审查者的期望,将会停滞。第一步是将贡献与为其构建的渠道匹配。将完整的应用程序放在专注示例的位置是贡献从未被审查的最常见原因之一。 使验证贡献成为可能的原因 维护者接受他们可以验证的贡献。门槛由他们需要检查的内容设定,而不是代码有多聪明。四件事使验证成为可能:
1代码做一件事。一个庞大的贡献迫使审查者在评估之前重建你的意图。 2一个示例显示它运行。审查者不应构建一个框架来查看行为。 3一个测试证明它有效。测试让维护者验证结果,而无需自己重现推理。 4一个简短的陈述命名假设。否则,第一次失败将成为维护者的问题。
权利和归属先于技术审查 许可和归属决定贡献是否可以被接受,这就是为什么它们先于技术审查。从客户参与中携带的代码可能对其去向有约束。确认你有权贡献它,并归功于你构建的任何内容,是贡献必须首先通过的门槛。跳过这一点会将贡献转化为法律团队必须稍后解决的问题。 这里的示例是客户服务代理案例。在参与期间构建的可重用对话处理模式被剥离客户特定内容,并准备为 Cookbook 的通用示例。贡献回馈动作在本课程的所有三个角色中共享。你作为开发者的工作是技术准备:专注的代码、示例、测试、假设和权利检查。参与上下文来自更广泛的团队。 贡献准备参考
渠道维护者检查的内容许可和归属示例和测试门槛 Cookbook 用于专注示例,或工具或服务器自己的仓库用于工具或修复。代码做一件事,并且他们可以完整阅读。确认你有权从参与中贡献代码,并归功于先前的工作。一个可运行的示例加上一个证明行为的测试,而不仅仅是描述它。
处理得当 打包资产只需要示例、测试和权利检查即可成为其他人构建的共享基础设施。
增加成本或复杂性 清除维护者门槛和许可门是在使代码为你运行之上的实际工作。
使用不同的方法 当代码带有你无法清除的参与许可约束时,不要贡献它:升级给所有者。
屏幕 6:维护者无法验证的拉取请求
注意贡献回馈·2 分钟 维护者无法验证的拉取请求
设置 你用解决你问题的确切代码打开了贡献。这是自然的选择,因为它在你
No flashcards for this lesson.
No quiz for this lesson yet.