--- name: confluence-cli description: >- Interact with Atlassian Confluence from the terminal: list spaces, browse pages, view page content, search with CQL, and create pages. Use when the user mentions Confluence, a space key (e.g. DEV), or asks about documentation, wiki pages, space content, or knowledge base articles. Do not use this skill for unrelated requests; route to the nearest named specialist. license: MIT compatibility: Requires CONFLUENCE_EMAIL and CONFLUENCE_API_TOKEN env vars (free from id.atlassian.com/manage/api-tokens), Python 3.8+, and the `requests` library. Also requires CONFLUENCE_SERVER (defaults to your-domain.atlassian.net). metadata: tags: confluence, atlassian, wiki, documentation, knowledge-base, api-client sources: https://developer.atlassian.com/cloud/confluence/rest/v2/, https://id.atlassian.com/manage/api-tokens --- # confluence-cli — Confluence Wiki from the Terminal Interact with Atlassian Confluence Cloud via the REST API. List spaces, browse pages, view page content with body, search with CQL, and create pages. ## Setup 1. Generate an API token at [id.atlassian.com/manage/api-tokens](https://id.atlassian.com/manage/api-tokens) 2. Set environment variables: ```bash export CONFLUENCE_EMAIL="your-email@example.com" export CONFLUENCE_API_TOKEN="your-api-token" export CONFLUENCE_SERVER="https://your-domain.atlassian.net" ``` `--help` and `--dry-run` work without credentials. ## Essential Commands ### me — Current user profile ```bash confluence-cli me # your account info confluence-cli me --json # machine-readable ``` ### spaces — List spaces ```bash confluence-cli spaces # all accessible spaces confluence-cli spaces --limit 50 # more results confluence-cli spaces --json # machine-readable ``` ### pages — List pages ```bash confluence-cli pages # recent pages across all spaces confluence-cli pages --space DEV # pages in a specific space confluence-cli pages --space DEV --limit 10 # top 10 confluence-cli pages --space DEV --json # machine-readable ``` Filters by space key. Resolves the key to an internal ID automatically. ### view — View a page by ID ```bash confluence-cli view 123456 # full page with body confluence-cli view 123456 --json # machine-readable ``` Shows title, status, version, author, timestamps, and HTML body (stripped to plain text for display). The full HTML body is available in `--json` output up to 5000 chars. ### search — Search with CQL ```bash confluence-cli search --cql 'text~"deploy"' # full-text search confluence-cli search --cql 'space=DEV AND type=page' # by space and type confluence-cli search --cql 'creator=currentuser()' # my content confluence-cli search --cql 'text~"api"' --limit 5 # top 5 results ``` CQL (Confluence Query Language) is Confluence's search syntax. Common patterns: - `text~"keyword"` — full-text search - `space=KEY` — filter by space - `type=page` — filter by content type - `creator=currentuser()` — your content - `label="name"` — by label - Combine with `AND`: `space=DEV AND text~"deploy"` ### create — Create a page ```bash confluence-cli create --space DEV --title "My Page" # basic confluence-cli create --space DEV --title "API Docs" --body "
Content
" # with HTML body confluence-cli create --space DEV --title "Test" --parent 123456 # as child page confluence-cli create --space DEV --title "Test" --dry-run # preview ``` Creates pages in Confluence Cloud (v2 API). The body is HTML using Confluence's storage format. For simple pages, basic HTML tags work (``, `