ACC CLI
akinoncli is an application designed to manage projects and applications on ACC through the command-line interface. This page covers non-interactive use — if you want to use interactive mode instead, see the ACC TUI.
Installation
Install the AkinonCLI binary — no Node, Python, or any other runtime required on the target machine:
curl -fsSL https://cli.akinoncloud.net/install.sh | bashirm https://cli.akinoncloud.net/install.ps1 | iexhttps://console.akinoncloud.com/cli/releasesBoth scripts detect your OS/architecture, download the matching signed release, verify its checksum, and install it onto PATH — replacing any existing akinoncli install in place if one is found.
Version
To check the installed version:
akinoncli --versionUpgrading
To upgrade to the latest released version:
akinoncli --upgradeAuthentication
In order to use Akinon CLI, the user must authenticate first.
login
Log in
--account <uuid>
Account UUID to activate on login
No
login behaves differently depending on the session:
Interactive terminal → opens your default browser to log in. See ACC TUI
Non-interactive → if the CLI is running inside a CI/pipeline (Bitbucket, GitHub Actions, etc.), it automatically switches to non-interactive mode and prompts for your email/password instead. AkinonCLI detects when it's running inside a pipeline, honoring the
CIenvironment variable (true/1).
After logging in, check who you're authenticated as:
Switch between accounts:
Log out and clear stored credentials:
Using with CLI
General parameters available across most commands:
-o, --output
Output format: json|yaml|table
Passing any of -o json, -o yaml, or -o table also forces non-interactive output even when run from a real terminal.
Output Formats
Every command supports:
-o/--output takes precedence over AKINON_OUTPUT, which takes precedence over the interactive default (TUI on a TTY, table otherwise).
Environment Variables
AKINON_OUTPUT
Default output format (json|yaml|table) when -o isn't passed
Commands
AI Agent Integration
akinoncli skills install installs a quick command reference for this CLI into your AI coding agent(s). The agent then knows the available commands directly, instead of guessing:

