For AI coding agents

Wire taste into your agent.

Drop one file in your repo. Any AI coding agent — Claude Code, Cursor, Copilot, Codex — picks up the declared brand grammar, generates against it, and is judged against it before the task is marked complete.

101brand vectors · 30grammar axes · 5Golden Set anchors · 4eval modes · 0auth required

§Three artifacts

Each artifact answers a different question. AGENTS.md says what brand to target. The skill says how to behave. DESIGN.md supplies the full reference.

AGENTS.md

The taste contract

The repo‑level instruction file that tells any AI coding agent which brand grammar to follow. Like .editorconfig for taste.

---
tastehq:
  target:   stripe
  grammar:  v2.0.0
  threshold: 0.75
---
Read the spec →
Claude Skill

The agent behavior

Drop‑in .claude/skills/tastehq.md that makes Claude Code read AGENTS.md, fetch the brand grammar, and verify output before declaring tasks complete.

# one line — install the skill
curl -sL https://taste-hq.vercel.app/\
docs/claude-skill/SKILL.md \
  > .claude/skills/tastehq.md
Install →
DESIGN.md

The brand reference

Full per‑brand reference document — tokens, components, do/don’t, voice. Generated from the live grammar vector. Paste‑ready for any LLM.

# fetch anthropic's DESIGN.md
curl https://taste-hq.vercel.app/\
api/styles/anthropic/design.md
Browse 101 brands →

§The loop

Four steps. Declare a target, fetch the grammar, generate, then judge. Repeat until the verdict clears threshold.

01 / declare Declare Brand adds AGENTS.md to repo — or tastehq init <slug> generates it.
02 / fetch Fetch Agent reads AGENTS.md, loads grammar from .well-known/taste/<slug>.
03 / generate Generate Agent produces UI matching required axes, signature_move, and anti‑patterns.
04 / verify Verify Agent runs judge_design() against the brand. Refuses output below 0.75 fidelity.

§Quick start

Three terminal commands. Bootstrap a repo, install the skill, verify a build.

A · Bootstrap a repo Declare a target
# Pick any brand from tasteHQ curl -sL https://taste-hq.vercel.app/api/styles/stripe/agents.md > AGENTS.md git add AGENTS.md && git commit -m "feat: declare taste target"
B · Install the Skill Teach Claude the loop
mkdir -p .claude/skills curl -sL https://taste-hq.vercel.app/docs/claude-skill/SKILL.md \ > .claude/skills/tastehq.md
C · Verify a build Judge any URL
curl -X POST https://taste-hq.vercel.app/api/score \ -H 'Content-Type: application/json' \ -d '{"url":"https://your-site.com","target":"stripe"}'

§See it work

The judge is a live endpoint. Pass any public URL and any brand slug — same call your agent makes during the verify step.

…or call it directly
curl -X POST https://taste-hq.vercel.app/api/score \
  -H 'Content-Type: application/json' \
  -d '{"url":"https://stripe.com","target":"stripe"}'

§Four modes, one substrate

The judge endpoint runs against the same 30‑axis grammar in every mode. The mode you pick is just which question you’re asking. /api/score defaults to Mode A; the others come over the same vector.

Mode A

Fidelity

“How close is this output to brand X?” The headline path. Returns score, verdict band, per‑axis drift.

judge_design(url, target="stripe")
Mode B

Discovery

“Which brand in the catalog does this most resemble?” The reverse query for agents that haven’t declared a target yet.

match_taste(brief="warm editorial fintech")
Mode C

Diff

“Compare two outputs — along which axes do they diverge?” Curatorial mode. Every comparison ships with a natural‑language reading.

compare_brands(["anthropic", "linear"])
Mode D

Lineage

“What tradition does this belong to?” Traces output back through design history — era, school, brand heirs, productive‑violation map.

find_neighbors("acne-studios", edge="informed_by")

§Where it sits

Other “taste in AI” offerings occupy different lanes. tasteHQ is the only multi‑brand, open, agent‑native one with an evaluation layer attached.

tasteHQ Taste Profile Contra Labs
Angle Open protocol + catalog Paid per‑brand service Enterprise eval lab
Pricing Free · CC BY 4.0 $999+ one‑time Enterprise (gated)
What you get 101 vectors, MCP, REST, CLI, eval pipeline DESIGN.md for one brand Benchmark reports, human‑judged data
Gate None — instant use Workshop & 4‑phase delivery Partnership request
Agent‑native Yes — MCP‑first Indirect — file handoff No — human‑judged
Eval layer 4‑mode pipeline None HCB + Arena (gated)
Open data 30‑axis grammar, all vectors Your brand only Partial — HCB report

DESIGN.md is a file. The HCB is a report. Grammar v2 is the infrastructure that sits underneath both.

§Why this exists

Generation is cheap. Taste is the moat.

tasteHQ is infrastructure, not a service. The grammar (Protocol), the 101 vectors (Dataset), and the 4‑mode judge (Pipeline) are open because taste that lives behind a paywall isn’t taste — it’s inventory. The value compounds with adoption, not extraction.

Eco gives the axes — an aesthetic code with an authorized range of readings.
Gombrich gives the arc — every work is schema‑and‑correction against an inherited tradition.
Daverio gives the verdict — taste is the act of placing one work next to another and being able to defend the placement.

The three‑layer philosophical architecture underneath Grammar v2.
Protocol · Dataset · Pipeline · CC BY 4.0 · v2.0.0 stable

§Conformance levels

Three levels of agent participation. Pick the one that matches how much trust you want to grant the loop.

L1 Reader Agent fetches grammar, surfaces fields to the user. No enforcement.
default L2 Judge Agent verifies output via judge_design. Refuses below threshold.
L3 Publisher Repo IS canonical for the brand. Publishes signed .well-known/taste.