Skip to content

Releases: nlink-jp/confl-cli

v0.1.9

27 Mar 15:19

Choose a tag to compare

Internal

  • Updated repository URLs to github.com/nlink-jp/confl-cli.
  • Added macOS-specific entries to .gitignore.

See CHANGELOG for details.

v0.1.8

27 Mar 15:18

Choose a tag to compare

Added

  • spaces export <space-key>: export all pages in a space as a tree, starting from the space home page. Resolves the home page via the v1 /space/{key}?expand=homepage endpoint, then delegates to the same tree logic as pages tree. Supports --depth, --format, --attachments, --output-dir, --page-format, and --no-rewrite-links.

See CHANGELOG for details.

v0.1.7

26 Mar 00:13

Choose a tag to compare

Fixed

  • pages tree: some subtrees were missing when the Confluence API returned pages with truncated ancestor chains (child and parent at the same len(ancestors)). Switched to a two-pass build: all nodes are created first, then linked — eliminating ordering sensitivity.
  • pages tree: pages whose ancestors list contains a virtual space-root node (instead of the queried page ID) were silently orphaned and missing from the tree output. This caused the space home page to show only 1 node. Now falls back to the nearest known ancestor in the chain, then to root.

Added

  • pages get --base-path <dir>: rewrite Confluence page links to <base-path>/<id>/page.<ext> and attachment links to their downloaded location in text/HTML output.
  • pages tree --page-format now automatically rewrites cross-page links and attachment links to relative local paths when --output-dir is set.
  • --no-rewrite-links flag on both pages get and pages tree to opt out of link rewriting and preserve original Confluence URLs.

v0.1.6

26 Mar 00:00

Choose a tag to compare

Fixed

  • pages tree: pages whose ancestors list contains a virtual space-root node (instead of the queried page ID) were silently orphaned and missing from the tree output. This caused the space home page to show only 1 node. Now falls back to the nearest known ancestor in the chain, then to root.

Added

  • pages get --base-path <dir>: rewrite Confluence page links to <base-path>/<id>/page.<ext> and attachment links to their downloaded location in text/HTML output. No effect for JSON or storage format.
  • pages tree --page-format now automatically rewrites cross-page links and attachment links to relative local paths when --output-dir is set.
  • --no-rewrite-links flag on both pages get and pages tree to opt out of link rewriting and preserve original Confluence URLs.

v0.1.5

25 Mar 23:24

Choose a tag to compare

Changed

  • pages tree now fetches all descendants in a single paginated request to
    /content/{id}/descendant/page?expand=version,history,ancestors and
    reconstructs the tree client-side. API calls reduced from O(N) sequential
    to 1 (root) + ceil(N/250) (descendants) — effectively 2 calls for most trees.

v0.1.4

25 Mar 12:03

Choose a tag to compare

Fixed

  • --version now correctly shows confl-cli 0.1.4 instead of the old hardcoded ccli 0.1.0. Version is read dynamically from package metadata.

Upgrade

uv tool upgrade confl-cli

v0.1.3

25 Mar 12:00

Choose a tag to compare

What's New

Added

  • pages tree --format json now includes created_at (page creation date) for every node, in addition to the existing updated_at (last modified date).

Changed

  • Tree metadata fetching is now fully unified to the v1 content API (/content/{id}?expand=version,history). This ensures both dates are available for root and all child nodes, and removes the dependency on the Confluence v2 API for tree operations.

Installation

uv tool install git+https://github.com/magifd2/confl-cli.git

Upgrade

uv tool upgrade confl-cli

v0.1.2

25 Mar 11:55

Choose a tag to compare

What's New

Added

  • pages tree --page-format <text|html|json|storage>: save each page body to <output-dir>/<page-id>/page.md|.html|.json|.xml. Requires --output-dir. Combine with --attachments to download both bodies and attachments in one pass.
  • pages tree: last modified date shown next to each node title in text output; updated_at field added to JSON output.

Fixed

  • pages tree: child pages now fetch version info and web URL via v1 API (/content/{id}/child/page?expand=version). Previously the v2 /children endpoint returned neither field, leaving child URLs and dates empty.
  • All text displays (pages tree, pages get, pages search) now convert UTC timestamps to local time (YYYY-MM-DD HH:MM). JSON output retains the original UTC ISO 8601 value.

Installation

uv tool install git+https://github.com/magifd2/confl-cli.git

Upgrade

uv tool upgrade confl-cli

v0.1.1 - Bug Fix

25 Mar 11:16

Choose a tag to compare

confl-cli v0.1.1

Bug Fixes

  • Fix config command help text displaying ccli instead of confl-cli

Installation

```bash
uv tool install git+https://github.com/magifd2/confl-cli.git
```

Upgrade

```bash
uv tool upgrade confl-cli
```

v0.1.0 - Initial Release

25 Mar 11:01

Choose a tag to compare

confl-cli v0.1.0 — Initial Release

A CLI tool for Atlassian Confluence Cloud, built around the UNIX philosophy (pipe-friendly, stdout/stderr separation).

Features

  • Space operations: spaces list / spaces search
  • Page search: pages search (full-text via CQL)
  • Page read: pages get (text / html / json / storage formats)
  • Page tree: pages tree (recursive with optional depth limit)
  • Attachments: --attachments for metadata, --output-dir to download files
  • Config management: config init / config show

Quality

  • Python 3.11+
  • ruff and mypy strict mode clean
  • 137 tests, 94% coverage
  • Retry with exponential backoff on network errors, 5xx, and timeouts

Installation

```bash
uv tool install git+https://github.com/magifd2/confl-cli.git
```

Configuration

```bash
export CONFLUENCE_URL=https://your-domain.atlassian.net
export CONFLUENCE_USERNAME=you@example.com
export CONFLUENCE_API_TOKEN=your-api-token
```

See README for full usage details.