Skip to content

Skillware Patterns

Executable, bilingual pattern-transfer records for the Skillware paper.

CIReleasePaperPythonCode: Apache-2.0Docs: CC-BY-4.0

简体中文 · Paper · Release v0.1-paper-v1 · Browse patterns

What is Skillware?

Skillware is the software abstraction that extends software engineering to persistent behavioral artifacts. The paper argues that a Skill can be treated as software when its behavioral source is persistent, independently addressable, host-activated, and maintained through a software lifecycle.

This repository is the executable supplement for one bounded part of that argument: transferring established software design patterns to Skillware units and recording what the evidence does and does not support.

The release also includes the public evidence supplement used by the paper: the frozen corpus metadata, 15-case category-boundary matrix, coding protocol, and 13 fixed-revision engineering packets under evidence/paper-v1/.

flowchart LR
I[Task intent] --> S[Behavioral Source]
S --> A[Skill Artifact\nSKILL.md + optional resources]
A --> U[Skillware Unit\nidentity + version + provenance]
U --> H[Agent Host\nactivation and context]
H --> R[Agent Runtime\ninterpretation and tool use]
R --> T[Execution Trace]
T --> O[Task Outcome]
P[Source pattern\nintent + forces + participants] --> M[Participant map]
M --> A
E[Evidence boundary\npinned paths + tests + misuse case] -. qualifies claims .-> M
Loading

The Python samples execute deterministic oracles for declared contracts. They do not emulate a model, an Agent Host, or an Agent Runtime; those remain contextual execution concepts in the ontology.

Boundary shorthand: Behavioral Source -> Skill Artifact -> Skillware Unit -> Agent Host -> Agent Runtime.

What this is

  • A self-contained research artifact tied to arXiv:2607.18970.
  • A sourced screen of all 23 Gang of Four patterns, with 10 detailed GoF implementations.
  • Twelve standalone records: six main-text GoF mappings, four supplementary GoF mappings, and two established non-GoF traditions.
  • Bilingual definitions, participant maps, public fixed-revision correspondence records, runnable Skill examples, close misuse cases, and focused tests.

What this is not

  • Not a new design-pattern taxonomy and not a claim to invent GoF, POSA, or DDD patterns.
  • Not a marketplace, Skill registry, Agent Host, Agent Runtime, model benchmark, or production reliability study.
  • Not evidence that a local deterministic sample reproduces upstream model behavior or proves cross-Host equivalence.
  • Not a maturity ladder: pattern, implementation dimension, mechanism, and lifecycle stage remain separate analytical axes.

What you get

SurfaceContentsStart here
DefinitionsEnglish and Chinese source-pattern definitions plus Skillware participant mapspatterns/<pattern>/definition.md
Ecosystem evidencePublic upstream links frozen to immutable commits and a controlled claim statuscorrespondence.md
Complete SkillsRoot SKILL.md, child Skills or target bindings, references, scripts, fixtures, and expected resultsFacade sample
VerificationFocused tests, misuse discriminators, catalog checks, documentation checks, and repository validatortests/ · scripts/validate_repository.py
Paper bindingClaim-level mapping from paper Table 5 to local records and releasedocs/paper-map.md

Scope at a glance

ScopeCountInterpretation
23 GoF patterns screened23One sourced screening record for every canonical Gang of Four pattern; screening is not implementation.
10 detailed GoF implementations10Facade, Adapter, Composite, Observer, State, Strategy, Decorator, Template Method, Memento, and Mediator.
2 patterns from other established traditions2POSA Pipes and Filters and DDD Specification; they are labeled separately from GoF.
LanguagePython 3.10+Samples use the standard library; PyYAML is used by catalog tooling and the validator.
Release bindingv0.1-paper-v1The public repository release bound to the paper revision described in docs/paper-map.md.

Quick start: a 60-second deterministic demo

git clone https://github.com/MetaInFLow/skillware-patterns.git
cd skillware-patterns
python3 patterns/facade/sample/scripts/run_demo.py

The Production Incident Response Facade accepts one stable request and coordinates three specialist Skills. The output is deterministic and should match incident-result.json:

