dashsquad

dashsquad for iPhone and iPad

Sign in to reach your HQ, continue your Desktop conversations, and manage your squad from iOS.

dashsquad for iOS is a native app for your HQ, for iPhone and iPad. Use it to continue the conversations that you see in Desktop and to manage your squad. Your agents do not run on the phone. You get the app through TestFlight.

Your HQ keeps the data. The app keeps a local copy, so you can read and write drafts when you are offline. When the connection comes back, the app gets the changes from the HQ.

Sign in

The iOS app connects to your HQ through your dashsquad account. You do not scan a pairing code.

Set up remote access in Desktop

The Desktop setup wizard sets up remote access for your HQ. If your HQ does not have remote access, open Settings → General in Desktop. Sign in in the Account card. Then click Set up remote access in the HQ card.

This step also makes the HQ visible to the app. See Remote Access.

Sign in on iOS

Open dashsquad and tap Sign In. A browser opens the dashsquad sign-in page.

Sign in with the same account as in Desktop. The browser then sends you back to the app.

Select your HQ

Under Choose an HQ, the app shows each HQ of your account by its name. Tap one to connect.

The name is the name that you gave the HQ in Desktop. If an HQ has no name, the list shows HQ and the first 8 characters of its id. When the HQ reports its version, the row also shows it, for example HQ v0.11.1. If an HQ is not active, the row also shows its status.

When the HQ accepts the connection, the Squad tab opens.

The iOS app always connects through the hosted relay. Thus, it works the same at home, at the office or on cellular. The HQ list also has Sign Out. It disconnects this device and shows the sign-in screen again.

If a problem occurs, the HQ list shows one of these messages:

MessageAction
Couldn't reach your dashsquad account service. Check your connection and try again.Examine your connection, then tap Retry.
No HQs linked to your account yet. Open Desktop → Settings → Devices → Remote access to enroll this machine.In Desktop, go to Settings → General and click Set up remote access in the HQ card.
This HQ needs to be re-enrolled from Desktop before app access works.The HQ got remote access before the app could sign in. Open Desktop on that computer one time. Desktop updates the HQ automatically.
dashsquad update required. Update dashsquad on this HQ, then try again.The HQ is older than the app. Update dashsquad on the HQ computer, then tap the HQ again.
Adding a first phone is off for now, for a security fix. Your HQ is not affected. It comes back in a dashsquad update.Your account has an HQ but no trusted device, and the dashsquad account service cannot add a first phone yet. Tap OK. The alert has no Try Again, because a new try gets the same answer until a later dashsquad update.
Your Mac has not allowed this phone yet. Tap Try Again and scan the code on your Mac.The account does not trust this phone yet. Tap Try Again, then scan the code on your Mac. Refer to Add your first phone.

Add your first phone

If your account has an HQ but no trusted device, the first iPhone or iPad gets approval from your Mac. When you tap the HQ, the app shows Add this phone and the camera.

If the dashsquad account service cannot add a first phone yet, the app does not show the camera. It shows Adding a first phone is off for now, for a security fix. Your HQ is not affected. It comes back in a dashsquad update. Tap OK.

Show the code on your Mac

On your Mac, open dashsquad. Go to Settings → Devices and click Add your phone. If you do not see Add your phone, update dashsquad on your Mac.

Scan the code

Point the camera of the phone at the code on your Mac.

Compare the key ending

The phone shows an 8-character key ending under Compare the key ending. Make sure that the key ending is the same as the key ending on your Mac. If it is, click Allow on your Mac. If it is not, click Don't allow.

When you click Allow on your Mac, the app connects to the HQ. The phone is then a trusted device. To stop, tap Cancel.

If a problem occurs, the app shows one of these messages and Try Again:

