Files
Neo-ZQYY/docs/audit/changes/2026-04-05__kiro-to-claude-code-migration.md
Neo 14a12342b5 chore(audit): 补追 96 份未入仓审计孤本 — 覆盖 2026-02-26 ~ 2026-04-08
这些审计记录原本堆积在 docs/audit/changes/changes/ 嵌套误产物目录下(由开发机迁移
79d3c2e 前后的不明批量操作产生)。由于同期 .gitignore 屏蔽了 docs/audit/ 全目录,
它们从未入过 git 任何分支 history。删除即永久丢失。

按 docs/specs/audit-gap-recovery/tasks.md 阶段 1 执行,将全部 96 份 D 类孤本
(主目录无同名、git history 亦无记录)复制到 docs/audit/changes/ 主目录入仓。

涵盖主题: P1-P18 全栈集成 / 多模块累积变更 / ETL bug 修复 / 业务日切 /
   召回与任务引擎改造 / 租户管理与审批 / 董事会财务 / 客户与助教详情 /
   DDL 基线合并 / Kiro 到 Claude Code 迁移

阶段 2(B 类内容漂移 1 份)和阶段 4(嵌套目录删除)独立推进。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-20 06:35:42 +08:00

5.4 KiB
Raw Blame History

变更审计记录Kiro → Claude Code 全量迁移

字段
日期 2026-04-05 15:36:04

操作摘要

NeoZQYY 项目从 Kiro IDE 迁移到 Claude Code。将 Kiro 的 steering 文档、hooks、skills、agents、MCP 配置、审计脚本全部迁移为 Claude Code 对应架构steering → CLAUDE.mdhooks → .claude/hooks/ Python 脚本skills → .claude/commands/MCP → .mcp.json,审计脚本合并为 scripts/audit/prescan.py

迁移完成后,删除 .kiro/ 下已迁移的目录agents、hooks、scripts、settings、skills、state仅保留 specs/(历史需求文档)和 steering/(原始对照)。

变更文件

新增

文件 说明
CLAUDE.md 根项目指导文件,合并所有 inclusion: always steering 文档
apps/etl/connectors/feiqiu/CLAUDE.md ETL 子目录指导DWD 12 条 + DWS 26 条权威规范
db/CLAUDE.md 数据库子目录指导,双 Schema RLS 规则、迁移格式
.mcp.json MCP 配置,从 .kiro/settings/mcp.json 迁移
.claude/settings.json 注册 3 个 hooksSessionStart / PostToolUse / Stop
.claude/hooks/session_start_context.py SessionStart hook启动时报告项目状态
.claude/hooks/post_edit_audit_reminder.py PostToolUse hook高风险文件编辑后提醒审计
.claude/hooks/stop_audit_check.py Stop hook会话结束前检查未审计变更
.claude/commands/audit.md /audit 自定义命令5 步审计流程
.claude/commands/doc-sync.md /doc-sync 命令,从 steering-readme-maintainer skill 迁移
.claude/commands/db-docs.md /db-docs 命令,从 bd-manual-db-docs skill 迁移
scripts/audit/prescan.py 合并 Kiro audit_flagger.py + change_compliance_prescan.py

修改

文件 说明
.gitignore 增加 .claude/settings.local.json,简化 .kiro/state/ 规则

删除

目录/文件 原因
.kiro/agents/ Kiro agent 定义 → Claude Code Agent 工具内联 prompt 替代
.kiro/hooks/ Kiro hook JSON → .claude/hooks/ Python 脚本
.kiro/scripts/ Kiro 审计脚本 → scripts/audit/prescan.py 合并
.kiro/settings/ Kiro MCP 配置 → .mcp.json
.kiro/skills/ Kiro 技能 → .claude/commands/
.kiro/state/ Kiro 运行时状态文件Claude Code 不需要

改动注解

高风险文件

  • db/CLAUDE.mdrisk: dir:db— 新建的数据库子目录指导文件,内容为从 Kiro steering 提取的双 Schema RLS 规则和迁移 SQL 模板。纯文档,不影响数据库结构或数据。无 DDL 变更。

根目录文件

  • CLAUDE.md — 项目核心指导文件。合并 6 份 Kiro steering 文档,新增审计流程、子代理原则、脚本规范等章节。所有后续 Claude Code 会话都会自动加载此文件。
  • .mcp.json — 去掉 git MCPClaude Code 原生支持)、去掉 autoApprove、测试库默认启用、生产库默认禁用。
  • .gitignore — 增加 Claude Code 本地配置文件排除规则。

审计系统

  • scripts/audit/prescan.py — 合并两个 Kiro 脚本为一个,去掉 .kiro/state/ 依赖,输出 JSON 到 stdout支持 --files 参数过滤。
  • .claude/hooks/ — 三个 hook 脚本分别覆盖 Kiro 的 session-summary、pre-change-guard、run-audit-writer hook 的核心功能。

删除的 .kiro/ 子目录

6 个目录agents、hooks、scripts、settings、skills、state包含约 25 个文件,全部已有 Claude Code 对应物。保留 specs/steering/ 做历史对照。

数据库变更

无。本次变更不涉及任何 DDL、迁移脚本、表结构或数据修改。

风险与回滚

风险点 等级 说明
CLAUDE.md 内容遗漏 原始 steering 文档保留在 .kiro/steering/,可随时对照补充
hooks 行为差异 Kiro hooks 已不可用Claude Code hooks 为全新实现,无兼容性问题
MCP 配置变更 仅去掉冗余 server测试库配置不变
db/CLAUDE.md 误导 纯文档指导,不执行任何 SQL

回滚要点

  1. 删除新增的 12 个文件
  2. git checkout 恢复 .gitignore
  3. git checkout 恢复 .kiro/ 下被删除的目录
  4. 无数据库回滚需要

验证

  1. 确认 CLAUDE.md 被 Claude Code 自动加载:

    # 新开 Claude Code 会话,检查是否识别项目结构
    claude "这个项目有哪些子系统?"
    
  2. 确认 prescan.py 正常运行:

    cd c:/Project/NeoZQYY && python scripts/audit/prescan.py
    
  3. 确认 .kiro/ 已迁移目录不再存在:

    ls -d c:/Project/NeoZQYY/.kiro/agents c:/Project/NeoZQYY/.kiro/hooks c:/Project/NeoZQYY/.kiro/scripts c:/Project/NeoZQYY/.kiro/settings c:/Project/NeoZQYY/.kiro/skills c:/Project/NeoZQYY/.kiro/state 2>&1
    

合规检查

检查项 状态
CLAUDE.md 与原 steering 内容一致 ✓ 已逐份对照合并
飞球数据规范完整迁移 ✓ DWD 12 条 + DWS 26 条均在 ETL CLAUDE.md
审计流程可用 ✓ prescan.py + /audit 命令 + gen_audit_dashboard.py
MCP 测试库可用 ✓ pg-etl-test + pg-app-test 保留
无数据库变更需同步 ✓ 本次无 DDL
.kiro/ 保留目录合理 ✓ specs历史需求+ steering对照参考