Help us improve
Share bugs, ideas, or general feedback.
From shapelang
Use when working with .shape files in repositories that use the Shape language to author, review, teach, format, debug, or validate Shape architecture claims, including global model updates, Memory Guards on functions/components/resources, property-level and forbid-transform guards, design-memory freshness (review_by, --strict-freshness), sensitive memories with role and approver policy, user-defined require_context/satisfied_by obligations and built-in trait shadowing, nested guard blocks, typed component/resource/effect models, top-level relation declarations, hypergraphs, hypercycles, relation kinds such as calls/callbacks/provides/coordinated_call, forbid hypercycle rules, coverage attestations, and agent-safe workflows using all shp CLI commands including shp graph.
npx claudepluginhub timbrinded/shapelang --plugin shapelangHow this skill is triggered — by the user, by Claude, or both
Slash command
/shapelang:shape-langThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Shape is a deterministic architecture conformance language. Treat `.shape` files as typed, reviewable claims about architecture, not prose explanations and not proof of application implementation correctness.
Measures whether skills, rules, and agent definitions are actually followed by auto-generating test scenarios at 3 strictness levels and reporting compliance rates with full tool call timelines.
Share bugs, ideas, or general feedback.
Shape is a deterministic architecture conformance language. Treat .shape files as typed, reviewable claims about architecture, not prose explanations and not proof of application implementation correctness.
Assume the released shp binary is installed on PATH. Before authoring, reviewing, teaching, or debugging Shape usage:
.shape files before inventing syntax.shp check and shp fmt --check after Shape changes.Load only the reference needed for the task:
references/teaching-guide.md..shape model changes: read references/make-shape-protocol.md.references/cli-workflows.md.require_context: read references/memory-guards.md.references/examples.md.references/antipatterns.md.effects complete only when every material effect is represented.effects unknown when uncertainty remains.source for functions and evidence for material effects when available.attest no_shape_change.reevaluation or preserve the protected shape; for sensitive memories under an approver policy, the reevaluation must name an approver (a declared role when any role exists).review_by freshness as opt-in: it is enforced only under --strict-freshness, and the checker reads no clock of its own.relation declarations, not component members.calls, callbacks, provides, coordinated_call) unless the project documents a custom kind.evidence issue(...), evidence test(...), or similar source refs.shp fmt --check before shp check when validating edited Shape files.shp coverage --changed-files changed.txt only when the workflow provides a changed-files list.shp obligations and shp memory before fixing Memory Guard failures.shp check --strict-freshness / shp obligations --strict-freshness to surface design memory past its review_by; today's date is computed only at the CLI boundary.shp explain, shp graph, and shp analyze for investigation before changing model semantics.shp ast source for generated source-backed AST context and shp ast json only when another tool already produced normalized AST JSON.shape/generated/ast, run its ast:generate/ast:check scripts or equivalent shp ast source --out-dir ... --check workflow after source changes.shp graph --stats before editing relation-heavy models.shp graph SYMBOL --kind KIND to inspect focused incidence for a relation kind.shp author to scaffold, then review and replace effects unknown when evidence is available.shp --help if a repository uses a newer CLI than this skill describes.After modifying .shape files, run:
shp fmt --check
shp check
When validating changed-source coverage, also run shp coverage --changed-files changed.txt with the repository's changed-files list.
When validating generated AST context, prefer the repository script if present:
bun run ast:generate
bun run ast:check
Generated AST drafts intentionally leave generated functions at effects unknown, add GeneratedAstAnchor resources with ast.semantic_subtree_v1 fingerprints when token evidence is available, and may include candidate effects that need human review before being promoted into authored Shape. If an anchor has no token evidence, Shape emits it without a fingerprint/expects pin and reports a warning instead of failing the batch.