MessageAction
This code is not valid. On your Mac, click Add your phone to get a new code.The code expired, somebody cancelled it, or it is for a different account. Get a new code on your Mac, tap Try Again and scan it.
This code was already used. On your Mac, click Add your phone to get a new code.Another device scanned the code first, or your Mac already answered for this code. Get a new code on your Mac, tap Try Again and scan it. If another phone waits on your Mac, click Don't allow for it.
You already used this code. On your Mac, click Add your phone to get a new code.Get a new code on your Mac, tap Try Again and scan it.
Your Mac did not allow this phone, or the code expired. On your Mac, click Add your phone and scan the new code.Get a new code on your Mac, tap Try Again and scan it.
Your Mac is deciding about another phone. Finish that first, then try again.On your Mac, click Allow or Don't allow for the other phone. Then tap Try Again.
That's not a dashsquad phone code.Scan the code that Add your phone shows on your Mac.

Approve a device

When you connect to an HQ, the app registers this iPhone or iPad as a signer for your account. Your account can require an already trusted device to approve this registration first. Only a trusted device can approve a new browser or phone.

If the app shows Approve on your other device, use an already trusted iPhone or iPad to scan its code. On that device, go to Settings and tap Approve a device. Confirm the request there. If the request is denied or expires, tap Try Again on the phone that requested access.

Get the code

In the browser that asks for access, the web app shows a QR code under Approve this device.

Scan the code

On this phone, go to Settings and tap Approve a device. Scan the code with the camera.

Confirm

For browser access, the app shows Allow "<device>" to access <HQ>?. For a new signer, it shows Approve a new device: <device>. Check the device name. Tap Approve to accept, or Deny to refuse.

For a new HQ, the app shows Add "<HQ name>" to your account? and a Security code. Make sure that the code is the same as the HQ key on the screen of the new HQ. Tap Add HQ to accept, or Don't add to refuse.

Add only an HQ that you started yourself. The app shows this warning for each new HQ. It can also show Another HQ on your account has this name. When you are done, the app shows HQ added to your account. or HQ not added. Refer to Set up your HQ.

If you do not scan or confirm in time, the code expires. The app then shows This code has expired. Ask the device to try again. Go back to the browser and get a new code.

If your account has no signer device that is trusted, a new browser connects immediately. After the first iOS device becomes trusted, each new browser needs approval.

If the app shows This device is not trusted yet. Approve it from one of your trusted devices first., use another trusted device.

Find your agents and conversations

The app has two tabs: Squad and Settings. The Squad tab shows one section for each agent of the HQ. Each section shows the name and status of the agent, and its model. Below that, it shows the 5 newest conversations with that agent. Changes that you make here also show in Desktop and in the web app.

  • To see all conversations with an agent, tap Show all.
  • To start a conversation with an agent, tap New chat in its section. This row is not available for a disabled agent.
  • To start a conversation with the agent that you used last, tap the compose button.
  • To open the details of an agent, tap its name.
  • To hide or show the conversations of an agent, tap the arrow next to its name. The app keeps this setting for each agent.
  • To find a conversation, use the search field. The search includes all agents.
  • To rename or delete a conversation, use its context menu.
  • To get the latest data from the HQ, pull down on the list.

If you delete an agent, its conversations show in Other chats at the end of the list. The list includes current and archived conversations, also from your other devices. While you look at the Show all screen of that agent, the screen keeps the chats that the app saved. If it has no saved chats, it shows This agent is not on this HQ any more.

If a different device changed a conversation before your change was complete, the app gets the latest version and asks you to try again. It does not overwrite the other change.

Needs you

When an agent cannot continue without you, the first row of the Squad tab shows Needs you and the number of items. The row shows only when an item waits and the HQ supports long-horizon work. Tap the row to see the items, oldest first. On iPad, the list opens in the detail column.

  • To answer a question from an agent, select an answer in the card, then tap Submit.
  • To continue a paused thread between agents, tap Resume. To stop it, tap Close thread.
  • To let an agent continue after its daily limit, tap Raise to USD …. To wait for the daily reset, tap Wait until ….
  • To continue a paused routine, tap Resume routine.
  • To see the conversation of an item, tap Open chat.

