← OpenWhisprCONTENT HISTORY
WHAT CHANGED
Update to OpenWhispr
Snapshot Oct 26, 2026 · 18:06 UTC · version 1.0.0
Collection source: downloaded plugin package.
First saved snapshot
No earlier snapshot is available to establish a change.
Save OpenWhispr and check future changes in Following.
Up to 10 plugins free · no card required.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"description": "Create and manage OpenWhispr snippets, the spoken trigger phrases that OpenWhispr expands into saved text while the user dictates, such as email sign-offs, addresses, booking links, boilerplate replies and templates. Use this whenever the user wants a voice shortcut, text expansion, canned response or \"a snippet for…\", wants to list, change or delete snippets, or mentions dictating the same text over and over.",
"included_files": [],
"name": "snippet-builder",
"skill_md_contents": "---\nname: snippet-builder\ndescription: Create and manage OpenWhispr snippets, the spoken trigger phrases that OpenWhispr expands into saved text while the user dictates, such as email sign-offs, addresses, booking links, boilerplate replies and templates. Use this whenever the user wants a voice shortcut, text expansion, canned response or \"a snippet for…\", wants to list, change or delete snippets, or mentions dictating the same text over and over.\nargument-hint: \"[text to expand, or the snippet to change]\"\n---\n\n# Snippet builder\n\nA snippet is a trigger phrase plus replacement text. When the user says the trigger while dictating, OpenWhispr types the replacement. Good snippets save real typing and never fire by accident.\n\nHow matching works:\n\n- OpenWhispr looks for the trigger anywhere in each finished dictation, ignoring case, as whole words, and replaces every occurrence.\n- Punctuation must match exactly. If transcription writes \"sign-off\" where the trigger says \"sign off\", nothing happens.\n- When triggers overlap, the longest one wins.\n- Triggers are also passed to transcription as spelling hints, along with the dictionary.\n\nThe OpenWhispr connector provides the tools used here (`list_snippets`, `create_snippet`, `update_snippet`, `delete_snippet`). If they aren't available, ask the user to connect OpenWhispr in their assistant's plugin or connection settings. Complete sign-in through the secure connection flow; never ask for a password, login code or API key in the conversation.\n\n## 1. Pin down the text\n\nGet the exact replacement text: the link, address, sign-off or paragraph.\n\n- **Keep it exactly as given.** Preserve line breaks and punctuation, and don't \"improve\" it unless asked.\n- **Size limit:** replacements can be up to 5,000 characters.\n- **Templates:** if the text should vary each time, keep the fixed part in the snippet and tell the user what they'll fill in after it expands.\n\n## 2. Choose a trigger\n\nA good trigger is:\n\n- **Short and speakable:** two to four plain words. A single common word fires too often.\n- **Distinctive:** a phrase the user wouldn't say in normal speech, because it expands wherever it appears, even mid-sentence. \"my invoice footer\" or \"insert home address\" are safer than \"address\".\n- **Easy to transcribe the same way every time:** no punctuation, digits or symbols. Avoid words transcription may hyphenate or merge (\"follow up\" vs \"follow-up\"), and rare names or homophones it may spell differently.\n- **At most 80 characters**, the desktop app's limit.\n\nIf the user gave a trigger, use theirs, and mention a problem only if it's likely to misfire. Otherwise suggest one, or two if there's a real choice.\n\n## 3. Check the existing snippets\n\nPage through `list_snippets` with `limit` 500, passing `cursor` while `has_more` is true. Look for:\n\n- **The same trigger**, compared case-insensitively. `create_snippet` with a trigger that already exists doesn't fail: it silently replaces that snippet's text. So never create one without checking first.\n- **A trigger that contains, or sits inside, the new one** (\"invoice footer\" and \"my invoice footer\"). These can clash, so pick a different phrase.\n- **A snippet with the same purpose**, such as an older version of the same link or address. Show its current text and ask whether to update it or add a second one. Updating is usually what people want.\n\n## 4. Confirm, then save\n\n- **Create directly** when the user gave both the trigger and the text, or clearly asked for an update with the new text.\n- **Otherwise** show the trigger and the replacement and ask before saving.\n\n**To create one:** call `create_snippet` with `trigger` and `replacement`.\n\n**To change one:**\n\n- find it by trigger, compared case-insensitively;\n- show the current text next to the new one;\n- call `update_snippet` with its `id` and only the fields that change. Renaming to a trigger that is in use, or was deleted in the last 30 days, is refused; suggest another phrase.\n\n**To delete one:** show it, get a yes, then call `delete_snippet`. Never delete a snippet just to recreate it. Update it instead.\n\n## 5. Tell them how to use it\n\nClose with one line, for example: *Say \"my invoice footer\" while dictating and OpenWhispr types the full footer.*\n\nMention that it works in new dictations once the OpenWhispr app has synced.\n"
}SHA-256 of public snapshot: c48cd2c30dd9c455138c82e5e59eaaa1f4c9a3c182bbf123fc4cf1924de969b0