Markdown Confluence Publisher (VS Code Extension)
Publish and synchronize Markdown documentation directly to Atlassian Confluence Cloud from VS Code, with native Confluence Callout Macros and optional Google Open Knowledge Format (OKF v0.2) metadata management.
✨ Features
- 🚀 Zero-Config Publishing: Right-click any standard
.md file to publish immediately to Confluence.
- 🛠️ Interactive Metadata Helper: Easily add or update metadata fields (
type, author, lastUpdate, folderId, spaceKey, tags) using interactive menus.
- 🎨 Confluence Native Macros:
- Converts GitHub-style callouts (
> [!NOTE], > [!WARNING], > [!TIP], > [!IMPORTANT]) into native Confluence Info/Note/Tip/Warning Macros.
- Converts code blocks and Mermaid diagrams into native Confluence Code Macros.
- Prevents title duplication in Confluence page headers.
- 📁 Space & Folder Hierarchy: Organize pages into Confluence spaces and parent folders using
spaceKey and folderId.
- ⚡ Right-Click Context Menu & Command Palette: Quick actions directly in Explorer and Editor views.
⚙️ Configuration
Set your Confluence credentials in VS Code Settings (Cmd + , -> search Markdown Confluence):
{
"markdownConfluence.domain": "your-company.atlassian.net",
"markdownConfluence.email": "your_email@domain.com",
"markdownConfluence.apiToken": "your_api_token",
"markdownConfluence.defaultSpaceKey": "DOCS",
"markdownConfluence.defaultAuthorName": "human:yourname",
"markdownConfluence.autoUpdateLastUpdate": true
}
Or store them in a .env.local / .env.confluence / .env file in your workspace root:
CONFLUENCE_DOMAIN=your-company.atlassian.net
CONFLUENCE_EMAIL=your_email@domain.com
CONFLUENCE_API_TOKEN=your_api_token
You can manage document metadata manually via YAML frontmatter or interactively using Cmd + Shift + P -> Markdown Confluence: Add/Edit Metadata Fields....
| Field |
Type |
Description & Examples |
title |
string |
Document title. Extracted automatically from the first # Heading if omitted. |
type |
string |
Document concept type: wiki, spec, architecture, playbook, metric, reference, api-endpoint, or custom. |
generated |
object |
Author and creation timestamp: { by: "human:username", at: "2026-07-27T10:00:00Z" }. |
lastUpdate |
string |
ISO 8601 timestamp string of last modification: "2026-07-27T12:00:00.000Z". |
spaceKey |
string |
Target Confluence Space Key (e.g., DOCS, ENG, MP). |
folderId |
string |
Confluence parent page or folder ID (e.g., "16744625"). |
fileId |
string |
Confluence Page ID (auto-inserted after the initial publish for seamless updates). |
tags |
array |
Keywords or labels: [crm, api, stats, onboarding]. |
description |
string |
Short summary of the document for index cataloging. |
📄 Complete Example Document
---
type: architecture
title: "Dashboard Statistics & Automations Engine"
description: "Technical specification for monthly KPIs, automated task triggers, and market intelligence widgets."
tags: [dashboard, analytics, firestore, cron]
generated: { by: "human:jgu7man", at: "2026-07-26T13:09:03.370Z" }
lastUpdate: "2026-07-27T10:45:00.000Z"
spaceKey: MP
folderId: "16744625"
fileId: "23625794"
---
# Dashboard Statistics & Automations Engine
> [!NOTE]
> This document is written in Markdown and synchronized with Atlassian Confluence Cloud.
## 1. System Overview
The system processes real-time analytics events through Cloud Functions and updates Firestore counters reactively.
```mermaid
graph TD
A[Client Event] --> B[Cloud Function]
B --> C[Firestore Document]
C --> D[Angular Dashboard Widget]
[!TIP]
Use Cmd + Shift + P -> Markdown Confluence: Add/Edit Metadata Fields... to quickly set Space Key or Parent Folder interactively.
---
## 📦 Commands Reference
- **`Markdown Confluence: Publish Current File`** — Publish or update current file in Confluence.
- **`Markdown Confluence: Sync Metadata`** — Sync remote Confluence page ID and parent folder into local frontmatter.
- **`Markdown Confluence: Add/Edit Metadata Fields...`** — Interactive picker to add or update individual frontmatter fields.
- **`Markdown Confluence: Update Timestamps & Author`** — Quick 1-click update of `lastUpdate` and author `generated` fields.
- **`Markdown Confluence: Set Document Type`** — QuickPick menu for OKF concept types (`wiki`, `spec`, `architecture`, etc.).
- **`Markdown Confluence: Set Parent Folder`** — Interactive folder browser from your Confluence space.
---
## 📜 License
MIT License — Created for Google Antigravity & Open Knowledge Framework ecosystems.