{"id":"7fb1137f-8d74-47ab-952d-659b7ffcf37a","entityType":"agent","slug":"benmillerat-openclaw-youtube-archiver","name":"youtube-archiver","canonicalUrl":"https://www.xpersona.co/agent/benmillerat-openclaw-youtube-archiver","canonicalPath":"/agent/benmillerat-openclaw-youtube-archiver","generatedAt":"2026-10-09T20:41:20.940Z","source":"GITHUB_OPENCLEW","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-04-15T05:21:22.124Z","emptyReason":null},"description":"Archive YouTube playlists into markdown notes with metadata, transcripts, AI summaries, and tags. Use when a user asks to import/sync YouTube playlists, archive Watch Later or Liked videos, enrich YouTube notes, batch process video notes, or automate recurring YouTube-to-markdown sync jobs with cron. --- name: youtube-archiver description: Archive YouTube playlists into markdown notes with metadata, transcripts, AI summaries, and tags. Use when a user asks to import/sync YouTube playlists, archive Watch Later or Liked videos, enrich YouTube notes, batch process video notes, or automate recurring YouTube-to-markdown sync jobs with cron. --- YouTube Archiver Use this skill to import YouTube playlists into markdown","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1 GitHub stars reported by the source. Last updated 4/15/2026.","installCommand":"git clone https://github.com/benmillerat/openclaw-youtube-archiver.git","sourceUrl":"https://github.com/benmillerat/openclaw-youtube-archiver","homepage":null,"primaryLinks":[{"label":"View Source","url":"https://github.com/benmillerat/openclaw-youtube-archiver","kind":"source"}],"safetyScore":89,"overallRank":44.9,"popularityScore":8,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Archive YouTube playlists into markdown notes with metadata, transcripts, AI summaries, and tags. Use when a user asks to import/sync YouTube playlists, archive"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-04-15T05:21:22.124Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[{"label":"be","status":"self-declared"}],"verifiedCount":0,"selfDeclaredCount":2,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"},{"key":"be","type":"capability","support":"supported","confidenceSource":"profile","notes":"Declared in agent profile metadata"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile capability:be|supported|profile"}},"adoption":{"evidence":{"source":"GITHUB OPENCLEW","verified":false,"confidence":"medium","updatedAt":"2026-04-15T05:21:22.124Z","emptyReason":null},"stars":1,"forks":0,"downloads":null,"packageName":null,"latestVersion":null,"tractionLabel":"1 GitHub stars"},"release":{"evidence":{"source":"agent-index","verified":false,"confidence":"medium","updatedAt":"2026-03-01T06:01:34.724Z","emptyReason":null},"lastUpdatedAt":"2026-04-15T05:21:22.124Z","lastCrawledAt":"2026-03-01T06:01:34.724Z","lastIndexedAt":null,"nextCrawlAt":"2026-03-02T06:01:34.724Z","lastVerifiedAt":null,"highlights":[]},"execution":{"evidence":{"source":"GITHUB OPENCLEW","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"git clone https://github.com/benmillerat/openclaw-youtube-archiver.git","setupComplexity":"low","setupSteps":["Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/benmillerat-openclaw-youtube-archiver/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/benmillerat-openclaw-youtube-archiver/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/benmillerat-openclaw-youtube-archiver/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/benmillerat-openclaw-youtube-archiver/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/benmillerat-openclaw-youtube-archiver/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/benmillerat-openclaw-youtube-archiver/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"GITHUB_OPENCLEW","generatedAt":"2026-10-09T20:41:20.939Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/benmillerat-openclaw-youtube-archiver/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/benmillerat-openclaw-youtube-archiver/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/benmillerat-openclaw-youtube-archiver/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/benmillerat-openclaw-youtube-archiver/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"GITHUB OPENCLEW","verified":false,"confidence":"high","updatedAt":"2026-04-15T05:21:22.124Z","emptyReason":null},"readme":"---\nname: youtube-archiver\ndescription: Archive YouTube playlists into markdown notes with metadata, transcripts, AI summaries, and tags. Use when a user asks to import/sync YouTube playlists, archive Watch Later or Liked videos, enrich YouTube notes, batch process video notes, or automate recurring YouTube-to-markdown sync jobs with cron.\n---\n\n# YouTube Archiver\n\nUse this skill to import YouTube playlists into markdown files and optionally enrich notes with transcript, summary, and tagging.\n\n## Requirements\n\n- Python 3.7+\n- `yt-dlp` (`pip install yt-dlp` or `brew install yt-dlp`)\n- A browser signed into YouTube (for private playlists like Liked/Watch Later)\n- **macOS**: terminal needs Full Disk Access to read browser cookies\n- **Windows**: browser cookie extraction can be flaky; `cookies_file` export is the safer path\n- **Linux**: works on desktop installs; headless servers need `cookies_file`\n\n## First-run setup flow (interactive)\n\nIf no config exists at `<output>/.config.json`, ask these questions before running scripts.\n\n### Required questions\n\n1. Where should archived notes be stored?\n   - Default: `./YouTube-Archive`\n2. Which playlists should be archived?\n   - Accept playlist IDs or URLs\n   - Default: `LL` (Liked Videos), `WL` (Watch Later)\n3. Which browser is signed into YouTube for cookie auth?\n   - Default: `chrome`\n\n### Optional enrichment questions\n\nAsk only if the user wants summaries/tags.\n\n1. Generate AI summaries? (yes/no)\n2. Summary provider? (`openai`, `gemini`, `anthropic`, `openrouter`, `ollama`, `none`)\n3. Summary model name?\n4. API key env var name?\n5. Enable auto-tagging? (yes/no)\n6. Tagging provider/model/env var?\n7. Keep default tags or define custom vocabulary?\n\n## First-run execution sequence\n\n1. Run init:\n   - `python3 <skill>/scripts/yt-import.py --output <output-dir> --init`\n2. Edit `<output-dir>/.config.json` from the user’s answers.\n3. Verify auth with dry run:\n   - `python3 <skill>/scripts/yt-import.py --output <output-dir> --dry-run`\n4. Run real import.\n5. Run enrichment (optional):\n   - `python3 <skill>/scripts/yt-enrich.py --output <output-dir> --limit 10`\n\n## One-shot quick start\n\nUse this for immediate manual sync:\n\n```bash\npython3 <skill>/scripts/yt-import.py --output <output-dir>\npython3 <skill>/scripts/yt-enrich.py --output <output-dir> --limit 10\n```\n\nUseful import flags:\n- `--dry-run`\n- `--playlist <ID>` (repeatable)\n- `--no-summary`\n- `--no-tags`\n- `--cookies <path/to/cookies.txt>`\n- `--browser <name>`\n\nUseful enrich flags:\n- `--dry-run`\n- `--limit <N>`\n- `--strict-config`\n\n## Idempotency and safety behavior\n\n- Import skips already archived videos by `video_id`.\n- Filenames include video ID: `Title [video_id].md`.\n- Enrichment skips notes where frontmatter has `enriched: true`.\n- Lockfile prevents concurrent runs: `<output-dir>/.yt-archiver.lock`.\n\n## Automation with cron (single-agent default)\n\nOffer cron only after one successful manual run.\n\nExample schedule (daily 11:00):\n\n1. Import new videos\n2. Enrich a bounded batch\n\nExample task text:\n\n- `Run yt-import.py for <output-dir>, then run yt-enrich.py --limit 10 for the same output.`\n\nKeep it single-agent by default. Do not assume multi-agent routing.\n\n## Troubleshooting and provider details\n\nRead these references when needed:\n\n- Provider setup, model suggestions, cost: `references/providers.md`\n- Common failures and fixes: `references/troubleshooting.md`\n- Default summary prompt template: `references/default-summary-prompt.md`\n","readmeExcerpt":"--- name: youtube-archiver description: Archive YouTube playlists into markdown notes with metadata, transcripts, AI summaries, and tags. Use when a user asks to import/sync YouTube playlists, archive Watch Later or Liked videos, enrich YouTube notes, batch process video notes, or automate recurring YouTube-to-markdown sync jobs with cron. --- YouTube Archiver Use this skill to import YouTube playlists into markdown ","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"python3 <skill>/scripts/yt-import.py --output <output-dir>\npython3 <skill>/scripts/yt-enrich.py --output <output-dir> --limit 10"}],"parameters":{},"dependencies":[],"permissions":[],"extractedFiles":[],"languages":["typescript"],"docsSourceLabel":"GITHUB OPENCLEW","editorialOverview":"Archive YouTube playlists into markdown notes with metadata, transcripts, AI summaries, and tags. Use when a user asks to import/sync YouTube playlists, archive Watch Later or Liked videos, enrich YouTube notes, batch process video notes, or automate recurring YouTube-to-markdown sync jobs with cron. --- name: youtube-archiver description: Archive YouTube playlists into markdown notes with metadata, transcripts, AI summaries, and tags. Use when a user asks to import/sync YouTube playlists, archive Watch Later or Liked videos, enrich YouTube notes, batch process video notes, or automate recurring YouTube-to-markdown sync jobs with cron. --- YouTube Archiver Use this skill to import YouTube playlists into markdown","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":404,"uniquenessScore":59,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-04-15T05:21:22.124Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-04-15T05:21:22.124Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-09T20:41:20.940Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/github_openclew","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}