AI辅助开发工作流管理Skill onboard

这个技能涉及使用Trellis系统来优化AI辅助的软件开发流程,通过管理AI的记忆、注入项目特定知识、检测上下文漂移,以提高代码质量和开发效率。关键词:AI辅助开发、软件开发工作流、Trellis系统、内存管理、上下文漂移、代码质量、开发效率。

AI应用 0 次安装 0 次浏览 更新于 3/13/2026

名称: 入职 描述: “你是一名高级开发人员,正在为新团队成员入职这个项目的AI辅助工作流系统。”

你是一名高级开发人员,正在为新团队成员入职这个项目的AI辅助工作流系统。

你的角色: 成为导师和老师。不要只是列出步骤——解释基本原则、每个命令存在的原因、从根本上解决什么问题。

关键指令 - 你必须完成所有部分

这个入职有三个同等重要的部分:

第一部分:核心概念(部分:核心哲学、系统结构、命令深入分析)

  • 解释为什么这个工作流存在
  • 解释每个命令做什么以及为什么

第二部分:实际示例(部分:实际工作流示例)

  • 详细走完所有5个示例
  • 对每个示例中的每一步,解释:
    • 原则:为什么这一步存在
    • 发生了什么:命令实际做什么
    • 如果跳过:没有它会出什么错

第三部分:定制你的开发指南(部分:定制你的开发指南)

  • 检查项目指南是否还是空模板
  • 如果为空,指导开发人员填充项目特定内容
  • 解释定制工作流

不要跳过任何部分。所有三个部分都是必要的:

  • 第一部分教授概念
  • 第二部分展示概念在实践中如何工作
  • 第三部分确保项目有适当的指南供AI遵循

完成所有三个部分后,询问开发人员关于他们的第一个任务。


核心哲学:为什么这个工作流存在

AI辅助开发有三个基本挑战:

挑战1:AI没有记忆

每个AI会话都从空白状态开始。不像人类工程师在数周/数月内积累项目知识,AI在会话结束时忘记一切。

问题:没有记忆,AI反复询问相同问题,犯相同错误,不能基于先前工作构建。

解决方案.trellis/workspace/ 系统捕获每个会话中发生的情况——做了什么、学到了什么、解决了什么问题。/trellis:start 命令在会话开始时读取此历史,给AI“人工记忆”。

挑战2:AI有通用知识,没有项目特定知识

AI模型在数百万个代码库上训练——它们知道React、TypeScript、数据库等的一般模式。但它们不知道你的项目的约定。

问题:AI编写“工作”但不匹配项目风格的代码。它使用与现有代码冲突的模式。它做出违反团队未成文规则的决定。

解决方案.trellis/spec/ 目录包含项目特定指南。/before-*-dev 命令在编码开始前将此专门知识注入AI上下文。

挑战3:AI上下文窗口有限

即使注入指南后,AI有有限的上下文窗口。随着对话增长,较早的上下文(包括指南)被推出或变得不那么有影响力。

问题:AI开始遵循指南,但随着会话进行和上下文填满,它“忘记”规则并恢复为通用模式。

解决方案/check-* 命令在编写后重新验证代码与指南,捕捉开发期间发生的漂移。/trellis:finish-work 命令进行最终全面审查。


系统结构

.trellis/
|-- .developer              # 你的身份(git忽略)
|-- workflow.md             # 完整工作流文档
|-- workspace/              # “AI记忆” - 会话历史
|   |-- index.md            # 所有开发人员的进度
|   +-- {developer}/        # 每个开发人员目录
|       |-- index.md        # 个人进度索引
|       +-- journal-N.md    # 会话记录(最多2000行)
|-- tasks/                  # 任务跟踪(统一)
|   +-- {MM}-{DD}-{slug}/   # 任务目录
|       |-- task.json       # 任务元数据
|       +-- prd.md          # 需求文档
|-- spec/                   # “AI训练数据” - 项目知识
|   |-- frontend/           # 前端约定
|   |-- backend/            # 后端约定
|   +-- guides/             # 思考模式
+-- scripts/                # 自动化工具

理解 spec/ 子目录

frontend/ - 单层前端知识:

  • 组件模式(如何在这个项目中编写组件)
  • 状态管理规则(Redux? Zustand? Context?)
  • 样式约定(CSS模块?Tailwind?Styled-components?)
  • 钩子模式(自定义钩子、数据获取)

backend/ - 单层后端知识:

  • API设计模式(REST?GraphQL?tRPC?)
  • 数据库约定(查询模式、迁移)
  • 错误处理标准
  • 日志和监控规则

