Skip to content
patterns/command logo

patterns/command

Command Pattern pattern for C development

SKILL.md

Full skill instructions

Command Pattern

Encapsulate a request as an object, allowing parameterization, queuing, and undo. In C, a struct containing function pointer plus arguments.

ikigai Application

Slash commands: Each command (/​clear, /​mark, /​rewind) is a discrete operation:

typedef struct {
    const char *name;
    res_t (*execute)(ik_repl_ctx_t *repl, const char *args);
    const char *help;
} ik_command_t;

Input actions: Parser emits action structs that REPL executes.

Future uses:

  • Undo/​redo stack for input editing
  • Queued tool executions
  • Macro recording and playback

Benefit: Commands become first-class, can be logged, serialized, or replayed.