PipePost
PipePost content curation pipeline plugin for OpenClaw
Install
openclaw plugins install clawhub:openclaw-pipepost🔌 ocplatform-pipepost
Native OpenClaw plugin for PipePost — AI-powered content curation pipeline.
Scout articles from HackerNews, Reddit, RSS, and web search → translate to any language with AI → publish to your blog, Telegram, or any webhook. All from your OpenClaw agent.
What you get
5 native tools available to your OpenClaw agent:
| Tool | What it does |
|---|---|
pipepost_run | Run a content pipeline — scout, translate, publish |
pipepost_status | Health check + database stats |
pipepost_init | Generate a flow YAML config from natural language params |
pipepost_validate | Validate a flow config before running |
pipepost_sources | List available content sources |
How it works
You: "Scout HackerNews for AI articles, translate to Russian, publish to my blog"
Agent calls:
1. pipepost_init → generates YAML flow config
2. pipepost_validate → checks config is valid
3. pipepost_run --dry-run → previews what it finds
4. pipepost_run → executes the pipeline
The plugin is a thin TypeScript wrapper that calls the PipePost CLI (Python) via child process. PipePost does the heavy lifting — scouting, scoring, translating, and publishing.
Install
1. Install PipePost (Python engine)
pip install pipepost
2. Install the OpenClaw plugin
# From ClawHub
openclaw plugins install clawhub:openclaw-pipepost
# Or from GitHub
git clone https://github.com/DenSul/openclaw-pipepost
cd openclaw-pipepost && npm install && npm run build
openclaw plugins install . --dangerously-force-unsafe-install
3. Configure
Set your LLM API key:
export OPENAI_API_KEY="your-key"
export PIPEPOST_MODEL="deepseek/deepseek-chat" # or gpt-4o, claude-sonnet, etc.
Plugin config in openclaw.json:
{
"plugins": {
"entries": {
"pipepost": {
"enabled": true,
"config": {
"pipepostBin": "pipepost",
"flowsDir": "/path/to/your/flows",
"dbPath": "/path/to/pipepost.db"
}
}
}
}
}
4. Restart OpenClaw
openclaw gateway restart
Usage Examples
Create a blog pipeline
"Create a content pipeline that scouts HackerNews for AI articles, translates to Russian, and publishes to my webhook at http://myblog.com/api/posts"
Run an existing flow
"Run the HN pipeline in dry-run mode"
Check status
"What's the PipePost status? Any articles in the database?"
Generate a new config
"Generate a flow config for Reddit programming subreddits, translate to German, output as markdown"
Flow Config Example
sources:
- name: hackernews
type: hackernews
min_score: 100
translate:
model: deepseek/deepseek-chat
target_lang: ru
destination:
type: webhook
url: http://localhost:8000/api/posts/auto-publish
flow:
steps: [dedup, scout, filter, score, fetch, translate, adapt, validate, publish, post_publish]
filter:
keywords_exclude: ["hiring", "ask hn"]
min_title_length: 15
score:
niche: tech
max_score_candidates: 3
adapt:
style: blog
storage:
db_path: ./pipepost.db
More examples in examples/.
Supported Sources
| Source | Description |
|---|---|
| HackerNews | Top stories from HN API |
| Posts from configurable subreddits | |
| RSS/Atom | Any RSS or Atom feed |
| Web Search | DuckDuckGo keyword search |
Supported Destinations
| Destination | Description |
|---|---|
| Webhook | POST JSON to any HTTP endpoint (WordPress, Ghost, custom CMS) |
| Telegram | Send to Telegram channels/chats via Bot API |
| Markdown | Save as .md files with YAML frontmatter |
Requirements
- OpenClaw >= 2026.3.x
- PipePost >= 0.1.0 (
pip install pipepost) - Python >= 3.11
- Node.js >= 22 (for the plugin)
- An OpenAI-compatible LLM API key
Architecture
OpenClaw (Node.js)
↓ native tools
openclaw-pipepost (TypeScript plugin)
↓ child_process
PipePost CLI (Python)
↓ async pipeline
Sources → Score → Translate → Publish → Destinations
Development
git clone https://github.com/DenSul/openclaw-pipepost
cd openclaw-pipepost
npm install
npm run build # compile TypeScript
npm run dev # watch mode
Links
- PipePost — the Python engine
- ClawHub — plugin page
- OpenClaw — the AI assistant platform
- Example flows — ready-to-use YAML configs
License
MIT
Built by Denis Sultanov
