SuperAPI AI 工具集

tooling-engineer

编程与开发

查看项目

更新于 10-15 08:47

技能介绍

用途

Tooling Engineer 提供构建开发者生产力工具的专业能力,涵盖命令行界面、IDE 扩展、构建系统优化以及本地开发环境自动化。其核心目标是改善开发者体验和工作流效率。

主要能力

该技能覆盖以下方向:

  • 构建命令行工具和实用程序
  • 创建 IDE/编辑器扩展(VS Code、JetBrains)
  • 优化构建系统和编译时间
  • 自动化重复性开发任务
  • 搭建本地开发环境
  • 创建代码生成器和脚手架工具
  • 构建 linter、formatter 和静态分析工具
  • 改善开发者上手体验

使用方式

在以下场景中调用该技能:

  • 构建命令行工具和实用程序
  • 创建 IDE/编辑器扩展(VS Code、JetBrains)
  • 优化构建系统和编译时间
  • 自动化重复性开发任务
  • 搭建本地开发环境

不要在以下场景调用:

  • 构建 CI/CD 流水线 → 使用 devops-engineer
  • 创建生产应用 → 使用相应的开发者技能
  • 编写运维 shell 脚本 → 使用相应的 PowerShell/Bash 技能
  • 构建 MCP 服务器 → 使用 mcp-developer

决策框架

开发者工具需求判断:

  • 命令行 → 带参数解析和子命令的 CLI
  • IDE 集成 → 目标 IDE 的扩展/插件
  • 构建优化 → 缓存、并行化、增量构建
  • 代码生成 → 模板 + AST 操作
  • 环境搭建 → 容器或脚本式配置
  • 自动化 → 任务运行器或自定义工具

核心工作流

1. CLI 工具开发

  1. 定义命令结构和参数模式
  2. 选择 CLI 框架(Commander、Click、Cobra 等)
  3. 实现核心功能,保持清晰分离
  4. 添加帮助文本和使用示例
  5. 实现配置文件支持
  6. 添加 shell 补全脚本
  7. 打包分发(npm、pip、brew 等)
  8. 编写包含常见用例的文档

2. IDE 扩展开发

  1. 确定目标 IDE 和扩展 API
  2. 定义扩展能力和触发条件
  3. 搭建扩展项目结构
  4. 实现核心功能(命令、提供程序、视图)
  5. 添加配置选项
  6. 在不同编辑器状态下测试
  7. 发布到扩展市场
  8. 收集反馈并迭代

3. 构建系统优化

  1. 分析当前构建以识别瓶颈
  2. 为高开销操作实现缓存
  3. 尽可能启用并行执行
  4. 为常见变更设置增量构建
  5. 添加构建指标和监控
  6. 为团队记录构建系统
  7. 衡量改进并迭代

最佳实践

  • 以 Unix 哲学设计 CLI(可组合、专注)
  • 提供合理默认值并允许覆盖
  • 包含 verbose/debug 模式以便排查问题
  • 尽可能让工具支持离线工作
  • 快速失败并给出清晰错误信息
  • 对工具进行版本管理并保持向后兼容

反模式

  • 功能蔓延 → 保持工具专注于单一任务
  • 静默失败 → 始终清晰报告错误
  • 无配置 → 允许针对不同需求进行定制
  • 手动安装 → 提供包管理器分发
  • 错误信息质量差 → 包含上下文和建议的修复方案

适用场景与限制

该技能适用于开发者工具链的构建与优化,包括 CLI、IDE 扩展、构建系统、代码生成、环境搭建和自动化任务。它不适用于 CI/CD 流水线、生产应用开发、运维 shell 脚本或 MCP 服务器构建。关于该技能的具体收费、价格、平台支持范围等事实暂未提供。