Skip to content

Repository files navigation

utter

English · 中文

utter — Speak to your watch. Start work anywhere.

Speak to your watch. Start work anywhere.
An agent does the work in the background and emails you the result.


What it is

Ideas and todos show up when you're away from your desk — walking, commuting, waiting in line.

utter lets you dump a task with Apple Watch / iPhone voice: no typing, no picking a project, no rushing back to your laptop. When you open your inbox later, the report is already there. The matching GitHub Issue is closed with the conclusion in a comment.

Example — say on your way out: "Summarize what the latest commits in xxx are doing."
By the time you're back at your desk, a clean report is waiting in your email.


How it works

Speak to your watch → Queued automatically → Agent gets it done → Result in your inbox

Step What you notice What happens behind the scenes
1 Speak to your watch Shortcuts turns speech into a task
2 (nothing) Task lands in a private GitHub Issues queue
3 (nothing) Agent decides where/how to work, then runs
4 Result in your inbox Issue closes; conclusion is posted as a comment

Day to day you only do two things: speak, then check email.


Who it's for

  • People who get technical todos on the go and hate typing on a phone
  • People already using an agent for code / repos who want a lighter way to submit work
  • Anyone who wants to split “I thought of it” from “it’s done”: hand it off now, get pinged later

Runtime: macOS claims and runs tasks; iPhone / Apple Watch is the voice entry (optional — you can also open Issues directly).


Getting started

Recommended: let an agent set it up

In Cursor (or any environment with Agent Skills), say:

set up utter

(Chinese: 初始化 utter)

The wizard walks you through: create a private task repo → write config → install the launchd job → configure the iPhone Shortcut. Steps only you can do (token, Shortcut UI) get clear instructions and a check afterward.

Manual setup

Goal Doc
Create the task repo & labels GitHub repo setup
Configure iPhone / Watch voice entry Shortcuts setup
Tweak config Configuration
Something broke Troubleshooting
Run the test suite Testing

Setup guides under docs/ are currently in Chinese. Switch to 中文 README if that's easier.

What you need

  • macOS (launchd polls for tasks)
  • Python 3.9+, then: pip3 install requests markdown
  • GitHub CLI, already gh auth login
  • An Agent CLI (MyFlicker is supported today)
  • iPhone / Apple Watch (optional, for voice submit)

Day-to-day use

  1. Speak a task to your watch or iPhone (or open an Issue in the task repo)
  2. utter on your Mac claims it and hands it to the agent
  3. You get an email; the Issue closes with the conclusion attached

The repo’s Issues page is your board:
open + no status labels = still in the queue.


Security (read this)

  • The task repo must be private — voice content can be sensitive
  • Use a fine-grained PAT on the phone, Issues-only for that one repo
  • Local config.json is gitignored — never commit credentials

Advanced

Task source, executor, and notifiers are pluggable via config.json.
To plug in another Agent CLI or an IM notifier, implement the matching interface.

Layout, on-disk task dirs, and the label state machine: see docs/ and specs/.


License

MIT

About

Speak to your watch ⌚️ — an agent does the work and emails you the result. | 对着手表说一句 ⌚️ — Agent 把活干完,结果发你邮箱

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages