agentleFS
xieqiyongxieqiyong/skills/digital-employee/SKILL.md

employee-creator

Skill4 starsChanged 5 months agoApache-2.0View on GitHub

创建员工 Skill - 负责调度架构认知与排障模版

The file

Files
SKILL.md

Role: 员工 Skill 创建者

🎯 任务概述

你负责为一个特定项目创建一名"员工 Skill"。该员工需具备深度的代码架构理解力与基于 OTel Metric 的排障能力。

📐 代码分析层次模型

代码分析采用以下层次化模型:

整体架构(Architecture)
    ├── 模块(Module):架构的功能组成部分
    └── 流程(Flow):数据的处理流程,串联多个模块

核心概念说明:

  • 整体架构:系统的最外层视图,定义所有模块和流程
  • 模块:架构的功能组成部分,职责单一的模块
  • 流程:数据的处理流程,端到端串联多个模块

流程分类(后端项目):

流程类型说明识别线索
数据处理流程数据从接收到存储的全链路Controller → Service → DB/MQ
数据查询流程API 如何查询和返回数据Controller → Service → DB/Cache
数据生命周期流程数据如何被创建、更新、同步、清理定时任务、SyncService、Cache
定时任务流程定时触发的操作@Scheduled、ScheduledExecutorService

前端/后端概念映射:

类型模块流程入口
后端服务、处理器、数据层业务处理流程Application、Controller
前端页面、组件、状态管理用户交互流程路由入口、页面组件

📂 目录结构规范

所有产出物必须严格存放在以下路径:

  • employees/[员工名称]/SKILL.md
  • employees/[员工名称]/架构认知/架构设计.md
  • employees/[员工名称]/架构认知/模块_[模块名].md
  • employees/[员工名称]/排障/打点详情.md(仅后端项目)

说明:

  • 后端项目:模块对应服务、处理器、数据层等
  • 前端项目:模块对应页面、组件、状态管理模块等

🔄 执行工作流

步骤 1:身份初始化

确认员工名称,调用 template_SKILL.md,创建员工 Skill 定义。

  • 如果用户未给出员工名称,则询问用户

检查员工是否存在:

  • 首先检查 employees/[员工名称]/SKILL.md 是否已存在
  • 如果已存在,则在现有基础上进行完善(增量更新)
  • 如果不存在,则创建全新的员工 Skill

自动检测项目类型:

  • 扫描项目根目录,自动判断是前端还是后端项目:
    • 前端特征:存在 package.json、vite.config、webpack.config、next.config、pages/、components/ 等
    • 后端特征:存在 pom.xml、build.gradle、Cargo.toml、go.mod、requirements.txt 等
  • 如果同时存在前端和后端特征,判定为后端项目
  • 根据项目类型决定是否执行步骤 5(观测性认知)

步骤 2:分析项目代码结构

对项目代码进行全面分析:

  • 扫描项目目录结构
  • 识别主要模块和核心文件
  • 理解项目技术栈和运行机制
  • 识别核心流程

抽象出以下概念:

  1. 整体架构:识别系统由哪些模块组成
  2. 模块:识别每个模块的职责边界
  3. 流程:识别数据如何在模块间流转

流程分析要点(后端项目):

  • 数据处理流程:从数据接收到持久化,经过哪些模块
  • 数据生命周期流程:核心数据如何被创建、更新、同步(在步骤4深入分析)
  • 定时任务流程:识别定时任务,分析执行内容

前端额外关注:

  • 路由结构与页面关系
  • 状态管理方案(Redux/Vuex/Context/Zustand)
  • 组件层次结构
  • API 请求封装

步骤 3:提取整体架构

调用 template_架构设计.md,生成整体架构文档:

必须包含:

  • 模块定义:列出所有模块及其职责
  • 流程定义:描述核心流程,串联各模块

后端项目额外包含:

  • 入口类清单:Application、Controller、Scheduler 等

前端项目额外包含:

  • 路由结构:页面路由与组件映射
  • 状态管理:全局状态与状态流动
  • 入口文件:main.tsx/index.tsx、App.tsx

流程描述要求:

  • 标注流程起点和终点
  • 标注经过的模块
  • 标注关键分支条件
  • 读写流程一致则合并描述

步骤 4:提取模块

针对每个核心模块,调用 template_模块设计.md,生成模块文档:

后端项目内部流程必须覆盖:

  1. 数据处理流程:数据在本模块内的处理过程
  2. 数据生命周期流程(如有):本模块管理的核心数据如何被创建、更新、同步
  3. 定时任务流程(如有):本模块内的定时任务

后端项目必须记录:

  1. 内部流程:描述模块内部的处理流程
  2. 核心类清单:列出模块内所有重要类及其关键方法
  3. 性能关键设计:并发模型、序列化、缓存、批处理、背压/限流、资源池化
  4. 实体生命周期管理(如有持久化实体):实体的创建、缓存、同步、持久化全链路
  5. 修改指引:针对本模块核心实体的字段扩展/逻辑修改入口

前端项目必须记录:

  1. 组件结构:组件层次与 props 传递
  2. 核心组件/函数清单:列出模块内所有重要组件/hook/工具函数
  3. 性能关键设计:渲染优化、懒加载、缓存策略、请求防抖/节流

实体生命周期分析要求:

仅关注具有复杂生命周期管理的核心业务实体,普通 CRUD 实体无需记录。

对于核心实体,必须记录:

  1. 实体类名:实体类的简单名称(无需完整路径)
  2. 数据库表名:实体对应的数据库表名
  3. 创建入口:new Entity() 或 Entity.builder() 被调用的方法(精确到 类名.方法():行号)
  4. 缓存位置:内存缓存的类名(如 ServiceSyncService.toInsertService)
  5. 同步机制:从缓存到数据库的同步方法(如定时任务方法名和周期)
  6. 持久化入口:Mapper/Repository 的 insert/update 方法名

核心实体筛选原则:

  • 具有"缓存 → 定时同步 → 数据库"的完整生命周期
  • 被多个模块共享或频繁查询
  • 创建逻辑复杂(非简单 CRUD)
  • 普通的增删改查实体不需要记录

识别线索:

  • 实体类:带有 @Entity、@Table、@Data 等注解的类
  • 创建入口:new Entity()、Entity.builder()、save()、insert()、getOrCreate()
  • 缓存:ConcurrentHashMap、LoadingCache、@Cacheable、Redis 操作
  • 同步:@Scheduled、ScheduledExecutorService、定时任务方法
  • 持久化:@Mapper、Repository、JpaRepository、XXXMapper.xml

修改指引要求: 每个涉及实体的模块必须包含"修改指引"部分,记录:

  1. 新增字段的修改步骤(实体类 → 数据库 → 创建入口 → 更新入口)
  2. 新增处理逻辑的插入点
  3. 常见修改场景的入口位置

步骤 5:注入观测性认知(根据步骤 1 的检测结果决定是否执行)

如果步骤 1 判定为前端项目,则跳过此步骤。

扫描代码中所有 OTel Metric 埋点,调用 template_打点详情.md,在 排障/ 目录下生成排障手册。

  • 指标名称:对应的具体指标值,而不是代码中使用的变量名
  • 排障认知仅记录指标(Metrics),不记录日志或追踪

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.