pragmatic-guard

Configure pragmatic mode with intensity levels, triggers, exemptions, and deferrals.

74|11|Updated May 23, 2025
One-click install
npx skills add https://github.com/codenamev/ai-software-architect --skill pragmatic-guard
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pragmatic-guard
Source: https://github.com/codenamev/ai-software-architect/tree/main/.claude/skills/pragmatic-guard
Command: npx skills add https://github.com/codenamev/ai-software-architect --skill pragmatic-guard

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Teams often fall into the trap of over-engineering, building features or abstractions "just in case" they're needed, leading to unnecessary complexity, slower development, and increased maintenance costs. This Skill actively enforces the "You Aren't Gonna Need It" (YAGNI) principle, guiding your team towards simpler, more focused solutions.

Core Features & Use Cases

  • YAGNI Enforcement: Introduces a "Pragmatic Enforcer" to challenge complexity in architecture reviews and ADRs.
  • Configurable Intensity: Adjust the strictness of the guard mode (Strict, Balanced, Lenient) to match your project's needs.
  • Deferral Tracking: Helps document and track decisions to defer features until concrete trigger conditions are met.
  • Use Case: Your team is starting an MVP and wants to avoid premature optimization. You enable "pragmatic mode with strict intensity" to ensure every architectural decision is rigorously justified by immediate needs, keeping the codebase lean and agile.

Quick Start

Enable pragmatic mode with balanced intensity

Frequently Asked Questions about pragmatic-guard

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prevent over-engineering and enforce YAGNI in architecture decisions?

Pragmatic guard reduces over-engineering by enforcing the YAGNI principle during architecture reviews and ADR creation. Enable pragmatic mode with configurable intensity levels (Strict, Balanced, Lenient) to challenge unnecessary complexity and keep your codebase focused on immediate requirements.

What's the best way to configure pragmatic mode for my project?

Configure pragmatic mode by reading or creating a configuration file that sets pragmatic_mode.enabled, defines intensity levels matching your project's needs, and establishes triggers and exemptions. The Skill manages these settings to enforce simplicity without blocking legitimate architectural decisions.

How do I track deferred features and decisions in my repository?

Pragmatic guard manages deferrals by tracking decisions to defer features until concrete trigger conditions are met. It generates user-facing reports that document when and why features were deferred, helping your team maintain clarity on technical debt and future roadmap items.

Can I adjust the strictness of complexity checks for different parts of my codebase?

Yes. Pragmatic guard supports configurable intensity levels and exemptions, allowing you to apply Strict mode to critical paths while using Balanced or Lenient modes elsewhere. Define exemptions and triggers in your configuration to match your project's architecture and risk profile.

When should I enable pragmatic mode during my development lifecycle?

Enable pragmatic mode during architecture reviews, ADR creation, and when evaluating user requests for new features. It's especially valuable for MVP development and early-stage projects where simplicity and avoiding premature optimization are critical to maintaining agility.