AI Skills

← Back to spec · Let your AI assistant write TPS scripts for you.

If you use an AI coding assistant — Claude Code, ChatGPT, Cursor, Windsurf, or any other LLM-powered tool — you can install TPS skills so the AI converts plain text into richly formatted .tps scripts automatically.

Available Skills

SkillDescription
tps-convert Converts plain text (speeches, articles, narrations, dialogues) into fully formatted TPS files with dramatic pacing, emotions, pauses, emphasis, volume, delivery modes, pronunciation guides, stress markers, breath marks, edit points, and speaker tags — all applied intelligently based on content analysis.

What the Skill Does

The tps-convert skill teaches your AI assistant the complete TPS format specification, including every tag, attribute, formatting rule, and delivery heuristic used by the SDK.

It is not just a formatter. It is meant to take raw prose, analyze how it should be spoken, and then emit a ready-to-use TPS file with structure, pacing, emotional intent, and authoring metadata already filled in.

  1. Read plain text or a file path and treat speeches, presentations, narrations, blogs, articles, dialogue, and voiceover copy as valid inputs
  2. Honor extra direction such as target duration, tone override, archetype preference, and intended audience
  3. Analyze delivery intent for emotional arc, key beats, transitions, pacing changes, and likely speaker structure
  4. Choose TPS structure with front matter, title, segments, blocks, and leading text where the source naturally needs them
  5. Apply the full TPS authoring vocabulary including emotions, speed presets and explicit WPM tags, volume, delivery modes, emphasis, highlight, pauses, breath marks, edit points, pronunciation, stress markers, articulation, energy, melody, speaker assignments, and archetypes
  6. Generate useful metadata such as duration, base WPM, speed offsets, profile, authoring version, and other front matter fields when they make sense
  7. Preserve literal text safely by using TPS escape sequences when brackets, slashes, pipes, or markdown markers must stay literal
  8. Output one valid .tps document that is ready for the TPS SDK and TPS-compatible teleprompters without requiring manual post-formatting

Expected Output Shape

A good conversion should usually produce:

  • complete YAML front matter
  • a display title with #
  • ## segment headers with emotion, WPM, timing, speaker, or archetype hints where appropriate
  • ### block headers when the text shifts topic, mood, or speaker
  • inline delivery tags placed only where they improve how the script is spoken
  • a final TPS file that passes SDK validation instead of an approximate markdown sketch

Installation

Claude Code

Copy the skill file into your project’s .claude/skills/ directory:

mkdir -p .claude/skills
curl -o .claude/skills/tps-convert.md https://raw.githubusercontent.com/managedcode/TPS/main/Skills/tps-convert.md

Then use /tps-convert in Claude Code followed by your text or a file path.

Codex

Install the same skill as a standard repo-local Codex skill:

mkdir -p .codex/skills/tps-convert
curl -o .codex/skills/tps-convert/SKILL.md https://raw.githubusercontent.com/managedcode/TPS/main/Skills/tps-convert.md

GitHub Copilot

Store the skill as a reusable repository prompt:

mkdir -p .github/prompts
curl -o .github/prompts/tps-convert.prompt.md https://raw.githubusercontent.com/managedcode/TPS/main/Skills/tps-convert.md

Other AI assistants

Use the contents of tps-convert.md as a system prompt, project instruction, or custom rule. That covers ChatGPT, Cursor, Windsurf, and other LLM-powered editors.

Download

View on GitHub · Download raw file

TPS Format Coverage

The skill covers the entire TPS format specification:

CategoryTags / Features
Front Mattertitle, profile, duration, base_wpm, speed_offsets, author, created, version
Structure# title, ## segments, ### blocks, leading text, phrases, words
Header ParamsName, WPM, Emotion, Timing (MM:SS), Speaker:Name, Archetype:Name
Pauses/ (300ms), // (600ms), [pause:Ns], [pause:Nms]
Emphasis[emphasis], *italic*, **bold**, [highlight]
Speed[xslow], [slow], [normal], [fast], [xfast], [NWPM]
Volume[loud], [soft], [whisper]
Delivery[sarcasm], [aside], [rhetorical], [building]
EmotionsAll 12: neutral, warm, professional, focused, concerned, urgent, motivational, excited, happy, sad, calm, energetic
Articulation[legato], [staccato]
Energy[energy:N] with validated 1–10 range
Melody[melody:N] with validated 1–10 range
ArchetypesArchetype:Friend, Motivator, Educator, Coach, Storyteller, Entertainer
Breathing[breath]
Edit Points[edit_point], [edit_point:high], [edit_point:medium]
Pronunciation[phonetic:IPA], [pronunciation:GUIDE]
Stress[stress] inline wrap, [stress:SYL-LA-ble] guide
SpeakersSpeaker:Name in headers
Escapes\[, \], \|, \/, \*, \\
Authoring DiagnosticsUnknown tags, malformed attributes, invalid ranges, unknown archetypes, archetype-profile warnings, and rhythm-analysis warnings