Built a Daily YouTube → LinkedIn Pipeline with OpenClaw: Architecture, Gotchas, and Lessons Learned

A developer published a detailed breakdown of an OpenClaw skill that automates a daily YouTube-to-LinkedIn content pipeline. The skill checks ~30 AI YouTubers each morning, fetches transcripts via an Apify actor, runs LLM analysis through the OpenClaw Gateway, and writes 26 columns of data per video to a Google Sheet. Cost: ~$0.20/day on Apify, with no separate LLM key needed (uses existing Codex quota). 90% of transcripts come from native captions; Whisper rarely fires.
Key Architecture
Runs at 9am daily, pulls transcripts via Apify async (the sync endpoint returns BOT_DETECTION consistently). LLM output is nested inside outputs[0].text, not at the envelope top. Sheet writes must be batched in groups of 5 to avoid ARG_MAX silent failure — one creator drops 15+ videos/day.
Critical Gotchas
- Secrets in
entries.Xblocks get nuked on skill uninstall. The author lost a YouTube API key this way. Everything goes inenv.varsnow. - Codex idle-turn watchdog kills Discord turns after 5-10 minutes.
timeoutSecondsdoesn't help. The fix: background long tasks withsetsid bashand use a Proactivity cron to self-poll status. - Python stdout is block-buffered when piped via nohup. Background runs produced 0-byte logs until completion. Use
python3 -uorPYTHONUNBUFFERED=1.
LLM Tuning via Sheet
The LLM analysis is customized by 4 user-editable cells in the Google Sheet: linkedin_focus, audience_description, voice_and_tone, avoid. No code changes needed to adjust voice — edit a cell, and the skill adapts. The author seeks feedback on whether this pattern is optimal.
The author plans to publish the skill to ClawHub after a few weeks of production testing.
📖 Read the full source: r/openclaw
👀 See Also

Hybrid RAG for Local Agent Memory with OpenClaw, Ollama, and nomic-embed-text
A developer implemented hybrid RAG retrieval for AI agent memory using OpenClaw with Ollama and nomic-embed-text, combining 70% vector similarity with 30% BM25 keyword matching. The setup runs locally without external APIs and includes MMR deduplication and temporal decay weighting.

Building a LinkedIn lead qualification workflow with Claude and MCP
A developer used Claude with an MCP server integration to create an automated pipeline that extracts LinkedIn profile data, scores leads 1-10, filters based on score thresholds, and sends connection requests without manual review.

Persistent AI Memory via Obsidian MCP: 16 Tools for Claude Cowork
A custom MCP server bridges Claude Cowork with Obsidian for persistent memory across sessions, using 16 tools and Dataview queries.

How Fragile Test Scripts Caused Release Delays and What One Team Did About It
A team of about 15 engineers discovered their Appium test suite was consuming 50-60% of their QA engineer's time just for maintenance after a UI refresh broke locators, causing two releases to slip. They're now rebuilding tests using a tool that reads screens like a human and adapts to UI changes.