Home of Spec-Driven BCE (sbce.space) — development conventions, SKILLS.md, and AGENTS.md for building modern Java and web applications, and for migrating legacy enterprise systems onto that stack.
Download the repository without git, then run the installer:
curl -fsSL https://raw.githubusercontent.com/AdamBien/airails/main/downloadSkills | java --source 25 /dev/stdin
cd airails
./installSkills
Or clone it with git instead of the first step:
git clone https://github.com/AdamBien/airails
cd airails
./installSkills
The installer finds all skills and prompts before copying to each supported agent directory (~/.claude/skills, ~/.vibe/skills, ~/.kiro/skills, ~/.copilot/skills, ~/.agents/skills, ~/.config/goose/skills).
Without a JDK or git, download the prepacked zip for your agent from the rolling skills release and unzip it into the home directory:
curl -fsSLO https://github.com/AdamBien/airails/releases/download/skills/airails-claude.zip
unzip -o airails-claude.zip -d ~
Each zip contains all skills with the agent's skills directory baked into the entry paths: airails-claude.zip, airails-vibe.zip, airails-kiro.zip, airails-copilot.zip, airails-codex.zip, airails-goose.zip.
AI agents installing the skills themselves should follow AGENTS.md — installSkills requires an interactive terminal.
Manage installed skills:
./installSkills -l # list available and installed skills
./installSkills -d <name> # delete a skill by name
./installSkills -h # show help
One capability spec equals one business component, and the spec is the boundary contract (sbce.space). Declare the capability, then converge the code against the stack's own test loop.
- sbce — The workflow:
newdecomposes a feature into capability specs,applyconverges code to spec; composes with bce and a stack skill (java-cli-app, microprofile-server, web-components) - ears-tests — Parameterized (table-driven) tests generated from the EARS requirement statements in a capability spec, one labeled row per requirement id
- java-conventions — Composable Java 25 code conventions: modern syntax, naming, visibility, streams, and exceptions across all Java contexts
- java-cli-script — Zero-dependency, single-file executable Java scripts for system-wide use via PATH
- java-distiller — Simplifies, modernizes, and refactors existing code into idiomatic Java 25
- python-to-java — Converts Python scripts to zero-dependency Java 25 CLI programs
- enterprisifier — Deliberately overengineers code with maximum patterns, indirections, and abstractions, for comedic or educational purposes
- zb — Zero Dependencies Builder for compiling, building, and packaging Java 21+ projects
- zb-release-pipeline — GitHub Actions pipeline that builds a zb project and publishes the JAR as a GitHub Release
- zargs — Zero-dependency, enum-based argument parsing for Java CLI applications
- zcfg — Zero Dependency Configuration Utility for loading properties and application configuration
- zcl — Zero-dependency Colour Logger for colored terminal output in Java applications
- zjson — JSON parsing and generation by copying the org.json source into the project, no Maven/Gradle dependency
- zunit — Generates and runs zunit tests for java-cli-app projects
- web-conventions — Composable baseline for all web frontends: semantic HTML, accessibility, design tokens, and Baseline browser-support policy
- web-static — Modern static websites using semantic HTML and CSS without external dependencies or build systems; composes web-conventions
- web-components — Single-page applications using web components, BCE layering, lit-html, Redux Toolkit, and client-side routing; composes web-conventions
- web-latest — Modifier for experiments and PoCs that lifts the Baseline browser-support policy: newest web platform features without fallbacks, with a declared support floor; composes on top of web-static or web-components
- web-performance-reviewer — Opt-in performance review of the rendered site through Chrome DevTools MCP: throttled traces, Core Web Vitals thresholds, network waterfall, heap-snapshot leak checks for SPAs; never part of the verification loop; composes on top of web-static or web-components
- bce — Composable, technology-neutral architecture rules for the Boundary-Control-Entity pattern: business components, layer responsibilities, and package structure
- java-cli-app — Multi-file Java 25 CLI applications packaged as executable JARs with zb
- microprofile-server — Architecture and coding conventions for long-running MicroProfile/Jakarta EE server applications using BCE pattern
- continuous-testing — Test-driven loop on top of microprofile-server: builds, starts the server, and runs Unit, Integration, and System Tests after every change
- showtime — Live coding mode on top of any project skill: generates code without running tests or builds, for demos and workshops
Migrate legacy, overengineered enterprise systems — Java or web — onto a modern stack (migrations/). Three entry paths: rehost unchanged, replatform by simplifying in place, or rearchitect toward BCE by recovering the domain vocabulary and carving business components. Every code-changing step is bracketed by recorded behavior; analysis steps produce documentation for human review before any code changes.
- migration-advisor — Front door: assesses the system from shallow read-only signals plus a short interview, recommends an entry path and an ordered skill sequence in
migration/PLAN.md; routes, never executes - concept-extractor — Mines candidate domain concepts from every naming source (schema, UI labels, contracts, code); writes
migration/CONCEPTS.md, seedsmigration/GLOSSARY.md - concept-clarifier — Resolves open questions and glossary hypotheses with a domain expert, live or via
migration/INTERVIEW.md; records answers with provenance - bc-carver — Clusters confirmed concepts into candidate business components; documents the as-is → to-be diff in
migration/CARVING.md - concept-annotator — Projects concepts, target BC, and refactoring hints into per-package
package-info.javamigration notes - characterization-tests — Pins observed behavior of the running legacy system as replayable golden masters; records before, replays after the lift and each carving step; composes with system-tests and the stack skill
- simplifier — Replatform mode: modernizes code and removes external dependencies on the lifted system, one pass at a time under the characterization green bar; structure preserved
- bce-diagrams — High-level overview diagrams showing interactions between business components, subsystems, and services
- drawio — Draw.io overview diagrams with BCE shape mapping and consistent visual style
- mermaid — Mermaid overview diagrams for architecture and component visualization
- readme — Conventions for writing README.md files targeting advanced developers
- quarkus-microprofile — Quarkus MicroProfile template with BCE architecture, REST endpoints, CDI, and System Tests
- bce.design — Web Components starter with lit-html, Redux Toolkit, and standards-based routing (Navigation API + URLPattern)
- ebank — CRUD with Quarkus, JPA, and PostgreSQL
- java-cli-app — Template for building zero-dependency Java CLI applications with zb
- zeeds — Zero-dependency Java 25+ source files as starting points, run directly with
java filename.java
powered by airhacks.industries