{
"summary": "checkout-api is experiencing elevated 5xx responses.",
"impact": "Customer requests may fail; treat checkout availability as degraded.",
"actions": [
"page-on-call",
"inspect-recent-deployments",
"check-upstream-dependencies"
],
"communication": "Investigating elevated 5xx responses for checkout-api; customer impact is being assessed."
}

Read the complete root Skill, participant map, misuse case, and focused tests to see how the mapping is made concrete. Every other pattern directory has the same inspectable record shape, with Adapter documenting three target bindings instead of separate child Skills.

Support status

This release separates what is implemented locally from what is observed in public upstream artifacts.

SurfaceStatusMeaning
Twelve local samplesconstructiveThe repository demonstrates that the declared Skillware mapping can be built and tested deterministically.
Facade ecosystem caseconfirmed correspondenceThe pinned Superpowers source paths satisfy the recorded participant relation.
Adapter ecosystem caseconfirmed correspondenceThe pinned gstack source paths show explicit host-target bindings; runtime parity still needs tests.
Composite, Observer, State, Strategy, Decorator, Template Method, Memento, Mediator, Pipes and Filterscandidate correspondenceSome source-level participants or behaviors remain unverified at the frozen paths.
Specification ecosystem casenot observableNo public artifact was admitted as a bounded Specification correspondence in this release.
Model interpretation and cross-Host behaviorout of scopePython oracle output cannot establish these claims.

Statuses are descriptive claim labels, not scores. See the full status vocabulary and limitations.

Pattern catalog

The twelve records are peers in one flat navigation tree. source_tradition, source_category, paper_role, and implementation_status live in each pattern.yaml; the source category is metadata, not a second taxonomy.

Pattern中文名Tradition / categoryScenarioEcosystem statusUpstream exampleLocal sample
Facade外观模式GoF / structuralProduction Incident Responseconfirmed correspondenceSuperpowers using-superpowerssample
Adapter适配器模式GoF / structuralMulti-Tracker Issue Publisherconfirmed correspondencegstack host bindingssample
Composite组合模式GoF / structuralInvestment Memo Buildercandidate correspondenceOpenMontage pipelinesample
Observer观察者模式GoF / behavioralSoftware Release Notificationcandidate correspondenceECC lifecycle hookssample
State状态模式GoF / behavioralVendor Onboarding Workflowcandidate correspondenceOpenMontage checkpointssample
Strategy策略模式GoF / behavioralRisk-Aware Code Reviewcandidate correspondenceUI/UX Pro Max routingsample
Decorator装饰模式GoF / structuralContract Review Enhancerscandidate correspondenceCaveman activation hooksample
Template Method模板方法模式GoF / behavioralEnterprise RFP Responsecandidate correspondenceSuperpowers workflow Skillssample
Memento备忘录模式GoF / behavioralConfiguration Migrationcandidate correspondenceMicrosoft SkillOpt stagingsample
Mediator中介者模式GoF / behavioralDeployment Coordinatorcandidate correspondenceAnthropic financial-services reconcilersample
Pipes and Filters管道-过滤器模式POSA / architecturalSupport Ticket Triagecandidate correspondenceOpenMontage animated-explainer pipelinesample
Specification规约模式DDD / domainExpense Approval Policynot observableNo admitted upstream casesample

The GoF-23 screening matrix records the other thirteen GoF patterns as screening records only. The detailed index is the machine-rendered catalog source.

Upstream examples and evidence

Each link below names the concrete public Skill, hook, pipeline, binding, or staging path inspected for the corresponding record. Star counts are discovery snapshots checked 2026-07-23; they help readers find important ecosystem examples but are not evidence strength, quality ratings, or paper results. Every evidence record pins an immutable revision.

