View on GitHub
Quasi/ Setting it up

Setting it up.

Quasi runs on your own phone, using two AI services that you sign up for yourself. Four steps, each ending with something to try with the recorder in your hand. Stop after any of them; the ones before still work.

  1. Sign up with OpenAI and Anthropic, and get an API key from each.

    OpenAI writes your notes down, Anthropic's Claude reads them. An API key is what lets Quasi use your account with each. The app asks for both the first time it opens.

  2. Install the app and connect the recorder.

    Through TestFlight. Answer the app's few questions, let it find the recorder, and record your first note.

  3. Let it add tasks to Todoist.

    Give it your Todoist token. A task you ask for is added, filed under the project and labels you said.

  4. Let it send a message to a friend.

    A Linq account, three settings in the app, a shortcut and an automation on the phone, and a list of people in Contacts.

Step 1

Sign up with OpenAI and Anthropic, and get an API key from each.

Two AI services do the work behind a note. OpenAI turns the recording into text, and follows you from one language into another mid-sentence. Claude, made by Anthropic, reads that text and finds the tasks and messages you asked for, or finds there were none. Quasi has no account of its own with either; it uses yours.

That is what an API key is for. It is a long string of letters and numbers that you create on the service's website, and that an app can show to the service to say "I am acting for this account, bill it". You paste it into Quasi once, Quasi keeps it in the phone's keychain, and the service charges your account for what Quasi uses, which is very little. Anyone who has the key can spend from your account, so treat it like a password: do not share it, and if it leaks, delete it on the website and make a new one.

The OpenAI API key

  1. Go to platform.openai.com and create an account, or sign in. This is OpenAI's developer site; a ChatGPT subscription is a different thing and does not cover this.
  2. Put a little credit on the account, under Billing.
  3. Open API keys in the menu and press Create new secret key. Name it something like "Quasi" and copy the key it shows you. It is shown only this once; if you lose it, make another.

The Anthropic API key

  1. Go to console.anthropic.com and create an account, or sign in. This is Anthropic's developer site; a Claude subscription is a different thing and does not cover this.
  2. Put a little credit on the account, under Billing. Quasi uses Claude Sonnet 5.5.
  3. Open API Keys and press Create Key. Name it something like "Quasi" and copy the key. This one too is shown only once.

Step 2

Install the app and connect the recorder.

Quasi is not in the App Store. It comes to your phone through TestFlight, Apple's app for trying apps before they are finished. It has only ever run against one recorder, so expect rough edges.

What you need

Install it through TestFlight

  1. Get Apple's TestFlight app from the App Store.
  2. Open the invitation on the phone and tap Install.

    If the link says the beta is not accepting testers, a new build is with Apple for review; it opens again within a day or two.

  3. That is all. Builds expire after 90 days, and TestFlight tells you when a new one is there.

The first time it opens

Quasi asks you a few things before it shows anything else. Whatever you give it is kept on the phone, in its keychain, and can be changed later behind the gear.

  1. Your name.
  2. The OpenAI API key. Paste it and tap Next; the app checks it with OpenAI before keeping it, so a key copied wrong is caught here.
  3. The Anthropic API key, the same way.
  4. A Todoist token, if you use Todoist. Skip it for now if you like; that is step 3.
  5. The message relay. Skip it; that is step 4.
  6. A summary of what is connected, and Let's go.

The first connection

  1. Free the recorder: close Comulytic's app completely on every phone it is set up on, by swiping it away in the app switcher.

    A recorder that is connected to another app is invisible to this one.

  2. Allow Bluetooth when Quasi asks.
  3. Wait a few seconds with the app in front of you. The chip at the top of the screen should read Recorder nearby, with the recorder's battery drawn next to it.

    Only the first connection needs the app in front. After that the phone finds the recorder by itself, locked or not.

  4. Open the settings behind the gear. The Recorder group shows the recorder as nearby, its battery, its free space, and the recordings on it.
  5. Press record on the recorder, say what is on your mind, in whatever language or two, and press again.

A note that asks for a task is understood from here on too. The logbook shows the task and marks the words that asked for it. It is just not added anywhere yet; that is the next step.

Changing an API key later

Keeping it running

A note recorded with the phone locked in a pocket arrives anyway, as long as Quasi is running.

