← Back to browse

by @cush

Morning Standup

Opens Slack, drops yesterday's commits into the standup channel.

steps
8
installs
0
stars
0
size
287 B
Download .kdl

Readme

Why this exists

Every standup, I was tabbing to Slack, finding the channel, hunting through my terminal for what I shipped yesterday, and pasting it in. Took two minutes. Did it 200 times a year. 400 minutes of hunting and pasting.

This workflow does it in two seconds.

How it works

The git log flag does the real work:

git log --since=yesterday --oneline | head

That captures the last day of commits, one per line, capped at 10 so we don't dump a wall of text into the channel.

The type from="$stdout" step reads the previous command's stdout and types it into whatever has focus. Slack's input is open at that point (thanks to the Super+k quick-switcher chord + /standup), so it lands in the right place.

Caveats

  • Requires Slack to be running. If it's not, the focus app="Slack" step will fail and nothing posts.
  • Super+k is the Slack quick-switcher chord. Rebind in your KDL if your Slack uses a different one.
  • The --oneline formatter strips body text. If you want the full commit message, swap to --pretty=format:%s%n%b and increase the head count.

Tip: if your team uses a different standup channel name, edit the /standup line to whatever your slash command is.

Variants

Use case Change
Async standup in a thread Add a key "ArrowDown" after typing
Yesterday + today plan Append a type "Today: " step at the end
Skip on Mondays Wrap in unless with a date check

Built for wflow. PRs and remixes welcome.

KDL source

// Morning Standup — by @matt
workflow "Morning Standup" {
      focus app="Slack"
      key "Super+k"
      type "/standup"
      key "Return"
      wait 2.0
      shell "git log --since=yesterday --oneline | head"
      type from="$stdout"
      notify "standup posted"
  }