An item leaves the list when your action is complete. The app gets the list again every 30 seconds while the list shows.

Chat from your phone

Open a conversation, type a message, and tap Send. The app shows thinking, tool activity, sub-agent rows, questions and response text as the HQ streams them.

  • Tool calls and thinking collect into one Activity row. Tap it to see each step and its output.
  • A long response stays short in the transcript. Tap Continue reading to see all of it.
  • You can attach images or answer a question from the agent.

The composer has these controls, from left to right:

ControlUse
+Attach images
Model chipChange the model of the agent. The change applies at once and has no save step.
Effort chipSet the effort of this conversation. The chip shows a gauge icon and the level. It shows only for models that support it. After a change, the app shows Effort set to and the level. See Extended thinking.
MicrophoneDictate a message. See Dictate a message.
WaveformStart voice mode. See Voice mode.
SendSend the message

The ⋯ menu of a conversation has Tasks, Rename, Delete, View browser and Share Transcript. Tasks shows each sub-agent in the conversation and lets you stop or resume it.

Goal band

When a conversation has a goal, a band above the composer shows its state, for example Working, Paused, Blocked, Waiting for input or Completed. At the daily limit, it shows Waiting · daily limit reached and the time when the work continues.

  • Tap Pause or Resume to stop or continue the goal. At the daily limit, tap Raise limit.
  • Tap Show goal details to see Objective, Checks, Latest evidence, Next action, Limits and Why.
  • To change the objective, open the details and tap Edit, then Save. The goal pauses so that you can resume it.
  • To stop the goal, open the details and tap Clear. The app asks Clear this goal? The agent stops working on it.

When a reply fails

If the AI provider fails, the app shows a card in the chat. Your message stays in the chat. The card has the same messages as Desktop, for example Your <provider> sign-in expired. Refer to A reply fails because of the AI provider.

  • Tap the button on the card, for example Sign in again or Replace API key. The app opens AI Providers.
  • After the repair, the card shows a line such as API key replaced. Your message is saved. Tap Retry message to send the same message again.
  • If the provider limits requests, the button shows Try again at and a time.
  • Tap Details to read the provider's own message and the key that the HQ used.

If a reply fails without a card and the HQ lets you retry, the reply shows Retry. You can also touch and hold your message, then tap Retry. The app sends the same message again as a new turn below. The failed reply stays in the chat.

If a sign-in expired, the HQ can renew it itself. The card then shows Renewing your <provider> connection… If the failed reply ran tools, the card shows Some actions may already have completed. Check the chat, then send a new message. and has no retry button.

Edit and resend a message

To change a message that you sent, touch and hold it, then tap Edit & Resend. Change the text and tap Resend. The old message and its reply stay in the chat. The new message shows below them, marked Edited and resent. Only this device shows the mark.

Scroll and read

While you read the latest response, the transcript follows the new text. When you scroll up, your position stays fixed, also while more text arrives. Latest shows how many updates arrived and takes you back to the live response.

If you send a message while you read earlier messages, the app shows your new message for a short time. Then tap Back to reading to go back to the same position.

Keys

Return sends the message. On a hardware keyboard, Shift+Return starts a new line and Cmd+Return always sends. To make Return start a new line, go to Settings and set Return key to Starts a new line. The Return key on the on-screen keyboard follows the same setting.

When you type with an input method, for example Japanese or Chinese, Return completes the text that you compose. It does not send the message. See Composer keys.

Send while the agent works

While an agent works, a new message does not stop it. By default, the HQ decides what to do with your message:

  • An Auto-steered message changes the work in progress.
  • An Auto-queued message waits in the Follow Up list and starts after the current response.

If the HQ is not sure, the app asks you. Choose Steer to change the response in progress, or Follow Up to send the message after it. The option that the HQ suggests is first. To choose yourself, touch and hold Send. With VoiceOver, use the Choose Steer or Follow Up action on the Send button.

