---
name: project-verify
version: "2.0.0"
category: quality
description: "统一项目验证 / 结构检查、规范合规、安全扫描、代码质量、脚本可用性、自动修复 — 覆盖原 project-inspect + code-compliance + code-standards + security-check + code-logic。供 verifier subagent 或 architect 调用。Use for comprehensive project quality verification covering structure, compliance, security, code quality, scripts, and auto-fix."
triggers:
  zh: ["项目验证", "全面验证", "质量验证", "检查项目", "项目检查", "验证项目", "代码检查", "安全扫描", "规范检查", "合规检查", "巡检", "verify", "inspect", "audit"]
  en: ["project verify", "full check", "quality check", "verify project", "inspect", "audit project", "code check", "security scan"]
license: MIT
metadata:
  agent_profile: verifier
---

# 项目统一验证 / Project Verify

## Core Concept / 核心概念

**输入**: 项目根目录 | **输出**: 结构化验证报告（Pass/Fail/Warn + 自动修复） | **不负责**: 业务逻辑实现、功能开发、新增代码

## Verification Layers / 验证层级

### Layer 1: 结构检查 / Structure Check
- [ ] 目录完整性: agents/ skills/ src/ dist/ scripts/ .agents/
- [ ] 文件数量: 15 agents, 28 skills, 8 hooks, 111+ src modules
- [ ] .gitignore: credentials/, node_modules/, dist/ 已忽略
- [ ] 同步检查: agents/ ↔ .agents/command/, skills/ ↔ .agents/skills/
- [ ] 多余的 .tgz / .DS_Store 文件

### Layer 2: Agent 验证
- [ ] frontmatter 完整: description/mode/permission
- [ ] mode 正确: 4 primary, 12 subagent (verifier replaces inspector)
- [ ] description 含中文
- [ ] permission 五元组: read/edit/bash/skill/task
- [ ] 委派规则明确

### Layer 3: Skill 验证
- [ ] frontmatter 完整: name/version/description/triggers
- [ ] triggers 含中英文
- [ ] agent_profile 指向存在的 agent
- [ ] meta-skill.yaml 有对应条目
- [ ] scripts/ 文件存在且可执行

### Layer 4: Hook 验证
- [ ] 8 个 hook 文件存在
- [ ] event handler 注册正确
- [ ] tool.execute.after 5 个 hook 全部调用
- [ ] NOISY_EVENTS 过滤器已添加

### Layer 5: 代码规范 / Code Standards
- [ ] 双语注释（中文 + English）
- [ ] CSS 变量代硬编码 (#xxx)
- [ ] 间距使用标准值 (4/8/12/16/24/32/48)
- [ ] 函数使用 function 关键字（非箭头函数顶层）
- [ ] import 顺序正确

### Layer 6: 安全扫描 / Security Scan
- [ ] 无 API key/Token 硬编码
- [ ] 无密码硬编码
- [ ] 无 NPM token 泄漏
- [ ] 无数据库连接字符串泄漏
- [ ] 环境变量使用 .env 文件（已 gitignore）

### Layer 7: Git 合规 / Git Compliance
- [ ] Commit 格式: Conventional Commits (feat/fix/docs/chore)
- [ ] 分支命名: feat/xxx 或 fix/xxx
- [ ] 禁止 master 分支直接开发
- [ ] 无未推送提交
- [ ] 无敏感文件提交

### Layer 8: 脚本验证 / Script Validation
- [ ] 所有 .js/.sh 脚本可执行 (chmod +x)
- [ ] Node.js 脚本语法正确 (node --check)
- [ ] Bash 脚本语法正确 (bash -n)
- [ ] import/require 路径可解析
- [ ] 脚本依赖完整

### Layer 9: 构建验证 / Build Validation
- [ ] bun build 成功
- [ ] tsc --noEmit 通过
- [ ] npm pack 可生成 .tgz
- [ ] postinstall 脚本正确

## 常见问题与修复 / Common Issues & Fixes

### Q1: primary agent 数量不对
**现象**: verify-all 报告 primary agent 不是 4 个
**修复**: 
```bash
# 检查各 agent mode
for f in agents/*.md; do echo "$f: $(grep '^mode:' $f)"; done
# 修复: 将不应为 primary 的 agent mode 改为 subagent
```

### Q2: agents/ 与 .agents/command/ 不同步
**现象**: 两边文件数量或内容不一致
**修复**: `cp agents/*.md .agents/command/`

### Q3: skills/ 与 .agents/skills/ 不同步
**现象**: SKILL.md 文件缺失
**修复**: 按需复制到 .agents/skills/

### Q4: chat.message 关键词匹配不生效
**现象**: 输入关键词后看不到 `🔧 已加载技能`
**根因**: skill-injector 读错了 SDK 参数位置 (input.message vs output.parts)
**状态**: v3.1.4 已修复

### Q5: events.jsonl 膨胀到 100K+ 行
**根因**: agent-reminder 等 hook 对每个 streaming event 都写日志
**状态**: v3.1.4 已添加 NOISY_EVENTS 过滤器修复

### Q6: 插件版本号不一致
**修复**: 同步 package.json + README.md + src/index.ts 中的版本号

## Scripts / 脚本

| Script | 作用 |
|--------|------|
| `skills/project-verify/scripts/verify-project.js` | 统一项目验证入口 — 运行全部 Layer 检查 |

## Usage / 使用方式

```bash
# 全面验证（所有 Layer）
node skills/project-verify/scripts/verify-project.js

# 快速检查（仅结构+安全）
node skills/project-verify/scripts/verify-project.js --quick

# 自动修复模式
node skills/project-verify/scripts/verify-project.js --fix
```

## Iron Law / 核心铁律

1. **验证结果分三级**: PASS / FAIL / WARN，每个问题必须有路径+行号
2. **能自动修的不报错**: [AUTO-FIX] 标记的自动修复，[MANUAL] 标记的提示用户
3. **不跳步**: 必须按 Layer 1-9 顺序执行，每层有独立统计
4. **报告即文档**: 验证报告可直接作为质量文档使用
