codebase-reverse — скилл

Скилл обратной разработки: агент превращает готовый код Java и Spring в модель функций, архитектуры, интерфейсов и базы данных

  • 132 ★ репозитория
  • Последний коммит
  • MIT
Скилл

Минимальный доступ

Почему такой уровень

  • Скилл читает исходники проекта и пишет документы в рабочую папку.
Все причины и проверки

sharptoolbox/codebase-reverse

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add skills/codebase-reverse

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Минимальный доступИнструмент ничего не запускает и не ходит в сеть.

  • Скилл читает исходники проекта и пишет документы в рабочую папку.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

codebase-reverse ведет агента по трем этапам с подтверждением человека между ними. Результат складывается в набор документов: опись исходных ресурсов, требования к каждому бизнес-функционалу, индекс сквозных цепочек реализации, схема физических таблиц и полей, матрица доступа к базе (создание, чтение, правка, удаление), отчеты о покрытии и согласованности. Есть два режима углубления. `F-FULL` описывает функцию целиком вместе с реализацией, от контролов страницы до методов и запросов. `F-REQ` выдает требования без привязки к технологии, с ASCII-макетом и моделью базы. Навык настроен под Java Web и микросервисы на Spring Boot и Cloud: он распознает аннотации Spring MVC, `@Scheduled`, `@KafkaListener`, MyBatis и JPA, но допускает перенос на C#, TypeScript, Python, Go и PHP с калибровкой по справочнику.

Для кого. Аналитикам и разработчикам, которые принимают старый Java-проект без документации и хотят восстановить требования, цепочки вызовов и модель данных.

Подходит, если

  • Достался монолит на Spring MVC с MyBatis, а описания функций нет.
  • Нужна матрица, какая функция читает и пишет какие таблицы.
  • Ночные задачи и слушатели Kafka должны попасть в реестр функций наравне с пунктами меню.
  • По старому коду требуется составить технологически нейтральное ТЗ для переписывания.

Не подходит, если

  • Проект маленький, и достаточно прочитать код глазами.
  • Нужна документация по чужому закрытому коду, который нельзя отправлять модели.
  • Требуется анализ бинарных файлов без исходников.

Пример запроса к агенту

Обратно разработай этот Java-проект в режиме полной архитектуры и покажи реестр функций перед углублением.

Ограничения

Навык глубоко настроен под Java Web и Spring, для других языков входы и имена объектов придется калибровать по `references/exhaustive-discovery.md`. Скрипт проверки `scripts/validate_meta_model.ps1` написан на PowerShell. Три этапа содержат ворота подтверждения, поэтому полностью автоматического прогона не будет. На больших кодовых базах полный режим потребует много токенов и времени. Если DDL базы отсутствует, поля выводятся из кода, а неизвестные длины, пустые значения и индексы помечаются как `unknown`. Лицензия MIT.

Как отключить. Удалите папку `~/.claude/skills/codebase-reverse` или `.claude/skills/codebase-reverse` проекта. Созданные документы остаются в репозитории.

Частые вопросы

Как установить codebase-reverse в Claude Code?

Скопируйте папку командой `cp -r codebase-reverse ~/.claude/skills/codebase-reverse` или положите ее в `.claude/skills/` проекта. Claude Code найдет навык сам.

Работает ли навык не только с Java?

Он настроен под Java и Spring, но README допускает перенос на C#, TypeScript, Python, Go и PHP после калибровки входов и имен.

Чем различаются F-FULL и F-REQ?

`F-FULL` дает бизнес-описание вместе с реализацией по слоям. `F-REQ` выдает требования без технических деталей, с макетом и объектами базы.

Нужен ли MCP или специальный хук?

Нет. README подчеркивает, что навык не зависит от закрытых API платформ, MCP и хуков, это набор промптов и справочников.

На каких агентах он проверен?

Автор приводит установку для WorkBuddy, Claude Code и Codex и называет совместимыми Cursor, Cline и Aider.

Обсуждение

Вопросов и отзывов пока нет.

Скиллы

Awesome Reverse-Engineered, скилл поиска, читает индекс проектов; скачивание выбранных исходников выполняется отдельным шагом.

СкиллШирокий доступ1,4 тыс.Звезды репозитория

Плагин Claude Code извлекает из кодовой базы поведенческие спецификации, тестовые векторы и критерии приемки с журналом источников

ПлагинШирокий доступ303Звезды репозитория

