daily-voice-quote

daily-voice-quote is a skill for Claude Code, Codex from dAAAb/agent-skills. It costs 47 tokens per session (4,551 once invoked), scanned A, original, MIT.

A daily quote-making task that selects a famous quotation, reads it aloud in the owner's voice, and creates a cover-image video. It can optionally add a video featuring a HeyGen digital avatar.

In plain words
What is it for?
It helps produce and send a daily package containing spoken audio, a video with a still cover image, and optionally a HeyGen avatar video.
Why use it?
It removes the need to choose a quote, record the audio, create the video, and send the finished set each morning. ElevenLabs is used for voice cloning when configured; built-in text-to-speech can be used instead.

Skill for Claude CodeCodex

Which agent this was written for is unclear — built for openclaw. Also seen: built for openclaw.

Needs its repository: it runs a file that does not travel with it, so clone the repository first. The line is uv run /opt/homebrew/lib/node_modules/openclaw/skills/nano-banana-pro/scripts/generate_image.py \.

Good fit It helps produce and send a daily package containing spoken audio, a video with a still cover image, and optionally a HeyGen avatar video.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.

Clone the repo
git clone --depth 1 https://github.com/dAAAb/agent-skills
agentmods
npx agentmods add skills/daaab/agent-skills/daily-voice-quote

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for daily-voice-quote

README.md
[![agentmods](https://agentmods.dev/badge/skills/daaab/agent-skills/daily-voice-quote/github.svg)](https://agentmods.dev/skills/daaab/agent-skills/daily-voice-quote)
Your own site
<a href="https://agentmods.dev/skills/daaab/agent-skills/daily-voice-quote"><img src="https://agentmods.dev/badge/skills/daaab/agent-skills/daily-voice-quote/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for daily-voice-quote

Your own site · 80×15
<a href="https://agentmods.dev/skills/daaab/agent-skills/daily-voice-quote"><img src="https://agentmods.dev/badge/skills/daaab/agent-skills/daily-voice-quote.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 47 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,551 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00047 $0.04551
Opus 5 $0.00023 $0.02276
Sonnet 5 $0.00009 $0.00910
Haiku 4.5 $0.00005 $0.00455

Measured 12d ago against content hash 060af9692b78, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

daily-voice-quote scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/send-daily-quote.sh), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -X POST "https://api.elevenlabs.io/v1/voices/add" \
skills/daily-voice-quote/SKILL.md · 389 lines

How it starts

The opening of the file, as written. The whole thing — 389 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Daily Voice Quote 每日名言語音

這個 skill 會在每天早上:

  1. 用主人的聲音朗讀一則名人名言(語音)
  2. 生成封面圖並合成靜態影片
  3. (選配)產生 HeyGen 數位人影片

最終產出三件套:語音、靜態影片、HeyGen 數位人影片


1. 簡介

每天早上自動選一則名人名言,用主人的聲音念出來,並搭配一張美感封面圖與影片版本發送給主人。若你沒有 HeyGen 帳號,也可以只做「語音 + 靜態影片」。


2. 前置準備 Checklist

a) 主人的照片(封面圖生成用)

  • 需要 1-3 張高品質照片(正臉、清楚、光線好)
  • 放到 workspace 的 avatars/ 目錄
  • 如果沒有照片:請主人提供 1-3 張好看的照片!

b) ElevenLabs 帳號 + 語音克隆

  • 註冊:https://elevenlabs.io
  • 取得 API Key 後,存到你的 OpenClaw config 或環境變數 ELEVENLABS_API_KEY
  • 語音克隆方式:
    • 方法一(官方 UI):主人錄 1-3 分鐘語音 → 上傳到 ElevenLabs Voice Lab
    • 方法二(主人傳語音給你):主人傳語音訊息 → 你下載後用 API 上傳克隆:
      curl -X POST "https://api.elevenlabs.io/v1/voices/add" \
        -H "xi-api-key: $ELEVENLABS_API_KEY" \
        -F "name=主人的名字" \
        -F "files=@/path/to/voice-sample.mp3" \
        -F "description=Voice clone for daily quotes"
      
      API 會回傳 voice_id,記下來。
  • 記錄到 TOOLS.md:Voice Name、Voice ID
檢查 API Key 和語音
# 1. 確認 API Key 存在
echo $ELEVENLABS_API_KEY  # 應該有值

# 2. 列出所有可用語音
sag voices

# 3. 測試語音生成
sag -v "YOUR_VOICE_NAME" -o /tmp/test.mp3 "早安,這是一個語音測試。"

⚠️ sag 所有指令都需要 ELEVENLABS_API_KEY 環境變數。如果沒有,請先設定。

沒有 ElevenLabs?用內建 tts 替代

如果暫時沒有 ElevenLabs API Key,可以先用 OpenClaw 內建的 tts tool:

tts({ text: "早安!今天想分享 Steve Jobs 的一句話..." })

音色不會是主人的聲音,但流程可以先跑起來。

c) HeyGen 帳號 + 數位人 Avatar(選配)

  • 註冊:https://heygen.com
  • 數位人訓練:主人錄一段 2 分鐘自拍影片 上傳訓練
  • 記錄:Avatar ID、Voice ID
  • 如果沒有 HeyGen 帳號 → 跳過 Part 3,只做語音 + 靜態影片

d) Channel 設定

  • 先確認主人常用的通訊軟體
  • LINE:需要 CHANNEL_ACCESS_TOKEN + USER_ID / GROUP_ID
  • 其他(Telegram / Discord / WhatsApp 等):使用 message tool 或 tts tool
📱 LINE 媒體格式要求(重要!)

LINE 對語音和影片的格式有嚴格限制,格式不對會無法在聊天裡直接點開播放!

語音訊息(audio message):

項目 要求
格式 M4A.m4a)- AAC 編碼
來源 必須是 HTTPS 公開 URL(不接受本地檔案路徑)
duration 必須提供毫秒數(如 21000 = 21 秒)
❌ 不行 MP3 直接發送(LINE 不支援 audio type 用 MP3)
✅ 轉換 ffmpeg -i input.mp3 -c:a aac -b:a 128k output.m4a -y

Read the full file on GitHub · 389 lines

Files

What ships with it

3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 12d ago First seen · 389 lines · 47 tokens per session scan A 060af9692b78

Subscribe to this mod's changes

daily-voice-quote is a skill published in the GitHub repository dAAAb/agent-skills (2 stars, last pushed 14d ago), licensed MIT. It adds 47 tokens to every session and 4,551 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

systematic-debugging

Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.

obra/superpowers · 21 tokens

local-ai-agents

Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…

microsoft/ai-agents-for-beginners · 200 tokens

next-cache-components-adoption

Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…

vercel/next.js · 95 tokens

chat-pet-sprite-creation

Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.

microsoft/vscode · 53 tokens

cpu-profile-analysis

Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…

microsoft/vscode · 71 tokens

insight-error-page

Write or audit an insight-kind error page for the Next.js dev overlay. Use when creating a new errors/ .mdx page, auditing an existing one, or checking that a page matches the framework fix cards. Covers page structure, title alignment, FixCard cards with Copy prompt button, code snippets, terminology verification…

vercel/next.js · 83 tokens