Guide · Agent skill
How to use the Publish Brain Pages agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
The publish skill is an add-on for an AI agent that turns a page from a gbrain knowledge base (called a brain here) into one self-contained HTML file. By default the file is encrypted with a password, and internal details such as metadata, source citations and internal links are removed first. This guide explains what the skill does, how to install it, how to ask for it in plain language, and what to check before sharing.
Quick start
- 1Download and unzip the skill. Download the ZIP from this page and unzip it so the folder containing SKILL.md is in place.
- 2Place it in the skills folder. Move the folder to ~/.claude/skills/ for all projects, or into a .claude/skills/ folder in one project. Alternatively, upload it under Settings → Capabilities → Skills in the Claude apps.
- 3Set up gbrain. Install the gbrain command-line tool and make sure your brain contains the page you want to share.
- 4Ask for the page to be shared. Use a phrase such as "share this page" and name the page. The agent resolves the real page path first.
- 5Choose a password or let it generate one. Leave the default encrypted output, or let the agent auto-generate a password. Only say "open", "no password" or "public" if you truly want an unencrypted file.
- 6Send the file and password separately. Send the HTML file through one channel and the password through another, then check the result.
What the publish skill makes the agent do
Agent skills are instruction folders that teach an AI agent when and how to perform a task. This one tells the agent to use the gbrain publish command when you ask to share a brain page, publish a page or create a shareable link. The agent does not write the HTML itself; the gbrain command-line tool does the stripping, encrypting and HTML generation with no LLM calls.
The output is a single HTML file. It contains no external dependencies and needs no server. When a password is set, the file contains only ciphertext, and the password is checked in the browser using the Web Crypto API.
- Removes frontmatter, source citations, confirmation numbers, brain cross-links, timeline sections and "See also" lines
- Keeps external https:// URLs and the rest of the content
- Encrypts with AES-256-GCM and PBKDF2 key derivation by default
Install the publish skill with the ZIP or the Claude apps
Download the ZIP from the skill's page on this directory and unzip it. The skill is a folder that contains SKILL.md. Put the folder in one of these locations, depending on whether you want it for all projects or one project:
You can also upload the skill in the Claude apps under Settings → Capabilities → Skills.
- Personal, all projects: ~/.claude/skills/
- Single project: a .claude/skills/ folder inside your project
Install gbrain before you use the skill
The skill only wraps the gbrain command, so it does nothing on its own. You need the gbrain command-line tool installed and a brain that contains the page you want to share. This directory's source does not give install commands for gbrain, so follow the gbrain project's own documentation for that step.
- Required: gbrain installed and a brain with the target page
- Optional: Supabase Storage configured for gbrain files upload and signed-url commands
- Optional: a static host such as GitHub Pages, Gist, Render, Netlify or S3
Trigger the skill with natural requests
You do not need to type a command. The skill is triggered by phrases like the ones below. Name the page clearly so the agent can find it; the agent should resolve the real page slug before publishing and never publish a guessed page.
To send an open page without a password, say so explicitly. The skill only drops encryption when you say "open", "no password" or "public".
- "Share this page"
- "Publish page" followed by the page name, for example a company or person
- "Create shareable link" for a briefing you want to send outside
Examples of publishing a page
These are the forms of command the skill uses. The agent picks the right one based on your request. Each example below is copied from the skill source.
Option A is the simplest: a local file you send yourself. Option B uploads to Supabase Storage and creates a link that expires after one hour. Option C is static hosting, where you upload the HTML to any static host. Option D uses GitHub Pages or a Gist with an unencrypted file.
- Basic local file, no password: gbrain publish brain/companies/acme.md
- Auto-generated password: add --password
- Specific password and title: --password "secret123" --title "Acme -- Deal Analysis"
- Custom output path: --out /tmp/acme-share.html
gbrain publish brain/people/jane-doe.md --password --out ~/Desktop/jane-briefing.htmlShare the file and password through separate channels
Send the HTML file by one channel, such as email, Slack or AirDrop, and send the password by a different one. The skill's rules require this split so that a single intercepted message does not expose both.
For cloud sharing, the skill uploads the file to Supabase Storage and generates a signed URL. Share the URL and password separately. The URL expires after one hour, so generate a new one when needed. To update a page, run the publish command again with the same output path. To revoke access, delete the file, or remove it from the host; a signed URL expires on its own after one hour.
- Local file: share the file and password separately
- Cloud: gbrain files upload, then gbrain files signed-url; URL expires in 1 hour
- Static host: upload the file and remove it from the host to revoke
gbrain files upload /tmp/acme.html --page shares/acme
gbrain files signed-url shares/acme/acme.htmlSafety notes: scripts and network use
This skill runs scripts and uses the network. The publish step itself is local, but the cloud path uploads your file to Supabase Storage and creates signed URLs, so it depends on your storage setup and bucket access. Only use that path for content you are willing to store there.
Password protection uses AES-256-GCM with PBKDF2 (100K iterations, SHA-256), a random 16-byte salt and a random 12-byte IV. Note that a "Remember on this device" option saves the password in localStorage on that device. Treat encryption as protection for the file, not a substitute for choosing who you send it to.
- Avoid the cloud path for highly sensitive content
- Do not paste private page content if storage fails; the skill says to run gbrain doctor --json instead
- Check the file before sending to confirm the content is what you intend to share
What people use it for
- Send a deal memo or company briefing to an outside contact as an encrypted file
- Share a person briefing before a meeting without giving the recipient access to your whole brain
- Send a research summary or data room analysis to someone who does not use gbrain
- Publish a trip plan as a single HTML file that friends can open in a browser with the password
Frequently asked questions
How do I install the publish agent skill?
Download the ZIP from this page and unzip it. Place the folder in ~/.claude/skills/ for all projects or in a .claude/skills/ folder inside one project. You can also upload it in the Claude apps under Settings → Capabilities → Skills.
Does the publish skill require gbrain?
Yes. The skill only wraps the gbrain command-line tool, so you need gbrain installed and a brain that contains the page. Without it the skill does nothing on its own.
Is the publish skill free?
The skill is listed under the MIT licence. The source does not give pricing for gbrain or for Supabase Storage, so check those projects for their terms.
Can I publish a page without a password?
Yes, but only if you explicitly say "open", "no password" or "public". The skill defaults to encryption, so public output is an opt-in choice.
Why is the signed URL not working after a while?
Signed URLs from the cloud path expire after one hour. Run gbrain files signed-url again to create a new one. If upload or signed-url fails with a storage or bucket error, run gbrain doctor --json and check your Supabase Storage setup.
Does the skill use an LLM to build the HTML?
No. The gbrain publish command does the stripping, encrypting and HTML generation deterministically, with no LLM calls. The agent only decides when and how to run it.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
Use this skill if you already keep research in gbrain and want to send an encrypted, self-contained briefing without running a web server. Pick something else if you need a public website, do not use gbrain, or need to share highly sensitive content through cloud storage.
Download the skill