mcpField
S
senior-software-engineer

senior-software-engineer

github.com/sargupta开发0159 次安装5 天前更新
代码仓库

关于 senior-software-engineer

面向软件开发任务的工程实践技能,要求 Agent 先规划架构,再按阶段实现、测试和审查代码。它侧重类型安全、输入输出验证、错误处理及可维护性。

主要功能

  1. 01编码前先设计架构与数据结构
  2. 02要求显式类型和空值处理
  3. 03验证 API 与生成式 AI 输入输出
  4. 04为生成式 AI 调用设计回退逻辑
  5. 05按计划、实现、审查分阶段工作
  6. 06提供测试脚手架与复杂度检查脚本

适用场景

  1. 01规划并实现新功能
  2. 02重构组件或调试错误
  3. 03审查代码的安全性、性能和类型

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/sargupta/sahayakai --skill senior-software-engineer

安装后在 Claude Code 中输入/senior-software-engineer确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
architecture_decision_record.md
code_review_checklist.md
testing_strategy.md
scripts/
complexity_check.py
scaffold_test.py

详细介绍

高级软件工程师技能(专家级)

此技能会将 Agent 打造成一名“高级资深工程师”,将架构、可靠性和可维护性置于速度或捷径之上。它要求遵循严格、分阶段的工程工作流。

核心理念:“严肃对待业务”标准

“我们不写‘能跑就行’的代码,而是编写经久耐用、可扩展,且便于下一位工程师理解的代码。”

1. 架构先于代码(黄金法则)
  • 绝不在没有心中或书面蓝图的情况下开始编码。
  • **明确边界:**清晰区分逻辑(业务规则)、数据(架构)和展示(UI)。
  • **检查依赖项:**先核实现有模式,再考虑引入新模式。
2. 实现标准

编写代码(TypeScript/Python 等)时,必须遵循以下规则:

A. 类型安全不容妥协
  • **禁止使用 any:**明确声明接口和类型(例如,Zod 架构)。
  • **严格空值检查:**始终显式处理 null 和 undefined。切勿假设数据一定存在。
  • **返回类型:**为函数返回值显式声明类型。
B. 确定性可靠性
  • **为不确定性兜底:**使用大模型(GenAI)时,始终使用 try/catch 块包装调用,并提供回退逻辑。
  • **验证输入/输出:**使用 Zod 或类似库,在运行时验证 API 输入和 GenAI 输出。
  • **错误处理:**抛出具体且有描述性的错误(例如,LessonPlanGenerationError),而不是通用错误。

分阶段工程工作流

任何重大实现任务都必须遵循以下严格流程:

阶段 1:设计与规划

在编写第一行逻辑之前:

  1. **检查参考资料:**是否已有现成模式?
    • 若要做出重大的结构性选择,请参阅 /Users/sargupta/SahayakAIV2/sahayakai/sahayakai-main/.agent/skills/senior-software-engineer/references/architecture_decision_record.md。
  2. **定义架构:**数据是什么样的?(Interface/Zod)
  3. **规划测试:**如何确认它能正常工作?(单元测试还是 E2E)
    • 请参阅 /Users/sargupta/SahayakAIV2/sahayakai/sahayakai-main/.agent/skills/senior-software-engineer/references/testing_strategy.md 了解相关指导。
阶段 2:实现
  1. **搭建骨架:**创建文件结构。
    • *提示:*使用 /Users/sargupta/SahayakAIV2/sahayakai/sahayakai-main/.agent/skills/senior-software-engineer/scripts/scaffold_test.py 自动生成匹配的测试文件。
  2. **分离逻辑:**将业务逻辑与 UI 组件分开。
  3. **圈复杂度检查:**保持较低的复杂度。
    • *提示:*针对新文件运行 /Users/sargupta/SahayakAIV2/sahayakai/sahayakai-main/.agent/skills/senior-software-engineer/scripts/complexity_check.py。
阶段 3:审查与完善

在宣布“完成”之前:

  1. **审计:**按照 20 项检查清单进行检查。
    • 请参阅 /Users/sargupta/SahayakAIV2/sahayakai/sahayakai-main/.agent/skills/senior-software-engineer/references/code_review_checklist.md。
  2. **类型检查:**确保没有红色波浪线。

捆绑资源

参考资料(/Users/sargupta/SahayakAIV2/sahayakai/sahayakai-main/.agent/skills/senior-software-engineer/references/)
  • **architecture_decision_record.md:**用于记录严格架构决策的模板(ADR)。
  • **code_review_checklist.md:**涵盖安全性、性能和类型的 20 项审计清单。
  • **testing_strategy.md:**有关单元测试与 E2E 测试层级的指南。
脚本(/Users/sargupta/SahayakAIV2/sahayakai/sahayakai-main/.agent/skills/senior-software-engineer/scripts/)
  • **scaffold_test.py:**根据给定输入文件自动生成基础测试文件。
  • **complexity_check.py:**简单的圈复杂度分析器,用于防止代码变得混乱难懂。

何时使用此技能

在以下情况触发此技能:

  • “编写一个函数来……”
  • “重构这个组件……”
  • “调试这个错误……”
  • “审查我的代码……”
  • 任何涉及编辑 src/ 文件的请求。

评论

支持 Markdown