Spekkio leverages reverse engineering techniques to extract valuable information from 'slapp' applications. By understanding builder intent and the actual behavior of the app, it generates comprehensive documentation and user stories, facilitating safe refactoring and intentional evolution of software projects.
Spekkio is an innovative tool designed to extract value from vibe-coded applications, often referred to as "slapps" or AI "slop apps," by reverse engineering their specifications. This approach addresses the common issue faced by developers and industry veterans alike: applications that function intermittently but still hold significant value. Spekkio transforms the chaotic nature of these apps into structured insights, facilitating better maintenance and development practices.
The process is illustrated through the extract mechanism:
Existing code (vibe-coded)
↓
/spekkio.extract
↓
spec.md (inferred user stories, acceptance criteria)
features/*.feature (characterization scenarios)
↓
Human review: "Is this what we actually want?"
↓
Adjust spec (remove bugs-as-features, add missing intent)
↓
Normal Spec Kit flow from here
The extraction process comprises six phases, producing outputs that assist in revealing anomalies typically found in vibe-coded apps such as missing validations, security vulnerabilities, dead code, inconsistent error handling, and lack of test coverage:
| Phase | Output | Description |
|---|---|---|
| 0 | discovery.md | Detects language/framework, maps project structure, catalogs endpoints |
| 1 | inventory.yml | Structured behavioral record for every external interface |
| 2 | spec.md | Inferred user stories with acceptance criteria and confidence scores |
| 3 | features/characterization/*.feature | Gherkin scenarios describing current, observed behavior |
| 4 | source-mapping.md | Traceability between scenarios and source code |
| 5 | checklists/extraction-review.md | Human review checklist to identify anomalies and missing context |
After extraction, users can:
An example FastAPI ATM application, located in examples/atm/, is available to demonstrate the extraction tool in action with intentional anomalies for educational purposes. To run it, use:
/spekkio.extract examples/atm
Post-extraction, users can access screenshots detailing various reports, including an overview and specific filter views for human input and anomalies, helping in the assessment and refinement stages.
No comments yet.
Sign in to be the first to comment.