The first real test of KeyTips was simple. I opened Excel, wanted Paste Values, and pressed Option, H, V, V. It wasn’t there.
Later, the same thing happened in PowerPoint with Paste as Picture. Both looked like small gaps, but they pointed to problems in how the shortcut tables were built.
Problem 1: some menus change with your clipboard
The items in the Paste menu only appear when something has been copied. When the tables were built, those names couldn’t be read from the ribbon, so they were guesses. Claude had guessed “Picture”, for example, when the real label was “Paste as Picture”.
A guessed label fails silently. The sequence looks fine in the table, but it points at nothing.
The lesson: a list built from an empty state can be wrong without looking wrong. A report tested on a period with no transactions has the same problem.
Problem 2: reading a menu before it had loaded
The tool that captured each menu read it the moment it appeared, before its items had finished loading. So Character Spacing and Line Spacing looked empty, and their items never got keys.
The fix: KeyTips now waits for a menu’s items to finish loading.
The lesson: it’s the same as pulling a report before the overnight load finishes. Nothing errors, and the result is simply incomplete.
The safety net
Fixing individual entries wasn’t enough, because Office menus change. So we added a rule: when a menu opens, any enabled item that isn’t in the table gets a one-letter key on the spot, with a badge like any other.
We tested it on Excel’s Merge menu. Option, H, M showed five badges, although the table only listed four. Pressing the extra key, E, applied Center Across Selection to a cell.
There’s a trade-off: a key assigned on the spot can change if the menu changes. For a command you use often, a fixed entry in the table is still better.
What I took from this
Don’t rely only on your master list. Check it against what’s really there, and decide what should happen when the two disagree. That’s a reconciliation, even in a keyboard app.
And none of this came from a test suite. It came from using the tool on real work and sending a screenshot of what was missing. If you’re vibe coding, that feedback is your most important job.