distill

Strip implementation details from codebases to generate reusable Allium specifications with domain entities, states, and rules.

5|4|Updated Mar 10, 2026
One-click install
npx skills add https://github.com/editor-code-assistant/eca-plugins --skill distill-editor-code-assistant
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: distill
Source: https://github.com/editor-code-assistant/eca-plugins/tree/main/plugins/allium/skills/distill
Command: npx skills add https://github.com/editor-code-assistant/eca-plugins --skill distill-editor-code-assistant

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Distilling a codebase into a domain-level Allium specification is hard when implementation details obscure domain intent; this skill automates the extraction of core domain concepts, boundaries, and rules from existing code.

Core Features & Use Cases

  • Identify entry points, domain models, and business logic from a repository.
  • Extract explicit scopes, states, and transitions to form a coherent Allium spec.
  • Remove implementation specifics (ORMs, HTTP layers, and tooling) to reveal the domain story.
  • Use cases include onboarding new teams to a monorepo, standardizing library specs, and aligning domain boundaries across teams.

Quick Start

Provide your codebase and run the distillation workflow to generate a domain-level Allium specification.

Frequently Asked Questions about distill

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

FAQPage Schema
How do I extract domain concepts and business rules from an existing codebase?▼

To extract domain concepts from a codebase, this skill distills implementation details like ORMs and HTTP layers away, surfacing core domain models, states, and transitions to generate a formal specification.

What is an Allium specification and when do I need one?▼

An Allium specification captures entities, states, rules, and scope at the domain level. You need one when implementation details obscure domain intent, requiring you to codify essential transitions and enforce domain-language modeling.

Can I generate a domain-level specification for a large monorepo?▼

Yes, you can distill specifications for large monorepos. The workflow applies to codebases of varying sizes, extracting explicit scopes and domain boundaries to standardize library specs across multiple teams.

How do I turn code into a formal specification without infrastructure noise?▼

Turning code into a formal specification involves abstracting away infrastructure specifics such as tooling and HTTP layers. The distillation workflow identifies entry points and business logic to reveal the domain story.

Does distilling a codebase into a domain specification require static analysis tools?▼

Distilling a codebase into a domain specification does not require external static analysis dependencies. The skill internally analyzes repositories to identify domain models and codify essential validations without listed dependencies.