Skip to main content

Specfuse Spec-Authoring Kit

The upstream contract for Specfuse projects. Defines the conventions, vendor extensions, and authoring workflows that the Specfuse code generator consumes to produce backend, frontend, and worker artifacts from OpenAPI 3.0.3 + AsyncAPI 3.0.0 + Arazzo 1.0.1 specifications.

Quick start

Bootstrap a new Specfuse project with the kit's CLI:

pipx install specfuse-authoring     # CLI; recommended
#   (or, inside a venv you control: python3 -m pip install specfuse-authoring)
specfuse-authoring init ~/projects/my-new-project

You'll be prompted for the project name, the project token (channel-address prefix), and the initial domain. The CLI substitutes placeholders, scaffolds the authoring contract (handbooks + samples) into .specfuse/authoring/, wires the specfuse-authoring Claude Code plugin into .claude/settings.json, and prints next steps. Pass --name/--token/--domain to run non-interactively.

The Claude Code authoring assets (skills + agents) ship as the specfuse-authoring plugin in the shared specfuse marketplace. init auto-wires the plugin, but you install it once in Claude Code with:

/plugin marketplace add specfuse/specfuse
/plugin install specfuse-authoring@specfuse

To re-sync .specfuse/authoring/ and re-assert the plugin config in an existing project after a kit update:

specfuse-authoring refresh ~/projects/existing-project

Pull newer skills with /plugin update specfuse-authoring@specfuse.

See examples/hello-orders/ for a complete worked example.

What's in the kit

Asset Contents
Handbooks (handbooks/) 6 authoritative documents: REST API, AsyncAPI, Arazzo, vendor extensions, AI access policy framework, and the generator's project file. Together these define the full spec-authoring contract.
Samples (samples/) 4 canonical YAML templates — endpoints, async messages, scenarios, recipes — that every authored file should pattern-match against.
Schemas (schemas/) Working Spectral rulesets and custom functions for validation under schemas/spectral/. CI lints the bundled example against them.
Templates (templates/) The project-init/ skeleton, plus the AI Access Policy template.
Claude assets 5 Claude Code sub-agents and 20 authoring skills (/specfuse-authoring:design-scenario, /specfuse-authoring:design-async, /specfuse-authoring:design-recipe, etc.) that automate spec design. Distributed as the specfuse-authoring plugin in the specfuse/specfuse marketplace; init wires the plugin and scaffolds the contract the skills read into .specfuse/authoring/.
Bundled example (examples/hello-orders/) A 61-file complete Specfuse project — 2 domains, 3 entities, 1 state-transition event, 1 cross-domain scenario, 2 setup recipes, filled AI access policy, CI workflow. Serves as the kit's regression net.

Where to start

You want to… Read first Then run
Bootstrap a new project docs/getting-started.md specfuse-authoring init <target-dir>
Design your first scenario handbooks/Arazzo_Handbook.md /specfuse-authoring:design-scenario
Author a new entity or endpoint handbooks/API_Handbook.md + samples/endpoint-samples.yaml (no kit command yet — author by hand)
Design an async event or scheduled job handbooks/AsyncAPI_Handbook.md + samples/message-samples.yaml /specfuse-authoring:design-async
Add a setup recipe handbooks/Arazzo_Handbook.md §7 + samples/recipe-samples.yaml /specfuse-authoring:design-recipe
Configure AI agent access handbooks/AI_Access_Policy_Framework.md + templates/ai-access-policy-template.md (copy template into project)
Look up a x-* extension handbooks/Vendor_Extensions.md
Configure the generator project file handbooks/Project_File.md
See a complete worked example examples/hello-orders/README.md

Relationship to other Specfuse repos

spec-authoring-kit  ◄── this repo (rules, samples, templates)
       ▲
       │ consumes
       │
   ┌───┴────────────────┐
   │                    │
generator           orchestrator
(Java/Kotlin —      (filesystem-based
 produces code      multi-agent workflow
 from specs)        coordination)

The kit is upstream of both: it defines what a Specfuse spec must look like. The generator consumes those specs to emit code. The orchestrator coordinates the multi-agent authoring workflow that produces those specs.

Status

Incubating (v0.3.1), Apache-2.0. Handbooks, samples, schemas, the project-init template, the bundled hello-orders example, the specfuse-authoring plugin (in the specfuse/specfuse marketplace), and the specfuse-authoring CLI are all in place. Generator-side alignment items are tracked in compatibility.md.

The kit is distributed on PyPI as specfuse-authoring and hosted under Specfuse/authoring. The code generator it drives is distributed separately as a pinned, checksum-verified release asset (see generator.lock); specfuse-authoring generate resolves, verifies, and runs it on demand.

Additional references

  • compatibility.md — kit ↔ generator version matrix and outstanding generator-side follow-ups.
  • provenance.md — bug-and-PR history that motivated each vendor extension. Kit-maintainer audit trail; external consumers do not need the referenced PRs to resolve.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

specfuse_authoring-0.3.2.tar.gz (229.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

specfuse_authoring-0.3.2-py3-none-any.whl (266.8 kB view details)

Uploaded Python 3

File details

Details for the file specfuse_authoring-0.3.2.tar.gz.

File metadata

  • Download URL: specfuse_authoring-0.3.2.tar.gz
  • Upload date:
  • Size: 229.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for specfuse_authoring-0.3.2.tar.gz
Algorithm Hash digest
SHA256 943ad5a4fdc85faafcd5c8846cd34720d39bf0ba2c674f45621481a5d5e96156
MD5 69d0aba30b46714d8b0722934e1d9eb2
BLAKE2b-256 0e9f4a22f17a72d28c70544fe1fdca69884f4d6aae90cf13113f59a634428438

See more details on using hashes here.

Provenance

The following attestation bundles were made for specfuse_authoring-0.3.2.tar.gz:

Publisher: release.yml on specfuse/authoring

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file specfuse_authoring-0.3.2-py3-none-any.whl.

File metadata

File hashes

Hashes for specfuse_authoring-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7632706d4a5e2ec1a2be29a1a0ffa030a4f311941ae5bc49ca055bde87b50b67
MD5 63b94b906d42f5f103c3a8a19bb30c30
BLAKE2b-256 7654134419f55e387eed5c5be3a85074da5f48340e8ffe59a47ccd7939dfab37

See more details on using hashes here.

Provenance

The following attestation bundles were made for specfuse_authoring-0.3.2-py3-none-any.whl:

Publisher: release.yml on specfuse/authoring

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page