configure.md said apm.yml's `type:` field "constrains what .apm/ may contain" and that changing it later "does not retroactively validate what is already on disk" — both implying a validation step that does not exist. Read against the installed apm-cli 0.28.0: PackageContentType controls how a package is processed during install/compile, apm_package.py only enum-checks the declared string, and validate_apm_package() branches on the structural type derived from files on disk, never on the declared field. There is no content-vs-type mismatch check anywhere. The hazard is therefore the opposite of what the wording primed for: silent omission. A package declaring type: instructions while shipping .apm/skills/ installs no skill and compiles AGENTS.md only, exits 0, and reports success having shipped none of its primitives. The rule is now to verify deployed output rather than the exit code. apm-orchestrate carried the same wording as a Hard Rule and is corrected in step; its separate defects stay with #120. Also refreshes the exemplar figures this branch had re-staled.264a5dbset them to 3,222 words of references;6cb47f8then added 63 words and invalidated them, and the correction above adds more. Re-measured after all edits: body 237 and whole-file 304 both still hold, references total 3,416. body-discipline.md's "roughly 3,200" moves with it. ADR-0020 is deliberately untouched — it self-pins its citations tof9b919d— as is the git-commits negative example pinned to5e23250. Refs #99
apm-workflow
Authors, scaffolds, compiles, and audits apm packages and marketplaces.
What it does
Covers the apm.yml lifecycle a session moves through repeatedly: configuring/scaffolding a package manifest, resolving/fetching its declared dependencies, building or registering a marketplace, compiling/packing/publishing a distributable, and validating integrity via apm audit. Dispatches by requested action to one of five reference files, each self-contained for its concern.
Before you start
Requires the apm binary and (for runtime-driven scripts) an agent runtime already installed — use apm-install first if either is missing.
Usage
/apm-workflow configure
/apm-workflow install
/apm-workflow marketplace
/apm-workflow compile
/apm-workflow audit
Files
| File | Purpose |
|---|---|
SKILL.md |
Dispatch table and the two gotchas common to every branch (MCP secret indirection, the experimental enable registries precondition) |
references/configure.md |
apm.yml schema, apm plugin init, dependency forms, MCP secrets, includes:, registries; type: and experimental enable registries traps |
references/install.md |
apm install, apm install [PACKAGE_REF], --update, --target agent-skills |
references/marketplace.md |
Building/registering a marketplace, marketplace add vs package add, package registration, versioning, Claude Code reserved-name/publish-confirm gotchas |
references/compile.md |
apm compile / pack / publish / run, claude plugin validate agents/ gotcha |
references/audit.md |
apm audit vs apm audit --ci (they check different things), apm marketplace check, CI wiring, frozen installs, claude plugin validate terminal check |
references/sources.md |
Provenance chain — research sources that informed this skill |