Getting Started
Getting Started
Section titled “Getting Started”This guide walks you through installing atlcli, authenticating with Atlassian, and running your first commands.
Installation
Section titled “Installation”Quick Install (Recommended)
Section titled “Quick Install (Recommended)”The fastest way to install atlcli on macOS or Linux:
curl -fsSL https://atlcli.sh/install.sh | bashInstall a specific version:
curl -fsSL https://atlcli.sh/install.sh | bash -s v0.5.1This installs to ~/.atlcli/bin and updates your shell PATH automatically.
Homebrew
Section titled “Homebrew”Alternatively, install via Homebrew:
brew install bjoernschotte/tap/atlcliTo upgrade:
brew update && brew upgrade atlcliManual Download
Section titled “Manual Download”Download the latest release for your platform from the releases page:
| Platform | File |
|---|---|
| macOS (Apple Silicon) | atlcli-darwin-arm64.tar.gz |
| macOS (Intel) | atlcli-darwin-x64.tar.gz |
| Linux (ARM64) | atlcli-linux-arm64.tar.gz |
| Linux (x64) | atlcli-linux-x64.tar.gz |
Extract and add to your PATH:
tar -xzf atlcli-*.tar.gzsudo mv atlcli /usr/local/bin/From Source
Section titled “From Source”For development or if you want the latest unreleased changes:
Prerequisites:
- Bun v1.0 or later
git clone https://github.com/BjoernSchotte/atlcli.gitcd atlclibun installbun run buildThe CLI is now available at ./apps/cli/dist/atlcli.
Shell Completion
Section titled “Shell Completion”Enable tab completion for commands and flags:
# Add to ~/.zshrceval "$(atlcli completion zsh)"# Add to ~/.bashrceval "$(atlcli completion bash)"Restart your shell or run source ~/.zshrc (or ~/.bashrc) to activate.
Authentication
Section titled “Authentication”atlcli supports both Atlassian Cloud and Server/Data Center instances. You can manage multiple profiles for different instances.
Cloud Instances
Section titled “Cloud Instances”For Cloud (*.atlassian.net), you need an API token:
- Go to Atlassian Account Settings
- Click Create API token
- Give it a descriptive name (e.g., “atlcli”)
- Copy the token
Server/Data Center Instances
Section titled “Server/Data Center Instances”For Server or Data Center, create a Personal Access Token (PAT) in your instance’s user settings, then use --bearer when logging in:
atlcli auth login --bearer --site https://jira.company.com --token YOUR_PATSee Authentication for details on token storage and Mac Keychain integration.
Initialize Authentication
Section titled “Initialize Authentication”atlcli auth initFollow the prompts to enter:
- Instance URL: Your Atlassian instance (e.g.,
https://yourcompany.atlassian.net) - Email: Your Atlassian account email
- API Token: The token you created
Your credentials are stored securely at ~/.atlcli/credentials.json.
Multiple Profiles
Section titled “Multiple Profiles”Create named profiles for different instances:
atlcli auth init --profile workatlcli auth init --profile personalUse --profile with any command:
atlcli jira search --assignee me --profile workConfluence Quick Start
Section titled “Confluence Quick Start”Initialize a Local Directory
Section titled “Initialize a Local Directory”atlcli wiki docs init ./team-docs --space TEAMThis creates a local directory linked to the TEAM space.
Pull Pages
Section titled “Pull Pages”atlcli wiki docs pull ./team-docsPages are downloaded as markdown files with YAML frontmatter:
---id: "12345"title: "Meeting Notes"space: "TEAM"---
# Meeting Notes
Content here...Edit and Push
Section titled “Edit and Push”Edit files locally with your favorite editor, then push changes:
atlcli wiki docs push ./team-docsatlcli detects changes and updates only modified pages.
Jira Quick Start
Section titled “Jira Quick Start”Search Issues
Section titled “Search Issues”# Your assigned issuesatlcli jira search --assignee me
# Open bugs in a projectatlcli jira search --project PROJ --type Bug --status Open
# Using JQL directlyatlcli jira search --jql "project = PROJ AND sprint in openSprints()"View an Issue
Section titled “View an Issue”atlcli jira issue get --key PROJ-123Create an Issue
Section titled “Create an Issue”atlcli jira issue create --project PROJ --type Task --summary "Fix login bug"Track Time
Section titled “Track Time”# Start a timeratlcli jira worklog timer start PROJ-123
# Stop and log timeatlcli jira worklog timer stop PROJ-123
# Or log directlyatlcli jira worklog add PROJ-123 --time 2h --comment "Code review"JSON Output
Section titled “JSON Output”All commands support --json for scripting:
atlcli jira search --assignee mePROJ-123 In Progress Fix login bugPROJ-124 To Do Add dark modeatlcli jira search --assignee me --json{ "schemaVersion": "1", "issues": [ {"key": "PROJ-123", "status": "In Progress", "summary": "Fix login bug"}, {"key": "PROJ-124", "status": "To Do", "summary": "Add dark mode"} ]}Next Steps
Section titled “Next Steps”- Confluence Guide - Deep dive into sync, templates, macros
- Jira Guide - Issues, boards, sprints, analytics
- Recipes - Real-world workflows
- Configuration - Customize atlcli behavior