Guides🎤Voice commandsCustom commands: a phrase becomes an action
Intermediate8 min readPro

Custom commands: a phrase becomes an action

The ten things a command can do, how phrases are matched, and the words you are not allowed to use.

A custom command maps a spoken phrase to an action — typing a snippet, pressing a shortcut, opening an app or a URL.

!
Two separate switches gate this. Voice commands require Pro, and they also need Voice commands turned on under Settings → Hands-Free, which is off by default. Free users can create and edit commands; they just will not execute.

The ten action types

ActionWhat it does
Send keysTypes a block of text, optionally followed by Enter
Key comboPresses one key with modifiers, e.g. Ctrl+S
Open appLaunches an application
Close appAsks an application to quit
Force close appKills it
Bring to frontFocuses its window
Send to backLowers its window
Hide appHides it
Open URLOpens a link — http and https only
Open fileOpens a file or folder with its default handler
!
Every action except Open app is unimplemented on Windows today — close, focus, hide and the rest log a message and do nothing. See Controlling apps by voice before you build a workflow on them.

How phrases are matched

Matching is exact, case-insensitive, with extra whitespace collapsed. There is no fuzzy matching and no aliases on the phrase itself — if you registered "deploy staging", saying "deploy to staging" will not fire it.

Phrases must also be unique across all your commands. There are three ways to invoke one:

  • Inline — {wake} {phrase}, e.g. "Annika save file"
  • Explicit — {wake} action {phrase}
  • Bare {phrase}, while a follow-up window is open

Reserved words

A phrase cannot start with action, command, or press, and cannot collide with your finish or cancel phrase. These are intercepted before command matching, so such a mapping could never fire. The editor blocks the save and tells you which word is the problem.

Reusing your last dictation

Put {last} in a Send keys command and it is replaced with your most recent dictated text. This is the one command InkSpoke ships enabled: "insert last item".

A command marked as secret stores its text encrypted and refuses to go through the clipboard. {last} cannot be combined with a secret command, for the obvious reason.

Templates

The editor has a Browse Templates dialog with 29 ready-made commands across terminal, app control, text autofill, web, editor, and productivity categories. They are opt-in — importing one creates a normal command you can edit.

!
Known issue: the shipped Key combo templates ("copy", "save file", "clear screen", "screenshot" and similar) currently lose their modifier keys, so they send a bare letter instead of the shortcut. Until that is fixed, re-pick the modifiers in the editor after importing one.

Why short phrases work best

Wake-word recognition matches against a limited word list rather than open-ended speech. Your command phrases, app favourites, and custom vocabulary are compiled into that list, which has a soft ceiling of about a thousand words. Short, distinct phrases are recognised far more reliably than long sentences — and arbitrary free text such as a search query or URL is not reliably transcribable this way at all.

Next in this track

Keep going.