用途
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 工具开发
- 定义命令结构和参数模式
- 选择 CLI 框架(Commander、Click、Cobra 等)
- 实现核心功能,保持清晰分离
- 添加帮助文本和使用示例
- 实现配置文件支持
- 添加 shell 补全脚本
- 打包分发(npm、pip、brew 等)
- 编写包含常见用例的文档
2. IDE 扩展开发
- 确定目标 IDE 和扩展 API
- 定义扩展能力和触发条件
- 搭建扩展项目结构
- 实现核心功能(命令、提供程序、视图)
- 添加配置选项
- 在不同编辑器状态下测试
- 发布到扩展市场
- 收集反馈并迭代
3. 构建系统优化
- 分析当前构建以识别瓶颈
- 为高开销操作实现缓存
- 尽可能启用并行执行
- 为常见变更设置增量构建
- 添加构建指标和监控
- 为团队记录构建系统
- 衡量改进并迭代
最佳实践
- 以 Unix 哲学设计 CLI(可组合、专注)
- 提供合理默认值并允许覆盖
- 包含 verbose/debug 模式以便排查问题
- 尽可能让工具支持离线工作
- 快速失败并给出清晰错误信息
- 对工具进行版本管理并保持向后兼容
反模式
- 功能蔓延 → 保持工具专注于单一任务
- 静默失败 → 始终清晰报告错误
- 无配置 → 允许针对不同需求进行定制
- 手动安装 → 提供包管理器分发
- 错误信息质量差 → 包含上下文和建议的修复方案
适用场景与限制
该技能适用于开发者工具链的构建与优化,包括 CLI、IDE 扩展、构建系统、代码生成、环境搭建和自动化任务。它不适用于 CI/CD 流水线、生产应用开发、运维 shell 脚本或 MCP 服务器构建。关于该技能的具体收费、价格、平台支持范围等事实暂未提供。