propagate

Generate unit, integration, property-based, and state machine tests from Allium behavioral specifications.

10|6|Updated Feb 8, 2026
One-click install
npx skills add https://github.com/juxt/claude-plugins --skill propagate-juxt
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: propagate
Source: https://github.com/juxt/claude-plugins/tree/main/plugins/allium/skills/propagate
Command: npx skills add https://github.com/juxt/claude-plugins --skill propagate-juxt

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill eliminates the tedious, error-prone work of manually writing tests for systems defined by Allium behavioral specifications, ensuring every spec requirement is covered without missing critical test obligations.

Core Features & Use Cases

  • Multi-type test generation: Creates assertion-based, property-based, and state machine tests aligned with your project's test framework and conventions.
  • Spec-to-code mapping: Correlates Allium spec constructs (entities, rules, surfaces, invariants) with your implementation code to generate contextually relevant tests.
  • Gap-aware prioritization: Uses Allium analysis findings (like deadlocks or missing producers) to prioritize test generation for high-risk spec gaps.
  • Use Case: A team using Allium to define their payment processing system's behavior can use this Skill to automatically generate all required tests for state transitions, API surface contracts, and invariants, reducing test writing time by 70% and ensuring 100% spec coverage.

Quick Start

Use the propagate skill to generate a complete test suite for the payment-processing.allium spec in your current project, following your existing pytest conventions.

Frequently Asked Questions about propagate

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

FAQPage Schema
How do I generate tests from behavioral specifications automatically?

You can generate tests from behavioral specifications by mapping spec constructs like entities, rules, surfaces, and invariants to implementation code. This eliminates manual test writing and ensures full coverage of all spec obligations across common programming languages.

Can I generate property-based and state machine tests from my existing spec format?

Yes, property-based and state machine tests can be generated from behavioral specifications. The test generation process aligns with your project's specific test framework conventions to produce contextually relevant assertion-based, property-based, and state machine tests.

What is the best way to ensure full test coverage for system behavior definitions?

The best way to ensure full test coverage is using gap-aware prioritization based on static analysis of spec gaps. This approach identifies high-risk areas like deadlocks or missing producers and prioritizes test generation to cover those specific spec obligations.

Does test generation work with common programming languages and test frameworks?

Yes, test generation works across common programming languages and test frameworks. It aligns generated tests with your project-specific conventions, ensuring the output integrates seamlessly with your existing development workflow.

How do I map spec constructs like transition graphs and invariants to implementation code?

Spec constructs like transition graphs and invariants are mapped to implementation code by correlating behavioral specifications with your project files. This spec-to-code mapping generates contextually relevant tests for state transitions, API surface contracts, and invariants.

Why does manual test writing miss critical spec obligations?

Manual test writing misses critical spec obligations because it is tedious and error-prone. Automatically generating comprehensive test suites from behavioral specifications eliminates these errors and ensures every spec requirement is covered without gaps.