Without --tool, both commands act on all three supported tools at once:
Claude Code
~/.claude/skills/akinoncli/SKILL.md + references/command-reference.md
Cursor
.cursor/rules/akinoncli.mdc + akinoncli-command-reference.md (current project only — Cursor has no global rules mechanism; re-run inside other projects)
OpenCode
~/.config/opencode/AGENTS.md (merged into markers, existing content outside them is left alone) + akinoncli-command-reference.md
install reports, per tool, whether each file was created, updated, or left unchanged; status reports whether it's currently installed, without writing anything.
Account
An account represents your organization's workspace in Akinon Cloud Commerce. All projects, applications, and resources are created and managed within the context of an account. A user can be a member of multiple accounts, for example when working with different organizations or environments, and can switch between them at any time.
Account List
List the accounts you have access to.
Account Switch
Switch the active account.
Parameters:
<uuid>
Account UUID to switch to (opens an interactive picker if omitted)
No
Public Key
A Public Key is an SSH public key registered to your account, used to authorize git-based access to your applications' repositories.
Public Key List
List the public keys registered to your account.
Public Key Create
Register a new public key.
Parameters:
<label>
A name for the key
Yes
<key>
The public key contents
Yes
Public Key Remove
Remove a registered public key.
Parameters:
<id>
Public key ID
Yes
Application
In ACC, users can upload and publish their own applications or use applications published by other users in their projects.
To be able to publish an application, it should be managed with the Git version control system. Once the application is created in ACC, the user can send the code storage to the Git address provided if the user has added a Public Key.
For an application to be compiled and issued by ACC, the home directory should contain a file titled akinon.json.
Application List
List all applications.
Application Get
Show the details of an application.
Parameters:
<app_id>
Application ID
Yes
Application Create
Create a new application.
Parameters:
<name>
Application Name
Yes
<slug>
Application Slug (must be unique)
Yes
<application_type_id>
Application Type ID (akinoncli applicationtype list)
Yes
To see the git address you should run applications get after creating the application — it's shown as the Clone URL field.
Application Build
Build a new tagged version of an application. To deploy an application for a project, it needs to be built by Akinon Cloud Commerce first — a stable version is required for deployment. Create a tag with git and push it to the akinon remote, then start the build:
Parameters:
<app_id>
Application ID
Yes
<tag>
Tag
Yes
--note
Note
No
Application Versions
List the built versions of the application. A version with status completed is ready for deployment.
Parameters:
<app_id>
Application ID
Yes
Application Version Logs
List application version logs.
Parameters:
<app_id>
Application ID
Yes
<version_id>
Version ID
Yes
Application Stable
Mark a version as stable.
Parameters:
<app_id>
Application ID
Yes
<version>
Version
Yes
ApplicationType
Application types (used as <application_type_id> above) are account-specific — look them up first.
ApplicationType List
List the application types available on the active account, with their ids.
ProjectApp
A ProjectApp is one Application installed into one Project — the actual running instance, with its own env vars, deployments, and logs. This is the deploy target.
ProjectApp List
List the project apps in a project.
Parameters:
<project_id>
Project ID
Yes
ProjectApp Deploy
Deploy a built tag to a project app.
Parameters:
<project_id>
Project ID
Yes
<project_app_id>
Application ID
Yes
<tag>
Tag to deploy
Yes
ProjectApp Add Env
The applications are able to run with different configurations on the various projects — the same application can run with a different default language on two different projects, for example. Environment Parameters are how this is configured; they're visible in the ENV Variables column when listing the applications.
Parameters:
<project_id>
Project ID
Yes
<project_app_id>
Application ID
Yes
ENV_KEY
The key of the environment parameter
Yes
ENV_VALUE
The value of the environment parameter
Yes
--deploy
Redeploy the current version to activate environment variable changes
No
The same command can also be used for updating.
It's also possible to use complex (i.e. non-string) values by encoding them as JSON. The value must be quoted properly to function correctly.
For larger or dynamic payloads you can use the EOF operator in sh-based terminals. This also allows string interpolation without having to escape double quotes.
This environment variable can then be deserialized using the django-environ package, or json.loads:
Refer to django-environ documentation for further information.
ProjectApp Remove Env
Remove environment variables. --deploy re-triggers the current deployment immediately after the change; without it, the change takes effect on the next deploy.
Parameters:
<project_id>
Project ID
Yes
<project_app_id>
Application ID
Yes
ENV_KEY
The key of the environment parameter to remove
Yes
--deploy
Redeploy the current version to activate environment variable changes
No
ProjectApp Deployments
List past deployments.
Parameters:
<project_id>
Project ID
Yes
<project_app_id>
Application ID
Yes
ProjectApp Deployment Logs
Show the logs for a deployment.
Parameters:
<project_id>
Project ID
Yes
<project_app_id>
Application ID
Yes
<deployment_id>
Deployment ID
Yes
ProjectApp Attach Certificate
Attach a certificate to a project app.
Parameters:
<project_id>
Project ID
Yes
<url>
Certificate URL
Yes
<fqdn>
Fully qualified domain name
Yes
ProjectApp Logs
Show runtime logs, optionally filtered by process type.
Parameters:
<project_id>
Project ID
Yes
<project_app_id>
Application ID
Yes
-p, --process <type>
Filter logs by process type
No
Project
A Project is a client's environment (e.g. "Acme Store"). A project has many project apps.
Project List
List projects.
Project Create
Create a new project.
Parameters:
<name>
Project Name
Yes
<slug>
Project Slug (must be unique)
Yes
--mainapp-required
Require a main app on the new project
No
Domain
A Domain is a hostname (optionally with managed DNS) that certificates and project apps attach to. When deploying an application and you want it to be reachable under a specific hostname with SSL, create a domain, then a certificate for it, and attach that certificate to the project app.
Domain List
List domains.
Domain Create
Create a domain.
Parameters:
<hostname>
Hostname
Yes
<is_managed>
Whether DNS for this domain is managed by Akinon Cloud Commerce
Yes
Certificate
A Certificate is a TLS certificate for a given FQDN, scoped to a domain; attach it to a running project app with projectapp attach-certificate.
Certificate List
List certificates for a domain.
Parameters:
<domain_id>
Domain ID
Yes
Certificate Create
Create a certificate for a domain.
Parameters:
<domain_id>
Domain ID
Yes
<fqdn>
Fully qualified domain name
Yes
Users
List users on the active account.
Roles
List roles on the active account.
Email Identities
List verified sending-email identities.
AkinonCLI In Pipelines
How To Log In
The example below is a Bitbucket Pipelines example.
AKINON_EMAIL and AKINON_PASSWORD must be added as secured variables in the repository/workspace settings — never commit them.
How To Build and Deploy
This pipeline triggers when a new prod tag (e.g. v0.0.1) is pushed from master. It logs in, builds a new application version from that tag, then deploys it straight to a project app — no manual steps or browser interaction needed.
Example bitbucket-pipelines.yml step that builds a new tag and deploys it:
Last updated
Was this helpful?

