By DEFRA
Claude Code plugin for Defra's Legacy Application Programme (LAP) to aid in reverse engineering legacy applications.
Internal worker agent. Writes a single feature specification file using the LAP feature template. Only spawned by the prd-to-features agent — not for direct use.
Interaction analysis specialist for legacy application screens and user workflows. Use this agent to stitch HTML mockups with curated interview transcripts into a comprehensive interaction analysis for downstream PRD generation.
Decomposes a PRD into individually deliverable feature specifications. Reads the PRD, identifies feature boundaries from bounded contexts and workflows, then generates a complete feature file per feature by spawning parallel feature-writer agents.
PRD generator that synthesises analysis outputs into a comprehensive Product Requirements Document. Requires curated content (HTML mockups and curated transcripts) to exist before running. Automatically runs any missing analyst agents before producing output/PRD.md.
Legacy application source code analyst for .NET/VB codebases. Use this agent to extract workflows, behaviours, domain model, and business logic from source code under src/ for downstream PRD generation.
Curates a stakeholder interview transcript by removing off-topic content (incumbent team agenda, feature requests, distractions) while preserving application walkthrough and domain knowledge verbatim.
Converts a UI screenshot of a legacy application into semantic, unstyled mockup HTML. Use this when you need to extract the information structure from a screenshot so downstream agents can reason about the UI without expensive image tokens.
Validates all Mermaid diagram blocks in a markdown file using the Mermaid Chart MCP tool and fixes broken diagrams in place.
Uses power tools
Uses Bash, Write, or Edit tools
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
A Claude Code plugin for Defra's Legacy Application Programme (LAP) to aid in the reverse engineering of legacy applications.
This plugin extends Claude Code with specialised tooling and prompts to assist engineers in understanding, documenting, and modernising legacy systems within Defra's estate.
This plugin must only be used on source material classified as OFFICIAL. Do not use it with material at any higher classification. If you are unsure about the classification of your source material, seek guidance from your organisation before proceeding.
By default, Claude Code sends data to models hosted by Anthropic. Claude Code can also be configured to use Amazon Bedrock or Google Cloud Vertex AI — consult your organisation's guidance on approved platforms.
Claude Code prompts for approval before executing tools such as shell commands and file writes. The --dangerously-skip-permissions flag bypasses these prompts, allowing fully unattended operation (e.g. in the batch curation script below).
If you use this flag, run Claude Code inside a containerised sandbox (Docker, Podman, or a devcontainer) so that any unintended actions are contained. If a sandbox is not available, omit the flag and approve each action manually instead.
jq (for parsing Claude output in the reveng CLI)reveng sandbox only: Docker and the devcontainer CLI (npm install -g @devcontainers/cli)The repository ships with a reveng CLI that wraps the plugin in a set of command-driven workflows. See specs/reveng-cli.md for the full specification.
git clone https://github.com/DEFRA/claude-legacy-reveng-plugin
cd claude-legacy-reveng-plugin
./install.sh
install.sh copies files to:
| Source | Destination |
|---|---|
reveng | ~/.local/bin/reveng |
skills/, agents/, hooks/, .claude-plugin/, CLAUDE.md | ~/.config/reveng/plugin/ |
container/Dockerfile, container/devcontainer.json | ~/.config/reveng/container/ |
Override the destinations with the REVENG_BIN_DIR and REVENG_CONFIG_DIR environment variables. install.sh refuses to overwrite an existing installation by default — pass --update to upgrade in place:
./install.sh --update
After installation, verify with:
reveng version # prints: reveng 0.1.0
If ~/.local/bin is not already on your PATH, add it to your shell profile:
export PATH="$HOME/.local/bin:$PATH"
There is no dedicated uninstall command. Remove the installed files manually:
rm ~/.local/bin/reveng
rm -rf ~/.config/reveng
All reveng commands run headlessly — they invoke Claude Code in --dangerously-skip-permissions mode with the plugin loaded from ~/.config/reveng/plugin/. When run outside a devcontainer, a safety warning is printed to stderr. Use reveng sandbox (below) to run commands inside an isolated container.
| Command | Purpose |
|---|---|
reveng init | Scaffold screenshots/, transcripts/, src/, output/ and add the intermediate-output entries to .gitignore |
reveng curate | Run the digital-content-curator agent to prepare screenshots and transcripts for analysis (default model: sonnet) |
reveng synthesise | Run the product-manager agent to produce output/PRD.md from curated content (default model: opus) |
reveng decompose | Run the prd-to-features agent to decompose output/PRD.md into output/features/FT-*.md (default model: opus) |
reveng sandbox | Start or attach to a devcontainer for the current project (supports --rebuild and clean subcommand) |
reveng version | Print the CLI version and exit |
reveng help | Print usage information |
These flags are accepted by the curate, synthesise, and decompose commands:
| Flag | Default | Description |
|---|---|---|
-m, --model MODEL | varies by command | Claude model to use |
-v, --verbose | off | Show Claude commands and raw output |
--dry-run | off | Print the claude command that would run without executing it |
-h, --help | Show command-specific help |
Each stage validates its inputs before invoking Claude and points the user at the preceding command if something is missing:
NRF shared agents, skills and tools for DEFRA projects
JavaScript style guide skill for AICE JavaScript projects
npx claudepluginhub defra/claude-legacy-reveng-pluginReverse engineering service functionality from source code
Helps Claude read a planning document and explore related files to get familiar with a topic. Asking Claude to prepare to discuss seems to work better than asking it to prepare to do specific work. This is followed by Plan, then Execute.
Faithful information summarization with fidelity preservation, structured output, and anti-hallucination methodology. Provides skills for file, URL, and image summarization; agents for autonomous summarization tasks; and hooks for validating agent output structure.
Living Ontology for Claude Code - Captures and reuses knowledge across sessions
Contexto instantâneo e confiável de qualquer codebase legado — engenharia reversa em doc viva, e um War Room multi-agente para caçar os riscos.
Ultra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.