If you close the choice, the app keeps your text and images. The message box clears only after the HQ accepts your message.

The strip above the composer shows what the response does and how many Follow Ups wait. For example, it shows Thinking, Writing, or the current tool step with its file name or command, for example Reading config.json. Tap View to examine, edit or remove the Follow Ups.

If the agent asks you a question, the strip shows Needs your input. Tap Review to go to the question card. The response waits until you answer.

  • If you stop the active response or a response fails, the queue shows Follow Ups paused. Tap Resume Follow Ups to continue.
  • If a Steer gets to the HQ too late, the app labels it Auto-steer · Not delivered or Steer · Not delivered. It stays in the conversation for you to examine.

Automatic routing needs an OpenRouter key on the HQ. See Guide a response or queue a follow up. If the HQ is older than the app, the app tells you to update the HQ.

Connection loss and recovery

All your devices see the same turns, activity and Follow Up order. Each window keeps its own draft and scroll position.

If the connection stops, the app keeps the partial response on the screen. When the connection comes back, the response continues from the last saved event. New changes wait for a connection, but you can still read your draft and the saved conversation.

If the connection stops before the HQ confirms a new message, the app examines the conversation on the HQ first. It keeps the message across app restarts and never sends it again automatically. If the conversation is still on the HQ, tap Retry. The app then sends the same request ID, so the HQ does not make a second turn.

If a different device deleted the conversation, the app does not send the message. The message goes to Needs Recovery at the top of the Squad tab.

  • Open the item to copy the text or to preview and share the attachments.
  • When you do not need the item, discard it. The app asks you to confirm.
  • The chat stays read-only until you discard the recovery item.

Recovery items stay after app restarts and do not have a Retry action.

iPad

On an iPad in a full-width window, the app shows two columns. The left column has the agents list, with Squad and Settings at the bottom. The right column shows the open conversation or the agent that you opened. Settings opens as a sheet.

To open a conversation in a new window, touch and hold it and select Open in New Window. You can also drag the conversation. In a narrow window, the app uses the same tabs as on iPhone.

On a hardware keyboard, use these shortcuts:

ShortcutAction
⌘NNew Conversation
⌘FSearch Conversations
⇧⌘[ and ⇧⌘]Previous Conversation and Next Conversation
⌘1Show Squad
⌘,Settings
⌘WClose Conversation
⌘ReturnSend
EscStop Response
⌘LFocus Message Field
⇧⌘CCopy Last Response

Talk to your agent

If your HQ has a speech provider, the app can change your voice into a message and read replies aloud. It can also hold a hands-free conversation in voice mode.

Speech needs an HQ version that supports it. Update the HQ and the app together. An older app cannot read the speech data of a new HQ, and an older HQ rejects the settings of a new app.

Dictate a message

To dictate a message, tap the microphone button in the composer. The message field changes to a level meter and a countdown. The app stops after 60 seconds automatically.

  • To stop early and insert the text, tap the checkmark.
  • To discard the audio, tap ×.

If iOS does not let the app use the microphone, the app shows Microphone access is off. Turn it on in Settings. with a Settings button. If a phone call stops the dictation, the app shows Recording was interrupted. If the audio has no words, the app shows Nothing was heard.

Read a reply aloud

To hear a reply, open the context menu of an assistant message and choose Read aloud. While it plays, the same item is Stop reading. If you start to read a different message, the first one stops. The app reads only the first 4,000 characters of a reply.

Voice mode

To start a hands-free conversation, tap the waveform button next to Send. The button shows when the speech of your HQ is available and iOS lets the app use the microphone.

A full-screen orb opens. Below it, a line shows the state, for example Listening, Thinking or Speaking. Captions show what you said and what the agent says. Speak, then stop. The app sends what you said, and the agent replies aloud.

  • To stop the agent while it speaks, start to speak, or tap the orb.
  • To mute your microphone, tap the mute button below the orb. The agent continues to speak, but the app sends nothing until you unmute.

