The 6 Axes of Hallmark's Pre‑Emit Self‑Critique Explained

Hallmark scores every design artifact on six distinct axes—Philosophy, Hierarchy, Execution, Specificity, Restraint, and Variety—each rated 1 to 5, and blocks output emission if any score falls below 3.

Before generating any final markup, the Hallmark design skill built by Nutlope/hallmark performs a mandatory self‑critique. This gatekeeping mechanism ensures all generated UI components meet strict quality standards for design systems, preventing "slop" from reaching production files.

What Is the Pre‑Emit Self‑Critique?

The pre‑emit self‑critique is a rule‑based evaluation step defined in skills/hallmark/SKILL.md. It executes immediately before Hallmark writes content to disk, acting as a final quality checkpoint. If the artifact fails to meet minimum thresholds on any of the six evaluation axes, Hallmark must revisit and revise the design rather than emit the output.

This process is distinct from post‑generation linting; it operates on the generated content structure itself, assessing both the design intent and implementation quality.

The Six Axes Defined

Each axis evaluates a specific dimension of design craft, scored on a 1‑5 Likert scale where 5 represents exemplary execution.

Philosophy

Philosophy measures alignment with the overarching design intent and systemic thinking. It checks whether the component honors the established design language, maintains consistency with brand principles, and contributes coherently to the broader information architecture.

Hierarchy

Hierarchy evaluates the clarity and effectiveness of visual and information structure. This axis ensures that typographic scale, spacing relationships, and content prominence guide user attention appropriately, creating clear paths for navigation and comprehension.

Execution

Execution assesses the technical quality of implementation. This includes correctness of markup semantics, validity of CSS, accessibility attributes, and whether component behavior matches the specified interaction patterns without bugs or anti‑patterns.

Specificity

Specificity demands precision in details. High scores require concrete metrics (exact pixel values, specific timing functions), verbatim copy text rather than placeholders, and explicit design decisions rather than vague or generalized specifications.

Restraint

Restraint guards against over‑embellishment. This axis penalizes unnecessary flourishes, decorative elements that distract from function, invented metrics without data backing, or any addition that does not serve the core user need. The skills/hallmark/references/anti-patterns.md file catalogs common violations that impact this score.

Variety

Variety ensures structural and visual diversity across the system. It prevents template fatigue by verifying that each page or component feels distinct, avoiding repetitive layouts that signal boilerplate generation rather than thoughtful, contextual design.

How the Scoring System Works

Hallmark applies a strict blocking rule: any axis scoring below 3 triggers a mandatory revision pass. The aggregate score does not matter; a single weak dimension invalidates the entire artifact.

The scoring stamp follows a standardized comment format embedded in the generated code:

/* Hallmark · pre‑emit critique: P5 H4 E5 S4 R5 V5 */

In this example, Philosophy scores 5, Hierarchy scores 4, Execution scores 5, Specificity scores 4, Restraint scores 5, and Variety scores 5. Since all values meet the ≥3 threshold, the component may proceed to emission.

Implementation in the Codebase

The six axes are formally defined in the Pre‑emit self‑critique section of skills/hallmark/SKILL.md. The stamping format and validation logic are documented in skills/hallmark/references/slop-test.md, which specifies how scores must be recorded to pass the quality gate.

Concrete anti‑patterns that would lower Restraint or Specificity scores are catalogued in skills/hallmark/references/anti-patterns.md. For working examples of critique stamps in production contexts, inspect the test outputs located in site/_tests/.

Programmatically, the validation logic resembles this pattern:

function validatePreEmitCritique(scores) {
  const [philosophy, hierarchy, execution, specificity, restraint, variety] = scores;
  const minimumThreshold = 3;
  
  if ([philosophy, hierarchy, execution, specificity, restraint, variety]
      .some(score => score < minimumThreshold)) {
    return { emit: false, action: 'revisitDesign' };
  }
  return { emit: true };
}

When working with React components, the critique stamp appears as a JSX comment:

export default function Hero() {
  return (
    <section className="hero">
      {/* Hallmark · pre‑emit critique: P4 H3 E5 S5 R4 V5 */}
      <h1>Welcome</h1>
      <p>Crafted with purpose.</p>
    </section>
  );
}

Summary

  • Hallmark’s pre‑emit self‑critique evaluates every artifact before output generation, acting as a mandatory quality gate.
  • Six axes—Philosophy, Hierarchy, Execution, Specificity, Restraint, and Variety—cover design intent, visual hierarchy, code quality, detail precision, editorial discipline, and structural diversity.
  • Scoring range is 1‑5 per axis; any score below 3 forces a redesign iteration.
  • Source definitions reside in skills/hallmark/SKILL.md, with stamping conventions documented in skills/hallmark/references/slop-test.md.
  • Anti‑patterns that threaten Restraint and Specificity scores are enumerated in skills/hallmark/references/anti-patterns.md.

Frequently Asked Questions

What happens if a Hallmark component scores a 2 on any single axis?

If any axis receives a score below 3, Hallmark must block emission and trigger a revision pass. The system does not average scores or allow compensation across axes; each dimension must independently meet the minimum threshold of 3 before the artifact can be emitted.

Where are the six axes formally defined in the Hallmark repository?

The canonical definitions appear in skills/hallmark/SKILL.md within the "Pre‑emit self‑critique" section. This file establishes the scoring criteria, while skills/hallmark/references/slop-test.md specifies the comment stamp format used to record scores in generated code.

How does the Restraint axis prevent low‑quality design output?

Restraint explicitly penalizes over‑embellishment and invented metrics. By requiring designers (and the AI system) to justify every element, this axis eliminates decorative noise, placeholder data presented as real, and unnecessary flourishes that do not serve functional goals. Violations are cross‑referenced against the anti‑patterns catalog in skills/hallmark/references/anti-patterns.md.

Can the pre‑emit self‑critique be disabled or configured with different thresholds?

According to the current implementation in Nutlope/hallmark, the <3 blocking threshold appears to be hardcoded within the skill's rule set. The system treats this as a non‑negotiable quality gate, ensuring consistent enforcement of design standards across all generated artifacts without user‑configurable override.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →