Documentation

Set up TypeFlow and start asking from any app. Pick your platform below.

iOS

Install & setup

  1. 1Install TypeFlow from the App Store and open it once.
  2. 2Open Settings → General → Keyboard → Keyboards → Add New Keyboard, and choose TypeFlow Keyboard.
  3. 3Tap TypeFlow Keyboard in that list and enable Allow Full Access.
  4. 4Grant microphone and speech recognition access when prompted so you can dictate prompts.

Core usage

TypeFlow works in any app through its keyboard.

  1. 1Tap the 🌐 globe key to switch to the TypeFlow keyboard.
  2. 2Tap the mic and speak your request, or type an instruction and tap Send ✨.
  3. 3Once TypeFlow writes the text, swipe right along the bottom bar to jump back to your app — the text lands in the field you were in.

Dictation runs in the main TypeFlow app (keyboard extensions can't record audio), so the keyboard briefly hands off and returns with your transcribed prompt.

Snippets

Snippets are reusable prompts you trigger by name. iOS supports two styles: slash snippets (typed) and vocal snippets (run by speech or by tapping a chip during dictation).

  1. 1Open the TypeFlow app to create, edit, rename, and delete snippets. Each snippet has a name, a description, and a prompt body.
  2. 2Names must be lowercase letters, numbers, and hyphens, starting with a letter — for example, email-reply or summarize. Slash and vocal snippets are scoped separately, so you can have one of each with the same name.
  3. 3Slash snippet (the default): type / in the TypeFlow prompt bar to open the snippet menu, then keep typing to filter by name. Tap a result to run it, or submit /name to run it directly. Text that does not match /name is sent as a freeform AI prompt instead.
  4. 4Vocal snippet (turn off "Slash command" in the snippet editor): say the snippet name as part of your dictation and TypeFlow runs it automatically when you tap Done. You can also pick it manually from the chip strip above the keyboard while recording.
  5. 5For prompt placeholders like {{input}} and {{selected}}, see Snippet syntax below.

Voice matching is a case-insensitive substring match on the snippet name (hyphens treated as spaces). If your transcript happens to contain a vocal snippet name and you did not pick a chip, that snippet runs with the full transcript as input.

Troubleshooting

  1. 1Keyboard not showing up? Confirm TypeFlow Keyboard is added and Allow Full Access is enabled in Settings.
  2. 2Voice prompt not working? Grant microphone and speech recognition access in Settings → TypeFlow.
  3. 3Snippet menu didn't open? Make sure you typed / as the very first character — the menu only triggers on a leading slash.
  4. 4Vocal snippet not in the chip strip? Open the snippet in TypeFlow and turn off the Slash command toggle — only non-slash snippets appear in the dictation chip strip.

Mac

Install & setup

Requires macOS 13 (Ventura) or later.

  1. 1Install TypeFlow — it lives quietly in your menu bar.
  2. 2Grant Accessibility permission when prompted so TypeFlow can read context and insert text.

Core usage

Summon TypeFlow without leaving the app you're in.

  1. 1Press ⌥Space in any app to open the card — tap for typing, hold for dictation.
  2. 2Type or speak your prompt. Press Enter to send — the draft streams into the card.
  3. 3Press ⌘↩ to accept the draft and insert it into the field you were typing in. Press Esc to close without inserting.

TypeFlow reads the text above your cursor for context automatically. Highlight text before pressing ⌥Space to pass it to the AI directly. In web browsers it uses a clipboard fallback — the draft is pasted into the last focused field.

Snippets

Snippets are reusable prompts you trigger by name from the card with a slash prefix.

  1. 1Open TypeFlow Settings to manage snippets — create, edit, rename, and delete. Each snippet has a name, a description, and a prompt body.
  2. 2Names must be lowercase letters, numbers, and hyphens, starting with a letter — for example, email-reply or summarize.
  3. 3Press ⌥Space to open the card, then start typing /. The snippet picker shows your snippets filtered by name prefix as you keep typing.
  4. 4Select a snippet to arm it. Whatever you type next becomes the snippet’s input; pressing Enter runs the snippet and streams the result into the card. Press ⌘↩ to accept the result into your app.
  5. 5For prompt placeholders like {{input}} and {{selected}}, see Snippet syntax below.

The slash picker only shows snippets marked as slash commands. Vocal-only snippets (created on iOS) are hidden here — voice-triggered snippets are an iOS feature today.

Troubleshooting

  1. 1Nothing happens on ⌥Space? Check that TypeFlow has Accessibility permission in System Settings → Privacy & Security → Accessibility.
  2. 2Text not inserting in a browser? That's expected — browsers use the clipboard fallback into the last focused field.
  3. 3Slash picker didn't open? The / has to be the first character in the card input. If you start with a space or any other character, the input is treated as a freeform prompt.

Snippet syntax

Snippet bodies are templates. TypeFlow fills in placeholders before sending the prompt to the AI. Variables are always written in double curly braces and are case-sensitive — {{Input}} will not expand.

Variables

{{input}}
Whatever you type or dictate when you run the snippet. This is the recommended placeholder for capturing user input.
{{dictated}}
An alias for {{input}}. Use it in prompts that semantically expect a spoken transcript.
{{selected}}
On Mac, the text selected in the active app at the moment you summon TypeFlow (falls back to the clipboard if it can't read the selection). On iOS, the keyboard cannot read selections, so {{selected}} reads from the clipboard — copy your text first.
{{clipboard}}
The current clipboard contents on both platforms.
{{user_name}}
Your name from TypeFlow settings. If you haven't set one, it expands to [Your Name].

Behavior

  • Variables with no value resolve to an empty string — there is no literal placeholder left in the prompt.
  • If your prompt has no {{input}} or {{dictated}} placeholder but you supply input, TypeFlow appends that input after a blank line at the end of the prompt automatically.
  • Variables are case-sensitive — only the lowercase forms above are recognized.

Example

Reply to the email below in a friendly tone. Sign off with {{user_name}}.

{{selected}}

Additional notes from me:
{{input}}

Custom vocabulary

Add proper nouns, product names, and jargon that speech-to-text usually mangles. TypeFlow uses your vocabulary list when cleaning up dictation transcripts so it spells these terms exactly the way you wrote them.

On iOS

Open the TypeFlow app and go to Settings → Custom Vocabulary. Type a word or name into the field and submit to add it to the list. Swipe left on an entry to delete it. Duplicate entries are rejected silently.

On Mac

Open TypeFlow Settings and choose Vocabulary in the sidebar. Enter one word per line in the text area, then click Save.

The vocabulary list is applied after speech-to-text, during transcript cleanup — it can't bend the recognizer itself, but it consistently fixes spelling for names and terms. Each entry is a single word or phrase. There are no replacement targets and no phonetic hints, and the list does not affect typed prompts.