In voice mode, the agent replies in short spoken sentences. If a reply has code, a table or a lot of text, the agent tells you that it is in the transcript.

When voice mode stops, the app tells you why:

  • Connection lost: the connection to the HQ stopped.
  • Microphone stopped: a phone call or a different app took the microphone.
  • Voice mode ended: you closed voice mode or sent the app to the background.

All turns stay in your chat as usual. Voice mode also works through the hosted relay, so it is the same on cellular and on Wi-Fi. Read aloud is not available while voice mode is open.

Settings → Speech

Go to Settings → Speech to see and change how the HQ hears and speaks:

  • Speech to text: the model that changes your dictation into text.
  • Text to speech: the model and voice that read replies aloud. Preview voice plays a short sample.
  • Language: the language of your dictation. By default, it is the language of the HQ computer. Auto lets the provider find the language.
  • Realtime: tells you if a provider offers live conversation. No configured provider offers it yet.

If your HQ has no speech provider, the Speech section shows Update your HQ to use speech.

Settings

The Settings tab has these items:

SectionUse
HQThe name and ID of the HQ
ConnectionThe status and last sync of the HQ, and Reconnect
LocationShare precise location with your agent
ComposerReturn key: Sends the message or Starts a new line
SpeechSee Settings → Speech
AI ProvidersThe API keys that your agents use
AccountApprove a device
DeviceDisconnect & Forget
AboutThe app version

Settings → AI Providers

Go to Settings → AI Providers to manage the API keys of your HQ. The list has two parts:

  • Connected shows the providers that have a key. Each row shows the account email or the key names.
  • Add a provider shows the other providers.

Tap a provider to open its page. The page shows its keys, with the date that you added them. The app never shows the key itself.

  • To add a key, tap Paste an API key and paste the key.
  • To change or delete a key, tap ⋯ next to it, or swipe it. Then choose Replace or Remove.

The HQ keeps the keys encrypted and shares them with Desktop.

On the page of Anthropic, OpenAI or OpenRouter, you can also sign in with your account. Tap Sign in with Claude, Sign in with ChatGPT or Sign in with OpenRouter. The sign-in starts immediately. The app saves the key as default, or as the next free name. To use a different name, tap Change.

  • For Claude and OpenRouter, tap Open Claude or Open OpenRouter. The page opens in the app. Approve access, copy the code that the page shows, and tap Done. Tap Paste, then tap Connect. The sheet shows the time until which the code works.
  • For ChatGPT, type the short code on the page that the app opens, on this phone or on a different device. The sheet then closes automatically.

If the sign-in fails or expires, the sheet shows the error at the top. Tap Start again. The app keeps the same key name. See AI Providers.

When you open AI Providers from the repair card in a chat, the app opens the page of that provider.

If this section is not there, update your HQ.

Live browser view

When an agent with the browser tool opens a browser, View browser shows in the ⋯ menu of the conversation. Open it to see the browser of the agent on the full screen.

While the agent works, the view shows Agent is driving and you can only look. Between turns, it shows You have control:

  • Tap the page to click. Drag to scroll.
  • Type in the text field above the keyboard and press Return to send the text.
  • Press Return on an empty field to press Enter in the page.

iOS has no paste or hover in the live view. Only one live view can be open for each agent browser, so this view closes a view on a different device. If you send the app to the background, the view ends with Live view ended. (connection lost). Open it again when you come back. See Browser → Live view.

Manage agents

