TobyToby
On this page

Default providers

When more than one integration can handle the same kind of work (for example Todoist and Apple Reminders for tasks), Toby needs a preference. The Providers section of Settings is where you set that.

Open Toby.app → Settings → Providers.

Categories#

CategoryConfigure labelExample integrations
EmailEmail ProviderEmail
CalendarCalendar ProviderApple Calendar
TasksTask List ProviderTodoist, Apple Reminders
ContactsContact List ProviderApple Contacts
ChatChat ProviderSlack
DocumentsDocuments ProviderNotion
Work trackerWork TrackerJira
NewsNews ProviderNews

Each row is a dropdown of connected integrations in that category, plus (none).

macOS system controls are not a provider category; they are scoped as their own integration when relevant.

When defaults matter#

  1. Scheduled runs — Toby inspects the schedule prompt for category keywords (inbox, calendar, todo, Slack, wiki, …). If a category matches, it prefers your default provider for that category.
  2. Multi-integration chat — When several integrations are active, the system prompt lists your defaults so the model reaches for the right tools.
  3. External task summaries — The Tasks Home card and explicit standard-tool Flow steps use your external task provider preference.

Unqualified task/todo requests, including “What's on my task list?”, use Toby Todos, not this preference. Name Todoist or Apple Reminders to use that provider. A clear reference to an external task stays external; ambiguous item matches require clarification. Toby does not copy tasks between apps automatically. This policy also applies to scheduled Agent Tasks.

If you only connect one integration per category, defaults are optional—Toby can infer that integration.

How to set them#

  1. Connect the integrations you use (Configure and connect).
  2. Open Settings → Providers.
  3. For each category you care about, pick an integration or (none).

Defaults are stored in ~/.toby/config.json (not credentials).

Explicit scoping still wins#

Defaults do not replace:

  • Starting a message with an integration name (email summarize unread…)
  • Using the integration picker in the chat window

Those still force exact scope for that turn.