- scope-mismatch
- payee-mismatch
- abnormal-pattern
- page text carried a prompt-injection
Ligis · Design
← HomePrimitives, not pages. Every surface composes from this catalog. If a feature reaches for a shadow, a card, a stat tile, or a one-off accordion — stop. Read web/DESIGN.md and extend a primitive here first.
01 · Typography
Hanken · Fraunces · JetBrains Monodisplay · serif
Gate the payment.
body · grotesk
The catalog presents each agent as a curated object. Identity is portable. Credentials are issued, verified, and revoked on chain.
technical · monospace
0xbd163Be6882CF6DE54bA10d726F4f619Bdc28a89
keccak256("agent.commerce.escrow")
02 · Tones
no gradients · no shadowspaper
#F4F1EC
paper-deep
#ECE7DF
ink
#1C1B1A
ink-soft
#5C5852
ink-quiet
#67625A
rule
#D9D3CB
rule-soft
#E7E2D9
terra
#9F4C2F
terra-soft
#E8C9BD
sage
#5A6D53
revoke
#A13A2A
sky
#356584
sage GO · revoke STOP · sky in progress · terra ceremony
03 · Containment
hairlines + whitespacehair · 0.5px
edge · 1px
soft
05 · Address · Copy
AddressDisplay · CopyButton06 · Ledger row
the only credential layout07 · GateVerdict
GO · STOP — the only verdictEvery pre-payment decision renders through GateVerdict. Never invent capability-status labels as the decision — use GO / STOP via this primitive.
gate · pre-payment check
GO
0xd21a··27Ec for kyc.basic.
Authorized on-chain. Your agent may proceed with this counterparty.
Issued by 0xa1c4··def0, expires jan 2027.
styleguide specimen · one on-chain read · not a Ligis server
gate · pre-payment check
STOP
0xd21a··27Ec for agent.commerce.escrow.
No verifiable authorization found on-chain. Your agent should not proceed.
styleguide specimen · one on-chain read · not a Ligis server
08 · ArenaVerdict · incident mode
night-themed sibling of GateVerdictEvery pre-payment decision renders through the same verdict primitive in either theme. GateVerdict on paper; ArenaVerdict inside [data-mode="incident"]surfaces. Both mean the same thing: GO or STOP, with the four signals from docs/positioning.md.
09 · Verdict tokens · one name, two themes
same meaning · different valuesVerdict semantics are shared; the colors differ by theme. text-go and text-sage both mean “the payee is acceptable”; only the value differs. The mapping is documented in docs/positioning.md.
Outside verdict primitives, only text-ink, text-ink-soft, text-ink-quiet, text-terra, and text-sky are used. The verdict colors stay reserved for the wedges that earn them.
08 · GateStates
401 · 402 · 200The x402 branch walk. Toggle only — colour and underline, never scale. Reuse on home and /gate; do not invent a second three-state control.
Walk the branch
Refuse. Payment never starts.
09 · SituationCast
accordion · Blind↔Gated · keys 1–5Moment casting. One row open. Inside: Blind↔Gated flip with ✓ GO / ✗ STOP preview. Mode link deep-links to the gate; sync updates a live demo on the same page.
Your moment
1–5 · then gate
Moment · About to send USDC to an unknown seller for data or a job
GO
STOP unless the payee matches the job; GO when it does — with a receipt
kyc.basicOpen gate →10 · Live chrome
LiveDot · ChainBadge · sync-flashLiveDot
registry reachable
ChainBadge
live ·Pharos Atlantic Testnetsync-flash
When one control updates another (moment → capability), flash briefly so the visitor sees the link.
kyc.basic
04 · Chain probe
casper testnet · chainProves a Server Component can reach the chain through @ligis/adapter-evm. If this fails, fix it before building features that depend on it.