gof-command
Installation
SKILL.md
One-line summary
Encapsulate a request as an object — separating who triggers the action from what gets done — so requests can be parameterized, queued, logged, undone, or composed.
When to use this skill
- An invoker (UI button, scheduler, queue handler) must trigger actions but should not know what they do.
- Operations need to be queued, scheduled, retried, or logged.
- Undo/redo functionality: each command knows how to execute and how to unexecute itself.
- Building a macro recorder — a command that holds a list of commands and runs them in sequence.
- Decoupling the timing of "what should happen" from "when it actually happens".
When NOT to use this skill
- A direct method call is sufficient and there's no decoupling need.
- The "command" is a single function with no arguments and no lifecycle — that's just a function reference.
- The system already has a job queue / message bus that handles this concern.