Skip to Content

Q&A

This page answers the questions customers usually ask before they use ajat in a real Jira Automation governance or export workflow.


What is ajat designed for?

ajat is the Atlassian Jira Automation Tool from Climakers. It exports, audits, compares, restores, and safely operates Jira Cloud Automation rules from customer-controlled files.

Use it when you need a durable, offline record of your automation estate — for continuity, migration, audits, incident response, governance reviews, or feeding rule structure into internal search and AI workflows.

Does ajat support Jira Server or Data Center?

No. ajat v1 supports Atlassian Jira Cloud Automation only.

Jira Server and Jira Data Center are not supported. Non-Cloud sites are detected via the absence of the /_edge/tenant_info endpoint and rejected with a Jira site is not Atlassian Cloud error. There is no workaround in v1.

Which operating systems are supported?

ajat ships released builds for macOS and Linux (Linux on both amd64 and arm64).

  • macOS: a signed and notarized universal .pkg installer.
  • Linux: a per-architecture .zip with .sha256 and a Sigstore/Cosign .sigstore.json bundle for keyless verification.

Every package ships with a matching .sha256 checksum. Download the current packages and their checksums from the links in your Climakers order email — sent after you purchase a plan or start a free trial at store.climakers.com/ajat.

Does ajat modify Jira?

Most of what you do is read-only, and everything that can change Jira is plan-first and guarded.

  • Read-only commandsexport, report, diff, search, doctor, config, license list, license validate, support, tree, and version — never modify Jira Automation rules.
  • Mutation commandsimport, rule enable, rule disable, rule delete, rule scope set, and invoke — can change tenant state or run a manual rule. Each prints a plan first and requires confirmation unless --yes is supplied.

How do I preview a mutation before it runs?

Every mutation command prints a plan first, and supports --dry-run and --yes:

  • Run with --dry-run to see exactly what would change without touching Jira.
  • Run with no flag to review the plan and confirm interactively.
  • Run with --yes to skip confirmation in controlled automation.

This lets the same command work interactively and in a pipeline without changing the safety model. See the Rule Operations and Import pages for details.

How is rule deletion guarded?

Rule deletion is allowed only for disabled rules, matching the upstream Automation API behavior. Disable a rule before you can delete it.

For imports, --prune deletes only disabled target rules that are absent from the source export. Enabled orphans are always retained and must be handled explicitly.

Where are configuration and license stored?

Both live in the platform’s standard user configuration directory:

PlatformDirectory
macOS~/Library/Application Support/ajat/
Linux~/.config/ajat/ (or $XDG_CONFIG_HOME/ajat/)

That directory holds config.yaml and the machine-bound, AES-256-GCM-encrypted license.bin. Export runs also keep an incremental state file, .ajat_state.json, inside the output directory. Print exact paths with ajat config where and ajat license where.

How do I move a license to a new machine?

Because license.bin is encrypted with a key derived from your hardware ID, copying it to another machine does not work. To move a seat:

  1. Run ajat license deactivate on the old machine to release the seat.
  2. Run ajat license activate --license-key <your-key> on the new machine.

Backups made with ajat license export can only be imported back on the same machine that exported them. See the License page for the full workflow.

Can I run ajat in CI/CD?

Yes, with the CI/CD Automation edition. It is required for pipeline use and rejects use outside a recognized CI environment (detected via CI / GITHUB_ACTIONS / GITLAB_CI / … environment variables and a non-interactive stdin). It validates statelessly on a hash-based weekly schedule so it does not call the licensing API on every pipeline run.

For controlled automation, combine it with --yes on mutation commands and --log-file ./ajat.log --log-format json for a structured audit trail. Buy the edition at store.climakers.com/ajat.

What are the most common errors and their fixes?

  • license required — run ajat license list; if no license is found, activate one. If a license exists but is expired or disabled, activate a renewed key directly — you do not need to deactivate first.
  • authentication failed (HTTP 401/403) — the API token is invalid or expired. Generate a new one at id.atlassian.com, set it with ajat config set jira.api_token <new-token>, and confirm jira.username is your Atlassian email, not a display name.
  • rate limited by api.atlassian.com — ajat honors Retry-After on every 429 and parks the whole worker pool together. If it persists, lower --workers (default 4, minimum 1) or --page-size. The export is fully resumable, so re-launch with the same --output-dir and already-downloaded rules are skipped.
  • Jira site is not Atlassian Cloud — the target is Server or Data Center, which v1 does not support.

The Support page has the full escalation workflow.

Is exported data sensitive?

Yes. Exports and reports can contain sensitive automation content — webhook URLs, email recipients, smart values, message bodies, and integration configuration. Store them with the same controls you use for other confidential operational records. Use ajat export --redact-sensitive-fields when you need a lower-sensitivity export, and share support bundles rather than raw config, since bundles mask secrets automatically.

What should I do before my first real run?

Use this order:

  1. Install the signed binary for your platform.
  2. Create the configuration file with ajat config create.
  3. Configure Jira Cloud credentials (jira.domain, jira.username, jira.api_token).
  4. Activate the license with ajat license activate.
  5. Run ajat doctor for a green environment check.
  6. Run a first ajat export --output-dir ./jira-automations-backup against a known tenant.
  7. Render an inventory report to confirm the catalog.

For the detailed walkthrough, see the Getting Started page.

How do I get help if something fails?

Start with the built-in checks and escalate in order:

  1. Run ajat doctor to validate configuration, connectivity, and license state.
  2. Reproduce with ajat --debug --log-file ./ajat.log <command> to capture logs.
  3. Generate a masked diagnostic bundle with ajat support --log-file ./ajat.log --output support-bundle.txt.
  4. Contact Climakers at support@climakers.com.

The full support workflow is documented on the Support page.

Where should I look next?

  • Use Getting Started for the path from no binary to first export.
  • Use Configuration for config-file structure and credential setup.
  • Use Export when you are ready to build a local catalog.
  • Use Reports for the inventory, collision, consistency, risk, and workflow reports.
  • Use License for activation, validation, and machine-bound license files.
Last updated on