speak-with-profile

📁 gaelic-ghost/a11y-skills 📅 Today
1
总安装量
1
周安装量
#76334
全站排名
安装命令
npx skills add https://github.com/gaelic-ghost/a11y-skills --skill speak-with-profile

Agent 安装分布

amp 1
cline 1
opencode 1
cursor 1
kimi-cli 1
codex 1

Skill 文档

Speak With Profile

Use this skill as the required front door for speech tasks. Treat built-in $speech as the synthesis engine, and keep this skill as the policy and profile adapter.

Purpose

  • Normalize speech requests with deterministic profile precedence.
  • Enforce disclosure and manifest policy consistently.
  • Delegate generation to $speech by default in Codex App/CLI conversations.
  • Keep a script fallback for deterministic local/automation execution.
  • Use FastMCP interactive profile tools in services/speak-with-profile-mcp for GUI-first profile lifecycle operations.

Required UX pattern

  1. Route speech requests through $speak-with-profile first.
  2. Resolve profile/default/override values.
  3. Require disclosure text in end-user output context.
  4. Delegate generation to built-in $speech using resolved fields.
  5. Record effective configuration in a run manifest.

Execution modes

  • delegate (default for conversational usage): use built-in $speech for synthesis.
  • local-cli (fallback for scripted/automation runs): invoke scripts/text_to_speech.py via scripts/speak_with_profile.py.

Use delegate unless there is a concrete reason to run the local script path.

Hard constraints

  • Do not bypass this skill for speech tasks in this repository workflow.
  • Do not modify built-in $speech behavior assumptions; adapt inputs/outputs around it.
  • Never modify the bundled generation script scripts/text_to_speech.py.
  • Use built-in voices only.
  • Require OPENAI_API_KEY for live API calls.

Disclosure policy

Always include a clear disclosure in user-visible output when speech is produced, for example:

  • “This audio voice is AI-generated.”

If a profile provides disclosure, use it. Otherwise, use the default disclosure above.

Profile resolution order

  1. Explicit wrapper flags (--voice, --speed, --instructions, --format, output path flags).
  2. Selected profile (--profile).
  3. Default profile from profiles file (default_profile).
  4. Baseline defaults (voice=cedar, speed=1.0, format mp3, model gpt-4o-mini-tts-2025-12-15).

Workflow

  1. Resolve input text source (--text or --text-file).
  2. Resolve profile and defaults using references/wrapper-contract.md.
  3. Validate configuration against references/profile-schema.md.
  4. Choose execution mode:
    • delegate: call built-in $speech with resolved fields.
    • local-cli: run scripts/speak_with_profile.py.
  5. Emit/validate run manifest and include disclosure.

References

  • Profile schema and validation rules: references/profile-schema.md
  • Starter profile set and examples: references/starter-profiles.md
  • Adapter contract and mode behavior: references/wrapper-contract.md

Validation helper

Use scripts/validate_manifest.py to verify required manifest keys:

python3 speak-with-profile/scripts/validate_manifest.py path/to/output/file.manifest.json