Скилл помогает разобраться в кодовой базе через вопросы: пользователь сам восстанавливает причины архитектурных решений.

СкиллРасширенный доступ507Звезды репозитория

Скилл запускает полный рефакторинг, после которого агентам проще читать код: ищет скрытые связи и лишние зависимости.

СкиллРасширенный доступ1,1 тыс.Звезды репозитория

CLI, который записывает трафик сайта в HAR и по нему пишет готовый клиент API на Python, TypeScript, Go и семи других языках

CLIШирокий доступ3,5 тыс.Звезды репозитория

Скилл и MCP-сервер, которые дают агенту смотреть запросы, SQL и исключения запущенного приложения на Spring Boot или Quarkus

СкиллРасширенный доступ334Звезды репозитория

Коротко о README

Навык задает методологию обратной разработки: полный перечень источников, трассируемые цепочки, обратная сверка документов с кодом. Описание и документы на китайском языке.

Бейдж для README

Исходный SKILL.md

---
name: reverse-new
description: "Reverse-engineer an existing source project into a complete, function-centered requirements, implementation, architecture, interface, object, component, configuration, and physical database meta-model. Use when the user asks for 源码逆向、项目逆向、功能架构、业务功能清单、需求面板、菜单到数据库穿透、完整功能调用链、无菜单功能、定时任务或事件功能、技术架构、组件能力、逐接口逆向、逐对象逆向、逐表逐字段数据库设计、ASCII页面原型、技术实现全集单功能深挖、技术实现无关需求规格 or consistency validation. The global baseline must exhaustively inventory all in-scope source assets; single-function mode supports either full business-and-technical vertical penetration or an implementation-independent requirements specification with prototype and database traceability."
---

# Complete Source Reverse Engineering

把存量源码逆向成完整、可追溯、可继续钻取并能从源码反查遗漏项的项目元模型。

## Read First

执行任何任务前完整读取:

1. `references/output-language.md`:中文/英文输出选择和语言一致性规则。
2. `references/workflow.md`:模式、阶段、全量覆盖和停止规则。
3. `references/output-contract.md`:产物目录、稳定 ID 和节点模板。
4. `references/evidence-protocol.md`:事实、推断、假设及缺失源码处理。
5. `references/exhaustive-discovery.md`:源码资产全量发现、登记和归属规则。

按任务继续读取:

- 业务需求功能:`references/business-function-requirements.md`。
- 功能实现穿透:`references/function-penetration.md`。
- 数据库设计:`references/database-reverse-engineering.md`。
- 技术架构与组件:`references/technical-architecture.md`。
- 公共能力:`references/common-capabilities.md`。
- 无菜单功能:`references/non-menu-functions.md`。
- 单功能深挖:`references/single-function-drilldown.md`。
- 技术实现无关需求规格:`references/single-function-requirements-spec.md`。
- 全集细粒度提示词:`references/prompt-full-detail-drilldown.md`。
- 需求规格提示词:`references/prompt-requirements-drilldown.md`。
- 追踪线索:`references/source-tracing-playbook.md`。
- 最终检查:`references/validation-and-consistency.md`。
- 可执行提示词:`references/prompt-pack.md`。

## Default Behavior

先执行语言门禁:用户已指定中文或英文时直接采用;用户未指定时,在生成最终 Markdown 前让用户选择中文文档或英文文档。一次任务的整套输出必须使用同一种文档语言,代码标识和稳定 ID 保持源码原文。

默认执行“全量架构与功能基线模式”,而不是代表性抽样:

1. 枚举范围内全部入口、业务功能、对象、接口、任务、事件、DAO/Repository、物理表/视图/字段、配置和组件能力。
2. 为每个业务功能建立一份需求功能面板。
3. 使用同一 `FUNC-*` 为每个业务功能建立完整主实现穿透链。
4. 单独发现没有菜单入口的定时、事件、回调、API-only、批处理、启动、轮询、CDC、补偿和 CLI 功能。
5. 逐物理表输出字段级数据库逆向;DDL 缺失时仍输出由实体、SQL、DAO 和赋值路径推断的字段模型,并逐项标记未知。
6. 单独输出技术架构、开发框架、全部技术组件及能力接口。
7. 单独输出认证、权限、流程、通知、消息、文件、字典、审计、调度等公共能力及消费者。
8. 从源码资产清单反查文档覆盖,存在未归属入口、接口、任务、DAO、模型或表时不得完成。

Сообщить о проблеме