From confluence-tools
This skill MUST be used when the user asks to "update a Confluence page", "edit wiki page", "modify page content", "change page title", "append to page", "update documentation", or otherwise requests modifying existing Confluence pages. ALWAYS use this skill for Confluence page updates.
npx claudepluginhub ericfisherdev/claude-plugins --plugin confluence-toolsThis skill uses the workspace's default tool permissions.
**IMPORTANT:** Always use this skill's Python script for updating Confluence pages. This skill handles version management automatically and provides token-efficient output.
Verifies tests pass on completed feature branch, presents options to merge locally, create GitHub PR, keep as-is or discard; executes choice and cleans up worktree.
Guides root cause investigation for bugs, test failures, unexpected behavior, performance issues, and build failures before proposing fixes.
Writes implementation plans from specs for multi-step tasks, mapping files and breaking into TDD bite-sized steps before coding.
IMPORTANT: Always use this skill's Python script for updating Confluence pages. This skill handles version management automatically and provides token-efficient output.
CRITICAL: When uploading markdown content to Confluence, you MUST use the --markdown flag:
.md extension → ALWAYS add --markdown--markdown--markdownWithout the --markdown flag, markdown content will appear as raw unformatted text in Confluence.
# CORRECT - markdown file with --markdown flag
python scripts/update_confluence_page.py 123456 --body-file README.md --markdown
# WRONG - markdown will show as raw text
python scripts/update_confluence_page.py 123456 --body-file README.md
Use the Python script at scripts/update_confluence_page.py:
# Update page title
python scripts/update_confluence_page.py 123456 --title "New Title"
# Update page body
python scripts/update_confluence_page.py 123456 --body "<p>New content</p>"
# Update from markdown file (automatically converted)
python scripts/update_confluence_page.py 123456 --body-file /path/to/README.md --markdown
# Append content to existing page
python scripts/update_confluence_page.py 123456 --append "<p>Additional content</p>"
# Update from file
python scripts/update_confluence_page.py 123456 --body-file /path/to/content.html
# Add/remove labels
python scripts/update_confluence_page.py 123456 --add-labels "reviewed,approved"
python scripts/update_confluence_page.py 123456 --remove-labels "draft"
| Option | Description |
|---|---|
--title, -t | New page title |
--body, -b | New page body (replaces existing) |
--body-file | Read body from file (use '-' for stdin) |
--markdown, -m | Convert body/append/prepend from markdown to Confluence format |
--append, -a | Append content to existing body |
--prepend | Prepend content to existing body |
--labels, -l | Set labels (replaces existing) |
--add-labels | Add labels to existing |
--remove-labels | Remove specific labels |
--minor-edit | Mark as minor edit (no notifications) |
--version-message | Version comment/message |
--format, -f | Output: compact (default), text, json |
Confluence requires a version number for updates. This script:
No manual version tracking needed.
python scripts/update_confluence_page.py 123456 \
--body "<h1>Updated Guide</h1><p>New instructions...</p>" \
--version-message "Updated instructions for v2.0"
python scripts/update_confluence_page.py 123456 \
--append "<h2>Meeting 2024-01-15</h2><p>Notes from today...</p>" \
--minor-edit
python scripts/update_confluence_page.py 123456 \
--title "Architecture Overview (Updated)"
# Add labels
python scripts/update_confluence_page.py 123456 --add-labels "reviewed,qa-passed"
# Remove labels
python scripts/update_confluence_page.py 123456 --remove-labels "draft,wip"
# Replace all labels
python scripts/update_confluence_page.py 123456 --labels "final,published"
# Native markdown support (recommended)
python scripts/update_confluence_page.py 123456 --body-file updated-docs.md --markdown
# Alternative: via pandoc for advanced markdown features
pandoc -f markdown -t html updated-docs.md | \
python scripts/update_confluence_page.py 123456 --body-file -
compact (default):
UPDATED|123456|Page Title|v6
Changes:title,body,labels
URL:https://yoursite.atlassian.net/wiki/spaces/DEV/pages/123456
text:
Page Updated: Page Title
ID: 123456
Version: 6
Changes: title, body, labels
URL: https://yoursite.atlassian.net/wiki/spaces/DEV/pages/123456
json:
{"id":"123456","title":"Page Title","version":6,"changes":["title","body","labels"],"url":"..."}
Requires environment variables:
CONFLUENCE_BASE_URL - e.g., https://yoursite.atlassian.netCONFLUENCE_EMAIL - Your Atlassian account emailCONFLUENCE_API_TOKEN - API token from Atlassian account settingsFor detailed options, see references/options-reference.md.