8.3k★by maddiedreese
substack-formatter – OpenClaw Skill
substack-formatter is an OpenClaw Skills integration for writing workflows. Transform plain text into Substack article format with proper HTML formatting for copy-paste into Substack editor.
Skill Snapshot
| name | substack-formatter |
| description | Transform plain text into Substack article format with proper HTML formatting for copy-paste into Substack editor. OpenClaw Skills integration. |
| owner | maddiedreese |
| repository | maddiedreese/substack-formatter |
| language | Markdown |
| license | MIT |
| topics | |
| security | L1 |
| install | openclaw add @maddiedreese/substack-formatter |
| last updated | Feb 7, 2026 |
Maintainer

name: substack-formatter description: Transform plain text into Substack article format with proper HTML formatting for copy-paste into Substack editor.
Substack Article Formatter
Summary
Transform plain text into professional Substack format. Handles the technical formatting to ensure bold/italic/headers work correctly when pasted into Substack editor.
What This Skill Does
- ✅ Formats text for Substack with proper structure and spacing
- ✅ Converts to HTML format that Substack editor recognizes
- ✅ Preserves your content - only changes visual presentation
- ✅ Ensures copy-paste works with bold, italic, headers, bullets preserved
Technical Solution
Problem: Substack editor treats raw markdown as plain text
Solution: Convert to HTML and copy as text/html format
Usage
Basic Formatting
Format this for Substack:
[Your plain text content here]
With Minimal Formatting
Format for Substack (minimal):
[Your plain text content here]
Formatting Options
Standard Format
- Proper paragraph structure
- Clean HTML output
- Preserved content with better readability
Minimal Format
- Pure spacing improvements
- No emphasis changes
- Exact content preservation
Formatting Features
Structure
- Clean paragraphs for better readability
- Proper spacing between sections
- Clear visual hierarchy
HTML Output
- Bold text:
<strong>tags - Emphasis:
<em>tags - Headers:
<h2>,<h3>for sections - Lists:
<ul><li>for bullets,<ol><li>for numbered - Paragraphs: Proper
<p>tag structure
Copy-Paste Process
- Run formatter → Get HTML output
- Use included copy script → Copies as
text/htmlformat - Paste into Substack → Formatting preserved perfectly
- No manual formatting needed → Bold/italic/headers work automatically
Examples
Input (Plain Text):
I used to think being productive meant doing more things. Last week I tried something different. I did fewer things but focused completely on each one. The result was surprising. I got more done in less time and felt less stressed. Sometimes the answer isn't addition, it's subtraction.
Output (Formatted for Substack):
<p><strong>I used to think being productive meant doing more things.</strong></p>
<p>Last week I tried something different:</p>
<p>I did fewer things.<br>
But focused completely on each one.</p>
<p>The result was surprising.</p>
<p><em>I got more done in less time and felt less stressed.</em></p>
<p><strong>Sometimes the answer isn't addition, it's subtraction.</strong></p>
<p>What's one thing you could subtract from your routine?</p>
Tools Included
formatter.py- Main formatting scriptcopy_to_substack.py- Converts to HTML and copies correctlytest_formatter.py- Test with examples- Examples and templates for each structure type
Philosophy
Format for readability, preserve your voice. This tool improves visual presentation while keeping your message and personality intact.
Substack Article Formatter
Transform plain text into professional Substack format. Ensures proper HTML formatting so bold/italic/headers work correctly when pasted into Substack editor.
✨ Key Features
- Clean formatting for better readability
- Proper HTML output that Substack editor recognizes
- Copy-paste ready with formatting preserved
- Minimal or standard formatting options
🚀 Quick Start
# Basic formatting
python3 formatter.py "Your content here"
# With specific structure
python3 formatter.py "Your content here" micro-story
# Format and copy to clipboard (Linux)
python3 formatter.py "Your content here" | python3 copy_to_substack.py
📋 Copy-Paste Process
- Format your content using the formatter
- Copy as HTML using the copy script
- Paste into Substack - formatting preserved automatically!
Linux/WSL:
# Install dependencies
sudo apt install pandoc xclip # Ubuntu/Debian
sudo pacman -S pandoc xclip # Arch
# Format and copy
python3 formatter.py "Your text" > output.html
python3 copy_to_substack.py "$(cat output.html)"
macOS:
brew install pandoc
# Use pbcopy instead of xclip (modify copy script as needed)
🎯 Formatting Options
Standard Formatting
Clean paragraph structure with proper HTML tags
Minimal Formatting
Pure spacing improvements with exact content preservation
🛠 Files
formatter.py- Main formatting enginecopy_to_substack.py- HTML clipboard utilitytest_formatter.py- Test all formatsexamples.md- Before/after examplesSKILL.md- Complete documentation
🧪 Testing
# Test all formatting types
python3 test_formatter.py
# Test specific format
python3 formatter.py "Your content" micro-story
🔧 Integration with Clawdbot
Just tell Clawdbot:
"Format this for Substack: [your content]"
Or be specific:
"Format this for Substack as a micro-story: [your content]"
The skill handles:
- Viral pattern application
- HTML conversion
- Copy instructions
- Formatting verification
⚠️ Technical Notes
Why HTML conversion is needed: Substack editor treats raw markdown as plain text. The solution is converting to HTML and copying as text/html format so Substack recognizes the formatting.
Dependencies:
pandoc- Markdown to HTML conversionxclip(Linux) - Clipboard management with MIME typespbcopy(macOS) - Alternative clipboard tool
🎯 Philosophy
Format for readability, preserve your voice. This tool improves visual presentation while keeping your message and personality intact.
Permissions & Security
Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.
Requirements
- OpenClaw CLI installed and configured.
- Language: Markdown
- License: MIT
- Topics:
FAQ
How do I install substack-formatter?
Run openclaw add @maddiedreese/substack-formatter in your terminal. This installs substack-formatter into your OpenClaw Skills catalog.
Does this skill run locally or in the cloud?
OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.
Where can I verify the source code?
The source repository is available at https://github.com/openclaw/skills/tree/main/skills/maddiedreese/substack-formatter. Review commits and README documentation before installing.
