From omni-reverse
Executes reverse engineering from codebases to extract interfaces, architecture, entities, scenarios, and requirements, generating standardized documentation.
How this skill is triggered — by the user, by Claude, or both
Slash command
/omni-reverse:reverse --target <all|logic_architecture|deep_logic_architecture|interfaces|functions|entities|scenarios|requirements|external-interfaces|rules> [--source <code>] [--path <path1,path2,...>] [--files <file1,file2,...>]When to use
用户提到"反构"、"reverse"、"接口清单"、"架构识别"、"需求分析"、"实体识别"、"场景描述"等关键词时
--target <all|logic_architecture|deep_logic_architecture|interfaces|functions|entities|scenarios|requirements|external-interfaces|rules> [--source <code>] [--path <path1,path2,...>] [--files <file1,file2,...>]This skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
**`reverse` 不是可执行命令,必须按照文档步骤执行!**
reverse 不是可执行命令,必须按照文档步骤执行!
--target 调用对应的 reverse-* Skill(如 reverse-logic-architecture、reverse-interfaces),按照 Skill 中的阶段说明执行以下规则在整个 reverse 执行会话期间始终有效,不因对话长度放松:
Skill 工具调用子 reverse-* Skill。每次输出前自检此条。执行流程(统一三级编号):
每个阶段完成后必须输出 Checkpoint,每个阶段必须定义失败处理路径。
$ARGUMENTS
在继续之前, 你必须考虑用户输入(如果不为空).
reverse 命令支持反构多种要素类型,通过 --target 参数指定要反构的要素类型:
logic_architecture:逻辑架构要素(架构识别 JSON,写入 omni-doc/specs/logic_architecture/,供接口等下游只读使用)deep_logic_architecture:深度逻辑架构要素(生成 omni-doc/on-demand/logic_architecture.md,用于深度架构分析与按需反构)interfaces:接口清单(依赖逻辑架构产物;不再在接口阶段生成 architecture.json)external-interfaces:外部依赖接口识别(识别代码库外模块提供的、且在库内有调用示例的接口)rules:规则/约束反构(从代码库反构规则并生成 .mdc)functions:功能规范(基于入口与场景的功能清单与功能文档)scenarios:场景描述(基于接口/功能等既有产物的场景清单与单场景文档)requirements:需求分析(场景→功能需求→独立需求文件)constraints:约束规则(规划中)entities:逻辑实体(第一阶段实现)all:按固定顺序依次执行逻辑架构→接口→功能→实体→场景→需求→外部接口→规则的全流程反构(默认全自动模式,不进入对话模式)此外,reverse 支持通过 --source 切换反构数据源:
--source code(默认):从代码库反构(本文档主流程)第一步:解析参数并选择对应 Skill
CLAUDE_WORKING_DIR 环境变量:
CLAUDE_WORKING_DIR 存在且为有效目录:REPO_ROOT="$CLAUDE_WORKING_DIR"REPO_ROOT="$(pwd)"(Linux/macOS)或 $REPO_ROOT = (Get-Location).Path(Windows)git rev-parse --show-toplevel(已废弃,可能导致子目录工作区问题)DSDD="$(bash "${CLAUDE_PLUGIN_ROOT}/scripts/resolve-dsdd-root.sh")" || exit 1${CLAUDE_PLUGIN_ROOT}/../omni-dsdd,失败则终止并提示需同 marketplace 安装 omni-dsdd。${DSDD}/omni-infra 拷贝为 ${REPO_ROOT}/.omni-infra;显式传 --plugin-root/--working-dir,不要依赖脚本内 pwd,不要仅 export 后无参调用:
bash "${DSDD}/scripts/bash/init_omni_infra.sh" \
--plugin-root "${DSDD}" \
--working-dir "${REPO_ROOT}"
1 = 首次创建成功(按需执行 constitution 后继续);0 = 已存在;2 = 失败(须终止)。check-prerequisites 位于共享插件 scripts/,经 ${DSDD} 访问):
bash ${DSDD}/scripts/bash/check-prerequisites.sh --paths-only --jsonpwsh ${DSDD}/scripts/powershell/check-prerequisites.ps1 --paths-only --jsonREPO_ROOT(JSON格式)--paths-only 模式可以跳过分支检查CLAUDE_WORKING_DIR 和 pwd 都无效 → 输出 unresolved: 无法确定工程目录 + 建议使用 --path 指定代码目录;如果 init_omni_infra.sh 返回 2 → 输出 unresolved: SDD 环境初始化失败 并终止✅ Checkpoint: "1.1 完成: REPO_ROOT={值}, DSDD={值}, .omni-infra已就绪, 操作系统={值}"
$ARGUMENTS 中解析 --source 参数
--source 未指定,默认使用 code$ARGUMENTS 中解析 --target 参数--target 未指定,默认使用 all--path、--files、--interactive、--non-interactive、--yes 等)--interactive,则启用交互模式;否则使用全自动模式(所有确认自动接受 Y)。当 --target all 时始终使用全自动模式,--interactive 参数被忽略unresolved + 参数约束提示,不执行后续阶段✅ Checkpoint: "1.2 完成: source={值}, target={值}, 交互模式={值}, 有效参数 N 个"
--target 调用对应的反构 Skill:
Skill 工具调用子技能,例如:Skill(omni-reverse:reverse-interfaces)--target logic_architecture,必须立即调用 Skill omni-reverse:reverse-logic-architecture--target deep_logic_architecture,必须立即调用 Skill omni-reverse:reverse-deep-logic-architecture--target interfaces,必须立即调用 Skill omni-reverse:reverse-interfaces--target entities,必须立即调用 Skill omni-reverse:reverse-entities--target external-interfaces,必须立即调用 Skill omni-reverse:reverse-external-interfaces--target rules,必须立即调用 Skill omni-reverse:reverse-rules--target requirements,必须立即调用 Skill omni-reverse:reverse-requirements--target functions,应优先调用 Skill omni-reverse:reverse-functions(如果存在);如果该 Skill 不存在,输出 unresolved: reverse-functions 功能规划中,请使用具体 target(如 interfaces/entities/scenarios)代替--target constraints,输出 unresolved: constraints 反构功能规划中,暂不可用{REPO_ROOT}/claude/skills/reverse-interfaces/SKILL.mdunresolved + 失败原因,不尝试替代执行**✅ Checkpoint: "第一步完成: source={值}, target={值}, REPO_ROOT={值}, 子Skill={Skill名称}, 有效参数 N 个"
第二步:创建初始 Todo 列表
--target logic_architecture,应包含以下 todo 项:
--target deep_logic_architecture,应包含以下 todo 项:
--target interfaces,应包含以下 todo 项:
--target entities,应包含以下 todo 项:
--target external-interfaces,应包含以下 todo 项:
--target rules,应包含以下 todo 项:
--target requirements,应包含以下 todo 项:
TodoCreate 工具创建初始 todo 列表,所有项初始状态为 pending✅ Checkpoint: "第二步完成: Todo 列表已创建,N 个任务项,状态均为 pending"
第三步:调用子 Skill 并收集结果
激活子 Skill 并获取产物:
Skill 工具激活第一步中确定的子 Skill(如 Skill(omni-reverse:reverse-interfaces))in_progress(使用 TodoUpdate)completedpending,输出 unresolved + 失败原因,不得生成不完整的产物文件产物路径契约:
全流程模式(--target all):
--target all 时,必须按固定顺序依次调用子 Skill:
reverse-logic-architecture → reverse-interfaces → reverse-entities → reverse-scenarios → reverse-requirements → reverse-external-interfaces → reverse-rulesunresolved + 依赖说明,停止后续阶段--interactive 参数被忽略)✅ Checkpoint: "第三步完成: target={值}, 产物已写入 {文件路径}, 产物文件数 N 个"
根据 --target 参数,调用对应的要素类型 Skill:
--target logic_architecture:调用 Skill omni-reverse:reverse-logic-architecture(claude/skills/reverse-logic-architecture/SKILL.md)--target deep_logic_architecture:调用 Skill omni-reverse:reverse-deep-logic-architecture(claude/skills/reverse-deep-logic-architecture/SKILL.md)--target interfaces:调用 Skill omni-reverse:reverse-interfaces(已实现,claude/skills/reverse-interfaces/SKILL.md)--target external-interfaces:调用 Skill omni-reverse:reverse-external-interfaces(已实现,claude/skills/reverse-external-interfaces/SKILL.md)--target rules:调用 Skill omni-reverse:reverse-rules(已实现,claude/skills/reverse-rules/SKILL.md)--target functions:调用 Skill omni-reverse:reverse-functions(规划中,claude/skills/reverse-functions/SKILL.md)--target scenarios:调用 Skill omni-reverse:reverse-scenarios(已实现,claude/skills/reverse-scenarios/SKILL.md)--target requirements:调用 Skill omni-reverse:reverse-requirements(已实现,claude/skills/reverse-requirements/SKILL.md)--target constraints:预留未来的 Skill omni-reverse:reverse-constraints--target entities:调用 Skill omni-reverse:reverse-entities(已实现,claude/skills/reverse-entities/SKILL.md)--target all:调用 Skill omni-reverse:reverse-orchestration,按其编排说明依次处理 logic_architecture → interfaces → functions → entities → scenarios → requirements → external-interfaces → rules(默认全自动模式)当用户指定 --target all 时,AI Agent 不得直接在命令层手写 8 个阶段的编排逻辑,而是应:
REPO_ROOT 与通用缓存根目录;--path / --files / --exclude / --clear-cache 等)作为输入,激活 Skill omni-reverse:reverse-orchestration;SKILL.md 中的说明执行完整流水线反构:
简而言之:
reverse --target all只是入口命令,真正的全流程编排规范统一收敛到 Skillomni-reverse:reverse-orchestration中,由该 Skill 负责调用各reverse-*Skill 并衔接 8 个阶段(逻辑架构必须最先执行,生成的内容供后续要素使用)。deep_logic_architecture为单独 target,不纳入all。
当添加新的要素类型时:
reverse-<element-type>.md,与现有各 reverse-* 子技能文档命名一致)reverse \
[--source <code>] \
--target <target-type> \
[--path <path1,path2,...>] \
[--files <file1,file2,...>] \
[--interface-types <type1,type2,...>] \
[--output-dir <dir>] \
[--template <template-file>] \
[--interactive] \
[--non-interactive] \
[--yes] \
[--preview] \
[--incremental] \
[--git-diff <commit>] \
[--since <date>] \
[--merge] \
[--validate] \
[--exclude <pattern1,pattern2,...>] \
[--clear-cache] \
[--verbose] \
[--json] \
[--help]
--target (必需):目标要素类型,支持 all、logic_architecture、deep_logic_architecture、interfaces、functions、entities、scenarios、requirements、external-interfaces、rules、constraints(预留)等;未指定时默认 all--source (可选):反构数据源,支持 code(默认,从代码库反构)--path (可选*):反构的目录路径(逗号分隔多个目录,使用单个参数传入)--files (可选*):反构的文件路径(逗号分隔)--interface-types (可选):指定要反构的接口类型(仅当 --target interfaces 时使用)--output-dir (可选):输出目录,默认根据分支类型决定--template (可选):模板文件路径,默认使用内置模板--interactive (可选):启用交互式确认--non-interactive (可选):强制非交互模式--yes (可选):非交互模式,自动接受所有默认选项--preview (可选):预览模式,不写入文件--incremental (可选):增量反构模式--git-diff (可选):基于 Git 提交差异反构(需配合 --incremental)--since (可选):基于时间戳反构(需配合 --incremental)--merge (可选):合并到现有清单文件(需配合 --incremental)--validate (可选):启用结果校验--exclude (可选):排除文件模式(逗号分隔多个 pattern,使用单个参数传入)--clear-cache (可选):清理缓存--verbose (可选):详细输出模式--json (可选):JSON 格式输出--help (可选):显示帮助信息注意:
--source code或没有该参数时:--path 和 --files 至少需要指定一个。# 无参数:按固定顺序执行完整流水线(默认行为)
# 等价于:reverse --target all --path .
reverse --path .
# 仅反构逻辑架构(生成 omni-doc/specs/logic_architecture/architecture.json)
reverse --target logic_architecture --path .
# 仅反构深度逻辑架构(生成 omni-doc/on-demand/logic_architecture.md)
reverse --target deep_logic_architecture --path .
# 仅反构整个代码库的接口(须已有逻辑架构产物,或先执行上一行)
reverse --target interfaces --path .
# 反构指定目录的接口
reverse --target interfaces --path src/api/,src/services/
# 仅反构 RESTful 和消息类接口
reverse --target interfaces --path src/ --interface-types restful,message
# 反构指定文件的接口
reverse --target interfaces --files src/api/user.py
# 基于已完成的接口反构结果,执行实体清单反构
reverse --target entities --path .
# 外部依赖接口识别(识别代码库外模块提供的、且在库内有调用示例的接口)
reverse --target external-interfaces --path .
# 外部依赖接口识别(排除测试与构建目录;对话模式每阶段确认)
reverse --target external-interfaces --path . --exclude "**/test/**,**/build/**" --interactive
# 外部依赖接口识别(重录:清除缓存后重新执行)
reverse --target external-interfaces --path . --clear-cache
# 规则反构(从代码库反构规则并生成 .mdc)
reverse --target rules --path .
# 规则反构(对话模式,每阶段确认)
reverse --target rules --path . --interactive
# 需求反构(场景→功能需求→独立需求文件;依赖场景反构产物)
reverse --target requirements
reverse --target requirements --interactive
reverse --target requirements --clear-cache
reverse --target requirements --exclude "**/test/**,**/build/**"
# 交互式反构(仅对单一 target 生效;--target all 时将被忽略,始终全自动)
reverse --target interfaces --path src/ --interactive
reverse --target entities --path src/ --interactive
# 预览模式
reverse --target interfaces --path src/ --preview
# JSON 输出
reverse --target interfaces --path src/ --json
reverse-cache/--clear-cache 参数清除缓存后重新执行in_progresscompleted详细预算分配见 references/token-management.md
npx claudepluginhub zte-aicloud/co-omnispec --plugin omni-reverse自动编排8个阶段(逻辑架构、接口、功能、实体、场景、需求、外部接口、规则)生成完整代码库逆向工程文档,适用于代码分析、知识提取、架构文档生成和存量代码逆向。
Analyzes code architecture based on requirement intent, supporting simple and complex demand scenarios. Activated via reverse --target on-demand.
Reverse-engineers existing codebases into V-Model artifacts (plan-context, ADRs, arc42, FEATURE inventory, backlog). Produces evidence-based documentation sourced from code and docs.