Render Atlassian (Jira + Confluence) content as clean Markdown in the terminal.
Project description
atl
atl fetches Atlassian (Jira + Confluence) content from the terminal and
renders the HTML the REST APIs return as clean Markdown. It's built for AI
agents: view folds a work item or page and its context — comments, links,
sub-tasks, children, attachments — into a single Markdown document, and every
command has an --output json mode for scripting.
For anything the curated commands don't cover, atl api is a raw, authenticated
passthrough to the Atlassian REST API, modeled on gh api: type the real Jira
(/rest/...) or Confluence (/wiki/...) path against your configured host and
token — reads or writes.
Install
uv tool install atl-cli
This installs the atl command.
Authentication
Run atl auth login once. It prompts for your site URL, your Atlassian email,
and an API token,
then verifies them before saving.
- Non-secret metadata (site URL and username) is written to
~/.config/atl/credentials.json(mode 600; honorsXDG_CONFIG_HOME). - The API token is stored in your OS keyring; if no keyring backend is available it falls back into that same mode-600 file.
atl auth status shows the configured site and account and re-verifies the
token; atl auth logout removes both the file and the keyring entry.
Usage
atl jira view <KEY> work item + comments, links, sub-tasks,
attachments (+ epic children, for epics)
atl jira search <jql> search work items with JQL
atl jira download-attachment <id> download a work-item attachment by id
atl confluence view <id> wiki page + child pages + attachments
atl confluence search <cql> search pages with CQL
atl confluence download-attachment <id> download a page attachment by id
atl api <endpoint> raw authenticated REST request to any
Jira/Confluence endpoint (gh-style)
atl auth login | logout | status
Common options: --web (open in a browser instead of rendering), --output json
(raw API JSON for scripting), --limit <n> (cap search results; default: all). Run
atl --help or atl <command> --help for the rest.
Examples
atl jira view PROJ-123 # render a work item as Markdown
atl jira search 'assignee = currentUser() AND statusCategory != Done'
atl confluence view 123456 # render a page (numeric id)
atl confluence search 'text ~ "onboarding"'
atl jira view PROJ-123 --web # open in a browser instead
atl api /rest/api/3/myself # raw REST call, pretty-printed JSON
atl api /wiki/api/v2/pages -f limit=5 -X GET # a field defaults to POST; -X GET forces a query
# write with a raw body (add a Jira comment, in Atlassian Document Format):
echo '{"body":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"hi"}]}]}}' |
atl api /rest/api/3/issue/PROJ-123/comment --input -
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file atl_cli-0.2.0.tar.gz.
File metadata
- Download URL: atl_cli-0.2.0.tar.gz
- Upload date:
- Size: 23.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5ee26160abe602409f9be61e606b49011e027ac9f7066a96510a70da483000fc
|
|
| MD5 |
6d6240e9370679941e1d143a551182ed
|
|
| BLAKE2b-256 |
d36c1cceb56c6ea03a3272cdd9429bff4dc44f9c56d29f600d431dfc160f2acf
|
File details
Details for the file atl_cli-0.2.0-py3-none-any.whl.
File metadata
- Download URL: atl_cli-0.2.0-py3-none-any.whl
- Upload date:
- Size: 27.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ed4e8cbc0421e0f2329f532d7611111dfb4a60920976a9721b5615a4f57fb4e
|
|
| MD5 |
8a35e4966563d9ab24a2b56ad8cb837b
|
|
| BLAKE2b-256 |
69c3b433076373c749292fe3a29f025e649e3e8f0fa71879e75f8f04a926afdb
|