Go to Squad and tap the name of a squad member to see its status and configuration.

  • To create a squad member:
    1. Tap the plus button.
    2. Enter a name and check the suggested model and provider. Tap Change to search for a different model.
    3. Optionally add instructions. You can also give the task in chat.
    4. Check the target HQ and its default file and command tool access.
    5. Tap Create and open chat. This opens an empty chat and does not send a message. At accessibility text sizes, the button shows Create.
  • If no provider is configured, tap Set up providers. The form keeps your draft when you return. You must tap Create and open chat yourself after setup.
  • If the app shows Agent created but cannot open the chat, tap Open chat to try the chat again, or View agent. This does not create another agent.
  • If creation cannot be confirmed, tap Check squad. The HQ can have accepted a request even if the phone did not get its reply. After you check, close the list. To clear the form, tap Start a new draft and confirm. This does not send another request. Check for an existing agent before you create another one.
  • To see the work of the squad member without you, tap Work. Refer to Work screen.
  • To change the model, tap the Model row. Search for a model or pick one from its family. The new model applies when you tap it.
  • To change the system prompt, tap System prompt. Change the text and tap Save. If you tap Cancel, the app asks Discard your changes?. If the HQ is offline, the screen shows Connect to the HQ to edit the system prompt.
  • The app cannot change the name of a squad member.
  • To stop or start a squad member, tap Disable or Enable. You must confirm Disable.
  • To start a conversation, tap Start Chat on the detail screen.
  • See the tools, skills and memory of the squad member. You can search the memories and delete one.
  • To delete a squad member, tap Delete and type its exact name. Its conversations stay in your history as archived chats.

Use Settings → AI Providers for provider keys and sign-in. Manage connectors, plugins and tool access in Desktop.

Work screen

The detail screen of a squad member has a Work row when the HQ supports long-horizon work. The row shows the amount for today, or Limit reached. Tap it to open the Work screen. It has these sections:

SectionWhat you can do
TodaySee the amount that the squad member used today for unattended work. Tap Edit limit to change the daily limit.
GoalsSee the goals of the squad member and their chats.
RoutinesTap New routine to add a routine. On a routine, tap Run now, Edit or Delete. Its past runs stay in the chats.
Wake-upsSee and cancel the wake-ups of the squad member.

The routine form has Name, Instructions and When. In Results go to, choose Main chat or A new chat each run. In Tell me, choose Every run or Only when there is an update. Then tap Create routine or Save routine. Refer to Routines.

Work through connection changes

When the HQ is offline, you can still read the conversations and agents that the app saved. You can write a local draft. Other changes wait until the HQ connects again, for example new messages, renames, deletions and agent changes.

A banner tells you the cause of the problem:

BannerCause
Offline — showing saved contentThis device has no connection.
HQ unavailableThe relay cannot reach your HQ.
Temporarily rate limitedThe HQ got too many requests. Wait a moment.
This HQ no longer accepts this device.The HQ does not accept the saved credentials. Tap Connect again.
dashsquad update requiredThe app and the HQ versions do not agree. Update both.

When the connection is good again, go to Settings and tap Reconnect.

If the app asks you to pair the HQ again, go to Settings and tap Disconnect & Forget. Then sign in again and tap the same HQ in the list. This removes the drafts and saved attachments of that HQ from the device. The conversations load again from the HQ. After the Desktop 0.23.4 update, some Macs ask phones to pair again one time. Refer to Desktop start.

If the HQ does not accept this device, tap Connect again in the banner, in the chat or in Settings. The HQ list opens. Tap the HQ to connect with new credentials. Your saved conversations and drafts stay on the device. If the HQ is not in the list or its identity changed, go to Settings and tap Disconnect & Forget. Then sign in again and tap the HQ in the list.

Remove an HQ from the device

Go to Settings and tap Disconnect & Forget, then confirm. The app stops its connections. It removes the credentials, saved conversations, agents, attachments and drafts of that HQ from the device. The data on the HQ stays.

The app also tries to revoke this device's relay access. A failed revoke does not stop local removal.

Make sure that your data is on the HQ before you remove it from the device. Disconnect & Forget deletes your local drafts and saved attachments, and you cannot get them back.

On this page