一键导入
lina-review
用于审查 LinaPro OpenSpec 工作流中的代码变更和规范合规性。在完成 /opsx:apply 任务、 完成 lina-feedback 反馈修复、执行 /opsx:archive 归档前必须使用;在用户要求代码审查、 规范合规检查,或明确调用 /lina-review 时也必须使用。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
用于审查 LinaPro OpenSpec 工作流中的代码变更和规范合规性。在完成 /opsx:apply 任务、 完成 lina-feedback 反馈修复、执行 /opsx:archive 归档前必须使用;在用户要求代码审查、 规范合规检查,或明确调用 /lina-review 时也必须使用。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
为LinaPro以及SubModule仓库自动提交、推送并创建 PR。必须用户手动触发,禁止自动触发该技能。
手动生成 LinaPro 版本更新日志。用户要求生成 changelog、release notes、版本更新日志、发布说明,或提到 lina-community-release-changelog 时必须使用本技能。技能会基于 Git 历史、源码差异和 OpenSpec 内容整理详尽的双语 Markdown 更新日志,涉及数据库变更时必须单独列出,支持默认比较范围和用户指定两个版本/标签/提交进行比较,固定写入 localdocs/changelog.md。
仅手动触发。只有当用户明确要求 lina-perf-audit,或确认要运行完整审计时, 才执行 LinaPro 后端 API 全量性能审计。该流程会通过 make db.init/mock 重置数据库、重启服务、安装并启用所有内置插件、准备压测数据,并启动并发子代理; 通常需要几十分钟到数小时,且会消耗大量 Token。不得从其他技能、CI、定时任务、 Git 钩子或模糊的性能请求中触发。
审查 LinaPro 社区 GitHub Issues,并按项目规范和源码实现分类处理。用户要求审查 LinaPro issue、社区 issue、GitHub issue、question、feature、bug、关闭无效 issue,或提到 lina-community-issue-review 时必须使用本技能。
审查 LinaPro 社区 GitHub Pull Request,并按项目规范发表评论。用户要求审查 LinaPro PR、社区 PR、pull request、bot 审批、bot-approved 标签、GitHub PR 治理,或提到 lina-community-pr-review 时必须使用本技能。
用于处理用户对已有实现的反馈分诊与执行闭环:先判断是否需要纳入 OpenSpec 活跃变更或新建变更,再完成根因分析、实现、验证和必要测试。凡是用户针对已有实现反馈 Bug、缺陷、改进点、建议或实现遗漏,即使没有明确提到“反馈”或 OpenSpec,也必须使用本技能。
基于 SOC 职业分类
| name | lina-review |
| description | 用于审查 LinaPro OpenSpec 工作流中的代码变更和规范合规性。在完成 /opsx:apply 任务、 完成 lina-feedback 反馈修复、执行 /opsx:archive 归档前必须使用;在用户要求代码审查、 规范合规检查,或明确调用 /lina-review 时也必须使用。 |
| compatibility | 依赖 OpenSpec CLI、GoFrame v2 技能、lina-e2e 技能。 |
lina-review审查当前项目变更是否符合项目规范。项目领域规范的唯一事实来源是AGENTS.md及其显式引用的.agents/rules/*.md,包括接口契约、后端 Go、数据库、缓存、数据权限、插件、前端、测试、开发工具、文档、架构和i18n等细则。
审查必须先读取AGENTS.md,再按其中的强制规则加载矩阵识别审查范围命中的规则域,并读取所有对应规则文件。禁止仅凭记忆、历史上下文、摘要、此前读取记录或其他代理转述替代本次读取。未读取命中规则文件的审查结论无效,不得据此标记任务完成、反馈完成或执行归档。
如果审查过程中发现某条可执行审查要求只存在于本技能而不存在于AGENTS.md或对应规则文件,必须将其作为规则归属问题报告;在规则归属明确前,不得把该要求当作正式项目规范执行。更新审查要求时,应优先修改对应.agents/rules/*.md,本技能只保留指向规则文件的执行入口。
与用户交互的内容语言以用户上下文使用的语言为准。
自动触发:
/opsx:apply每个任务完成后。lina-feedback每个任务完成后。/opsx:archive执行前。手动触发:
/lina-review。根据调用来源确定范围:
| 来源 | 审查范围 |
|---|---|
| 任务完成后 | 已完成任务修改或创建的文件 |
| 反馈完成后 | 当前反馈任务修改或创建的文件 |
| 归档前 | 当前OpenSpec变更中的所有变更 |
| 手动调用 | 用户指定范围;未指定时使用当前变更和工作区状态 |
范围收集必须从仓库状态开始,而不是只看git diff:
git status --short
git ls-files --others --exclude-standard
审查候选项必须包含所有已跟踪和未跟踪变更,包括已暂存文件、未暂存文件、显示为??的未跟踪文件,以及显示为?? path/的未跟踪目录。
当git status --short报告未跟踪目录时,在审查前必须展开为具体文件:
git ls-files --others --exclude-standard -- <path>
当git status --short报告子仓库或submodule存在变更时,例如父仓库只显示m apps/lina-plugins,不得把该路径整体视为已审查。审查前必须进入子仓库收集内部状态、已跟踪差异和未跟踪文件,并把结果加上父路径前缀纳入审查候选项:
git -C <path> status --short
git -C <path> diff --name-only
git -C <path> diff --cached --name-only
git -C <path> ls-files --others --exclude-standard
对于apps/lina-plugins这类插件子仓库,展开后的候选文件必须继续按AGENTS.md的插件本地规范优先级处理;涉及具体apps/lina-plugins/<plugin-id>/时,必须检查该插件根目录是否存在AGENTS.md普通文件或符号链接,并在审查结论中记录插件本地规范读取结果或不存在判断。
如果任务运行过代码生成器、治理脚本或测试生成流程,即使生成文件未出现在git diff中,也必须显式纳入审查范围。git diff只能作为状态收集后的辅助工具,不能单独定义审查范围。
涉及OpenSpec变更时,运行以下命令了解当前变更状态:
openspec status --change "<name>" --json
读取AGENTS.md作为规范入口,并按其中的强制规则加载矩阵判断审查范围命中的规则域。命中后读取所有对应.agents/rules/*.md,并按规则文件中的设计、实现、验证和审查要求执行。
本技能不得复制维护各规范域的细则。例如:
.agents/rules/api-contract.md。.agents/rules/backend-go.md,并在修改或审查 Go 后端代码时使用goframe-v2技能。.agents/rules/testing.md,并按需使用lina-e2e技能。AGENTS.md命中的规则文件为准。若规则文件缺失、无法读取或规则之间存在无法调和的冲突,审查必须报告为严重问题,并阻塞任务完成、反馈完成或归档。
按审查范围和已读取规则文件执行检查。审查重点由规则文件决定,lina-review只负责确保以下编排要求成立:
i18n、缓存一致性、数据权限、开发工具跨平台和测试策略等 OpenSpec 审查要求,按.agents/rules/openspec.md和实际命中规则文件执行影响分析;确认无影响时也必须记录。审查必须确认执行者提供的验证证据覆盖当前工作区状态,而不是历史状态。验证证据包括但不限于:
openspec validate <change> --strict。如果验证命令因外部依赖不可用而无法运行,审查结论必须记录阻断原因、替代验证、覆盖范围和剩余风险。不能用未执行的验证假设替代审查证据。
使用以下结构输出审查报告,并按实际命中规则域删减或扩展章节:
## Lina 审查报告
**变更:** <变更名称或未指定>
**范围:** <任务级 / 反馈级 / 全部变更 / 手动范围>
**审查文件数:** <数量>
**范围来源:** `git status --short` + `git ls-files --others --exclude-standard` + <任务或变更上下文>
**已读取规则文件:** <列出按 `AGENTS.md` 命中的 `.agents/rules/*.md`>
### 发现的问题
- **严重** <文件路径:行号>:<问题描述>。依据:<规则文件或规范入口>。
- **警告** <文件路径:行号>:<问题描述>。依据:<规则文件或规范入口>。
### 规则域结论
- <规则域>:通过 / 发现 N 个问题 / 未命中,原因:<说明>。
- <规则域>:通过 / 发现 N 个问题 / 无影响,原因:<说明>。
### 验证证据
- <命令或检查>:通过 / 失败 / 未运行,原因:<说明>。
### 摘要
- 严重:N
- 警告:N
### 建议操作
1. <具体操作>
没有发现问题时,必须明确说明“未发现阻塞问题”,并列出仍然存在的测试缺口或剩余风险。
| 级别 | 行为 |
|---|---|
| 严重 | 阻塞任务完成、反馈完成或归档,必须修复或明确豁免依据 |
| 警告 | 展示给用户,建议修复,但不单独阻塞继续推进 |
| 工作流步骤 | 行为 |
|---|---|
/opsx:apply任务完成 | 审查当前任务变更,在下一任务前暴露问题 |
lina-feedback任务完成 | 审查反馈修复,在标记完成前暴露问题 |
/opsx:archive | 审查完整变更,严重问题阻塞归档 |
| 手动调用 | 按用户指定范围或当前变更执行审查 |
AGENTS.md及其显式引用的规则文件是唯一事实来源。