.agents/skills/doc-generation/SKILL.md
Guide for regenerating Axone contract schemas and rendered Markdown docs. Use when contract APIs or metadata change, when checking generated-doc drift, or when preparing documentation commits.
npx skillsauth add axone-protocol/contracts doc-generationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Generated docs come from Rust API types and schema metadata:
Rust messages/types + metadata.json
↓
contracts/*/schema/*
↓
docs/*.md
In this repository, the canonical command is:
cargo make docs
Do not treat docs/*.md as hand-edited source files. The Rust types and metadata are the source of truth.
cargo make docs really doescargo make docs already depends on:
npx, awk, perl, jq)cargo make schemaThat means one docs refresh can update both:
contracts/*/schema/*docs/*.mdcargo make docs
git status --short
git diff -- docs contracts
If the change is documentation generation only, prefer a message such as:
docs(gov): regenerate documentation
docs(vc): regenerate documentation
docs: regenerate generated documentation
Avoid vague subjects such as docs: update generated documentation.
Refresh generated docs whenever you change:
msg.rsmetadata.jsonsrc/bin/schema.rsMakefile.tomlAfter regeneration, review and commit all relevant generated artifacts:
docs/*.mdcontracts/*/schema/*Even if CI only reports drift on docs/*.md, schema files are still generated source artifacts in this repo and should stay in sync with the code.
cargo make docs is the preferred entrypoint; it already triggers schema generation.@fadroma/schema, jq, awk, perl, and prettier through Makefile.toml.development
Patterns for Rust testing in Axone CosmWasm contracts. Use when adding unit tests, integration tests, data-driven cases, or coverage-oriented test scenarios.
development
Repository quality gates for Rust and generated artifacts. Use when validating changes locally or before committing Rust, schema, or documentation updates.
development
Domain-driven modeling patterns for Axone contracts. Use when introducing domain concepts, encoding invariants, or deciding boundaries between domain, handlers, services, gateways, queries, and state.
development
Axone deployment workflows with cargo-make, cw-orch, and Abstract. Use when publishing modules, installing them on accounts, running local chain tasks, or inspecting deployments.