Files
everything-claude-code/.cursor/rules/common-patterns.md
Affaan Mustafa d70bab85e3 feat: add Cursor, Codex, and OpenCode harnesses — maximize every AI coding tool
- AGENTS.md: universal cross-tool file read by Claude Code, Cursor, Codex, and OpenCode
- .cursor/: 15 hook events via hooks.json, 16 hook scripts with DRY adapter pattern,
  29 rules (9 common + 20 language-specific) with Cursor YAML frontmatter
- .codex/: reference config.toml, Codex-specific AGENTS.md supplement,
  10 skills ported to .agents/skills/ with openai.yaml metadata
- .opencode/: 3 new tools (format-code, lint-check, git-summary), 3 new hooks
  (shell.env, experimental.session.compacting, permission.ask), expanded instructions,
  version bumped to 1.6.0
- README: fixed Cursor section, added Codex section, added cross-tool parity table
- install.sh: now copies hooks.json + hooks/ for --target cursor
2026-02-25 10:45:29 -08:00

1.1 KiB

description, alwaysApply
description alwaysApply
Common patterns: repository, API response, skeleton projects true

Common Patterns

Skeleton Projects

When implementing new functionality:

  1. Search for battle-tested skeleton projects
  2. Use parallel agents to evaluate options:
    • Security assessment
    • Extensibility analysis
    • Relevance scoring
    • Implementation planning
  3. Clone best match as foundation
  4. Iterate within proven structure

Design Patterns

Repository Pattern

Encapsulate data access behind a consistent interface:

  • Define standard operations: findAll, findById, create, update, delete
  • Concrete implementations handle storage details (database, API, file, etc.)
  • Business logic depends on the abstract interface, not the storage mechanism
  • Enables easy swapping of data sources and simplifies testing with mocks

API Response Format

Use a consistent envelope for all API responses:

  • Include a success/status indicator
  • Include the data payload (nullable on error)
  • Include an error message field (nullable on success)
  • Include metadata for paginated responses (total, page, limit)