PatternPublic projectSnapshotExact inspected use
Facadeobra/superpowers~259k starsskills/using-superpowers/SKILL.md selects and invokes specialist Skills; hooks/session-start bootstraps discovery.
Adaptergarrytan/gstack~124k starsSKILL.md.tmpl, scripts/gen-skill-docs.ts, and hosts/codex.ts bind one Skill contract to a host target.
Compositecalesthio/OpenMontage~41.2k starspipeline_defs/animation.yaml and its stage Skills are loaded by lib/pipeline_loader.py. This remains a candidate because the reviewed tree does not establish a complete one-parent composite contract.
Observeraffaan-m/Everything Claude Code~232k starshooks/hooks.json routes lifecycle events to run-with-flags.js and continuous-learning-v2/hooks/observe.sh.
Statecalesthio/OpenMontage~41.2k starslib/checkpoint.py and skills/meta/checkpoint-protocol.md persist stage/status branches. Full GoF delegation is not established.
Strategynextlevelbuilder/ui-ux-pro-max-skill~109k starsSKILL.md routes through scripts/search.py; alternatives lack a single declared substitution contract.
DecoratorJuliusBrussee/caveman~92.1k starssrc/hooks/caveman-activate.js wraps activation with the skills/caveman/SKILL.md guidance; a complete GoF Component contract is not declared.
Template Methodobra/superpowers~259k starsskills/brainstorming/SKILL.md and skills/test-driven-development/SKILL.md share ordered process guidance; bounded specialization hooks remain unverified.
Mementomicrosoft/SkillOpt~14.5k starsskillopt_sleep/staging.py backs up a staging manifest before adoption; the inspected path does not expose a complete owned restore protocol.
Mediatoranthropics/financial-services~33.7k starsmanaged-agent-cookbooks/gl-reconciler/agent.yaml coordinates reader, critic, and resolver subagents; the release coordinator is a candidate mapping.
Pipes and Filterscalesthio/OpenMontage~41.2k starspipeline_defs/animated-explainer.yaml orders stage Skills loaded by lib/pipeline_loader.py.
SpecificationNo public upstream artifact was admitted as a bounded Specification correspondence; see the negative evidence record.

The local evidence files explain what each path proves, what it does not prove, and why the controlled status is not stronger. They are not vendor endorsements and do not copy upstream code.

How to read a pattern record

Every detailed pattern is a compact, inspectable Skillware record:

pattern.yaml source name, Chinese name, tradition, role, scenario
definition.md source intent, forces, participants, consequences
definition.zh-CN.md Chinese definition with the same claim boundary
participant-map.yaml source participant -> Skillware participant relation
correspondence.md public revision, exact paths, status, caveats
evidence/ frozen upstream evidence when a public case is admitted
sample/SKILL.md complete root Skill and its public request/result contract
sample/child-skills/ specialist Skills, when the scenario uses them
sample/references/ schemas, policies, and reusable reference material
sample/scripts/ deterministic oracle and demo entry point
sample/fixtures/ positive and negative inputs
sample/expected/ versioned expected outputs and errors
sample/tests/ focused verification of behavior and boundaries
misuse/ close non-example and decisive discriminator

The Facade record is the shortest route through all seven parts. The Adapter record shows how one canonical Skill request can be rendered into GitHub REST, Jira REST/ADF, and Linear GraphQL target contracts.

Admission protocol

A pattern-transfer claim is admitted only when one declared Skillware Unit and revision records all seven elements in the transfer protocol:

Source intent
Design forces
Participant correspondence
Consequences
Implementation evidence
Focused verification
Misuse discriminator

Names, filenames, comments, or visual resemblance do not establish a transfer. A local sample can be constructive even when public ecosystem correspondence remains candidate correspondence or not observable.

Reproducibility

Python 3.10+ is required. A clean checkout can run the sample without network access or credentials; install PyYAML before catalog-dependent checks:

python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e .# One sample, then focused and full verification
python3 patterns/facade/sample/scripts/run_demo.py
python3 -m unittest discover -s patterns/facade/sample/tests -v
python3 -m unittest tests/test_docs.py -v
python3 -m unittest discover -s tests -v
python3 scripts/validate_repository.py

Every sample is designed to run from the repository root or its own sample directory and uses Python's standard library for its executable oracle. The validation workflow repeats the repository checks on pushes and pull requests; a workflow badge is a live status indicator, not a paper result.

