Developer toolchain for AkiraOS — package, sign, verify, and deploy WASM apps to AkiraOS devices.
# Homebrew (macOS / Linux)
brew tap akiraos/tap
brew install akira-cli
# Go install
go install github.com/PenEngineering/akira-cli@latest
# Download binary from GitHub Releases
# https://github.com/PenEngineering/akira-cli/releasesakira-cli keygen --out ./keysWrites privkey.pem, pubkey.pem, and device_provision.txt containing the CONFIG_AKIRA_APP_PUBKEY line for your board's prj.conf.
akira-cli pack hello.wasm manifest.json
# → hello.akpkg
akira-cli pack hello.wasm manifest.json --out dist/hello.akpkgakira-cli sign hello.akpkg --key ./keys/privkey.pem
# overwrites hello.akpkg with a signed copy
akira-cli sign hello.akpkg --key ./keys/privkey.pem --out hello-signed.akpkgThe signature covers SHA-256(manifest_bytes || wasm_bytes).
akira-cli verify hello.akpkg --pubkey ./keys/pubkey.pemakira-cli install hello.akpkg --device 192.168.1.42 --token my-ota-secretPOSTs the .akpkg to http://<device>/api/apps/install with a Bearer token. The firmware validates the signature before committing.
A .akpkg is a gzip-compressed tar archive:
| Entry | Required | Description |
|---|---|---|
manifest.json |
yes | Application metadata (name, version, permissions) |
app.wasm |
yes | Compiled WebAssembly binary |
sig.ed25519 |
no | 64-byte Ed25519 signature (added by sign) |
Apache 2.0 — see LICENSE.