Android app

ZeroLog for Android 2.0: the chat you know, and an agent that works on your phone.

A phone job in the Android appYou ask the agent in a chat for something that needs your phone. It answers with a plan card and nothing runs. You prepare the job: review the allow-list of apps, say whether the agent may ask questions and whether screenshots go to the AI. You start the screen share and Android asks for consent. While the job runs, an overlay shows the steps with pause, stop and take over. Pause ends the screen share until you continue; stop and take over end the job or the agent's control. A result screen then offers to continue in the workspace.Job runningcontinue asksfor consent again1. You ask the agent in a chatfor something on your phone2. Plan card in the chatNothing runs yet3. Prepare job: review the apps(allow-list), questions,screenshots to the AI on or off4. Start the screen shareAndroid asks for consentAgent reads and taps onlyin allow-listed appsOverlay with the stepsPause: holds at the next safepoint, ends the screen shareStop: ends the jobTake over: the phoneis yours again5. Result screenContinue in the workspace
A phone job starts as a plan card, needs your consent for the screen share, and stays under your control through pause, stop and take over.
Diagram as text
  1. You ask the agent in a chat for something that needs your phone.
  2. It answers with a plan card. Nothing runs yet.
  3. In Auftrag vorbereiten (prepare job) you review the apps the plan needs. They form the job's allow-list. You also choose whether the agent may ask questions and whether screenshots go to the AI.
  4. You start the screen share and Android asks for your consent. From Android 14 it offers only the whole screen.
  5. While the job runs, the agent reads or taps only in allow-listed apps. A small overlay shows the steps.
  6. Pausieren (pause) holds at the next safe point and ends the screen share; continuing asks Android for consent again. Stoppen (stop) ends the job. Übernehmen (take over) ends the agent's control.
  7. When the job ends, a result screen shows what happened. Im Workspace weiterarbeiten opens the chat that holds the plan and the steps.

Version 2.0 is a native app. Chat, chat list, Compute, jobs and your container's files are drawn by the app itself and talk to zerolog.ch directly, not through a web page inside the app. You sign in once; the session key stays in Android's encrypted storage. The agent can run commands, work with files and control other apps after you allow Android's accessibility service. Each action asks first unless you turn approvals off.

What the app does

Four tabs

Chats, Aufträge (jobs, filtered by All, Phone and Server), Dateien (files) and Gerät (device). Compute, the phone agent, tools and settings sit under Gerät.

Phone jobs

The agent shows a plan in the chat, you start it, and you can pause, stop or take over while it works. Details are in the section below.

Agent on the phone

Runs Python 3.11 on the device, plus a shell and app control.

Folder sync

Choose a folder to sync with your container's /work folder. Files over 400 KB and binary files are left out rather than cut short.

Files app

Your container appears as a storage location, so any "choose a file" dialog can reach it.

/goal in the agent tab

/goal works here too. The check runs on the server, the same as in the web chat.

Your own CLIs

Claude Code and Codex run in Termux (from F-Droid or GitHub, not the Play Store) inside a small Ubuntu the app sets up, about 1 GB. Settings → CLI sign-in shows the setup line. Each tool signs in through its own page in Chrome; the app never sees the code.

Signing out

Removes the sign-in token from the phone's secure storage. Version 2.0.0-a3 fixes a bug that left it behind.

Crash reports

After a crash the app sends the error type and the line in its own code on the next start. No account, chat or device ID.

Download and installation

Needs Android 8.0 or later. The download needs a signed-in ZeroLog account; if needed, you are sent to sign in and returned to the app page. The current build is 2.0.0-a3, a pre-release. It installs over earlier 1.x versions and keeps your settings. It is signed with a new key: if you installed 2.0.0-a1, uninstall that once first. Later updates install over a3. The Android app page lists the file, its SHA-256 checksum and the checksum of the signing key; the previous version, 1.21.7, stays available there.

Open the Android app page

Phone jobs

Ask the agent in a chat for something that needs your phone. It answers with a plan card. Nothing runs yet.

  1. Tap Auftrag vorbereiten (prepare job). The app lists the apps the plan needs. They form the job's allow-list, and apps the app protects are never on it. You can remove an app, add one with App auswählen, say whether the agent may ask you questions, and choose whether screenshots go to the AI (Bilder an KI).
  2. Start the screen share. Android asks for your consent. From Android 14 it offers only the whole screen.
  3. While the job runs, a small overlay shows the steps with Pausieren (pause), Stoppen (stop) and Übernehmen (take over). Pause holds at the next safe point, between two steps, and ends the screen share; continuing asks Android for consent again. Stop ends the job. Take over ends the agent's control and leaves the phone to you.
  4. When the job ends, a result screen shows what happened. Im Workspace weiterarbeiten opens the chat that holds the plan and the steps.

The agent reads or taps only in apps on the allow-list. Anything else in the foreground is blocked, even with Privacy Guard switched off. During a job it cannot use the shell, send intents, open the browser or touch files. Screenshots leave the phone only when Bilder an KI is on, the screen share is active and an allowed app is in front. They go to the model; a model that cannot read images gets a note instead.

Limits: on some system screens, such as Settings and Files, Android hides overlays from other apps, so the panel is not visible there. Pause and stop then work from the app, and ending the screen share from the status bar pauses the job. A pause does not interrupt a step that is already running. How reliably each model proposes a plan has not been measured yet.

Phone control

The agent can read the screen, tap, type and scroll in other apps once you allow Android's accessibility service. On Android 13 and later that switch is greyed out for apps from outside a store: tap it once, then App info → ⋮ → Allow restricted settings.

Set up Claude Code and Codex in Termux

  1. Install Termux from F-Droid or the Termux GitHub releases. The Play Store build cannot accept the app’s command handoff.
  2. In the Android app, open Settings → CLI sign-in. Review and copy its setup line into Termux; it allows the app to start commands there.
  3. Start setup. It prepares a small Ubuntu and supported CLIs. Allow about 1 GB and leave Termux running until setup finishes.
  4. Choose sign-in beside a CLI. Follow that tool’s page in Chrome; the tool receives its own callback. Its account, limits and conversation remain separate from ZeroLog chat.

A connected tool appears in the agent’s model list and can use approved phone tools through the local bridge. Tools depend on the mode: the restricted phone-job mode above does not permit shell, intents or file access.

Migration and file identity

The current pre-release package is ch.zerolog.zerocode.debug. The old web-only ZeroLog app is separate: keep it until sign-in to the native app works. For 2.0.0-a1, follow the signing-key migration on Mobile’s file section. Keep an export of important data before uninstalling an app. Updates from earlier 1.x versions preserve settings as described on the download page.

If setup fails

Write to info@zerolog.ch with your Android version, the step and visible error. For CLI setup, include only relevant last log lines after removing credentials, private paths and project content. Current and previous APK links and checksums are on Mobile. This is not a report of a new device test.