aam build (deprecated)¶
Package Authoring
Deprecated
aam build is deprecated and will be removed in v0.3.0. Use aam pkg build instead. The command still works but prints a deprecation warning.
Synopsis¶
Description¶
Build a portable, platform-specific bundle archive. Bundles contain all artifacts pre-compiled and ready to deploy for the target platform, with no dependency resolution needed. This enables manual sharing via Slack, email, git, or any file transfer mechanism without requiring access to a registry.
Recipients install from bundles using aam install ./bundle-file.bundle.aam.
Note: This command is currently under development and not yet fully implemented.
Arguments¶
This command takes no arguments.
Options¶
| Option | Short | Default | Description |
|---|---|---|---|
--target | -t | required | Target platform (cursor, copilot, claude, codex, all) |
--output | -o | dist | Output directory for bundle archives |
Examples¶
Example 1: Build for Cursor¶
Planned Output:
Building bundle for target: cursor
Resolving dependencies...
+ my-package@1.0.0
+ dependency-package@2.0.1
Compiling artifacts for cursor...
→ skill: my-skill → .cursor/skills/
→ agent: my-agent → .cursor/rules/
→ prompt: welcome → .cursor/prompts/
✓ Built dist/my-package-1.0.0-cursor.bundle.aam (250 KB)
Example 2: Build for All Platforms¶
Planned Output:
Building bundle for target: all
✓ Built dist/my-package-1.0.0-cursor.bundle.aam
✓ Built dist/my-package-1.0.0-copilot.bundle.aam
✓ Built dist/my-package-1.0.0-claude.bundle.aam
✓ Built dist/my-package-1.0.0-codex.bundle.aam
Built 4 platform bundles
Example 3: Custom Output Directory¶
Creates bundle in ./releases/ instead of ./dist/.
Example 4: Install from Bundle¶
After building:
Exit Codes¶
| Code | Meaning |
|---|---|
| 0 | Success - bundle(s) created |
| 1 | Error - build failed or invalid target |
Bundle Structure¶
Bundles contain:
my-package-1.0.0-cursor.bundle.aam
├── bundle.json # Bundle manifest
├── .cursor/ # Pre-compiled artifacts
│ ├── skills/
│ ├── rules/
│ └── prompts/
└── aam.yaml # Original manifest (reference)
bundle.json Format¶
{
"format": "aam-bundle",
"version": "1.0",
"package": "my-package",
"package_version": "1.0.0",
"target": "cursor",
"built_at": "2026-02-09T14:30:00Z",
"checksum": "sha256:...",
"artifacts": [
{
"type": "skill",
"name": "my-skill",
"path": ".cursor/skills/my-skill/"
}
]
}
Supported Targets¶
| Target | Description |
|---|---|
cursor | Cursor IDE format (.cursor/ directory structure) |
copilot | GitHub Copilot format |
claude | Claude Code format |
codex | OpenAI Codex format (.codex/ directory structure) |
all | Build for all configured platforms |
Related Commands¶
aam pkg pack- Create registry-publishable archiveaam install- Install from bundleaam pkg validate- Validate before building
Notes¶
Implementation Status¶
This command is under development. Current status:
- Command structure defined
- Options and arguments specified
- Bundle format designed
- Implementation in progress
Expected in version 0.2.0.
Use Cases¶
Manual distribution:
# Build and share via Slack
aam pkg build --target cursor
# Send dist/my-package-1.0.0-cursor.bundle.aam to team
Offline installation:
# Build bundles on machine with registry access
aam pkg build --target all
# Transfer to offline machine
scp dist/*.bundle.aam offline-machine:~/
# Install on offline machine
aam install ~/my-package-1.0.0-cursor.bundle.aam
Platform-specific releases:
# Build and tag for GitHub release
aam pkg build --target all
gh release create v1.0.0 dist/*.bundle.aam
Bundle vs. Pack¶
aam pkg pack creates registry archives:
- Contains raw artifacts
- Requires deployment during install
- Dependencies resolved at install time
- Smaller file size
aam pkg build creates platform bundles:
- Contains pre-compiled artifacts
- Ready to deploy immediately
- Dependencies bundled (no resolution needed)
- Larger file size
Bundle Size¶
Bundles are typically 2-3x larger than packed archives because they include:
- Pre-compiled artifacts for the specific platform
- All resolved dependencies
- Platform-specific transformations
When to Use Bundles¶
Use bundles when:
- Recipients don't have registry access
- You need offline installation
- You want to avoid dependency resolution
- Distributing via manual channels (email, Slack, file shares)
Use aam pkg pack + publish when:
- Publishing to a registry
- Dependency resolution is acceptable
- Minimizing distribution size
- Supporting multiple platforms from one package
Future Enhancements¶
Planned features:
- Bundle signing for verification
- Compression optimization
- Incremental bundle updates
- Bundle dependency analysis