Pack Authoring
Create Ax packs with manifests, effects, and native shims.
An Ax pack is a manifest plus optional native sources. The compiler loads declared effects for semantic checking and links native sources into the final executable.
Registry Layout
registry/
acme.telemetry/
pack.axpack
native.c
Manifest
name = "acme.telemetry"
version = "1.0.0"
syntax = []
operations = ["telemetry.track"]
effects = ["telemetry.write"]
native = ["native.c"]
operations names the callable pack API. When this list is present, Ax rejects undeclared calls during semantic checking.
Native Symbol
External operation calls lower to symbols named from the pack and operation.
telemetry.track() -> ax_pack_acme_telemetry_track()
#include <stdio.h>
void ax_pack_acme_telemetry_track(void) {
puts("acme.telemetry track");
}
Generate A Skeleton
skills/ax/scripts/new-pack.sh ./registry acme.telemetry telemetry.write track
Checked Example
The repository includes a complete external pack project at examples/packs/telemetry.
cd examples/packs/telemetry
../../../target/release/ax pack list --registry registry
../../../target/release/ax check app.ax --registry registry
../../../target/release/ax build app.ax -o .ax-out/telemetry_app --registry registry
.ax-out/telemetry_app
Use The Pack
ax pack list --registry ./registry
ax pack find telemetry --registry ./registry
ax pack info acme.telemetry --registry ./registry
ax pack install acme.telemetry --registry ./registry
ax check app.ax --registry ./registry
ax graph app.ax --registry ./registry
ax build app.ax -o app --registry ./registry
Validation Checklist
| Check | Command |
|---|---|
| Registry lists the pack | ax pack list --registry ./registry |
| Search finds pack metadata | ax pack find telemetry --registry ./registry |
| Manifest operations are inspectable | ax pack info acme.telemetry --registry ./registry |
| Project manifest records dependency | ax pack install acme.telemetry --registry ./registry |
| Effects are accepted | ax check app.ax --registry ./registry |
| Call graph shows inferred effects | ax graph app.ax --registry ./registry |
| Native symbols link | ax build app.ax -o app --registry ./registry |
| Checked example passes | ./scripts/verify-pack-examples.sh |
| Skill pack workflow runs end to end | skills/ax/scripts/pack-smoke.sh . |