Learn
iurykrieger/claude-bedrock
Ingests an external data source into the Second Brain. An agent skill from iurykrieger/claude-bedrock.
Publish any markdown file from the vault to Confluence with format conversion and approval gate
$ npx skills add huytieu/COG-second-brain --skill publish-to-confluence -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install huytieu/COG-second-brain publish-to-confluence --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/huytieu/COG-second-brain.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/publish-to-confluence .claude/skills/publish-to-confluence && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "publish-to-confluence" agent skill from https://github.com/huytieu/COG-second-brain/tree/main/skills/publish-to-confluence into .claude/skills/publish-to-confluence/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "publish-to-confluence", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/huytieu/COG-second-brain/tree/main/skills/publish-to-confluenceType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add huytieu/COG-second-brain --skill publish-to-confluence -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install huytieu/COG-second-brain publish-to-confluence --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/huytieu/COG-second-brain.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/publish-to-confluence .agents/skills/publish-to-confluence && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "publish-to-confluence" agent skill from https://github.com/huytieu/COG-second-brain/tree/main/skills/publish-to-confluence into .agents/skills/publish-to-confluence/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "publish-to-confluence", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add huytieu/COG-second-brain --skill publish-to-confluence -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install huytieu/COG-second-brain publish-to-confluence --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/huytieu/COG-second-brain.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/publish-to-confluence .cursor/skills/publish-to-confluence && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "publish-to-confluence" agent skill from https://github.com/huytieu/COG-second-brain/tree/main/skills/publish-to-confluence into .cursor/skills/publish-to-confluence/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "publish-to-confluence", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/huytieu/COG-second-brain.git --path skills/publish-to-confluence--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add huytieu/COG-second-brain --skill publish-to-confluence -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install huytieu/COG-second-brain publish-to-confluence --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/huytieu/COG-second-brain.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/publish-to-confluence .gemini/skills/publish-to-confluence && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "publish-to-confluence" agent skill from https://github.com/huytieu/COG-second-brain/tree/main/skills/publish-to-confluence into .gemini/skills/publish-to-confluence/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "publish-to-confluence", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install huytieu/COG-second-brain publish-to-confluenceInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add huytieu/COG-second-brain --skill publish-to-confluence -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/huytieu/COG-second-brain.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/publish-to-confluence .github/skills/publish-to-confluence && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "publish-to-confluence" agent skill from https://github.com/huytieu/COG-second-brain/tree/main/skills/publish-to-confluence into .github/skills/publish-to-confluence/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "publish-to-confluence", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add huytieu/COG-second-brain --skill publish-to-confluence -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install huytieu/COG-second-brain publish-to-confluence --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/huytieu/COG-second-brain.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/publish-to-confluence .opencode/skills/publish-to-confluence && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "publish-to-confluence" agent skill from https://github.com/huytieu/COG-second-brain/tree/main/skills/publish-to-confluence into .opencode/skills/publish-to-confluence/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "publish-to-confluence", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
publish-to-confluencePublish any markdown file from the vault to Confluence with format conversion and approval gate
Publish To Confluence is an agent skill from huytieu/COG-second-brain. Publish any markdown file from the vault to Confluence with format conversion and approval gate
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Documents & Office, covering Markdown. It works with Confluence. The repository describes itself as: Self-evolving second brain with 35 AI skills, 10 agents, and people CRM. Closed-loop harness: a V-model verification lifecycle where the worker never grades its own homework… The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 36ac9d7. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are yaml).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
SPACE_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Publish To Confluence loads about 1.9k tokens when it runs. Until then it costs about 29 tokens; SKILL.md has 572 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from huytieu/COG-second-brain at commit 36ac9d7, republished under its MIT licence (© huytieu). 572 words, ~1,939 tokens.
.claude/skills/publish-to-confluence/SKILL.md (or your agent's skills folder).Check agent_mode in 00-inbox/MY-PROFILE.md frontmatter:
agent_mode: team — no significant benefit for this skill (single sequential operation)agent_mode: solo — standard execution/publish-to-confluenceRead 00-inbox/MY-INTEGRATIONS.md — Confluence MUST be listed under Active Integrations
Confluence is not in your active integrations.
Would you like to:
a) Set up Confluence integration (I'll add it to MY-INTEGRATIONS.md)
b) Export the document in a Confluence-compatible format for manual uploadGet current timestamp: Run date '+%Y-%m-%d %H:%M' using Bash
Determine what to publish:
Option A: User specifies a file path
Read the specified file from the vault.Option B: User describes the document
Search for matching files:
1. Glob for likely matches in 04-projects/, 05-knowledge/, 01-daily/
2. Present candidates and let user chooseOption C: Just-generated document If this skill is invoked right after generating a PRD, release notes, or other document, use that document.
Ask the user (if not already provided):
Where should this be published in Confluence?
Required:
- Space key: [CUSTOMIZE: YOUR-SPACE-KEY] (or let me search for spaces)
- Parent page: [Page title or ID under which to nest this page]
Optional:
- Page title: [defaults to the document's H1 heading]
- Labels: [Confluence labels to add]
- Publish mode: "create new" or "update existing"If the user doesn't know the space or parent page:
Use WebFetch to search Confluence:
GET /wiki/rest/api/space?limit=50
- List available spaces for the user to choose
GET /wiki/rest/api/content?spaceKey=[SPACE]&type=page&limit=25
- List pages in the space for parent page selectionConvert the markdown document to Confluence storage format (XHTML):
Conversion rules:
| Markdown | Confluence Storage Format |
|---|---|
# Heading | <h1>Heading</h1> |
## Heading | <h2>Heading</h2> |
**bold** | <strong>bold</strong> |
*italic* | <em>italic</em> |
- list item | <ul><li>list item</li></ul> |
1. list item | <ol><li>list item</li></ol> |
[text](url) | <a href="url">text</a> |
`code` | <code>code</code> |
| Code blocks | <ac:structured-macro ac:name="code"><ac:plain-text-body><![CDATA[...]]></ac:plain-text-body></ac:structured-macro> |
| Tables | <table><tbody><tr><th>...</th></tr><tr><td>...</td></tr></tbody></table> |
> blockquote | <blockquote><p>quote</p></blockquote> |
--- | <hr /> |
- [ ] task | <ac:task-list><ac:task><ac:task-status>incomplete</ac:task-status><ac:task-body>task</ac:task-body></ac:task></ac:task-list> |
- [x] task | Same with complete status |
| YAML frontmatter | Strip entirely (not displayed in Confluence) |
Important conversion notes:
CRITICAL: NEVER publish without explicit user approval.
Present a summary to the user:
Ready to publish to Confluence:
Document: [filename]
Title: [page title]
Space: [space key]
Parent Page: [parent page title]
Mode: [create new / update existing]
Labels: [labels]
Content preview (first 500 chars):
[preview text]
Estimated page size: [approximate word count]
Proceed with publishing? (yes/no)Wait for explicit "yes" before proceeding.
Use WebFetch to POST to Confluence REST API:
POST [CUSTOMIZE: your-confluence-url]/wiki/rest/api/content
Headers:
Content-Type: application/json
Authorization: [from configured credentials]
Body:
{
"type": "page",
"title": "[page title]",
"space": { "key": "[SPACE_KEY]" },
"ancestors": [{ "id": "[PARENT_PAGE_ID]" }],
"body": {
"storage": {
"value": "[converted XHTML content]",
"representation": "storage"
}
},
"metadata": {
"labels": [
{ "prefix": "global", "name": "[label]" }
]
}
}First, get the current page to obtain the version number:
GET [CUSTOMIZE: your-confluence-url]/wiki/rest/api/content/[PAGE_ID]?expand=version
Then update:
PUT [CUSTOMIZE: your-confluence-url]/wiki/rest/api/content/[PAGE_ID]
Body:
{
"type": "page",
"title": "[page title]",
"version": { "number": [current_version + 1] },
"body": {
"storage": {
"value": "[converted XHTML content]",
"representation": "storage"
}
}
}After successful publishing:
Confirm to the user:
Published successfully!
Page: [Title]
URL: [Confluence page URL]
Space: [Space Key]
Version: [version number]Update the source vault file (add published metadata to frontmatter):
confluence_url: "[page URL]"
confluence_page_id: "[page ID]"
confluence_space: "[space key]"
published_at: "[timestamp]"
confluence_version: [version number]Log the publication for future reference.
If the vault file already has confluence_page_id in its frontmatter:
This document was previously published to Confluence:
URL: [confluence_url]
Last published: [published_at]
Would you like to:
a) Update the existing Confluence page (increment version)
b) Create a new page (separate copy)
c) Cancel| Scenario | Behavior |
|---|---|
| Confluence not active | Stop and inform user; suggest alternative platforms |
| Confluence API fails | Save the converted XHTML to a file so user can manually paste it |
| Authentication failure | Inform user their Confluence credentials may need refreshing |
| Page already exists (same title) | Ask user: update existing, create with different title, or cancel |
| Very large document | Warn user about page size; suggest splitting into child pages |
| Complex markdown (unsupported elements) | Convert best-effort, warn about any elements that couldn't be converted |
© huytieu, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/publish-to-confluence of huytieu/COG-second-brain.
Open the folder on GitHubat commit 36ac9d7
Publish To Confluence next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Publish To Confluence this skillhuytieu/COG-second-brain | 1.3k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Learniurykrieger/claude-bedrock | 105 | — | ~6.5k | Automated safety check: Notes | MIT | |
| Markdown To Confluencetestdouble/han | 281 | — | ~2.4k | Automated safety check: Pass | MIT | |
| Teachccplugins/awesome-claude-code-plugins | 970 | — | ~5.9k | Automated safety check: Notes | Apache-2.0 | |
| Confluence To Markdowniurykrieger/claude-bedrock | 105 | 1 repos | ~2.8k | Automated safety check: Notes | MIT | |
| Open Knowledgeojowwalker77/BonsAI | 145 | — | ~5.1k | Automated safety check: Pass | Custom licence |
iurykrieger/claude-bedrock
Ingests an external data source into the Second Brain. An agent skill from iurykrieger/claude-bedrock.
testdouble/han
Publishes a local Markdown file to a user-specified Confluence location, creating a new page or updating an existing one through the Atlassian MCP server.
ccplugins/awesome-claude-code-plugins
Teaches the Second Brain to recognize a new external data source.
iurykrieger/claude-bedrock
Internal fetcher module for Confluence pages. An agent skill from iurykrieger/claude-bedrock.
ojowwalker77/BonsAI
Authoritative agent-runtime contract for working inside an OpenKnowledge project — a markdown-CRDT knowledge base exposed over MCP.
KevRojo/Dulus
Create and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties, and other Obsidian-specific syntax.
huytieu/COG-second-brain
Measure your own writing corpus for the words and sentence shapes you over-use, so an agent writing in your voice stops amplifying your tics into a style.
huytieu/COG-second-brain
A passive daily work journal that Claude keeps FOR you so you never have to write it yourself.
huytieu/COG-second-brain
Generate meaning-carrying editorial data-illustrations in the monotykamary / Linear aesthetic (near-black grayscale, Inter display + mono labels, hairline framed figures) with a single coral accent.
huytieu/COG-second-brain
Shared loop-engineering reference for COG skills - the agent loop, deterministic verifiers, termination conditions, in-loop context management, and named patterns.
huytieu/COG-second-brain
Turn a product release (the list of shipped items plus real screen recordings) into a motion recap video and one explained demo per feature, with sound effects tied to on-screen motion and a…
huytieu/COG-second-brain
Personalize COG for your workflow - creates profile, interests, and watchlist files with guided setup (run this first!)
Works with
Categories
Publish any markdown file from the vault to Confluence with format conversion and approval gate. Publish To Confluence is an agent skill from huytieu/COG-second-brain.
Publish To Confluence fits situations like: tasks that involve Markdown.
Run `npx skills add huytieu/COG-second-brain --skill publish-to-confluence -a claude-code`. Or copy the skill folder (skills/publish-to-confluence in huytieu/COG-second-brain) into .claude/skills/publish-to-confluence in your project. Claude Code loads it when a task matches its description.
Run `npx skills add huytieu/COG-second-brain --skill publish-to-confluence -a codex`. Or copy the skill folder (skills/publish-to-confluence in huytieu/COG-second-brain) into .agents/skills/publish-to-confluence in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add huytieu/COG-second-brain --skill publish-to-confluence -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/publish-to-confluence, .gemini/skills/publish-to-confluence, .github/skills/publish-to-confluence and .opencode/skills/publish-to-confluence in your project.
Going by SKILL.md and its folder, Publish To Confluence needs credentials named SPACE_KEY. Our summary lists: A credential in SPACE_KEY.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Publish To Confluence is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Publish To Confluence: Learn (iurykrieger/claude-bedrock, 105 stars), Markdown To Confluence (testdouble/han, 281 stars), Teach (ccplugins/awesome-claude-code-plugins, 970 stars) and Confluence To Markdown (iurykrieger/claude-bedrock, 105 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
huytieu (a GitHub user) maintains it in huytieu/COG-second-brain, which has 1,268 GitHub stars. The repository holds 37 skills in this directory. The repository was last updated on October 2, 2026.
Source: huytieu/COG-second-brain on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.