Claude-skill-registry patterns/chain-of-responsibility

Chain of Responsibility Pattern pattern for C development

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/chain-of-responsibility" ~/.claude/skills/majiayu000-claude-skill-registry-patterns-chain-of-responsibility && rm -rf "$T"
manifest: skills/data/chain-of-responsibility/SKILL.md
source content

Chain of Responsibility Pattern

Pass request along a chain of handlers until one handles it. Each handler decides to process or pass to next. In C, linked list of handler functions.

ikigai Application

Input processing: Bytes flow through: escape sequence detector → UTF-8 assembler → action mapper → REPL handler.

Command dispatch: Try slash command handlers in order until one matches.

Future uses:

  • Middleware for tool execution (auth, logging, rate limiting)
  • Message preprocessing pipeline
  • Error recovery chain

Implementation:

typedef res_t (*handler_fn)(void *ctx, request_t *req, handler_fn next);

Benefit: Add/remove processing steps without modifying existing handlers.