| name | speclite-brownfield-nodejs-backend-tech-stack-digger |
| description | Analyze brownfield Node.js backend projects to derive technology stack from code facts and write a Markdown report to a user-specified output directory. Use when user mentions 'Node.js tech stack', 'NestJS stack', 'Express stack', 'package lock audit', 'Node 后端技术栈', 'Node.js 技术栈', 'NestJS 技术栈', 'npm 依赖分析', '基于代码事实', or asks to generate a Node backend stack inventory. Capable of package-manager detection, lockfile version resolution, Node runtime evidence extraction, framework detection, and evidence-linked Markdown generation. |
| allowed-tools | ["Read","Write","Bash","Grep","Glob","Agent"] |
| metadata | {"version":"1.0.0","author":"fancyliu","catalog":"speclite"} |
Speclite Brownfield NodeJS Backend Tech Stack Digger
[Overview(技能说明)]
Speclite Brownfield NodeJS Backend Tech Stack Digger 是 1-analysis 阶段的 Node.js 后端技术栈挖掘工作流。它继承 speclite-brownfield-backend-tech-stack-digger 的通用报告契约,并专门处理 npm / pnpm / Yarn / Bun、lockfile、Node runtime、TypeScript、Express、NestJS、Fastify、Koa、ORM、队列、缓存、安全认证和测试等 Node.js 生态事实。
[Core Capabilities(核心能力)]
- Node 项目发现:识别 package workspace、monorepo、service package、backend entrypoint、scripts.start、Docker / Procfile 启动命令。
- 包管理与版本解析:优先读取 package-lock.json、pnpm-lock.yaml、yarn.lock、bun.lockb 和 package manager 字段,解析实际依赖版本。
- 运行时识别:提取 Node.js 版本来源,包括 engines.node、.nvmrc、.node-version、Volta、Docker image、CI setup。
- 框架识别:识别 Express、NestJS、Fastify、Koa、Hapi、Apollo Server、Next.js API route 等后端框架与入口。
- 数据与中间件分析:识别 Prisma、TypeORM、Sequelize、Mongoose、Knex、Drizzle、Redis client、BullMQ、Kafka、RabbitMQ、对象存储和 HTTP client。
- 安全与工程能力分类:识别 Passport、JWT / jose、OAuth/OIDC、validation、logging、metrics、OpenAPI、Jest / Vitest / Supertest 等事实。
- 证据化 Markdown 输出:按 assets/nodejs-tech-stack-report-template.md 生成编号清单、证据摘要、未确认项和核验命令。
[Workflow(执行流程)]
本 Skill 使用 Node.js 专属顺序分析工作流。详细包管理器矩阵、框架探测和版本解析规则见 references/nodejs-tech-stack-workflow.md。
1. 解析用户输入,确认 `{project-root}`、`{output-dir}` 和 `{report-name}`。若 `{output-dir}` 缺失,必须先询问。
2. 读取通用报告契约:输出必须兼容 `speclite-brownfield-backend-tech-stack-digger` 的章节结构和证据原则。
3. 扫描 Node.js 构建入口:`package.json`、workspace config、lockfile、runtime version file、Dockerfile、CI pipeline 和 service package。
4. 可执行解析优先:根据包管理器运行 `npm ls`、`pnpm list`、`yarn list` 或 `bun pm ls`;失败时记录原因并退回 lockfile / manifest 静态解析。
5. 读取 runtime config 与源码入口,补充框架、server、database、Redis、MQ、scheduler、storage、auth、API docs、observability 和 test facts。
6. 合并事实并标注来源。`package.json` 的 semver range 不等于实际安装版本;外部服务端版本必须来自 deploy evidence。
7. 写入 `{output-dir}/{report-name}`,默认 `nodejs-backend-tech-stack.md`;最终回复给出路径、关键版本和未确认项。
[Notes(注意事项)]
- 本 Skill 只分析 Node.js 后端技术栈;Java / Spring Boot、Python、Go、.NET 等生态应使用各自专属 Skill 或通用后端契约。
- lockfile 是依赖实际版本的最高优先级来源;package.json 中的 ^、~、range、workspace protocol 只能作为声明事实。
- Node.js runtime 版本不能由依赖版本推断,必须来自 engines、runtime file、Docker image、Volta、CI 或用户提供证据。
- Next.js 只有在存在 API route、route handler、server action 或 custom server 证据时才写为后端框架。
- Redis Server、PostgreSQL Server、Kafka Broker、S3 / MinIO Server 等外部服务端版本不能由 Node client 版本反推。
- 生成报告必须包含 Generated By(生成来源) 标注:speclite-brownfield-nodejs-backend-tech-stack-digger。
[Generation Metadata(生成信息)]
本 Skill 由 skills-creator 从通用后端技术栈报告契约中拆分 Node.js 生态规则生成。后续修改必须同步更新 SKILL.md、SKILL.en.md、CHANGELOG.md,并同步 forge/ 与 SpecLite assets 源目录。