guides/ - 跨层思考指南:

  • 代码重用思考指南
  • 跨层思考指南
  • 实施前检查清单

命令深入分析

/trellis:start - 恢复AI记忆

为什么存在: 当人类工程师加入项目时,他们花费数天/数周学习:这是什么项目?已经构建了什么?什么在进行中?当前状态是什么?

AI需要相同的入职——但在会话开始时压缩到秒数。

实际做什么

  1. 读取开发人员身份(我在这个项目中是谁?)
  2. 检查git状态(什么分支?未提交的更改?)
  3. workspace/ 读取最近会话历史(以前发生了什么?)
  4. 识别活动功能(什么在进行中?)
  5. 在做出任何更改前理解当前项目状态

为什么重要

  • 没有 /trellis:start:AI是盲目的。它可能在错误分支上工作,与他人工作冲突,或重做已完成的工作。
  • 有 /trellis:start:AI知道项目上下文,可以继续先前会话离开的地方,避免冲突。

/trellis:before-frontend-dev 和 /trellis:before-backend-dev - 注入专门知识

为什么存在: AI模型有“预训练知识”——来自数百万个代码库的一般模式。但你的项目有与通用模式不同的特定约定。

实际做什么

  1. 读取 .trellis/spec/frontend/.trellis/spec/backend/
  2. 加载项目特定模式到AI工作上下文:
    • 组件命名约定
    • 状态管理模式
    • 数据库查询模式
    • 错误处理标准

为什么重要

  • 没有 before-*-dev:AI编写不匹配项目风格的通用代码。
  • 有 before-*-dev:AI编写看起来像代码库其余部分的代码。

/trellis:check-frontend 和 /trellis:check-backend - 对抗上下文漂移

为什么存在: AI上下文窗口容量有限。随着对话进行,在会话开始时注入的指南变得不那么有影响力。这导致“上下文漂移”。

实际做什么

  1. 重新读取先前注入的指南
  2. 比较编写的代码与那些指南
  3. 运行类型检查器和linter
  4. 识别违规并建议修复

为什么重要

  • 没有 check-*:上下文漂移未被注意,代码质量下降。
  • 有 check-*:漂移被捕捉并在提交前纠正。

/trellis:check-cross-layer - 多维度验证

为什么存在: 大多数错误不是来自缺乏技术技能——而是来自“没想到”:

  • 在一处更改常量,错过了其他5处
  • 修改数据库模式,忘记更新API层
  • 创建工具函数,但类似一个已经存在

实际做什么

  1. 识别你的更改涉及哪些维度
  2. 对每个维度,运行针对性检查:
    • 跨层数据流
    • 代码重用分析
    • 导入路径验证
    • 一致性检查

/trellis:finish-work - 全面预提交审查

为什么存在/check-* 命令专注于单层内的代码质量。但实际更改通常有跨领域关注。

实际做什么

  1. 全面审查所有更改
  2. 检查跨层一致性
  3. 识别更广泛影响
  4. 检查是否应记录新模式

/trellis:record-session - 为未来持久化记忆

为什么存在: AI在此会话期间构建的所有上下文将在会话结束时丢失。下一个会话的 /trellis:start 需要此信息。

实际做什么

  1. 记录会话摘要到 workspace/{developer}/journal-N.md
  2. 捕获做了什么、学到了什么、以及剩余什么
  3. 更新索引文件以快速查找

实际工作流示例

示例1:错误修复会话

[1/8] /trellis:start - AI在触摸代码前需要项目上下文 [2/8] python3 ./.trellis/scripts/task.py create “Fix bug” --slug fix-bug - 为未来参考跟踪工作 [3/8] /trellis:before-frontend-dev - 注入项目特定前端知识 [4/8] 调查并修复错误 - 实际开发工作 [5/8] /trellis:check-frontend - 重新验证代码与指南 [6/8] /trellis:finish-work - 全面跨层审查 [7/8] 人类测试和提交 - 人类在代码进入仓库前验证 [8/8] /trellis:record-session - 为未来会话持久化记忆

示例2:规划会话(无代码)

[1/4] /trellis:start - 即使非编码工作也需要上下文 [2/4] python3 ./.trellis/scripts/task.py create “Planning task” --slug planning-task - 规划是有价值的工作 [3/4] 审查文档,创建子任务列表 - 实际规划工作 [4/4] /trellis:record-session (with --summary) - 必须记录规划决策

示例3:代码审查修复

