I have a very similar method with my TimeTracker system.
Before I have punched in, my Macro Group and Palette looks like this:
So the "Punch OUT" macro is disabled and does NOT show in the Palette.
But after I punch IN, the Palette changes to this:
Notice also that the "Status" macro actually changed its name to show data about the task I punched in to. My "Punch IN" macro has these actions to handle this:
Here's the script that changes the "Status" Macro name:
property ptyScriptName : "Set Time Tracker (TT) Status Macro Name"
property ptyScriptVer : "1.0"
property ptyScriptDate : "2019-05-20"
property ptyScriptAuthor : "JMichaelTX"
property nameRoot : "❗STATUS: "
tell application "Keyboard Maestro Engine"
set taskTitle to getvariable "DND_TT__Work_Task"
tell application "Keyboard Maestro"
set oMacro to macro id "E88C0241-A09A-4BBC-89F7-B9B31BAD6804"
if (taskTitle ≠ "") then
set name to nameRoot & "IN: " & taskTitle
set name to nameRoot & "OUT"
Note that it DOES require the KM Editor app to be running. But then I have it running virtually all the time.