Repository map

catalog/ GoF-23 screen and detailed machine/human indexes
docs/ ontology, paper map, protocol, statuses, limitations
evidence/paper-v1/ public paper evidence: corpus, boundary review, engineering cases
patterns/<pattern>/ one flat, independently inspectable pattern record
definition*.md English and Chinese source definitions
participant-map.yaml source-to-Skillware participant correspondence
correspondence.md public evidence and bounded claim status
evidence/ pinned upstream case files, where available
sample/ complete Skill, resources, oracle, fixtures, tests
misuse/ close non-example and discriminator
scripts/ deterministic catalog/repository validator
tests/ documentation, shape, catalog, record, and sample tests

Paper and repository role

The public paper Skillware: A Software Ontology and Engineering Lifecycle for Persistent Behavioral Artifacts defines the ontology and motivates software-engineering continuity. This repository publishes the transfer protocol, sourced catalog, participant maps, public frozen cases, constructive samples, misuse cases, and focused verification for release v0.1-paper-v1.

The paper's manuscript source remains maintained in a private authoring repository. This public repository carries the paper-bound evidence subset required to inspect the published claims; it cannot validate the ontology or establish ecosystem prevalence by itself.

Research boundary and claim statuses

StatusMeaning
constructiveThe local sample demonstrates that the declared mapping can be built and tested.
confirmed correspondenceFixed-revision public source evidence satisfies the participant relation.
candidate correspondencePartial source evidence exists, but a participant or behavior remains unverified.
unsupportedAvailable evidence contradicts or fails the source pattern contract.
not observableThe required relation cannot be evaluated from available artifacts.

These statuses are descriptive, not a score. They do not rank patterns, projects, usefulness, quality, or maturity.

The artifacts demonstrate bounded constructibility and, where stated, fixed-revision correspondence. They do not establish ecosystem frequency, automatic quality advantage, production reliability, security, comparative performance, model interpretation, or cross-Host behavioral equivalence. Deterministic oracles verify declared sample contracts; they do not reproduce an Agent Runtime or prove that natural-language interpretation is invariant.

See the complete evidence vocabulary and limitations.

Citation

Haodi Fan and Zucong Lan. Skillware: A Software Ontology and Engineering Lifecycle for Persistent Behavioral Artifacts. arXiv:2607.18970 [cs.SE], submitted 21 July 2026.

For software citation metadata, use CITATION.cff. For claim-level paper paths, use docs/paper-map.md. The release that binds this supplement to the public paper is v0.1-paper-v1.

Contributing

Start with CONTRIBUTING.md. New records must preserve an established source tradition, exact participant map, bilingual definitions, a complete standalone Skill sample, a close misuse case, focused tests, the seven-element admission protocol, and a controlled claim status. Contributions should distinguish public upstream evidence from local constructive evidence and must not treat a pattern name as proof.

Security

This repository runs local deterministic examples and does not require secrets, network access, or third-party service credentials. Do not place credentials in fixtures or correspondence records. Report a security issue through the private GitHub security reporting page rather than opening a public issue.

Community and project links

License

The operative file boundary is exhaustive and disjoint:

Apache-2.0
.github/**
.gitignore
pyproject.toml
scripts/**
tests/**
patterns/*/sample/**
CC-BY-4.0
README.md
README.zh-CN.md
CITATION.cff
CONTRIBUTING.md
CODE_OF_CONDUCT.md
catalog/**
docs/**
patterns/.gitkeep
patterns/*/** excluding patterns/*/sample/**
Canonical upstream texts (outside repository relicensing)
LICENSE-CODE
LICENSE-DOCS

The Apache-2.0 class is licensed under the Apache License 2.0; the CC-BY-4.0 class is licensed under Creative Commons Attribution 4.0 International. LICENSE-CODE and LICENSE-DOCS retain their canonical upstream texts and are outside repository relicensing. Linked third-party artifacts remain under their upstream licenses. See CONTRIBUTING.md#license-boundary for contribution terms.

About

Executable companion for software design patterns in Skillware

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages