Token导航 LogoToken导航TokenDH.com
效率需要联网clawhub未标认证来源可访问clear审计通过

sam-tts萨姆 TTS

Agent Skill

sam-tts 用于处理音频、语音、转写和声音素材相关任务,适合在 OpenClaw 中需要整理音频流程、转写内容或生成配音素材时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

26,688

周安装

1,112

GitHub Stars

2

下载量

8,896
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:sam-tts(萨姆 TTS)
来源仓库:https://github.com/fourthdensity/sam-tts
安装命令:
openclaw skills install sam-tts
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install sam-tts

简介

使用 SAM(软件自动嘴)(经典的 C64 文本转语音合成器)生成复古机器人语音音频。使用 for /sam 命令生成语音消息。支持 /sam 开/关切换模式,其中所有响应均以 SAM 语音说出。支持音调、速度、嘴巴和喉咙参数以进行语音定制。

SKILL.md

name
sam-tts
description
Generate retro robotic speech audio using SAM (Software Automatic Mouth), the classic C64 text-to-speech synthesizer. Use for /sam command to generate voice messages. Supports /sam on/off toggle mode where all responses are spoken in SAM voice. Supports pitch, speed, mouth, and throat parameters for voice customization.
homepage
https://github.com/discordier/sam
metadata

SAM TTS - Software Automatic Mouth

Generate WAV audio files using the classic SAM text-to-speech engine -- the iconic robotic voice from the Commodore 64 era.

Requirements

  • Node.js 18+
  • Run npm install in the skill directory to install dependencies

SAM Mode Toggle

State file: memory/sam-mode.json

/sam on -- Enable SAM Mode

When SAM mode is enabled, ALL text responses are converted to SAM voice messages.

Implementation:

  1. Set enabled: true in memory/sam-mode.json
  2. Confirm with voice message: "SAM mode enabled. I will now speak in robotic voice."

/sam off -- Disable SAM Mode

Return to normal text-to-text communication.

Implementation:

  1. Set enabled: false in memory/sam-mode.json
  2. Confirm with text: "SAM mode disabled. Back to text."

Check current mode

Read memory/sam-mode.json at session start to know current state.

Response Behavior

When SAM mode is ON:

  1. Generate response text as normal
  2. Convert to SAM TTS: node scripts/sam-tts-wrapper.js "response" --output=/tmp/sam-XXX.wav --quiet
  3. Send the generated WAV file as audio output
  4. Include brief text caption if helpful

When SAM mode is OFF:

Respond with normal text (default behavior).

Chat Commands

/sam <text>

Generate a one-time voice message using SAM TTS (works regardless of SAM mode state).

Implementation:

  1. Extract text after /sam
  2. Generate WAV: node scripts/sam-tts-wrapper.js "text" --output=/tmp/sam-XXX.wav --quiet
  3. Return the WAV file as audio output

/sam on

Enable SAM mode for all responses.

/sam off

Disable SAM mode.

/sam status

Report current SAM mode state (text response).

Voice Parameters

All parameters accept 0-255 range values. Store defaults in memory/sam-mode.json:

ParameterDefaultEffect
pitch64Voice pitch (higher = higher pitch)
speed72Speech speed (lower = faster)
mouth128Mouth cavity size (affects resonance)
throat128Throat size (affects timbre)

/sam pitch <number>

Set pitch parameter (0-255).

/sam speed <number>

Set speed parameter (1-255, lower is faster).

/sam mouth <number>

Set mouth parameter (0-255).

/sam throat <number>

Set throat parameter (0-255).

Scripts

scripts/sam-tts-wrapper.js

Primary wrapper script. Outputs JSON metadata for automation.

node scripts/sam-tts-wrapper.js "Hello world" --output=/tmp/out.wav --quiet
node scripts/sam-tts-wrapper.js "Hello world" --output=/tmp/out.wav --quiet --pitch=80 --speed=60

Options:

  • --output=PATH (required) - Output WAV file path
  • --quiet - Suppress debug output, output only JSON
  • --pitch=N, --speed=N, --mouth=N, --throat=N - Voice parameters
  • --phonetic - Input is phonetic notation

Output format:

{"success":true,"outputPath":"/tmp/sam.wav","duration":1.44,"size":31741}

scripts/sam-tts.js

Standalone CLI tool with human-readable output.

node scripts/sam-tts.js "Hello world" output.wav --pitch=80 --speed=60

State Management

File: memory/sam-mode.json

{
  "enabled": false,
  "pitch": 64,
  "speed": 72,
  "mouth": 128,
  "throat": 128
}

Read at session start. Update when user toggles mode or changes parameters. Create the memory/ directory if it doesn't exist.

Examples

Enable SAM mode

User: /sam on Agent: [Voice: "SAM mode enabled. I will now speak in robotic voice."]

Normal conversation in SAM mode

User: "What's the weather?" Agent: [Voice: "Current temperature is 72 degrees with partly cloudy skies."]

Disable SAM mode

User: /sam off Agent: SAM mode disabled. Back to text.

One-time voice (even when mode is off)

User: /sam Hello there Agent: [Voice: "Hello there"]

Custom voice parameters

User: /sam pitch 100 Agent: Pitch set to 100.

User: /sam Testing higher pitch Agent: [Voice with pitch=100: "Testing higher pitch"]

Phonetic Notation

For precise pronunciation, use --phonetic flag:

  • Vowels: IY (bee), IH (bit), EY (bay), AE (bat), AA (father), AH (bought), AO (hot), OW (boat), UH (book), UW (boot), ER (bird), AX (about)
  • Numbers 1-8 indicate stress: HEH4LOW (emphasized second syllable)

See references/phonemes.md for the full phoneme chart.

Output Format

  • Format: WAV (RIFF/WAVE PCM)
  • Sample rate: 22050 Hz
  • Bit depth: 8-bit
  • Channels: Mono

Directory Structure

sam-tts/
+-- SKILL.md
+-- package.json
+-- scripts/
|   +-- sam-tts-wrapper.js
|   +-- sam-tts.js
+-- references/
|   +-- phonemes.md
+-- memory/
    +-- sam-mode.json

Platform Integration

The skill outputs WAV format by default. Some messaging platforms require different audio formats.

Format Conversion (Optional)

(Warning): Before installing ffmpeg or any conversion tools, the agent MUST ask the user for confirmation. Do not auto-install dependencies.

Example agent prompt:

"This platform requires OGG/OPUS format. I need to install ffmpeg for audio conversion. Would you like me to proceed with the installation?"

Only proceed with installation after explicit user approval.

Telegram / WhatsApp (OGG/OPUS)

ffmpeg -i input.wav -c:a libopus -b:a 24k output.ogg

Discord (MP3/OGG)

ffmpeg -i input.wav -c:a libmp3lame -b:a 64k output.mp3

Web / Direct Playback

WAV works directly -- no conversion needed.

Note: The agent should detect the target platform and handle format conversion as needed, but always with user consent for any new dependencies.

Credits

Skill by: fourthdensity

Active Dependency: sam-js by discordier

  • The npm package used for TTS synthesis (JavaScript/Node.js port)

Historical Lineage: sam-js builds upon earlier community ports:

Original SAM (Software Automatic Mouth) (c) 1982 Don't Ask Software (now SoftVoice, Inc.)

License Note: The original SAM software is considered abandonware. The JavaScript adaptation is provided as-is. See the sam-js repository for full license details.

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

93.75%
按下载量换算8,340

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

未展示

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills