Play a sound
Give it a file or a folder. It plays them in order or at random, and it will not play the same one twice in a row. You can also let a harder spank play louder.
# out of the box
/System/Library/
Sounds/Sosumi.aiff Your MacBook already knows when you spank it, but it's shy.
yamete is a free menu bar app. Spank the lid and it can play a sound, call a webhook, or run a command. Knock the desk and it stays quiet.
Free · Apple Silicon MacBook · macOS 13 or later · M2 and newer, or M1 Pro / M1 Max
0.52 g 47.7 °/s detected
0.73 g 14.5 °/s ignored
Two real recordings, drawn the same way. The desk bump is 39% harder, and yamete still ignores it, because the laptop barely twists.
Spank or knock
Spank the lid and the hinge twists. Knock the desk and the whole machine just shoves sideways. yamete watches for that twist, which is why the bigger bump on this chart never counts.
Sensitivity
We replayed 40 recorded spanks against 150 seconds of typing, trackpad clicks, desk bumps, lid movement, and a laptop sitting still. Drag the slider to see what each setting would have done.
The default. Real spanks get through; the rest don't.
After the spank
Turn on one action or stack a few. Each one can wait for a harder spank, so a tap can click and a real hit can mute the room.
Give it a file or a folder. It plays them in order or at random, and it will not play the same one twice in a row. You can also let a harder spank play louder.
# out of the box
/System/Library/
Sounds/Sosumi.aiff Any URL, method, headers, and body. You can drop the spank's strength into the request, so Home Assistant, a Shortcut, or IFTTT can treat it like any other hook.
# POST body
{
"tier": "{{tier}}",
"g": {{peak_g}}
} Mute, lock, screenshot: anything a shell can do. The spank arrives as environment variables, or as JSON on stdin if you would rather parse it.
$ osascript -e "set volume 0"
# $YAMETE_TIER → major
# $YAMETE_PEAK_G → 0.52 yamete notices the spank faster than you hear it. If the sound started immediately, it would get buried under the hit. Two hundred milliseconds later, you hear the reply instead. You can change the wait on each action.
Mark an action as micro, medium, or major. A light tap can play a click. A real spank can run the thing you actually care about. How hard you hit is what picks the action.
The app
Open Yamete and it starts listening. Quit and it stops. There is nothing else to install.
The window follows light and dark mode like any other Mac app.
The listener is built in. If you already have it running another way, the window just connects and does not take over.
You can also skip the window and run the listener on its own. The control protocol is ordinary JSON, so a terminal is enough if that is how you like to work.
On your Mac
Motion, settings, and logs stay on your Mac. There is no account, no Chipcolate cloud, and no analytics in the app. The only thing that goes online is a webhook you set up yourself. This website only counts visitors, with no cookies.
On the machine
Sensor readings are processed on your Mac and not stored for us. The live graph in the window is a local connection, and it is off when the window is closed.
No account
No sign-up, no profile, no server of ours. Drag it out of Applications, and delete a couple of folders under ~/Library if you want every trace gone.
You choose what goes out
Sounds stay on the Mac. Webhooks and commands only talk to the address or program you typed in.
Get it
Signed and notarised. Apple Silicon. Open the DMG and drag it to Applications.
The same listener runs without the menu bar app. A user LaunchAgent keeps it going with nothing on screen.
# probe
yamete probe
# watch
yamete watch --scores
# install
yamete install --copy The detector, the recordings, and the tuning tools live at github.com/chipcolate/yamete .
Also from Chipcolate
If this is your kind of tool, you might like these too.
Loyalty cards on your phone. No cloud, no account, no tracking. Open source under Apache 2.0.
tesserone.comYour logo, name, or QR on a real object, made to order. One piece is enough.
makolate.storeYour brand comes first. A restaurant operating system: digital menus, commission-free bookings, white-label guest pages, and guest data that stays yours.
eighty-six.tech/en
Studio The studio behind yamete. We build hardware, software, and infrastructure.
chipcolate.com