Agent Skills: Factory Pattern

Factory Pattern pattern for C development

UncategorizedID: mgreenly/ikigai/patterns/factory

Install this agent skill to your local

pnpm dlx add-skill https://github.com/mgreenly/ikigai/tree/HEAD/.claude/library/patterns/factory

Skill Files

Browse the full folder contents for patterns/factory.

Download Skill

Loading file tree…

.claude/library/patterns/factory/SKILL.md

Skill Metadata

Name
patterns/factory
Description
Factory Pattern pattern for C development

Factory Pattern

Function that encapsulates object creation, returning an allocated and initialized struct. Centralizes construction logic and hides allocation details from callers.

ikigai Application

Current usage:

  • ik_scrollback_create() - creates scrollback buffer
  • ik_mark_create() - creates checkpoint marks
  • ik_input_parser_create() - creates input parser

Convention: Use *_create() for heap allocation (caller owns), *_init() for initializing pre-allocated memory.

With ik_env_t: Factories should receive ik_env_t *env as first parameter for access to logger, config, and clock during construction.

Testing: Factories enable injecting dependencies at creation time rather than reaching for globals.