High Risk:This skill has significant security concerns. Review the findings below before installing.

confcli

Caution·Scanned 2/18/2026

Dangerous skill: the install instructions pipe a remote script (curl -fsSL https://raw.githubusercontent.com/hochej/confcli/main/install.sh | sh), causing download-and-execute network activity. The skill is a Confluence Cloud CLI that expects CONFLUENCE_TOKEN/CONFLUENCE_API_TOKEN and interacts with yourcompany.atlassian.net.

from clawhub.ai·ve904423·3.7 KB·0 installs
Scanned from 0.2.5 at e904423 · Transparency log ↗
$ vett add clawhub.ai/hochej/confcliReview security findings before installing

confcli

CLI for Confluence Cloud.

Installation

Check if confcli is installed:

command -v confcli

If not installed, install via:

curl -fsSL https://raw.githubusercontent.com/hochej/confcli/main/install.sh | sh

To install a specific version or to a custom directory:

curl -fsSL https://raw.githubusercontent.com/hochej/confcli/main/install.sh | VERSION=0.2.3 sh
curl -fsSL https://raw.githubusercontent.com/hochej/confcli/main/install.sh | INSTALL_DIR=~/.bin sh

Authentication

Check auth status first:

confcli auth status

If not authenticated, ask the user to configure authentication. They can either:

  1. Run confcli auth login interactively in their own terminal, or
  2. Set environment variables before starting the session:
    • CONFLUENCE_DOMAIN — e.g. yourcompany.atlassian.net
    • CONFLUENCE_EMAIL
    • CONFLUENCE_TOKEN (or CONFLUENCE_API_TOKEN)

API tokens are generated at https://id.atlassian.com/manage-profile/security/api-tokens

Never ask the user to paste a token into the conversation. Tokens must be set via environment variables or confcli auth login.

Page References

Pages can be referenced by:

  • ID: 12345
  • URL: https://company.atlassian.net/wiki/spaces/MFS/pages/12345/Title
  • Space:Title: MFS:Overview

Important

Write operations (create, update, delete, purge, edit, label add/remove, attachment upload/delete, comment add/delete, copy-tree) require explicit user intent. Never perform these based on assumptions.

Use --dry-run to preview destructive operations without executing them.

Common Commands

# Spaces
confcli space list
confcli space get MFS
confcli space pages MFS --tree
confcli space create --key PROJ --name "Project" -o json --compact-json
confcli space delete MFS --yes

# Pages
confcli page list --space MFS --title "Overview"
confcli page get MFS:Overview                  # metadata (table)
confcli page get MFS:Overview --show-body      # include body in table output
confcli page get MFS:Overview -o json          # full JSON
confcli page body MFS:Overview                 # markdown content
confcli page body MFS:Overview --format storage
confcli page children MFS:Overview
confcli page children MFS:Overview --recursive
confcli page history MFS:Overview
confcli page open MFS:Overview                 # open in browser
confcli page edit MFS:Overview                 # edit in $EDITOR

# Search
confcli search "query"
confcli search "type=page AND title ~ Template"
confcli search "confluence" --space MFS

# Write
confcli page create --space MFS --title "Title" --body "<p>content</p>"
confcli page update MFS:Overview --body-file content.html
confcli page delete 12345

# Attachments
confcli attachment list MFS:Overview
confcli attachment upload MFS:Overview ./file.png ./other.pdf
confcli attachment download att12345 --dest file.png

# Labels
confcli label add MFS:Overview tag1 tag2 tag3
confcli label remove MFS:Overview tag1 tag2
confcli label pages "tag"

# Comments
confcli comment list MFS:Overview
confcli comment add MFS:Overview --body "LGTM"
confcli comment delete 123456

# Export
confcli export MFS:Overview --dest ./exports --format md

# Copy Tree
confcli copy-tree MFS:Overview MFS:TargetParent

Output Formats

Use -o flag: json, table, md

confcli space list -o json
confcli page get MFS:Overview -o json

Pagination

Add --all to fetch all results, -n to set limit:

confcli space list --all
confcli search "query" --all -n 100