Step 3

Let it add tasks to Todoist.

With a Todoist token stored as well, each task Claude finds is added to Todoist, with the transcript in its description.

Get the token

  1. In Todoist, open Settings › Integrations › Developer. On the web, that is app.todoist.com/app/settings/integrations/developer.
  2. Copy the API token. It is the same token for every app, so you can see it again later.

Give it to the app

Now record Add a task, call the plumber tomorrow morning.

What you can say about a task

Talk the way you think; nothing has to be in order. Claude works out, from what you said:

Step 4

Let it send a message to a friend.

Send a message to Alex that I'll be five minutes late. Alex gets an iMessage from you, from your own number, in your usual thread, while the phone stays locked in your pocket.

This step is the long one, because no app on an iPhone may send an iMessage itself. Quasi gets around that with a detour you set up once, by hand, in about half an hour.

How the detour works

  1. Quasi texts your own phone through Linq, a messaging service with a phone line of its own. The text is one line: the number to send to, and the words.
  2. A Shortcuts automation on your phone sees the text arrive, splits the line, and sends the words to the number, from you. It may do that without asking, with the phone locked.
  3. Three seconds after you stopped recording, the message is in Alex's thread with you.
Quasi, on your phonequasi | +1 555… | words to Linqa text, back Linqtexts your own number the Shortcuts automation sends the words on, from your number Your friendan iMessage from you

Five parts, in order: a Linq account, three settings in the app, a shortcut, an automation that runs it, and the people it may message.

A. A Linq account

Linq is a business texting service with an API. An account comes with a line, a phone number of its own, and that line is what texts your phone. Quasi only ever uses it to text you.

  1. Sign up at dashboard.linqapp.com and note the number of your line.
  2. Under API, generate a token and copy it. Quasi talks to the version-3 API with that token.
  3. Verify your own iPhone's number with Linq if it asks. At the time of writing, a new account may only text numbers it has verified until it is upgraded, which is enough here, since your own phone is the only number Quasi texts.

You now have three things. Both numbers go in international form, with the country code:

B. Three settings in the app

Back in the settings, the relay row reads Set up. The three go into the keychain like the API keys before them.

  1. Save the Linq line in your Contacts under a name like Quasi Relay.

    So that its texts are not filtered as an unknown sender, and so that the automation can be limited to it, in part D.

  2. Mute its thread in Messages with Hide Alerts.

    You get one text from it for every message Quasi sends, and there is nothing in them to read.

C. The shortcut

The shortcut does the sending: it receives the text from Linq, splits it at the bars, and sends the third part to the second.

Split TextSplit Shortcut Input by Custom, separator |
Get Item from ListGet Item at Index 2 from Split Text
Get Item from ListGet Item at Index 3 from Split Text
Send MessageSend Item from List (the third) to Item from List (the second), with Show When Run turned off

D. The automation that runs it

Automations cannot be imported, so this part is always by hand. It says: when a text containing quasi| arrives, run the shortcut at once.

  1. In Shortcuts, open the Automation tab and tap +.
  2. Choose Message as the trigger.
  3. Set Message Contains to quasi|, with the bar.
  4. Set Sender to the contact you saved for the Linq line. This matters: without it, anyone who texts your phone a line that begins with the marker could make your phone send a message. With it, only the relay can.
  5. Choose Run Immediately, and turn Notify When Run off.
  6. Tap Next and choose the shortcut Quasi Relay. The message is handed to it as its input.

E. The people it may message

Quasi looks a name up in your contacts, and you choose how far it may look.

  1. In the Contacts app, add a list named Quasi and put in it the people you want to message by voice.

    Only they can be messaged then; everyone else is unknown to the app. Without such a list, everyone the app is allowed to see can.

  2. Open Quasi. Now that the relay is set up, it asks for access to Contacts. Choose full access and let the list do the limiting, or choose limited access and pick the people there; both work.
  3. In the settings, Messages › Contacts shows which it is and how many people that is.
  4. Record Send a message to Alex that this is a test from Quasi.

If you know two people called Alex, the phone will not guess:

Stuck?

Write to me.

If a step does not work the way it says here, or you got it working with another recorder, I would like to hear it. I'm Alexis, and I read every email.

alexis.rondeau@gmail.com