# What trill is (/docs/trill)



<Callout type="warn" title="trill is in the incubator">
  There are signed, notarized releases now, and still no way to install one in a
  line: no cask, no `curl`, nothing on this site's download route. A haus machine
  can have it (below); everyone else is dragging a ZIP out of GitHub. This page
  exists so the idea has an address while it is being built, and any of it may
  change or be dropped.
</Callout>

**trill** is a notification compositor for macOS: one place for the things that
interrupt you, with a filter in front of it that you write rather than negotiate
with an app at a time.

The problem it is aimed at is not that Macs notify too much. It's that
notifications arrive from a dozen apps with a dozen different ideas of what is
urgent, and macOS gives you one lever per app: on, or off. What's missing is a
place to say *this one matters, that one can wait until I look*.

## Where it is [#where-it-is]

* **The repo is [`hausfold/trill`](https://github.com/hausfold/trill)**. It is
  public, and the commit log is the honest status.
* **`flick` is an older name for the same thing**, so both names appear in
  older writing.

## What haus already does with it [#what-haus-already-does-with-it]

Every banner the desktop draws goes through one command, `haus-notify`, which
hands the event to trill when the Mac has it and falls back to Apple's own banner
when it doesn't, so no room waits on trill being installed. Two surfaces go
further when it is there: the [bar](/docs/haus/rooms/bar)'s `trill` pill opens
the inbox, and an [agent lane](/docs/haus/rooms/ai) that blocks on you or
finishes raises a banner that takes you to its window.

The [Notifications room](/docs/haus/rooms/notifications)
(`haus.notifications.compositor`) puts the bundle at a fixed
`/Applications/Trill.app`, so a Full Disk Access grant survives the next version
bump. It is off by default, which is a question about who owns the bundle rather
than a step you missed: `haus-notify` and the `trill` command both work without
it.

## Made for agents [#made-for-agents]

trill's loudest early users aren't apps; they're **coding agents**. Anything that
can run a command can put a banner on screen, which is the missing half of
leaving an agent to work: `trill send` when the build lands, `trill send --progress` for one card that fills up instead of a feed you have to watch, and
`trill ask&#x60; to put a real question on your screen (&#x2A;"Push to origin?"*, two
buttons) and block until you answer. One CLI, one JSON rules file you write, exit
codes an agent can branch on.

trill ships an **agent skill**:
[`ai/SKILL.md`](https://github.com/hausfold/trill/blob/main/ai/SKILL.md) in
the repo, teaching Claude Code, Codex or any skill-reading agent those
verbs and their traps. On a haus machine with the
[Notifications room](/docs/haus/rooms/notifications) on, `haus rebuild`
installs that skill into every agent client automatically: your agents arrive
already knowing how to tell you they're done. Every hausfold app ships a
skill, written to one
[family standard](https://github.com/hausfold/workshop/blob/main/docs/agent-surface.md).

## What it isn't yet [#what-it-isnt-yet]

When there is a real install route, this tree grows the pages to say so. Until
then the [Focus room](/docs/haus/rooms/focus) is haus's answer to "go quiet",
and where that story starts.
