Paste your rough notes, bullet points, voice transcript, or tweet dump and get a publication-ready blog post.
You need Node.js installed. It comes with npx built in.
npx "@opendirectory.dev/skills" install noise2blog --target claudeSupported --target values: claude, gemini, codex, opencode, anti-gravity, openclaw, hermes
Run these two commands inside your Claude Code terminal:
# Add the OpenDirectory marketplace
/plugin marketplace add Varnan-Tech/opendirectory
# Install a skill directly
/plugin install noise2blog@opendirectory-marketplaceStep 1: Download Click Code → Download ZIP on this repo's GitHub page.
Step 2: Install
- Open Claude Desktop > Customize > Skills > + > Upload a skill
- Drop the downloaded zip or extracted folder
- Accepts any rough input: bullet points, rough notes, voice transcripts, tweet dumps, short drafts, or a URL
- Detects the right blog post style automatically (Technical Tutorial, Case Study, Thought Leadership, Explainer)
- Enriches claims with Tavily research when you set an API key (supporting data, verification)
- Generates a Markdown post with no AI slop, no em dashes, no banned words
- Formats frontmatter for Ghost, dev.to, Substack, or Hashnode on request
| Requirement | Purpose | How to Set Up |
|---|---|---|
| Google Gemini API key | Generates the blog post | aistudio.google.com, Get API key |
| Tavily API key (optional) | Enriches claims with research | app.tavily.com, API Keys |
No LLM backend to run. The agent calls the Gemini API directly.
cp .env.example .envEdit .env and fill in:
GEMINI_API_KEY(required)TAVILY_API_KEY(optional, enables research enrichment)
| Style | Use When | Signals in Your Input |
|---|---|---|
| Technical Tutorial | Step-by-step guide, code walkthrough | Numbered steps, commands, "how to" |
| Case Study | Build log, before/after story, lessons learned | Specific results, journey narrative |
| Thought Leadership | Opinion piece, counterintuitive argument | Strong claim, debate framing |
| Explainer | Explaining a concept or tool to newcomers | Definition-first, comparisons |
The agent detects the style automatically. Override it with: "Use Thought Leadership style" or "Make this a tutorial".
From pasted notes:
"Write a blog post from these notes: [paste your content]"
"Turn these bullet points into a blog post"
"Expand this into an article"
From a voice transcript:
"Turn this transcript into a blog post: [paste transcript]"
"Clean up this voice note and make it publishable"
From a tweet thread:
"Turn this tweet thread into a blog: [paste tweets]"
"Expand this thread into a full article"
With style override:
"Write a thought leadership post from these notes"
"Make this a technical tutorial"
With platform formatting:
"Write the post and format it for dev.to"
"Give me Ghost frontmatter too"
- Full blog post in Markdown (800-1,800 words)
- Meta description (1-2 sentences)
- Alternative title option
- Platform-specific frontmatter on request
noise2blog/
├── SKILL.md
├── README.md
├── .env.example
├── evals/
│ └── evals.json
└── references/
├── blog-format.md
└── output-template.md
MIT