mk-confluence

star 15

Routing skill — recommends the correct mk:confluence-* leaf for any Confluence Cloud task. Triggers: 'confluence', 'wiki page', 'spec page', ambiguous Confluence intent. NOT an executor — every actual operation forks via a leaf skill.

ngocsangyem By ngocsangyem schedule Updated 6/11/2026

name: mk:confluence description: 'Routing skill — recommends the correct mk:confluence-* leaf for any Confluence Cloud task. Triggers: ''confluence'', ''wiki page'', ''spec page'', ambiguous Confluence intent. NOT an executor — every actual operation forks via a leaf skill.' phase: on-demand source: local keywords: - confluence - confluence-router - routing-hub - atlassian-wiki - wiki - spec-page when_to_use: Use when user has a Confluence intent but the specific leaf isn't clear. NOT for direct execution — forward to mk:confluence-{specific}. user-invocable: true owner: confluence criticality: medium status: active runtime: claude-code requires_external_service: ["confluence"] default_enabled: false

mk:confluence — Routing Skill

This skill is a pure routing layer. Its sole purpose: identify the right mk:confluence-* leaf for the user's Confluence task, then point at it. No execution.

Routing Table

User intent Leaf skill
Get/create/update/delete a single page or blog post; copy/move/version mk:confluence-page
Search pages with CQL; list spaces; export results mk:confluence-search
Deep spec analysis: requirements, gaps, suggested stories mk:confluence-spec-analyst
Bulk ops on 10+ pages (label, move, delete) — dry-run mandatory mk:confluence-bulk
Comments, attachments, labels, watchers (collaboration surface) mk:confluence-collaborate

Disambiguation

  • User says skill name verbatim → route immediately
  • Numeric token (likely page ID) + verb → match verb to leaf
  • Uppercase short token (likely space key) + read intent → mk:confluence-search
  • CQL syntax (=, AND, OR, currentUser()) → mk:confluence-search
  • 10+ items / bulk / batch / mass keyword → mk:confluence-bulk
  • Spec analysis intent (requirements, acceptance criteria, analyze the spec) → mk:confluence-spec-analyst
  • Labels: mk:confluence-collaborate owns label CRUD (add/remove/list). mk:confluence-page does NOT duplicate — if user says "label page X", route to collaborate.
  • Comments / attachments / watchers: always mk:confluence-collaborate, even if scoped to a single page
  • Truly ambiguous → ask user one clarifying question

Setup

See references/install-and-auth.md for one-time setup (.claude/scripts/bin/setup-workflow installs confluence-assistant-skills into .claude/skills/.venv per scripts/requirements.txt; populate .claude/.env with the 3 MEOW_CONFLUENCE_* vars).

Shared Resources (used by leaves)

  • scripts/confluence-as.sh — env-translating wrapper (MEOW_CONFLUENCE_*CONFLUENCE_*, sets CONFLUENCE_OUTPUT=json, refuses settings.local.json fallback, gates non-Cloud URLs)
  • scripts/cql-sanitize.sh — CQL injection guard for user-derived input
  • scripts/adf-to-md.sh + scripts/adf_to_md.py — macro-aware ADF→Markdown walker (panel, decisionList/Item, taskList/Item, expand, mention, media, inlineCard preserved with explicit labels)
  • scripts/requirements.txt — pip dependency manifest auto-discovered by .claude/scripts/bin/setup-workflow
  • scripts/smoke-live.sh — manual live-creds smoke test
  • references/install-and-auth.md — env vars, setup, Cloud-only gate, escape hatch
  • references/cli-idioms.md — wrapper invocation patterns + safe-invocation rules + conversion-helper idioms

Handoff

  • mk:planning-engine accepts --spec <report-path> flag pointing at an existing mk:confluence-spec-analyst report; user runs spec-analyst FIRST, then passes path
  • mk:intake recognizes Confluence URL/page-id as a 5th source; fetches page content directly via wrapper, does NOT auto-invoke spec-analyst
  • mk:jira → sister hub for Jira ticketing; spec-analyst report pairs with mk:jira-issue create to turn extracted user stories into tickets (manual review required, --with-commands is opt-in)
  • No write-back from mk:cook — Confluence write paths are out of scope

Gotchas

  • mk:confluence itself never executes; if you're in this skill thinking about wrapper commands, you're in the wrong place — forward to a leaf.
  • Binary name is confluence-as (NOT confluence despite some upstream README docs). The wrapper handles this; leaves call the wrapper.
  • Cloud-only — wrapper exits 3 on non-*.atlassian.net URLs. For Server/DC, users invoke MCP Atlassian directly per references/install-and-auth.md. Hub does NOT auto-fallback.
Install via CLI
npx skills add https://github.com/ngocsangyem/MeowKit --skill mk-confluence
Repository Details
star Stars 15
call_split Forks 2
navigation Branch main
article Path SKILL.md
More from Creator