Send feedback

Getting Started With Serenade for Chrome

To get up and running with Serenade, just follow these three steps!

1. Download

Download and install Serenade's native application. Serenade supports macOS, Windows, and Linux—platform-specific installation instructions can be found on the download page.

2. Setup

After installing Serenade, you'll be prompted to activate the app via an email link. If that link doesn't work, you can use the code provided on the activation page to activate manually.

You can use Serenade with your laptop microphone, though we recommend using a headset for the best accuracy. You can verify that a headset is being used by clicking , and then Settings.

The Serenade application will help you install the extension from the Chrome Web Store.

3. Learn

The first time you open Serenade, an interactive tutorial will walk you through navigating the web with voice. Give it a try!


Let's start by going through a few concepts that you'll see throughout the Serenade documentation.


Serenade floats above all your other windows, so you can keep it side-by-side with Chrome. You can toggle Serenade by clicking the Listening switch or pressing Alt+Space. Then, as you speak, you'll see a list of transcripts in the Serenade window.

Sometimes, Serenade isn't sure what you said, so you'll see a few different options. The first one will be used automatically, but to use a different option (and undo the first one), just say the number you want to use instead. For instance, to use the second option, just say two. If none of the options are right, you can just say undo.

Tab Management

The following commands will open a new tab, close the current tab, or switch to another tab:

  • new tab
  • close tab
  • (next | previous) tab
  • (first | second | ...) tab
  • tab (one | two | ...)


Once an input is in focus, you can write into it with the following commands.


The type command inserts text at the current cursor position, and it's the simplest way to add text. The type command is useful when you just want to insert plain text. For instance, you could use a type command to append text to the end of an existing line of code.


The newline command adds a new line at the cursor. To use it, simply say:

go to

The go to command moves your cursor around a file. A selector represents something in the code you want to navigate to, like a word, line, function, or argument. If you just say a selector, then a go to command will be run by default, so you can say line fifty as a shortcut for go to line fifty.

For a complete list of selectors, check out the selectors reference.

go to is optional, so saying a selector on its own will move the cursor to the selector:

  • <selector>

You can also optionally set the position of the cursor to the beginning or the end of a selector:

Finally, Serenade can move your cursor in any direction:

  • up
  • down
  • left
  • right


You can delete code with the delete command.

For a complete list of selectors, check out the selectors reference.

  • delete <selector>
    delete if
    delete lines three through five
    delete next two functions
    delete to end of line

copy, cut, paste

You can copy and cut text with the copy and cut commands. Then, you can paste that selection with the paste command.

For a complete list of selectors, check out the selectors reference.

  • (copy | cut) <selector>
    copy first function
    copy lines fifty to sixty
    cut next class
    cut next two words


You can highlight text in your editor with the select command. Then, you can use commands like delete to operate on that selection.

For a complete list of selectors, check out the selectors reference.

  • select <selector>
    select superclass
    select previous three characters
    select to end of block
    select words one to three


The change command selects the nearest match to the cursor and replaces it with some text.

For a complete list of selectors, check out the selectors reference.

  • change <selector> to <text>
      change phrase fly to jump
      def fly():
      def jump():
      change word fly to jump
      def fly():
      def jump():


A <selector> describes a block of text. By default, a selector applies to the nearest matching object. You can optionally apply previous or next to each selector, as in previous line or next line. Selectors can also include an ordinal prefix/postfix, as well as a range of objects.

Below is a list of objects you can select: