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.