archaeologist

Distill imperative source code into a declarative dx specification.

1|Updated May 12, 2026
One-click install
npx skills add https://github.com/dewitt/dx --skill archaeologist-dewitt
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: archaeologist
Source: https://github.com/dewitt/dx/tree/main/skills/archaeologist
Command: npx skills add https://github.com/dewitt/dx --skill archaeologist-dewitt

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill solves the problem of undocumented, legacy codebases by systematically extracting observable behaviors into a standardized, auditable declaration.

Core Features & Use Cases

  • Automated Distillation: Converts imperative source code into a structured dx declaration.
  • Boundary Identification: Separates public-facing interfaces from internal implementation details.
  • Use Case: When inheriting a project with no documentation, use this skill to generate a base specification that allows you to understand system intent, invariants, and contracts before attempting any refactoring.

Quick Start

Use the archaeologist skill to analyze the current directory and generate a base declaration for the existing system.

Frequently Asked Questions about archaeologist

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I reverse-engineer legacy code into a specification?

To reverse-engineer legacy code into a specification, this Skill distills imperative source code into a declarative dx specification by identifying observable system boundaries and public interfaces. It captures system intent, invariants, and contracts into a base Markdown declaration.

What is the best way to generate documentation for an undocumented codebase?

Generating documentation for an undocumented codebase is achieved by systematically extracting observable behaviors into a standardized, auditable dx declaration. This process isolates public-facing interfaces from internal implementation details to produce a base specification for architectural review.

How do I extract system invariants and contracts from imperative source code?

Extracting system invariants and contracts from imperative source code requires identifying observable system boundaries and public interfaces. This Skill operates on software repositories lacking documentation to capture these elements within a structured Markdown declaration.

Can I use this to analyze a software repository before attempting refactoring?

Yes, you can analyze a software repository before refactoring by using this Skill to generate a base specification. It converts the existing imperative source code into a structured dx declaration, allowing you to understand system intent and contracts prior to making changes.

Does generating a dx specification require adherence to a specific standard?

Generating a dx specification requires adherence to the dx-authoring standard. This Skill analyzes your current directory and produces a base Markdown declaration that follows this standard, providing a foundation for further specification refinement.