Blog
Connected but no reply? Troubleshoot your mobile coding Agent
Claude Code or Codex not responding in Tactic Remote? Check the host, conversation, queued drafts, and delivery state before sending the same request again.
Follow product and engineering updates from this channel.
Browse categoryYour phone connects to the computer, but Claude Code or Codex does not answer. Or you send a request, lose the connection, and return to an apparently unchanged conversation. Should you wait, reconnect, start the Agent, or send again?
The next step depends on what is missing. A working phone-to-host connection, an Agent ready for input, and a request reaching that Agent are separate things. Check them in that order.
This guide covers conversations created through Tactic Remote. The exact controls depend on your phone and companion versions; use the instructions that match the notice you see. If you are using Anthropic's Remote Control or another client, its controls and recovery behavior differ. Check the client and companion versions together; the 1.10 overview explains the current workflow.
Start with the state you can actually see
| What is visible | What it tells you | Next step |
|---|---|---|
| Host offline or connection failing | The phone cannot currently reach that host | Check the host and network route |
| New Conversation with text in the input | You may only have prepared a draft | Check the project and Agent, then send |
| Queued drafts or a paused-queue notice | The app is holding requests for later | Read the reason before resuming or adding more |
| Login, approval, or startup prompt | The Agent needs a specific action | Resolve the displayed prompt |
| A connection-loss message saying the prompt may have been sent | Delivery is uncertain | Reopen the original conversation before retrying |
An old reply or a message bubble does not establish the current task's outcome. Look for output corresponding to the request you are investigating.
Check the host and the original conversation
Read the host name, project, and conversation title. Two conversations can use the same project but contain different work. Creating a new conversation is not a refresh of the old one, and choosing the same directory does not transfer another Agent's context.
From the project home, open the conversation where you sent the request. Confirm which Agent it uses. If you switched computers or devices, verify the host again before interpreting an empty history as lost work.
If the host itself is unreachable, go to the network section below. If the host connects, stay with this conversation and inspect its input and latest output.
If this is your first connection, follow the iPhone setup guide or iPad workflow guide before diagnosing an existing task.
When the first task has not started
In New Conversation, selecting a project and Agent prepares the task. The first message starts it. If you have only selected a reusable prompt or typed in the input, there may be nothing for the Agent to answer yet.
Check the project button below the input. Select the actual repository when working on existing code; Independent Workspace creates a separate directory. Then check the Agent button and send one small request, such as:
Inspect this project without changing files. Report the working directory and Git branch, then explain how the app starts. Do not run tests or install dependencies.

Native simulator example: the project and Codex are selected, but this draft was not sent and no Agent was started.
A reply from the intended directory gives you a useful starting point. If a startup or login prompt appears instead, handle that prompt before adding a second task.
When a request is queued
If the app marks a request as queued, it is waiting to be dispatched. Read the accompanying notice: it may ask you to reconnect, wait for the current task, resolve an approval, or allow the conversation state to synchronize.
If your build shows queued drafts above the input, read the accompanying notice. For example, a syncing notice means the app is waiting to establish the task state. Sending the same instruction again can add another draft without helping the first one proceed.
Where Restore to composer is available, use it to revise a waiting instruction. This moves that draft back into the input; it does not send it. The control is unavailable while the input already contains text, so save or clear that text first. Remove a queued draft if you no longer want it executed.
If the paused queue offers Resume queue, use it after resolving the displayed cause. It is not a replacement for reconnecting the host or resolving an approval. If a notice says the session has ended, restore the session first; repeatedly pressing Resume queue cannot bring back an unavailable Agent session.
When the Agent needs attention
A connected host can still have an Agent waiting at login, a project-trust question, a usage limit, or an approval. Read the latest output and respond to the issue it names.
For Claude Code login problems, check the Agent on the development computer under the user account that runs the server. Your Tactic account and Claude Code authentication have different roles. Follow Anthropic's authentication instructions for your setup; you do not necessarily need to create an API key. If the same failure occurs locally, use the official troubleshooting guide.
For an approval, read the current request and decide on that action. Sending a general “continue” message does not answer the approval itself. An old approval card in the conversation is historical context; use the current pending request.
If Tactic explicitly reports that the Agent is not running and your message was not sent, the blocked-send banner can offer Start & Send, Queue, and Edit. Choose Start & Send when you want to launch the Agent for that retained request. Choose Edit to revise it, or Queue to leave it for later. These choices apply to a confirmed failed send, not every quiet screen.
After a disconnect, decide whether to resend
A network failure can occur after a request reaches the host but before the phone receives confirmation. A timeout therefore cannot tell you, by itself, that nothing ran.
A definite “not sent” notice and an uncertain connection failure require different responses. Messages such as “the prompt may still have been sent” or “the prompt may still be running” call for checking the original conversation, rather than immediately submitting a duplicate.
Reconnect to the same host, reopen the same conversation, and read its latest output and queued drafts. Then use this decision:
| What you establish | What to do |
|---|---|
| The request is still in the draft queue | Manage the existing draft; do not add a copy |
| The app explicitly reports it was not sent | Resolve the reported cause and use the retained request |
| New output shows the requested work is underway | Read that output and let the current task proceed |
| The result is already present | Review the result instead of repeating the task |
| You still cannot tell | Inspect the host's current session before sending the operation again |

Native simulator screenshot with replayed example notes. It illustrates what to read when reopening a conversation; it is not a completed task or a reconnect test result.
Read the content as well as the status. In this example, the next step is to read files and the checks have not run. An Idle label would not turn those notes into a finished implementation.
If the history says Earlier messages omitted, the visible record is incomplete. Absence of an older request is then insufficient evidence to repeat it. Once you have confirmed the current session is idle, a useful follow-up is: “Summarize what you actually completed, what remains, and what is waiting for my decision. Do not repeat earlier commands.”
When the host cannot be reached
Check that the computer is awake and the companion or server is running. A connection that worked on home Wi-Fi does not automatically work on cellular data.
For a local connection, check the current host address and whether the network allows devices to reach each other. For Cloudflare, check that the tunnel is running and the saved address is current; a temporary address can change after restart. Follow the local-network or Cloudflare setup for that route.
On Windows account connections, check the bound PC, matching Tactic account, and connected Relay state using the Windows guide. Repairing the route gets you back to the host; you still need to inspect the original task there.
Give support the last known state
If the problem remains, contact support with the phone and companion versions, host OS, Agent, connection route, exact message, and the last action before the problem. Include whether the request remains queued, whether the host shows new output, and whether you changed networks. Remove credentials from screenshots.
That record helps distinguish a connection problem from an Agent problem—and gives you a clear place to continue once the cause is resolved.
Try Tactic Remote
Control your coding Agents from your phone
Connect to Claude Code, Codex, and other Agents on your Mac, Windows, or Linux computer. Check progress and send the next instruction from iPhone or iPad.