> ## Documentation Index
> Fetch the complete documentation index at: https://docs.agi.tech/llms.txt
> Use this file to discover all available pages before exploring further.

# Daily Assistant

> Morning catch-ups and recurring errands across your phone's apps.

A phone agent shines at the small, recurring errands that live across several apps: what's on the calendar, what's unread, what needs attention. One prompt, one consolidated answer.

## The morning catch-up

```text theme={null}
On my phone, open my calendar and tell me my first three events today.
Then check my email inbox and summarize anything unread from this morning.
Don't reply to anything.
```

This is a multi-app errand in a single [`phone_run_task`](/api-reference/tools/phone-run-task); the assistant monitors until the summary comes back. Two design choices make it reliable:

* **A read-only guardrail** - "don't reply to anything" scopes the agent to
  observation.
* **Bounded asks** - "first three events", "unread from this morning" - keep
  the task short and the answer focused.

## Recurring errand patterns

**Inbox triage:**

```text theme={null}
Check my email on my phone. List sender and subject for everything unread,
grouped into: needs a reply today, FYI only, junk. Don't open links, don't
reply, don't archive anything.
```

**Calendar guard:**

```text theme={null}
Look at my calendar for tomorrow. Tell me the first meeting time, any
double-bookings, and any event without a location or video link.
```

**Status checks:**

```text theme={null}
Open Settings and tell me the battery percentage, and whether I'm on Wi-Fi
or mobile data.
```

<Tip>
  Device basics - battery, network, locale, current app - are available
  without running a task at all:
  [`phone_get_state`](/api-reference/tools/phone-get-state) returns them
  instantly, read-only, permission-free.
</Tip>

## Keeping it fast

* One errand per task beats one mega-task. Chain follow-ups in the same
  session - each task stays inside its timeout and returns something usable
  even if a later step fails. See
  [Performance](/guides/best-practices/performance).
* The default `per_call_timeout_s` of 300 seconds is comfortable for
  catch-ups; raise it only for genuinely long flows.
* If the phone is busy (an in-app task holds the execution lane), your task
  waits in `pending` up to `queue_wait_timeout_s` - increase it if mornings
  are contended, or check
  [`phone_device_status`](/api-reference/tools/phone-device-status) first.

## Related

<CardGroup cols={2}>
  <Card title="Cross-app workflows" icon="arrows-turn-to-dots" href="/guides/use-cases/cross-app-workflows">
    When the errand needs several tasks and a session
  </Card>

  <Card title="Task design" icon="pen-to-square" href="/guides/best-practices/task-design">
    Guardrails and bounded asks
  </Card>
</CardGroup>