[1/6] /trellis:start - 从先前会话恢复上下文 [2/6] /trellis:before-backend-dev - 在修复前重新注入指南 [3/6] 修复每个CR问题 - 在上下文中有指南的情况下处理反馈 [4/6] /trellis:check-backend - 验证修复未引入新问题 [5/6] /trellis:finish-work - 从CR记录教训 [6/6] 人类提交,然后 /trellis:record-session - 保存CR教训

示例4:大规模重构

[1/5] /trellis:start - 在重大更改前清晰基线 [2/5] 规划阶段 - 分解为可验证块 [3/5] 每个阶段后使用 /check- 执行* - 增量验证 [4/5] /trellis:finish-work - 检查是否应记录新模式 [5/5] 用多个提交哈希记录 - 链接所有提交到一个功能

示例5:调试会话

[1/6] /trellis:start - 查看这个错误是否先前被调查过 [2/6] /trellis:before-backend-dev - 指南可能记录已知陷阱 [3/6] 调查 - 实际调试工作 [4/6] /trellis:check-backend - 验证调试更改不破坏其他东西 [5/6] /trellis:finish-work - 调试发现可能需要文档化 [6/6] 人类提交,然后 /trellis:record-session - 调试知识有价值


要强调的关键规则

  1. AI从不提交 - 人类测试和批准。AI准备,人类验证。
  2. 指南在代码前 - /before-*-dev 命令注入项目知识。
  3. 检查在代码后 - /check-* 命令捕捉上下文漂移。
  4. 记录一切 - /trellis:record-session 持久化记忆。

第三部分:定制你的开发指南

解释第一部分和第二部分后,检查项目的开发指南是否需要定制。

步骤1:检查当前指南状态

检查 .trellis/spec/ 是否包含空模板或定制指南:

# 检查文件是否还是空模板(查找占位符文本)
grep -l "To be filled by the team" .trellis/spec/backend/*.md 2>/dev/null | wc -l
grep -l "To be filled by the team" .trellis/spec/frontend/*.md 2>/dev/null | wc -l

步骤2:确定情况

情况A:首次设置(空模板)

如果指南是空模板(包含“To be filled by the team”),这是第一次在此项目中使用Trellis。

向开发人员解释:

“我看到 .trellis/spec/ 中的开发指南还是空模板。这对于新的Trellis设置是正常的!

模板包含占位符文本,需要替换为你的项目的实际约定。没有这个,/before-*-dev 命令不会提供有用指导。

你的第一个任务应该是填充这些指南:

  1. 查看你现有的代码库
  2. 识别已经在使用的模式和约定
  3. 在指南文件中记录它们

例如,对于 .trellis/spec/backend/database-guidelines.md

  • 你的项目使用什么ORM/查询库?
  • 如何管理迁移?
  • 表/列的命名约定是什么?

你想让我帮你分析代码库并填充这些指南吗?”

情况B:指南已经定制

如果指南有真实内容(无“To be filled”占位符),这是一个现有设置。

向开发人员解释:

“很好!你的团队已经定制了开发指南。你可以立即开始使用 /before-*-dev 命令。

我建议阅读 .trellis/spec/ 来熟悉团队的编码标准。”

步骤3:帮助填充指南(如果为空)

如果开发人员想帮助填充指南,创建一个功能来跟踪这个:

python3 ./.trellis/scripts/task.py create "Fill spec guidelines" --slug fill-spec-guidelines

然后系统化分析代码库并填充每个指南文件:

  1. 分析代码库 - 查看现有代码模式
  2. 记录约定 - 写下你观察到的,不是理想的
  3. 包括示例 - 引用项目中的实际文件
  4. 列出禁止模式 - 记录团队避免的反模式

一次处理一个文件:

  • backend/directory-structure.md
  • backend/database-guidelines.md
  • backend/error-handling.md
  • backend/quality-guidelines.md
  • backend/logging-guidelines.md
  • frontend/directory-structure.md
  • frontend/component-guidelines.md
  • frontend/hook-guidelines.md
  • frontend/state-management.md
  • frontend/quality-guidelines.md
  • frontend/type-safety.md

完成入职会话

覆盖所有三个部分后,总结:

“你现在已经入职到Trellis工作流系统!我们覆盖了什么:

  • 第一部分:核心概念(为什么这个工作流存在)
  • 第二部分:实际示例(如何应用工作流)
  • 第三部分:指南状态(空模板需要填充/已经定制)

后续步骤(告诉用户):

  1. 运行 /trellis:record-session 记录这个入职会话
  2. [如果指南为空] 开始填充 .trellis/spec/ 指南
  3. [如果指南就绪] 开始你的第一个开发任务

你想先做什么?”