Skip to content

Authoring packages

Authoring is the loop: create atp-package.yaml, stage files into stage.tar, validate, and publish to your Station catalog so installs can consume the package. Work in a directory you choose as the package root (usually next to the files you ship).

Terminal window
atp create package skeleton

By default this produces a Multi-capable manifest (type: Multi, empty parts list) and resets stage.tar.

For the older single-type flow:

Terminal window
atp create package skeleton --legacy

Typical commands (from the package directory):

Terminal window
atp package name my-package-name
atp package developer "Your Name"
atp package license "Apache License 2.0"
atp package version 0.1.0
atp package copyright "You 2026"

copyright accepts multiple strings if you pass more than one argument.

Add a part with a type keyword (rule, prompt, skill, hook, mcp, command, experimental):

Terminal window
atp package newpart rule
# or
atp package part add rule

Scope usage and files to that part index:

Terminal window
atp package part 1 usage "Short explanation for humans and agents."
atp package part 1 component path/to/file.md

Add bundles when the part needs executables:

Terminal window
atp package part 1 bundle add my-server-dir --exec-filter "my-server-dir/bin/*"

Multi packages stage paths under part_{index}_{Type}/ inside stage.tar. Bundle directory names must be unique across the whole package. Component file basenames must be unique package-wide for Multi manifests.

Remove authoring mistakes with part remove commands (whole part, or one component or bundle) while the package is only on disk—not as a substitute for uninstall; installed copies are always removed as a whole package.

With a legacy skeleton, set the root type once, then root-level commands:

Terminal window
atp package type rule
atp package usage "Why this package exists."
atp package component add docs/guide.md

Do not mix populated parts with a non-Multi root type; validation will reject it.

Terminal window
atp validate package
atp package summary

Validation exit codes distinguish staging problems from missing mandatory fields. If validation fails, atp catalog add package will not publish.

When validation passes:

Terminal window
atp catalog add package

ATP copies the manifest and gzipped tarball into user_packages/<name>/ under your Station and updates atp-catalog.yaml. List with atp catalog list.

KindTypical payload
RuleMarkdown installed as agent rules
PromptMarkdown or text in prompts area
SkillSKILL.md-style skill tree
HookHook config plus scripts
McpServer directory plus exec filter
CommandScripts or tools for agent workflows
ExperimentalEmerging layouts

Exact on-disk targets depend on the agent selected in the project Safehouse; ATP maps each kind to provider-specific paths during install.

Per the Agent Skills specification, skills use YAML front matter and markdown body. Some editors treat YAML and body separately; with bundle parts you can ship YAML and markdown in separate files and let installation assemble them where appropriate.

Terminal window
atp validate catalog-package

Sanity-check an already-published package directory under the Station the same way the installer does before applying files.


← Manual index · Site home