From omni
Orchestrates reverse engineering of interface lists and detailed Markdown docs from codebases. Triggers on `reverse --target interfaces` or `all`; depends on prior logic architecture JSON.
npx claudepluginhub zte-aicloud/co-omnispec --plugin omniThis skill uses the workspace's default tool permissions.
- **职责**:从代码库中反构接口要素,生成:
references/core-rules.mdreferences/data.mdreferences/implementation/interface-detail-analysis.mdreferences/implementation/interface-recognition.mdreferences/scripts/__pycache__/detect_interface_scan_coverage.cpython-312.pycreferences/scripts/__pycache__/ensure_all_interface_docs_generated.cpython-312.pycreferences/scripts/__pycache__/ensure_interface_batch_docs_generated.cpython-312.pycreferences/scripts/__pycache__/estimate_interface_counts.cpython-312.pycreferences/scripts/__pycache__/validate_and_fix_interface_doc_filenames.cpython-312.pycreferences/scripts/__pycache__/validate_interface_quality_gate.cpython-312.pycreferences/scripts/detect_interface_scan_coverage.pyreferences/scripts/ensure_all_interface_docs_generated.pyreferences/scripts/ensure_interface_batch_docs_generated.pyreferences/scripts/estimate_interface_counts.pyreferences/scripts/reverse_by_call_chain/convert_reverse_interface_checklist.pyreferences/scripts/reverse_by_call_chain/prepare_reverse_input.pyreferences/scripts/reverse_by_call_chain/run_reverse_identify.pyreferences/scripts/validate_and_fix_interface_doc_filenames.pyreferences/scripts/validate_interface_quality_gate.pyreferences/stages/01-logic-architecture-prerequisite.mdOrchestrates reverse engineering of codebases to extract interfaces, logic architecture, functions, scenarios, constraints into standardized Markdown documents. Supports full pipeline or on-demand targets.
Generates standardized API docs by scanning Java/Kotlin Controller classes for endpoints, HTTP methods, parameters, and responses. Useful for explicit REST API documentation requests.
[UDS] System archeology — reverse engineer code across Logic, Data, and Runtime dimensions
Share bugs, ideas, or general feedback.
reverse --target interfaces ... 或 --target all 触发--path / --files / --exclude 等参数确定扫描范围{REPO_ROOT}/.cache/reverse/interfaces/
few-shot-examples.jsoninterface-list.json 等.cache-status.jsonreverse-logic-architecture 生成):
{REPO_ROOT}/omni-doc/specs/logic_architecture/architecture.json{REPO_ROOT}/omni-doc/specs/interfaces/{接口ID}_{中文业务简要总结}.md{REPO_ROOT}/omni-doc/specs/interfaces/接口清单.md本 Skill 仅重构“编排形式”,所有阶段逻辑、Token 管理与脚本调用方式,沿用原有阶段文档约定。
reverse 命令的关系reverse 负责:
$ARGUMENTS,统一处理 --target、--path、--files、--exclude 等参数;REPO_ROOT 与全局缓存目录;--target interfaces 或 --target all 的接口阶段时,激活本 Skill。本 Skill 按以下阶段编排,阶段详细说明见本 Skill 目录下 references/stages/:
omni-doc/specs/logic_architecture/architecture.json,不生成)Token 与并发控制遵循原文档中的预算表与“每轮最多 2 个 SubAgent”的统一规则。
{REPO_ROOT}/.cache/reverse/interfaces/.cache-status.jsonfew_shot_examplesinterface_listdocument_generationarchitecture_identification;架构确认由 reverse-logic-architecture 的缓存状态文件管理。confirmed / progress 决定是否跳过阶段(阶段1 为前置校验,见下)。architecture-identifier,不写入 architecture.json。{REPO_ROOT}/omni-doc/specs/logic_architecture/architecture.jsonreverse --target logic_architecture(或全流程编排);.cache/reverse/interfaces/architecture.json。few-shot-examples.json.cache/user_input 预配置优先,其次交互强制选择):进入阶段3时按以下优先级确定方式A/方式B:
{REPO_ROOT}/.cache/user_input/interface-scan-mode.json:
"mode" 字段(期望为 "A" 或 "B"),并将其作为阶段3的选择结果(不再要求用户重复选择)"A" 或 "B"(不得默认 A;不得替用户决定)call-chain-analyzer 等),仅按阶段文档 3B.1~3B.3 依次执行脚本。"mode": "B" 时:在真正进入 3B.1 前,必须先做语言检查;不支持则提示并回退到方式A。architecture.json 中存在可用的主语言/技术栈字段(例如 primary_language / languages / tech_stack 之类),以其为准;--path/--files)统计文件扩展名占比(例如 .java/.py/.cpp/.c/.h/.hpp),以占比最高的语言作为代码库主语言;【方式B不可用】当前代码库主语言为 <X>(不在 Java/Python/C/C++ 支持范围内),将自动回退使用方式A 继续接口清单扫描。{REPO_ROOT}/.cache/user_input/interface-scan-mode.json 不存在时,必须提示用户:【接口清单扫描】请选择扫描方式:A(默认接口清单扫描,按文件分批 + SubAgent)或 B(reverse 调用链扫描)。请输入 A 或 B(必须选择其一)。{REPO_ROOT}/.claude/skills/reverse-interfaces/references/scripts/,若不存在则用 {REPO_ROOT}/claude/skills/reverse-interfaces/references/scripts/。具体为:① 前置依赖 reverse_by_call_chain/prepare_reverse_input.py;② 接口识别 reverse_by_call_chain/run_reverse_identify.py(内部调用 reverse_syntax_parser/main.py --step identify 生成 interface_functions_checklist.json 并做存在性校验);③ 转换 reverse_by_call_chain/convert_reverse_interface_checklist.py。详见 references/stages/03-interface-list-scanning.md 中 3B.1~3B.3。{REPO_ROOT}/.cache/user_input/interface-scan-mode.json:按其 "mode" 执行(进入方式B前仍必须先做“方式B支持语言检查”)。interface-list.json(含接口类型分类)file_list 覆盖不足时,交互模式须由用户确认是否全量扩展并重扫,非交互模式须自动全量扩展并重建批次后重扫;{REPO_ROOT}/omni-doc/specs/interfaces/{接口ID}_{中文业务简要总结}.md{REPO_ROOT}/omni-doc/specs/interfaces/接口清单.md/compact;document_generation 状态,并在交互模式下允许用户查看代表性接口文档摘要。reverse-interfaces.md 中关于 .cache/reverse/interfaces/ 与 omni-doc/specs/interfaces 的约定。reverse 统一初始化的 todo 项(接口主任务 + 阶段0~4 共 5 个阶段子任务);in_progress / completed 状态。阶段 3(接口清单扫描)与阶段 4(详情文档生成)的执行逻辑由以下实现文档定义:
本 Skill 的详细实现规范位于本目录下 references/:
AI Agent 在执行本 Skill 时,应读取上述文档并严格按照其中描述的阶段和脚本调用方式执行。