Interactive CLI tool to export Confluence pages to HTML or Markdown with a tree-based page picker, caching, parallel fetching, and clean UX.
Prebuilt binaries and a Docker image are available — you don’t have to install Python unless you want to run from source.
- First-run interactive setup (Base URL, username, API token, space key)
- Config saved to
~/.confluence_exporter.json(plain text) - Space picker from API if space key isn’t provided
- Parallel BFS page tree indexing with live progress bars
- Tree cache in
~/.confluence_tree_cache.json(configurable TTL) - Export to HTML or Markdown with page titles & separators
- Error logging to
errors.log, graceful exit onCtrl+C
Download the latest release for Windows / macOS / Linux:
https://github.com/teamfighter/confexp/releases/latest
Linux / macOS:
chmod +x ./confexp
./confexpWindows (PowerShell):
.\confexp.exeOn first run, you’ll be asked for: Base URL, Username, API token, Space key.
Settings are saved to~/.confluence_exporter.jsonfor future runs.
docker run -it --rm \
-v $HOME/.confluence_exporter.json:/root/.confluence_exporter.json \
-v $HOME/.confluence_tree_cache.json:/root/.confluence_tree_cache.json \
-v "$(pwd)":/work -w /work \
ghcr.io/teamfighter/confexp:latestEnvironment variables (optional overrides inside the container):
CONFLUENCE_URL— your Confluence base URL (e.g.https://example.atlassian.net/wiki)CONFLUENCE_USER— login (usually email)CONFLUENCE_TOKEN— API token
git clone https://github.com/teamfighter/confexp.git
cd confexp
pip install -r requirements.txt
python main.pyInteractive selection and export to Markdown:
./confexp --format mdRebuild the page tree (ignore cache):
./confexp --refreshOverride base URL & space (skip prompts):
./confexp --base https://your.atlassian.net/wiki --space OPS| Param | Description |
|---|---|
--base |
Confluence base URL |
--space |
Space key |
-r, --refresh |
Ignore tree cache and rebuild |
--ttl |
Tree cache TTL in hours (default: 24) |
--workers |
Number of threads (default: 5) |
--format |
Export format: html or md (default: html) |
Files used/created locally
~/.confluence_exporter.json— saved credentials & defaults~/.confluence_tree_cache.json— page tree cacheerrors.log— error log for diagnostics
Build locally:
docker build -t confexp:dev .Run:
docker run -it --rm \
-v $HOME/.confluence_exporter.json:/root/.confluence_exporter.json \
-v $HOME/.confluence_tree_cache.json:/root/.confluence_tree_cache.json \
-v "$(pwd)":/work -w /work \
confexp:dev --format mdPull prebuilt image:
docker pull ghcr.io/teamfighter/confexp:latest- Prebuilt binaries for Linux, macOS, Windows are attached to each release:
https://github.com/teamfighter/confexp/releases - Docker image is published to GHCR:
ghcr.io/teamfighter/confexp:latest
MIT
