mait.sh1.132.1

Private beta: features and content may change. No warranty; use at your own risk.

Install aidc-pack

Make sure AIDC Pack is available, choose how a tool is captured, build a first package, then look inside it and check it.

Beta
AIDC Pack

Output examples are illustrative; your versions, paths, sizes and messages can differ. Check your installed version and each command result.

Steps

Six steps from a working binary to a checked package.

Having the binary, capturing a tool and checking the result are separate steps, and success at one does not prove the next. Check each result before moving on. Everything here runs without credentials.

  1. Step 1 of 6

    Find AIDC Pack

    The MAIT image includes aidc-pack, and that is the supported way to obtain it: move to a newer image to update it. Standalone executables exist for Linux on x86_64 (amd64) and arm64 for environments without the image. Obtain one only from The MAIT Team, through the support page in the portal, or from your environment owner, together with its expected SHA-256 checksum, and compare it with sha256sum ./aidc-pack before placing the executable on your path. Do not install a file whose origin or checksum you cannot confirm.

    What you get

    An aidc-pack executable from a source you can name.

  2. Check the executable
    $ aidc-pack version
    $ aidc-pack help
    What it prints
    # example output
    $ aidc-pack version
    aidc-pack 4.1.2
    $ aidc-pack help
    Package builder for AIDC package distribution system
     
    Usage: aidc-pack [OPTIONS] <COMMAND>
     
    Commands:
    version Print version information
    legal Show copyright and the third-party components in this binary
    help Print help information
    build Build a package for a tool version
    publish Publish a package to the hub
    verify Verify package integrity
    inspect Inspect package contents
     
    Options:
    -v, --verbose Enable verbose output
    --debug Enable debug output (internal diagnostics)
    Step 2 of 6

    Check that it runs

    There is no top-level --help or --version; use the help and version commands, and aidc-pack help build for one command. A version answer shows that the program runs. It does not show that a build will work.

    What you get

    The release you are running and the list of commands.

  3. Capture in place instead of in a container
    $ export AIDC_PACK_MODE=direct
    Step 3 of 6

    Choose where the build runs

    Match the build environment to the platform and architecture of the package you intend to make. Standard capture uses an accessible Docker Engine and the capture image supplied with your release, which must contain AIDC; the local aidc command is also needed for the preflight installation. Direct mode removes the Docker requirement but installs and captures in the current environment, so choose an environment where that is expected.

    Keep enough free space for the installed tool, the extracted staging tree and the compressed archive. A build needs network access to install the tool, and for Docker to pull the capture image the first time.

    What you get

    A build environment that matches the target and a capture mode you chose.

  4. Build a package
    $ aidc-pack build nodejs 22.23.3
    What it prints
    # example output · direct mode
    $ aidc-pack build nodejs 22.23.3
    Building package for nodejs 22.23.3
    Target: linux-amd64
    Verifying nodejs 22.23.3 before packing...
    [warn] No verification marker found for nodejs 22.23.3. This may indicate the tool was installed before source verification was implemented.
    [warn] For maximum security, reinstall nodejs 22.23.3 to ensure vendor verification.
    [ok] Source verification successful for nodejs 22.23.3
    Capturing nodejs 22.23.3 package...
    [ok] Captured 4753 files (196362450 bytes)
    [ok] Package created: ./packages/nodejs/22.23.3/nodejs-22.23.3-linux-amd64.tar.zst
    [ok] Manifest created: ./packages/nodejs/22.23.3/nodejs-22.23.3-linux-amd64.manifest.json
    Compressed size: 34590210 bytes
    BLAKE3: ae96157e338191445468e93894a06d19a37d61ef0cdf3192991fae31bd144c4d
    Note: Package signature will be added by hub when published
    [ok] Package verified (6 commands, 0 env keys)
    Step 4 of 6

    Build a first package

    Use the current environment's native target and a plain tool name. The tool must be installable by aidc; here it is Node.js 22.23.3.

    In this illustration, an existing installation has no verification marker and the build accepts it with a warning. Decide whether that installation suits distribution. The archive and manifest are written before the final check, so a failure at the end still leaves files: do not publish a pair whose build exited 1.

    What you get

    A .tar.zst archive and a .manifest.json under packages/nodejs/22.23.3/.

  5. Inspect the package
    $ aidc-pack inspect nodejs 22.23.3
    $ aidc-pack inspect nodejs 22.23.3 --files
    What it prints
    # example output · abridged
    $ aidc-pack inspect nodejs 22.23.3 --files
    Inspecting: ./packages/nodejs/22.23.3/nodejs-22.23.3-linux-amd64.tar.zst
    Compressed size: 34590210 bytes
    BLAKE3: ae96157e338191445468e93894a06d19a37d61ef0cdf3192991fae31bd144c4d
    Total files: 4753
    Uncompressed size: 196362450 bytes
    Compression ratio: 82.4%
     
    Files:
    ... individual archive entries omitted; review your own file listing ...
    Step 5 of 6

    Inspect the contents

    inspect reads only the archive, not the manifest, and it does not run anything. The platform in the filename is a label, not a check of the binary architecture.

    What you get

    The size, checksum and file listing of the archive you would distribute.

  6. Verify with detail
    $ aidc-pack -v verify nodejs 22.23.3
    What it prints
    # example output · abridged
    $ aidc-pack -v verify nodejs 22.23.3
    aidc-pack version 4.1.2
    Verifying package: ./packages/nodejs/22.23.3/nodejs-22.23.3-linux-amd64.tar.zst...
    No credentials path — skipping hub baseline compare
    [ok] expected executable node → bin/node
    [ok] manifest shim node → bin/node
    [ok] Package verification: OK
    BLAKE3: ae96157e338191445468e93894a06d19a37d61ef0cdf3192991fae31bd144c4d
    Files: 5866
    Commands: bin/node, bin/npm, bin/npx, node (bin/node), npm (bin/npm), npx (bin/npx)
    Step 6 of 6

    Verify the pair

    verify does not run Node.js, check a Hub signature or test library loading. Without credentials the comparison with the published package is skipped and the local checks still run. Check the packaged tool in its destination environment before you distribute it.

    What you get

    A pair that passed the local gate, ready for review and, when you have credentials, for publication.

Next

Where to go next.

  • Workflows, for reviewing, catching a bad pair and publishing