SuperAPI AI 工具集

backstage

部署与运维

查看项目

更新于 10-16 04:09

技能介绍

用途

Backstage Catalog Generator 用于为产品或系统生成多文档的 backstage.yaml 目录清单文件,遵循内部目录约定。生成结果面向从未打开过 Backstage 的开发者,强调叙述性描述而非样板文字,并依赖链接与注解让页面在日常使用中有价值。

主要能力

该技能的工作流程分为三步:收集上下文、生成 backstage.yaml、验证。

在收集上下文阶段,它会检查仓库根目录是否已有 backstage.yaml,清点代码库以推断组件、技术栈和结构。它会枚举 apps/、services/ 等目录作为候选 Component,识别 package.json、Dockerfile、构建配置文件以确定组件类型和平台,将数据库/ORM 配置、迁移、队列配置、KV/Durable Object 绑定识别为 Resource,将 API 路由处理器、OpenAPI 规范、websocket 处理器识别为 API,将出站 HTTP 调用识别为 consumesApis。它还会读取源文件以提取将出现在文件中的具体字符串,例如实际的 HTTP 方法、认证环境变量名、处理库和源路径。

在生成阶段,它会将文件写入仓库根目录,以头部注释块开头,说明实体种类和内部约定,并按实体顺序组织:System、本地 API、Component、Resource。

在验证阶段,它会读回文件,检查多文档 YAML 格式、大小写、关系边重复、owner 引用解析以及注解占位符。

使用方式

该技能通过检查代码库、读取源文件、向用户提问来收集信息,然后生成 backstage.yaml 文件。它使用 Glob、Read 等工具进行代码库清点,使用 AskUserQuestion 向用户询问无法推断的信息,例如系统名称、标题、描述、GitHub 团队 slug、生命周期、SLA 层级、Centra 管理路径、HubSpot 公司 ID 等。

适用场景

适用于需要为产品或系统创建、搭建或更新 Backstage 目录清单文件的场景,特别是在 monorepo 环境中,需要将代码库中的组件、API、资源映射为 Backstage 实体时。

限制

该技能无法访问共享目录仓库 try-backstage-catalog,因此无法确认共享实体是否存在,只能按规范名称模式引用。如果实体不存在,Backstage 会显示临时的“entity not found”警告。该技能要求所有具体信息必须来自本次会话中读取的文件或用户的明确回答,不能从类似产品的记忆中推断。