A

source-driven-development

作者 addyosmani

source-driven-development 技能将框架相关编码建立在官方文档之上,帮助你在实现前先验证模式是否正确。它非常适合在 React、Vue、Next.js、Svelte、Angular 等技术栈中进行 source-driven-development 相关使用,尤其是在正确性、来源可追溯性和版本敏感决策很重要的时候。

Stars18.8k
收藏0
评论0
收录时间2026年4月21日
分类代码生成
安装命令
npx skills add addyosmani/agent-skills --skill source-driven-development
编辑评分

该技能得分 82/100,说明它很适合希望获得带来源引用、以文档为依据的实现指导的目录用户。仓库提供了足够清晰的操作说明,足以支撑在正确性要求较高的框架编码场景中安装使用;不过用户应预期这是一个以文档为先的工作流,而不是自动化或工具驱动型技能。

82/100
亮点
  • 触发条件清晰:描述明确指出,当进行框架/库相关工作且需要权威、可引用来源的代码时,应使用它。
  • 操作指引扎实:`SKILL.md` 说明了 `DETECT → FETCH → IMPLEMENT → CITE` 的分步流程,并定义了哪些场景不适合使用。
  • 安装决策价值高:仓库内容较充实(正文 7.8k、多个标题、无占位标记),并且重点在于减少过时实现或凭记忆编码带来的错误。
注意点
  • 未包含配套支持文件或脚本,因此执行完全依赖书面说明,而不是打包好的工作流。
  • 它覆盖面较广且以文档为中心,因此只想追求速度或做通用逻辑任务的用户,可能会觉得它没必要,甚至有些大材小用。
概览

source-driven-development 技能概览

source-driven-development 做什么

source-driven-development 技能帮助你先查官方文档,再编写框架特定代码,并在实现中引用或复现这些来源。它适用于“差不多对了”还不够的场景:脚手架代码、重复出现的应用模式、升级迁移,以及任何会随着框架版本变化而改变正确答案的功能。

适合谁使用

如果你正在用 React、Vue、Next.js、Svelte、Angular 或类似工具开发,并且希望减少过时模式,source-driven-development skill 就很适合你。它尤其适合生成表单、路由、认证、状态管理、数据获取和项目脚手架相关代码的 agent。

它和普通提示词有什么不同

普通提示词可能会基于训练数据生成看起来合理的代码;而这个技能会把流程推向“先验证、后实现”:先识别技术栈,再查官方来源,然后基于这些来源完成实现。对于生产环境代码、版本敏感 API,以及需要关注来源可信度的 code review 场景,这种方式更可靠。

如何使用 source-driven-development skill

在你的 agent 环境中安装这个技能

先按仓库里 skills 的安装流程操作,然后在向 agent 请求代码之前,把 source-driven-development 加载到上下文中。典型的 source-driven-development install 流程通常是先执行仓库的 skill manager 命令,再读取技能文件本身,这样 agent 才能按照预期工作流执行。

把任务改写成以来源为先的提示词

要获得更好的 source-driven-development usage,请把框架、已知版本、运行时环境和精确目标都告诉模型。好的输入类似:“使用 source-driven-development,基于 Next.js App Router 15,用官方文档只添加一个受保护的 dashboard 路由,并说明每种模式对应的来源。” 不好的输入只是“做个 auth”。技术栈和功能描述越具体,agent 需要猜测的就越少。

先读对文件

先看 SKILL.md,再检查它引用的任何关联文档、示例或仓库说明。对于这个仓库来说,没有额外的 helper folders 需要追踪,所以核心任务就是严格遵循 SKILL.md 中的流程,并把它映射到目标应用自己的约定上。

能提升输出质量的工作流

采用一个 4 步循环:先识别技术栈和版本,再获取官方文档,然后实现最小可行且正确的版本,最后验证结果是否仍然符合文档。如果你是在要求生成代码,请一并给出约束,比如现有目录结构、包管理器、框架模式,以及是否需要在注释里或单独说明中提供引用。

source-driven-development skill 常见问题

source-driven-development 只适合大型框架吗?

不是。source-driven-development guide 在 API 频繁变化、或者同一功能有多种竞争模式时最有价值,这在现代框架和库里很常见。对于纯语言层面的修改,或者完全不依赖框架版本的逻辑,它的作用就没那么大。

应该用它替代普通代码提示词吗?

当正确性和可追溯性比速度更重要时,就该用它。普通提示词适合简单、与版本无关的修改;但如果你希望生成的代码能经得起当前官方文档的检验,source-driven-development for Code Generation 这种做法更合适。

它对新手友好吗?

友好,只要你能说清楚框架和功能。新手会受益,因为这个技能能减少模式猜测,但他们仍然需要提供应用技术栈和目标行为;否则 agent 可能会去验证错误的文档。

什么情况下不适合用?

不要把它用在小改动、纯逻辑,或者用户明确要求“不要验证、只要最快答案”的场景。如果任务本身不依赖某个特定框架版本,额外的来源检查通常只会增加开销,收益却不大。

如何改进 source-driven-development skill

给 agent 更准确的来源目标

提升质量最大的办法,就是明确写出精确的框架、版本和功能。例如,说“official Next.js App Router docs for server actions”,而不是泛泛地说“Next.js stuff”。目标越准确,越不容易查错来源,最终代码也越准确。

先把输出约束说清楚

如果你需要引用,请提前说明格式:是放在行内注释里、简短 source note 里,还是简短实现说明里。也要明确哪些内容不能改,比如现有类型、文件名或 UI 行为。这样可以让技能保持 source-driven,同时避免过度重写你的代码库。

注意常见失败模式

主要风险包括:用了错误版本的文档、把不同版本的模式混在一起,或者把实现过度套到某个教程示例上。如果第一版答案看起来很泛,要求 agent 重新核对官方文档,并把方案收窄到你当前的精确技术栈。

从来源迭代,不要从猜测迭代

如果第一版结果已经接近,但还不理想,可以要求第二轮在保留已验证部分的前提下,只调整缺失的行为。对于 source-driven-development,最好的改进循环是:先澄清技术栈,再确认来源,然后一次只针对一个具体变更去细化实现。

评分与评论

暂无评分
分享你的评价
登录后即可为这个技能评分并发表评论。
G
0/10000
最新评论
保存中...