atlassian-cli
SKILL.md
Atlassian CLI Skill
Covers three CLI tools for Jira, Confluence, and Bitbucket daily operations:
| Tool | Command | Purpose | Platform |
|---|---|---|---|
| jira-cli (ankitpokhrel) | jira |
Issues, epics, sprints | Jira Cloud |
| confluence-cli (pchuri) | confluence |
Pages, comments, attachments | Confluence Cloud |
| bitbucket-cli (avivsinai) | bkt |
Repos, PRs, branches, pipelines | Bitbucket Cloud + Data Center |
For detailed command references, see:
references/jira-cli.md— full Jira CLI command referencereferences/confluence-cli.md— full Confluence CLI command referencereferences/bkt-commands.md— full Bitbucket CLI command reference
1. Installation
jira-cli
# Windows install
# 1. Download latest release from https://github.com/ankitpokhrel/jira-cli/releases
# 2. Unzip and add jira.exe to PATH
# 3. verify with `jira version`
confluence-cli
# Via npm (requires Node.js ≥16)
npm install -g confluence-cli
# Verify
confluence --version
bkt (Bitbucket CLI)
# macOS/Linux — via Homebrew
brew install avivsinai/tap/bitbucket-cli
# Windows — via Scoop
scoop bucket add avivsinai https://github.com/avivsinai/scoop-bucket
scoop install bitbucket-cli
# Go
go install github.com/avivsinai/bitbucket-cli/cmd/bkt@latest
# Verify
bkt --version
2. Authentication Setup
Jira — jira-cli (Cloud)
# 1. Get API token: https://id.atlassian.com/manage-profile/security/api-tokens
export JIRA_API_TOKEN="your_token_here" # add to ~/.zshrc or ~/.bashrc
# 2. Initialize config (interactive wizard)
jira init
# → Select: Cloud
# → Enter: your-domain.atlassian.net ← no https:// prefix
# → Enter: your email
# → Enter: default project key (e.g. DEV)
Config saved to: ~/.config/.jira/.config.yml
Confluence — confluence-cli (Cloud)
# 1. Get API token: https://id.atlassian.com/manage-profile/security/api-tokens
# 2. Run interactive setup
confluence init
# → Protocol: HTTPS
# → Confluence domain: your-domain.atlassian.net ← no https:// prefix
# → REST API path: /wiki/rest/api
# → Auth method: Basic (credentials)
# → Email: your@email.com
# → API token: your_token_here
Config saved to: ~/.confluence-cli/config.json
Bitbucket — bkt (Cloud)
# 1. Create API token: https://id.atlassian.com/manage-profile/security/api-tokens
# Select "Bitbucket" as application, required scope: Account: Read
# 2. Login
bkt auth login https://bitbucket.org --kind cloud --username your@email.com --token <api-token>
# 3. Create context
bkt context create cloud-team --host bitbucket.org --workspace myworkspace --set-active
# Check status
bkt auth status
Bitbucket — bkt (Data Center)
bkt auth login https://bitbucket.example.com --username alice --token <PAT>
bkt context create dc-prod --host bitbucket.example.com --project ABC --set-active
3. Quick Reference — Jira Daily Operations
See
references/jira-cli.mdfor full flag details.
# --- QUERY ---
jira issue list # list issues (current project)
jira issue list -p PROJ # specific project
jira issue list -a$(jira me) # assigned to me
jira issue list -s"In Progress" # by status
jira issue list --jql "project=DEV AND priority=High AND updatedDate > -7d"
jira issue view DEV-123 # view issue detail
jira issue view DEV-123 --plain # plain text output
# --- CREATE ---
jira issue create -p DEV -t Bug -s "Fix login crash"
jira issue create -p DEV -t Story -s "User auth" -b "Description here" --priority High
jira issue create # interactive wizard
# --- UPDATE ---
jira issue edit DEV-123 -s "New title" --no-input
jira issue assign DEV-123 myusername
jira issue assign DEV-123 x # unassign
# --- TRANSITIONS ---
jira issue move DEV-123 "In Progress"
jira issue move DEV-123 "Done"
# --- COMMENTS ---
jira issue comment add DEV-123 -m "Deployed to staging"
# --- EPICS & SPRINTS ---
jira epic list -p DEV
jira epic create -p DEV -s "Q3 Auth Epic"
jira sprint list -p DEV
jira sprint add SPRINT_ID DEV-123 DEV-124
4. Quick Reference — Confluence Daily Operations
See
references/confluence-cli.mdfor full flag details.
# --- READ & SEARCH ---
confluence read 123456789 # read page by ID
confluence read 123456789 --format markdown # output as markdown
confluence search "deployment guide" --limit 10
# --- CREATE & UPDATE ---
confluence create --space DEV --title "My Page" --file page.md
confluence create --space DEV --title "Notes" --file notes.md --parent 98765432
confluence update 123456789 --file updated.md
confluence update 123456789 --title "New Title" --file content.md
# --- DELETE ---
confluence delete 123456789 # move to trash
# --- COMMENTS ---
confluence comments 123456789 # list comments
confluence comment 123456789 --content "LGTM!" # add footer comment
# --- ATTACHMENTS ---
confluence attachments 123456789 # list attachments
confluence attachments 123456789 --download --dest ./downloads
confluence attach 123456789 --file diagram.png # upload attachment
# --- EXPORT / BACKUP ---
confluence export 123456789 --dest ./backup/
5. Quick Reference — Bitbucket Daily Operations
See
references/bkt-commands.mdfor full flag details.
# --- REPOS ---
bkt repo list
bkt repo view my-repo
bkt repo clone my-repo --ssh
bkt repo create new-repo --description "My service"
# --- PULL REQUESTS ---
bkt pr list --state OPEN
bkt pr view 42
bkt pr create --title "feat: add cache" --source feature/cache --target main --reviewer alice
bkt pr approve 42
bkt pr comment 42 --text "LGTM"
bkt pr merge 42
bkt pr checks 42 --wait # wait for CI to complete
# --- BRANCHES ---
bkt branch list
bkt branch create feature/my-feature --from main
bkt branch delete feature/old-stuff
# --- PIPELINES (Cloud only) ---
bkt pipeline run --ref main --var ENV=staging
bkt pipeline list
bkt pipeline logs <uuid>
# --- OUTPUT ---
bkt pr list --json | jq '.pull_requests[0].title' # JSON for scripting
bkt pr list --yaml # YAML output
6. Common Patterns
Batch close Jira issues
for issue in DEV-101 DEV-102 DEV-103; do
jira issue move "$issue" "Done"
echo "Closed $issue"
done
List my open Jira issues → file
jira issue list -a$(jira me) -s"To Do" --plain --no-headers \
--columns KEY,SUMMARY,PRIORITY > my-issues.txt
Publish Markdown file to Confluence
confluence create --space TEAM --title "Sprint 42 Notes" \
--file sprint42.md --parent 98765432
Update Confluence page from CI
confluence update $PAGE_ID --file README.md --minor
Create Bitbucket PR and wait for CI
bkt pr create --title "fix: crash on login" --source fix/login --target main
PR_ID=$(bkt pr list --state OPEN --json | jq '.[0].id')
bkt pr checks $PR_ID --wait --timeout 10m
JQL tips for daily use
jira issue list --jql "project=DEV AND updatedDate > -1d ORDER BY updated DESC"
jira issue list --jql "assignee=currentUser() AND issuetype=Bug AND status != Done"
jira issue list --jql "project=DEV AND sprint in openSprints()"
7. Troubleshooting
| Problem | Tool | Solution |
|---|---|---|
401 Unauthorized |
jira | Check JIRA_API_TOKEN is exported; use email as username for Cloud |
jira: command not found |
jira | Add $GOPATH/bin or $HOME/go/bin to $PATH |
confluence: command not found |
confluence | Run npm install -g confluence-cli; check Node ≥16 |
Domain entered with https:// |
confluence | Re-run confluence init; enter only your-domain.atlassian.net |
403 Forbidden |
confluence | API token expired or wrong; test with curl -u email:token URL |
bkt: command not found |
bkt | Re-install; check $PATH includes Go bin or Scoop shims |
keyring timeout |
bkt | Set BKT_KEYRING_TIMEOUT=2m or BKT_ALLOW_INSECURE_STORE=1 |
| Wrong project/workspace | any | Use explicit flags: -p PROJECT, --workspace WORKSPACE, --context NAME |
| Page not found | confluence | Verify page ID from URL: .../pages/PAGE_ID/... |
Weekly Installs
1
Repository
blitzer207/blit…r-skillsGitHub Stars
1
First Seen
6 days ago
Security Audits
Installed on
amp1
cline1
opencode1
cursor1
kimi-cli1
codex1