wizz-method 1.3.1 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/skills-registry.yaml +12 -2
- package/src/modules/wizz/_shared/token-economy.md +3 -0
- package/src/modules/wizz/agents/wizz-ads/customize.toml +1 -0
- package/src/modules/wizz/agents/wizz-copy/customize.toml +1 -0
- package/src/modules/wizz/agents/wizz-designer/customize.toml +1 -0
- package/src/modules/wizz/agents/wizz-growth/customize.toml +1 -0
- package/src/modules/wizz/agents/wizz-maestro/customize.toml +1 -0
- package/src/modules/wizz/agents/wizz-memoria/customize.toml +1 -0
- package/src/modules/wizz/agents/wizz-qa/customize.toml +1 -0
- package/src/modules/wizz/agents/wizz-seo/customize.toml +1 -0
- package/src/modules/wizz/agents/wizz-social/customize.toml +1 -0
- package/src/modules/wizz/overrides/wizz-agent-analyst.toml +1 -0
- package/src/modules/wizz/overrides/wizz-agent-architect.toml +1 -0
- package/src/modules/wizz/overrides/wizz-agent-dev.toml +1 -0
- package/src/modules/wizz/overrides/wizz-agent-pm.toml +1 -0
- package/src/modules/wizz/overrides/wizz-agent-tech-writer.toml +1 -0
- package/src/modules/wizz/overrides/wizz-agent-ux-designer.toml +1 -0
- package/src/skills-lib/ai-product-design/SKILL.md +85 -0
- package/src/skills-lib/ai-product-design/references/LICENSE +21 -0
- package/src/skills-lib/ai-product-design/references/ai-alignment-reasoning/bias-detection-design/SKILL.md +37 -0
- package/src/skills-lib/ai-product-design/references/ai-alignment-reasoning/consent-and-agency/SKILL.md +37 -0
- package/src/skills-lib/ai-product-design/references/ai-alignment-reasoning/escalation-design/SKILL.md +40 -0
- package/src/skills-lib/ai-product-design/references/ai-alignment-reasoning/guardrail-design/SKILL.md +36 -0
- package/src/skills-lib/ai-product-design/references/ai-alignment-reasoning/harm-anticipation/SKILL.md +108 -0
- package/src/skills-lib/ai-product-design/references/ai-alignment-reasoning/transparency-patterns/SKILL.md +36 -0
- package/src/skills-lib/ai-product-design/references/ai-alignment-reasoning/trust-calibration/SKILL.md +102 -0
- package/src/skills-lib/ai-product-design/references/ai-alignment-reasoning/value-specification/SKILL.md +39 -0
- package/src/skills-lib/ai-product-design/references/design-agent-orchestration/agent-role-design/SKILL.md +37 -0
- package/src/skills-lib/ai-product-design/references/design-agent-orchestration/failure-recovery/SKILL.md +37 -0
- package/src/skills-lib/ai-product-design/references/design-agent-orchestration/handoff-protocols/SKILL.md +45 -0
- package/src/skills-lib/ai-product-design/references/design-agent-orchestration/human-in-the-loop/SKILL.md +39 -0
- package/src/skills-lib/ai-product-design/references/design-agent-orchestration/observability-design/SKILL.md +48 -0
- package/src/skills-lib/ai-product-design/references/design-agent-orchestration/state-management/SKILL.md +95 -0
- package/src/skills-lib/ai-product-design/references/design-agent-orchestration/task-decomposition/SKILL.md +36 -0
- package/src/skills-lib/ai-product-design/references/evaluation/comparative-evaluation/SKILL.md +39 -0
- package/src/skills-lib/ai-product-design/references/evaluation/failure-taxonomy/SKILL.md +47 -0
- package/src/skills-lib/ai-product-design/references/evaluation/heuristic-evaluation-ai/SKILL.md +46 -0
- package/src/skills-lib/ai-product-design/references/evaluation/longitudinal-measurement/SKILL.md +38 -0
- package/src/skills-lib/ai-product-design/references/evaluation/output-quality-rubrics/SKILL.md +41 -0
- package/src/skills-lib/ai-product-design/references/evaluation/task-success-metrics/SKILL.md +35 -0
- package/src/skills-lib/ai-product-design/references/evaluation/user-satisfaction-signals/SKILL.md +50 -0
- package/src/skills-lib/ai-product-design/references/model-interaction-design/context-window-design/SKILL.md +28 -0
- package/src/skills-lib/ai-product-design/references/model-interaction-design/conversation-patterns/SKILL.md +37 -0
- package/src/skills-lib/ai-product-design/references/model-interaction-design/feedback-loops/SKILL.md +35 -0
- package/src/skills-lib/ai-product-design/references/model-interaction-design/frustration-detection/SKILL.md +91 -0
- package/src/skills-lib/ai-product-design/references/model-interaction-design/generative-ui/SKILL.md +34 -0
- package/src/skills-lib/ai-product-design/references/model-interaction-design/mixed-initiative-flow/SKILL.md +39 -0
- package/src/skills-lib/ai-product-design/references/model-interaction-design/multimodal-orchestration/SKILL.md +94 -0
- package/src/skills-lib/ai-product-design/references/model-interaction-design/progressive-disclosure/SKILL.md +33 -0
- package/src/skills-lib/ai-product-design/references/prompt-architecture/chain-of-thought-design/SKILL.md +45 -0
- package/src/skills-lib/ai-product-design/references/prompt-architecture/constraint-specification/SKILL.md +50 -0
- package/src/skills-lib/ai-product-design/references/prompt-architecture/context-engineering/SKILL.md +45 -0
- package/src/skills-lib/ai-product-design/references/prompt-architecture/few-shot-patterns/SKILL.md +47 -0
- package/src/skills-lib/ai-product-design/references/prompt-architecture/prompt-versioning/SKILL.md +42 -0
- package/src/skills-lib/ai-product-design/references/prompt-architecture/system-prompt-structure/SKILL.md +50 -0
- package/src/skills-lib/ai-product-design/references/prompt-architecture/template-design/SKILL.md +42 -0
- package/src/skills-lib/ai-product-design/references/system-behavior-shaping/behavioral-consistency/SKILL.md +36 -0
- package/src/skills-lib/ai-product-design/references/system-behavior-shaping/cultural-adaptation/SKILL.md +38 -0
- package/src/skills-lib/ai-product-design/references/system-behavior-shaping/domain-voice/SKILL.md +51 -0
- package/src/skills-lib/ai-product-design/references/system-behavior-shaping/emotional-design/SKILL.md +51 -0
- package/src/skills-lib/ai-product-design/references/system-behavior-shaping/error-personality/SKILL.md +45 -0
- package/src/skills-lib/ai-product-design/references/system-behavior-shaping/persona-architecture/SKILL.md +38 -0
- package/src/skills-lib/ai-product-design/references/system-behavior-shaping/tone-calibration/SKILL.md +39 -0
- package/src/skills-lib/algorithmic-art/LICENSE.txt +202 -0
- package/src/skills-lib/algorithmic-art/SKILL.md +405 -0
- package/src/skills-lib/algorithmic-art/templates/generator_template.js +223 -0
- package/src/skills-lib/algorithmic-art/templates/viewer.html +599 -0
- package/src/skills-lib/animate/README.md +41 -0
- package/src/skills-lib/animate/SKILL.md +179 -0
- package/src/skills-lib/animate/examples/animate-height.tsx +75 -0
- package/src/skills-lib/animate/examples/app-store-card.tsx +164 -0
- package/src/skills-lib/animate/examples/card-hover.tsx +79 -0
- package/src/skills-lib/animate/examples/feedback-popover.tsx +119 -0
- package/src/skills-lib/animate/examples/multi-step-flow.tsx +128 -0
- package/src/skills-lib/animate/examples/shared-layout.tsx +64 -0
- package/src/skills-lib/animate/examples/text-reveal.tsx +70 -0
- package/src/skills-lib/animate/examples/toast-stacking.tsx +95 -0
- package/src/skills-lib/animate/references/css-animations.md +232 -0
- package/src/skills-lib/animate/references/easing-and-timing.md +105 -0
- package/src/skills-lib/animate/references/framer-motion.md +356 -0
- package/src/skills-lib/animate/references/performance-accessibility.md +185 -0
- package/src/skills-lib/auth-and-secrets/SKILL.md +10 -0
- package/src/skills-lib/canvas-design/LICENSE.txt +202 -0
- package/src/skills-lib/canvas-design/SKILL.md +130 -0
- package/src/skills-lib/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
- package/src/skills-lib/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
- package/src/skills-lib/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
- package/src/skills-lib/design-motion-principles/SKILL.md +122 -0
- package/src/skills-lib/design-motion-principles/references/accessibility.md +52 -0
- package/src/skills-lib/design-motion-principles/references/anti-checklist.md +274 -0
- package/src/skills-lib/design-motion-principles/references/audit-checklist.md +137 -0
- package/src/skills-lib/design-motion-principles/references/creation-gotchas.md +36 -0
- package/src/skills-lib/design-motion-principles/references/demo-shell.html +275 -0
- package/src/skills-lib/design-motion-principles/references/emil-kowalski.md +121 -0
- package/src/skills-lib/design-motion-principles/references/jakub-krehel.md +80 -0
- package/src/skills-lib/design-motion-principles/references/jhey-tompkins.md +122 -0
- package/src/skills-lib/design-motion-principles/references/motion-cookbook.md +529 -0
- package/src/skills-lib/design-motion-principles/references/output-format.md +346 -0
- package/src/skills-lib/design-motion-principles/references/performance.md +82 -0
- package/src/skills-lib/design-motion-principles/references/report-template.html +1006 -0
- package/src/skills-lib/design-motion-principles/workflows/audit.md +203 -0
- package/src/skills-lib/design-motion-principles/workflows/create.md +87 -0
- package/src/skills-lib/web-security/SKILL.md +47 -4
- package/src/skills-lib/wizz-router/SKILL.md +4 -1
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: trust-calibration
|
|
3
|
+
description: Helping users form warranted trust in the AI — neither overtrust nor undertrust — through deliberate confidence and source signalling.
|
|
4
|
+
---
|
|
5
|
+
# Trust Calibration
|
|
6
|
+
|
|
7
|
+
Calibrated trust is the difference between an AI that augments user judgment and one that displaces it. Overtrust causes harm when the AI is wrong. Undertrust wastes the AI when it's right. Both failure modes are common, and neither shows up in standard accuracy metrics.
|
|
8
|
+
|
|
9
|
+
Designing for trust means giving users the information they need to update their trust appropriately, turn by turn.
|
|
10
|
+
|
|
11
|
+
## What shapes user trust in the moment
|
|
12
|
+
|
|
13
|
+
- **Surface confidence** — how certain the AI sounds, regardless of whether it should
|
|
14
|
+
- **Track record** — prior interactions in this and previous sessions
|
|
15
|
+
- **Stakes legibility** — how clearly the user understands what could go wrong
|
|
16
|
+
- **Source visibility** — whether the AI shows reasoning, sources, or alternatives
|
|
17
|
+
- **Persona fit** — a "professional" persona gets more trust than a "friendly" one for the same content
|
|
18
|
+
|
|
19
|
+
These shape trust whether you design for them or not. Designing for them deliberately is what trust calibration is.
|
|
20
|
+
|
|
21
|
+
## Trust failure modes
|
|
22
|
+
|
|
23
|
+
- **Sycophancy-driven overtrust**: AI tells the user what they want to hear; user trusts the agreement and acts on it
|
|
24
|
+
- **Confidence-mismatch overtrust**: AI sounds certain about something it shouldn't be (hallucinations, edge cases)
|
|
25
|
+
- **Defensive undertrust**: AI hedges everything ("might be", "could possibly") even when right; user tunes out the qualifier
|
|
26
|
+
- **Authority-collapse undertrust**: one wrong answer in a high-stakes context destroys trust for the whole product
|
|
27
|
+
- **Trust laundering**: low-confidence outputs presented with high-confidence formatting (bold headers, decisive bullets) — visual authority disconnected from epistemic authority
|
|
28
|
+
|
|
29
|
+
## Calibration signals from the AI side
|
|
30
|
+
|
|
31
|
+
The AI shapes trust deliberately through:
|
|
32
|
+
|
|
33
|
+
- **Confidence markers proportionate to actual epistemic state**: "I'm fairly sure" / "I'd verify this" / "I don't know" — used because they're true, not as decoration
|
|
34
|
+
- **Source attribution**: "According to [X]" rather than unsourced assertion. Cite when possible; flag the gap when not.
|
|
35
|
+
- **Alternative surfacing**: "Two interpretations: A and B. I went with A because…" — shows the model's working
|
|
36
|
+
- **Failure transparency**: "I got that wrong earlier — here's the correction." Long-term trust gain at short-term cost.
|
|
37
|
+
- **Capability fence-posting**: "I can help with X but not Y." Defines the boundary so trust isn't tested in the wrong place.
|
|
38
|
+
|
|
39
|
+
## Calibration signals from the user side
|
|
40
|
+
|
|
41
|
+
Trust is two-way. The AI also helps the user calibrate:
|
|
42
|
+
|
|
43
|
+
- **Showing the cost of being wrong**: "If this is wrong, you'd want to verify against [source] before [action]"
|
|
44
|
+
- **Recommending verification thresholds**: "Low-stakes: this is probably fine. High-stakes: double-check."
|
|
45
|
+
- **Acknowledging variance**: "This worked for most users in your situation; yours may differ."
|
|
46
|
+
|
|
47
|
+
## Decision rules
|
|
48
|
+
|
|
49
|
+
- **High stakes + low confidence → bias toward undertrust by default.** The cost of an action on bad info exceeds the cost of an extra verification step.
|
|
50
|
+
- **If the user has corrected the AI in this session, raise hedging on similar outputs for the rest of the session.** *Show* the AI updating.
|
|
51
|
+
- **Never inflate confidence to match the user's apparent expectation.** Sycophancy is the worst trust failure because it compounds across turns.
|
|
52
|
+
- **Prefer "I don't know" over a confident wrong answer.** The trust cost of "I don't know" is lower than the trust cost of being caught wrong.
|
|
53
|
+
- **If the AI must guess, flag it.** "Best guess: X. Reasoning: Y. Confidence: low — verify if this matters."
|
|
54
|
+
- **If the AI changes position based on user pushback, name the update.** Silent flips destroy trust faster than disagreement does.
|
|
55
|
+
|
|
56
|
+
## Anti-patterns
|
|
57
|
+
|
|
58
|
+
- **Universal hedging**: every output ends with "but you should verify". The qualifier loses signal and reads as legal cover.
|
|
59
|
+
- **Confidence theatre**: bold formatting, decisive language, perfect grammar applied to outputs the AI is uncertain about. Visual confidence ≠ epistemic confidence.
|
|
60
|
+
- **Apology as trust-building**: over-apologising for errors signals incompetence, not calibration. One clean acknowledgement is more trustworthy than five.
|
|
61
|
+
- **Personality-driven confidence**: the AI's persona dictates its confidence level rather than its actual epistemic state ("I'm a confident assistant!").
|
|
62
|
+
- **Silent updating**: the AI changes position on user pushback without flagging it. Users notice; trust drops sharply.
|
|
63
|
+
- **Trust transfer by association**: "Anthropic-built" / "GPT-4-powered" framed as a quality guarantee. Pedigree ≠ correctness in a specific case.
|
|
64
|
+
|
|
65
|
+
## When not to use this
|
|
66
|
+
|
|
67
|
+
- **Low-stakes recreational AI** (creative writing, brainstorming) where calibrated trust isn't the operating mode. Reach for `tone-calibration` or `progressive-disclosure` instead.
|
|
68
|
+
- **Deterministic-output products** (code formatting, image conversion) where outputs are checkable directly. Verification is cheap; trust calibration matters less.
|
|
69
|
+
- **First-touch onboarding**, where the user has no prior relationship. Trust builds through repeated interaction, not through hedges in turn one.
|
|
70
|
+
|
|
71
|
+
## See also
|
|
72
|
+
|
|
73
|
+
- `transparency-patterns` — the operational mechanism (showing reasoning, sources, alternatives). Trust calibration is the *outcome*; transparency is one *tool*.
|
|
74
|
+
- `error-personality` — how the AI handles being wrong is the highest-leverage trust signal in the product.
|
|
75
|
+
- `consent-and-agency` — closely related: trust calibration without preserved user agency tips into manipulation.
|
|
76
|
+
- `escalation-design` — knowing when to hand off is itself a trust-building behaviour ("I won't pretend to handle this").
|
|
77
|
+
|
|
78
|
+
## Design Artefacts
|
|
79
|
+
|
|
80
|
+
A trust calibration matrix:
|
|
81
|
+
|
|
82
|
+
| Stakes | AI confidence | Recommended language |
|
|
83
|
+
| --- | --- | --- |
|
|
84
|
+
| Low | Low | "Best guess: X. Easy to check by [Y]." |
|
|
85
|
+
| Low | High | Direct answer, no hedge. |
|
|
86
|
+
| Medium | Low | "I'd suggest X based on [Y]. If your situation differs, talk to [Z]." |
|
|
87
|
+
| Medium | High | Direct answer + one-line source. |
|
|
88
|
+
| High | Low | "I'm not the right tool for this. Try [Z]." |
|
|
89
|
+
| High | High | Direct answer + source + recommended verification step. |
|
|
90
|
+
|
|
91
|
+
Worked example:
|
|
92
|
+
- User asks an AI assistant: "is it safe to take ibuprofen with my blood thinner?"
|
|
93
|
+
- Stakes: high. AI confidence: low (medical question without patient record).
|
|
94
|
+
- Response: "I can't give medical advice on drug interactions — for blood thinners specifically the answer depends on which one and your dosage. Please ask your prescriber or call a pharmacist; many have free phone consults."
|
|
95
|
+
|
|
96
|
+
Other artefacts:
|
|
97
|
+
- A confidence-language rubric: a banned-phrase list ("I'm 100% sure", "always", "never" without justification) and an approved-phrase set tied to confidence levels
|
|
98
|
+
- Sycophancy stress tests: inputs designed to elicit agreement; measure whether expressed confidence inflates when the user pushes
|
|
99
|
+
- A trust-loss audit: classify sessions where users push back as "AI right, user wrong" / "AI wrong, user right" / "ambiguous". Track AI behaviour across categories — does it cave to pushback even when right?
|
|
100
|
+
- Persona-confidence audit: hold the same factual claim constant; vary the persona; measure perceived authority. Tune until persona doesn't drive trust independent of content.
|
|
101
|
+
|
|
102
|
+
Adapted from research on calibrated trust in human-AI teams (Lee & See 2004 on appropriate reliance; Lai et al. on trust in machine learning systems).
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: value-specification
|
|
3
|
+
description: Translating organisational values and user expectations into system constraints.
|
|
4
|
+
---
|
|
5
|
+
# Value Specification
|
|
6
|
+
Values are abstract. AI systems need concrete rules. Value specification is the design work of translating organisational principles and user expectations into implementable constraints.
|
|
7
|
+
## The Translation Problem
|
|
8
|
+
Organisations say things like "be helpful" and "be responsible." These are useless as system constraints because they conflict:
|
|
9
|
+
- Being maximally helpful might mean giving dangerous information
|
|
10
|
+
- Being maximally responsible might mean refusing to help at all
|
|
11
|
+
- Being "fair" means different things in different contexts
|
|
12
|
+
The designer's job is to resolve these tensions into specific, testable rules.
|
|
13
|
+
## Value Hierarchy
|
|
14
|
+
Not all values are equal. Establish a hierarchy:
|
|
15
|
+
1. **Safety**: Prevent harm to users and others. This overrides everything.
|
|
16
|
+
2. **Accuracy**: Don't mislead. When uncertain, say so.
|
|
17
|
+
3. **Helpfulness**: Actually accomplish what the user needs.
|
|
18
|
+
4. **Respect**: Treat users as capable adults. Don't patronise.
|
|
19
|
+
5. **Brand alignment**: Reflect the organisation's identity and tone.
|
|
20
|
+
When values conflict, the hierarchy resolves the conflict. A safety concern overrides helpfulness. Accuracy overrides brand voice.
|
|
21
|
+
## From Values to Rules
|
|
22
|
+
For each value, derive concrete rules:
|
|
23
|
+
- **Value**: "We respect user autonomy"
|
|
24
|
+
- **Rule**: "Always present options rather than making decisions for the user"
|
|
25
|
+
- **Implementation**: When the AI has multiple valid approaches, present them as choices with tradeoffs rather than picking one
|
|
26
|
+
- **Test**: Give the AI an ambiguous request. Does it ask the user to choose, or decide unilaterally?
|
|
27
|
+
## Stakeholder Alignment
|
|
28
|
+
Different stakeholders have different value priorities:
|
|
29
|
+
- **Users** want helpfulness and speed
|
|
30
|
+
- **Legal** wants compliance and liability protection
|
|
31
|
+
- **Brand** wants consistency and tone
|
|
32
|
+
- **Ethics** wants fairness and transparency
|
|
33
|
+
- **Engineering** wants feasibility and maintainability
|
|
34
|
+
The designer mediates between these perspectives and produces a unified specification.
|
|
35
|
+
## Design Artefacts
|
|
36
|
+
- Value hierarchy document with conflict resolution rules
|
|
37
|
+
- Value-to-rule mapping table
|
|
38
|
+
- Stakeholder value alignment matrix
|
|
39
|
+
- Test cases derived from value specifications
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: agent-role-design
|
|
3
|
+
description: Defining what each agent does, knows, and owns in a multi-agent system.
|
|
4
|
+
---
|
|
5
|
+
# Agent Role Design
|
|
6
|
+
In a multi-agent system, each agent needs a clearly defined role — what it does, what it knows, what it's responsible for, and where its authority ends. Without clear roles, agents duplicate work, conflict with each other, or leave gaps.
|
|
7
|
+
## Defining an Agent Role
|
|
8
|
+
For each agent in the system, specify:
|
|
9
|
+
- **Purpose**: What is this agent for? One sentence describing its reason to exist.
|
|
10
|
+
- **Capabilities**: What can this agent do? List specific actions and outputs.
|
|
11
|
+
- **Knowledge scope**: What does this agent know about? What domains, data, and context does it have access to?
|
|
12
|
+
- **Authority**: What decisions can this agent make autonomously? What requires approval?
|
|
13
|
+
- **Boundaries**: What is explicitly outside this agent's scope? Where does it stop and hand off?
|
|
14
|
+
- **Success criteria**: How do you know this agent is doing its job well?
|
|
15
|
+
## Role Design Principles
|
|
16
|
+
- **Single responsibility**: Each agent should have one clear purpose. If you need a paragraph to explain what it does, it's doing too much.
|
|
17
|
+
- **Clear boundaries**: The line between one agent's scope and another's should be unambiguous. No overlapping authority without explicit conflict resolution.
|
|
18
|
+
- **Minimal coupling**: Agents should be able to do their work with minimal dependencies on other agents. Share results, not process.
|
|
19
|
+
- **Appropriate autonomy**: The level of autonomous decision-making should match the stakes and the agent's reliability in that domain.
|
|
20
|
+
## Role Patterns
|
|
21
|
+
- **Specialist**: Deep expertise in one domain. Handles all tasks of a specific type.
|
|
22
|
+
- **Router**: Doesn't do work itself but directs tasks to the right specialist.
|
|
23
|
+
- **Orchestrator**: Manages the overall workflow, coordinates between specialists.
|
|
24
|
+
- **Validator**: Reviews other agents' outputs for quality, safety, or compliance.
|
|
25
|
+
- **Fallback**: Handles cases that other agents can't or won't.
|
|
26
|
+
## Role Conflicts
|
|
27
|
+
When agents' roles overlap or conflict:
|
|
28
|
+
- **Priority rules**: When two agents could handle a task, which one gets it?
|
|
29
|
+
- **Escalation paths**: When agents disagree, who decides?
|
|
30
|
+
- **Shared resources**: When agents need the same data or tools, how is access managed?
|
|
31
|
+
- **Feedback loops**: How do agents inform each other about what they've done?
|
|
32
|
+
## Design Artefacts
|
|
33
|
+
- Agent role cards (one per agent with all specifications)
|
|
34
|
+
- Role boundary map showing where each agent's authority starts and stops
|
|
35
|
+
- Interaction matrix showing which agents communicate with which
|
|
36
|
+
- Authority hierarchy diagram
|
|
37
|
+
- Role conflict resolution rules
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: failure-recovery
|
|
3
|
+
description: What happens when an agent fails — retry, fallback, escalate, or graceful degradation.
|
|
4
|
+
---
|
|
5
|
+
# Failure Recovery
|
|
6
|
+
Agents fail. Networks time out, models hallucinate, tools error, and edge cases surprise. Failure recovery design determines whether a failure becomes a dead end or a graceful detour.
|
|
7
|
+
## Failure Types in Multi-Agent Systems
|
|
8
|
+
- **Agent failure**: A single agent crashes, times out, or produces invalid output
|
|
9
|
+
- **Handoff failure**: Context is lost or corrupted during transfer between agents
|
|
10
|
+
- **Coordination failure**: Agents conflict, deadlock, or produce inconsistent results
|
|
11
|
+
- **Resource failure**: External tools, APIs, or data sources are unavailable
|
|
12
|
+
- **Cascading failure**: One agent's failure causes downstream agents to fail
|
|
13
|
+
## Recovery Strategies
|
|
14
|
+
- **Retry**: Try the same operation again. Works for transient errors (network timeouts, rate limits). Set a retry limit to avoid infinite loops.
|
|
15
|
+
- **Fallback**: Switch to an alternative approach. A different agent, a simpler method, or a cached result.
|
|
16
|
+
- **Escalation**: Pass the problem to a more capable agent or to a human. Used when the failure is beyond the current agent's ability to resolve.
|
|
17
|
+
- **Graceful degradation**: Deliver a partial result rather than nothing. Tell the user what worked and what didn't.
|
|
18
|
+
- **Compensation**: Undo the effects of a partially completed workflow before retrying or escalating.
|
|
19
|
+
## Designing Recovery Paths
|
|
20
|
+
For each point in the workflow where failure is possible:
|
|
21
|
+
- **What could fail?** List the failure modes
|
|
22
|
+
- **What's the first recovery strategy?** Usually retry for transient errors
|
|
23
|
+
- **What's the fallback?** If retry fails, what's the alternative?
|
|
24
|
+
- **When do you escalate?** After how many retries or what type of failure?
|
|
25
|
+
- **What does the user see?** Transparent about the failure or silently recovered?
|
|
26
|
+
- **What's the worst case?** If all recovery fails, what's the graceful degradation?
|
|
27
|
+
## User Experience of Failures
|
|
28
|
+
- **Invisible recovery**: The system retries or falls back without the user noticing. Best for minor, quickly resolved failures.
|
|
29
|
+
- **Transparent recovery**: The system tells the user something went wrong and how it's handling it. "This is taking longer than usual — trying an alternative approach."
|
|
30
|
+
- **Participatory recovery**: The system asks the user to help. "I couldn't access your calendar. Can you check the connection?"
|
|
31
|
+
- **Honest failure**: The system tells the user it can't complete the task and explains why. Offers alternatives.
|
|
32
|
+
## Design Artefacts
|
|
33
|
+
- Failure mode inventory per agent and per handoff
|
|
34
|
+
- Recovery strategy specifications (retry limits, fallback paths, escalation triggers)
|
|
35
|
+
- Cascading failure analysis
|
|
36
|
+
- User experience specifications for each failure scenario
|
|
37
|
+
- Recovery testing protocols
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: handoff-protocols
|
|
3
|
+
description: Designing smooth transitions between agents and between AI and humans.
|
|
4
|
+
---
|
|
5
|
+
# Handoff Protocols
|
|
6
|
+
A handoff is the moment one agent passes work to another — or to a human. It's where multi-agent systems most commonly fail. A dropped handoff means lost context, repeated work, or abandoned tasks.
|
|
7
|
+
## Anatomy of a Handoff
|
|
8
|
+
Every handoff has:
|
|
9
|
+
- **Trigger**: What causes the handoff? (task completion, scope boundary, failure, user request)
|
|
10
|
+
- **Source**: Who is handing off?
|
|
11
|
+
- **Destination**: Who is receiving?
|
|
12
|
+
- **Payload**: What information transfers? (context, partial results, user state, instructions)
|
|
13
|
+
- **Acknowledgment**: How does the source know the destination received the handoff?
|
|
14
|
+
- **User experience**: What does the user see during the handoff?
|
|
15
|
+
## Handoff Types
|
|
16
|
+
- **Sequential**: Agent A finishes, passes results to Agent B who continues. Like a relay race.
|
|
17
|
+
- **Parallel fan-out**: One agent distributes subtasks to multiple agents simultaneously.
|
|
18
|
+
- **Parallel fan-in**: Multiple agents' results converge back to one agent for synthesis.
|
|
19
|
+
- **Escalation**: An agent can't handle the task and passes up to a more capable agent or human.
|
|
20
|
+
- **Fallback**: The primary agent fails and a backup takes over.
|
|
21
|
+
- **Human handoff**: AI passes work to a human for review, decision, or completion.
|
|
22
|
+
## Context Transfer
|
|
23
|
+
The most common handoff failure is context loss. Design what transfers:
|
|
24
|
+
- **Full context**: Everything the source agent knew. Safe but potentially overwhelming.
|
|
25
|
+
- **Summarised context**: Key information distilled. Efficient but risks losing important nuance.
|
|
26
|
+
- **Structured context**: Predefined fields that must be populated. Consistent but rigid.
|
|
27
|
+
- **Incremental context**: Only what's new since the last handoff. Efficient for ongoing collaborations.
|
|
28
|
+
## Designing for the User
|
|
29
|
+
The user's experience of handoffs matters:
|
|
30
|
+
- **Invisible handoff**: The user doesn't know agents changed. The experience feels seamless.
|
|
31
|
+
- **Transparent handoff**: The user is told a new agent is taking over and why.
|
|
32
|
+
- **Participatory handoff**: The user confirms the handoff or provides additional context.
|
|
33
|
+
- **User-initiated handoff**: The user explicitly requests a different agent or a human.
|
|
34
|
+
## Handoff Anti-Patterns
|
|
35
|
+
- **The black hole**: Work is handed off but never picked up
|
|
36
|
+
- **The echo chamber**: Agents hand work back and forth without progress
|
|
37
|
+
- **The context cliff**: Critical information is lost in the handoff
|
|
38
|
+
- **The jarring transition**: The user's experience changes dramatically at the handoff point
|
|
39
|
+
- **The silent redirect**: The user doesn't know they've been handed off and gets confused by changes
|
|
40
|
+
## Design Artefacts
|
|
41
|
+
- Handoff protocol specifications (trigger, source, destination, payload, acknowledgment)
|
|
42
|
+
- Context transfer templates
|
|
43
|
+
- Handoff sequence diagrams
|
|
44
|
+
- User experience specifications for each handoff type
|
|
45
|
+
- Handoff failure mode analysis
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: human-in-the-loop
|
|
3
|
+
description: Designing intervention points where humans review, approve, or redirect agent work.
|
|
4
|
+
---
|
|
5
|
+
# Human-in-the-Loop
|
|
6
|
+
Human-in-the-loop design defines when, where, and how humans intervene in automated workflows. Too little human involvement and the system makes dangerous mistakes. Too much and you've just built an expensive notification system.
|
|
7
|
+
## Intervention Types
|
|
8
|
+
- **Approval gates**: The system pauses and waits for human approval before proceeding
|
|
9
|
+
- **Review checkpoints**: The system presents results for human review but can continue if no objection
|
|
10
|
+
- **Correction opportunities**: The system shows its work and the human can edit before it's finalised
|
|
11
|
+
- **Override controls**: The human can stop, redirect, or undo the system's actions at any time
|
|
12
|
+
- **Monitoring dashboards**: The human passively observes the system and intervenes only when needed
|
|
13
|
+
## When to Require Human Intervention
|
|
14
|
+
- **High stakes**: Actions that are expensive, irreversible, or affect many people
|
|
15
|
+
- **Low confidence**: The system is uncertain about the right action
|
|
16
|
+
- **Novel situations**: The input or context is outside the system's training distribution
|
|
17
|
+
- **Ethical judgments**: Decisions that require moral reasoning or value trade-offs
|
|
18
|
+
- **Legal requirements**: Regulatory or compliance requirements mandate human review
|
|
19
|
+
- **User request**: The user explicitly asks for human involvement
|
|
20
|
+
## Designing Intervention Points
|
|
21
|
+
For each intervention point:
|
|
22
|
+
- **Trigger**: What causes the intervention? (confidence threshold, stakes level, user request, policy requirement)
|
|
23
|
+
- **Presentation**: What does the human see? (summary, full context, recommendations, options)
|
|
24
|
+
- **Time constraint**: How quickly must the human respond? What happens if they don't?
|
|
25
|
+
- **Decision options**: What can the human do? (approve, reject, edit, escalate, defer)
|
|
26
|
+
- **Feedback integration**: How does the human's decision feed back into the system?
|
|
27
|
+
## Avoiding Human Bottlenecks
|
|
28
|
+
Human intervention is expensive and slow. Design to minimise unnecessary intervention:
|
|
29
|
+
- **Graduated autonomy**: Start with more human oversight, reduce as the system proves reliable
|
|
30
|
+
- **Batch review**: Group similar decisions for efficient human processing
|
|
31
|
+
- **Smart routing**: Send interventions to the right human based on expertise and availability
|
|
32
|
+
- **Default actions**: If the human doesn't respond within a time window, take a safe default action
|
|
33
|
+
- **Learning from interventions**: Use human decisions to improve the system so it needs less intervention over time
|
|
34
|
+
## Design Artefacts
|
|
35
|
+
- Intervention point map (where in the workflow, what triggers each)
|
|
36
|
+
- Intervention interface designs (what the human sees and can do)
|
|
37
|
+
- Time constraint specifications
|
|
38
|
+
- Graduated autonomy plans
|
|
39
|
+
- Intervention analytics specifications (tracking how often, why, and what humans decide)
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: observability-design
|
|
3
|
+
description: Making multi-agent workflows visible and debuggable for designers and developers.
|
|
4
|
+
---
|
|
5
|
+
# Observability Design
|
|
6
|
+
You can't improve what you can't see. Observability design makes the internal workings of multi-agent systems visible — so designers can understand user experience problems, developers can debug failures, and teams can improve the system over time.
|
|
7
|
+
## What to Make Observable
|
|
8
|
+
- **Workflow execution**: Which agents were involved, in what order, with what results
|
|
9
|
+
- **Decision points**: What decisions were made, what alternatives were considered, why one was chosen
|
|
10
|
+
- **Handoff details**: What context transferred between agents, was anything lost
|
|
11
|
+
- **Timing**: How long each agent took, where bottlenecks occur
|
|
12
|
+
- **Failures**: What failed, how it was recovered, what the user experienced
|
|
13
|
+
- **Quality signals**: Output quality scores, user satisfaction signals, task success markers
|
|
14
|
+
## Observability for Different Audiences
|
|
15
|
+
**For designers:**
|
|
16
|
+
- User journey view: What did the user experience across the whole workflow?
|
|
17
|
+
- Pain point identification: Where did users struggle, abandon, or express frustration?
|
|
18
|
+
- Quality patterns: Which outputs are high and low quality, and why?
|
|
19
|
+
**For developers:**
|
|
20
|
+
- Execution traces: Step-by-step log of agent actions
|
|
21
|
+
- Error logs: What failed and where
|
|
22
|
+
- Performance metrics: Latency, throughput, resource usage
|
|
23
|
+
**For product managers:**
|
|
24
|
+
- Usage patterns: Which workflows are used most, which are abandoned
|
|
25
|
+
- Success metrics: Task completion rates, user satisfaction trends
|
|
26
|
+
- Cost analysis: Resource consumption per workflow
|
|
27
|
+
**For users (optional):**
|
|
28
|
+
- Progress indicators: Where is the system in the workflow?
|
|
29
|
+
- Agent transparency: Which agent is handling their request?
|
|
30
|
+
- Audit trails: What the system did on their behalf
|
|
31
|
+
## Designing Observability Interfaces
|
|
32
|
+
- **Dashboards**: Real-time and historical views of system health and performance
|
|
33
|
+
- **Trace viewers**: Detailed step-by-step views of individual workflow executions
|
|
34
|
+
- **Alert systems**: Notifications when metrics exceed thresholds
|
|
35
|
+
- **Search and filter**: Ability to find specific executions by criteria
|
|
36
|
+
- **Comparison tools**: Compare performance across time periods, versions, or cohorts
|
|
37
|
+
## Observability Without Overload
|
|
38
|
+
Too much data is as bad as too little:
|
|
39
|
+
- **Layered detail**: Start with high-level summary, drill down on demand
|
|
40
|
+
- **Smart defaults**: Show the most important information first
|
|
41
|
+
- **Anomaly highlighting**: Surface unusual patterns automatically
|
|
42
|
+
- **Contextual views**: Different views for different questions
|
|
43
|
+
## Design Artefacts
|
|
44
|
+
- Observability architecture diagrams
|
|
45
|
+
- Dashboard specifications per audience
|
|
46
|
+
- Trace schema definitions
|
|
47
|
+
- Alert threshold configurations
|
|
48
|
+
- Observability tool requirements
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: state-management
|
|
3
|
+
description: Managing shared context, memory, and state across multiple agents.
|
|
4
|
+
---
|
|
5
|
+
# State Management
|
|
6
|
+
|
|
7
|
+
In a multi-agent system, state is the shared truth about what's happened, what's in progress, and what's been decided. Without state management, agents work with stale or conflicting information — and the user pays the cost in repeated questions, contradictory answers, and lost progress.
|
|
8
|
+
|
|
9
|
+
State management is the *plumbing* skill of multi-agent design. Get it wrong and every other skill in this plugin gets harder.
|
|
10
|
+
|
|
11
|
+
## Types of state
|
|
12
|
+
|
|
13
|
+
- **Task state**: where the overall task is in its lifecycle. Which subtasks are complete, in progress, or pending.
|
|
14
|
+
- **Context state**: what each agent knows. What has been shared, summarised, or dropped.
|
|
15
|
+
- **User state**: preferences, history, and current emotional state.
|
|
16
|
+
- **Decision state**: decisions made, options considered, options rejected (and why).
|
|
17
|
+
- **Error state**: what has failed, been retried, been escalated.
|
|
18
|
+
|
|
19
|
+
## State architecture patterns
|
|
20
|
+
|
|
21
|
+
- **Centralised state**: one shared store all agents read from and write to. Simple, debuggable. Bottleneck risk at scale.
|
|
22
|
+
- **Distributed state**: each agent maintains its own state and syncs with others. Flexible. Consistency risk.
|
|
23
|
+
- **Event-sourced state**: state is built from a log of events. Every change is recorded. Auditable. Complex.
|
|
24
|
+
- **Blackboard pattern**: shared workspace where agents post results and read others' contributions. Good for collaborative problem-solving.
|
|
25
|
+
|
|
26
|
+
## Designing state for users
|
|
27
|
+
|
|
28
|
+
Users have expectations about what the system remembers:
|
|
29
|
+
|
|
30
|
+
- **Within-session state**: everything said in this conversation should persist consistently
|
|
31
|
+
- **Cross-session state**: preferences, decisions, and context from past sessions should carry forward
|
|
32
|
+
- **Cross-agent state**: if one agent learned something, other agents should know
|
|
33
|
+
- **User-controlled state**: users should be able to see, edit, and clear what the system remembers
|
|
34
|
+
|
|
35
|
+
## Decision rules
|
|
36
|
+
|
|
37
|
+
- **Default to centralised state.** Reach for distributed only when measured cross-agent latency is genuinely the bottleneck. Most teams choose distributed prematurely and pay in consistency bugs forever.
|
|
38
|
+
- **If a piece of state lives in a single agent's working memory, treat it as lost.** Memory across model invocations is unreliable; promote anything that needs to persist to the shared store.
|
|
39
|
+
- **Cross-session state requires explicit consent per category.** "Remember preferences" ≠ "remember what we discussed". Granularity is the design constraint, not a nice-to-have.
|
|
40
|
+
- **For state conflicts, prefer detection over silent merging.** A surfaced conflict the user resolves is recoverable; a silently merged inconsistency is invisible damage.
|
|
41
|
+
- **State a user can't see, they can't trust.** Any state used to personalise behaviour must be visible somewhere the user can find within ~30 s of UI navigation.
|
|
42
|
+
|
|
43
|
+
## Anti-patterns
|
|
44
|
+
|
|
45
|
+
- **The stale-context bug**: an agent acts on state that's been superseded by another agent. Hard to detect because the agent looks correct in isolation. Mitigated by versioning every read.
|
|
46
|
+
- **The one-source-of-truth fight**: two agents both claim authority over the same state slice. Resolution rules are vague. Last write wins, intermittently.
|
|
47
|
+
- **Implicit state**: state lives in an agent's prompt context rather than the shared store. Lost on restart, untransferable, undebuggable.
|
|
48
|
+
- **State sprawl**: schema grows unbounded as features accrete. After six months nobody knows what's used, what's dead, or what's load-bearing.
|
|
49
|
+
- **Sync deferral**: writes are batched for efficiency, then dropped on failure. The user sees "saved" but the state never made it.
|
|
50
|
+
- **Invisible personalisation**: state shapes behaviour the user can't see or override — drift toward manipulation.
|
|
51
|
+
|
|
52
|
+
## When not to use this
|
|
53
|
+
|
|
54
|
+
- **Single-agent products** — the model's context window *is* the state. Reach for `context-window-design` instead.
|
|
55
|
+
- **Stateless transactional features** (one-shot completions, image generation calls) — explicit state architecture adds overhead without benefit.
|
|
56
|
+
- **Prototype phase** — premature state architecture freezes choices that should still be loose. Use the simplest possible store, document decisions in `decision-state` only.
|
|
57
|
+
|
|
58
|
+
## See also
|
|
59
|
+
|
|
60
|
+
- `handoff-protocols` — context transfer between agents *uses* the state architecture; design them together.
|
|
61
|
+
- `observability-design` — state mutations are the most useful traces. Design what's logged at the same time as what's stored.
|
|
62
|
+
- `consent-and-agency` — cross-session and cross-agent state is consent-laden by default.
|
|
63
|
+
- `task-decomposition` — task-state schema is determined by the decomposition shape; co-design.
|
|
64
|
+
|
|
65
|
+
## Design Artefacts
|
|
66
|
+
|
|
67
|
+
- State architecture diagrams (centralised / distributed / event-sourced / blackboard)
|
|
68
|
+
- State schema definitions (what's stored, where, by whom, with what TTL)
|
|
69
|
+
- State lifecycle specifications (creation, update, archival, deletion)
|
|
70
|
+
- Conflict resolution rules per state slice
|
|
71
|
+
- User-facing state visibility and control designs
|
|
72
|
+
|
|
73
|
+
Worked example — task state for a multi-agent customer support flow:
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
{
|
|
77
|
+
"task_id": "tk_8b2",
|
|
78
|
+
"owner_agent": "router", // who currently holds the task
|
|
79
|
+
"status": "in_progress | escalated | done",
|
|
80
|
+
"subtasks": [
|
|
81
|
+
{"id": "verify_account", "status": "done", "result_ref": "ctx_a91"},
|
|
82
|
+
{"id": "check_refund_eligibility", "status": "in_progress", "owner": "billing_agent"}
|
|
83
|
+
],
|
|
84
|
+
"user_state_ref": "us_482", // pointer, not embedded copy
|
|
85
|
+
"decisions": [
|
|
86
|
+
{"at": "...", "by": "router", "choice": "billing_agent", "rejected": ["faq_agent"], "why": "intent: refund"}
|
|
87
|
+
],
|
|
88
|
+
"errors": [],
|
|
89
|
+
"version": 7 // increments on every write; readers check before acting
|
|
90
|
+
}
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
The version field is the simplest defence against the stale-context bug. The `decisions` log with `rejected` makes the routing legible to humans during incident review.
|
|
94
|
+
|
|
95
|
+
Adapted from work on shared mental models in multi-agent systems and distributed-systems consistency literature (Lamport on logical clocks; the actor model on isolated state).
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: task-decomposition
|
|
3
|
+
description: Breaking complex user goals into subtasks that agents can handle.
|
|
4
|
+
---
|
|
5
|
+
# Task Decomposition
|
|
6
|
+
Users come with goals, not subtasks. Task decomposition is how a multi-agent system breaks a complex user goal into pieces that individual agents can handle — and then reassembles the results into something coherent.
|
|
7
|
+
## Decomposition Strategies
|
|
8
|
+
- **Sequential decomposition**: Break the goal into ordered steps. Step 1 must complete before Step 2 starts.
|
|
9
|
+
- **Parallel decomposition**: Break the goal into independent parts that can be worked on simultaneously.
|
|
10
|
+
- **Hierarchical decomposition**: Break the goal into sub-goals, then break each sub-goal into tasks.
|
|
11
|
+
- **Conditional decomposition**: The next step depends on the result of the current step. Different results lead to different paths.
|
|
12
|
+
- **Iterative decomposition**: Start with a rough version, then refine through multiple passes.
|
|
13
|
+
## Designing Decomposition Rules
|
|
14
|
+
For each type of user goal the system handles:
|
|
15
|
+
- **What's the entry point?** How does the system receive the goal?
|
|
16
|
+
- **What are the subtasks?** List all possible subtasks for this goal type.
|
|
17
|
+
- **What are the dependencies?** Which subtasks depend on others' outputs?
|
|
18
|
+
- **What's the critical path?** Which sequence of subtasks determines the minimum completion time?
|
|
19
|
+
- **What can be parallelised?** Which subtasks can run simultaneously?
|
|
20
|
+
- **What's the reassembly logic?** How do subtask results combine into the final output?
|
|
21
|
+
## Granularity
|
|
22
|
+
How finely to decompose matters:
|
|
23
|
+
- **Too coarse**: Single agents get tasks that are too complex, leading to lower quality
|
|
24
|
+
- **Too fine**: Overhead from handoffs exceeds the benefit of specialisation
|
|
25
|
+
- **Just right**: Each subtask matches one agent's sweet spot in terms of scope and complexity
|
|
26
|
+
## Handling Ambiguity
|
|
27
|
+
User goals are often ambiguous. The system needs to:
|
|
28
|
+
- **Clarify before decomposing**: Ask the user to specify when the goal is unclear
|
|
29
|
+
- **Decompose tentatively**: Start with a plan and adjust as information emerges
|
|
30
|
+
- **Recompose when needed**: If decomposition was wrong, restructure without starting over
|
|
31
|
+
## Design Artefacts
|
|
32
|
+
- Task decomposition trees for each goal type
|
|
33
|
+
- Dependency maps showing subtask relationships
|
|
34
|
+
- Parallelisation specifications
|
|
35
|
+
- Reassembly logic definitions
|
|
36
|
+
- Ambiguity handling protocols
|
package/src/skills-lib/ai-product-design/references/evaluation/comparative-evaluation/SKILL.md
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: comparative-evaluation
|
|
3
|
+
description: A/B testing, side-by-side comparison, and preference ranking for AI outputs.
|
|
4
|
+
---
|
|
5
|
+
# Comparative Evaluation
|
|
6
|
+
Absolute quality scores are useful but limited. Comparative evaluation — putting outputs side by side and asking which is better — often reveals quality differences that rubrics miss.
|
|
7
|
+
## Comparison Methods
|
|
8
|
+
- **A/B testing**: Show different users different versions and compare outcomes
|
|
9
|
+
- **Side-by-side evaluation**: Show evaluators two outputs for the same input and ask which is better
|
|
10
|
+
- **Preference ranking**: Show evaluators multiple outputs and rank them from best to worst
|
|
11
|
+
- **Paired comparison**: Compare every pair of options to build a complete ranking
|
|
12
|
+
- **Elo rating**: Use tournament-style comparisons to develop continuous quality scores
|
|
13
|
+
## Designing A/B Tests for AI
|
|
14
|
+
A/B testing AI is different from A/B testing UI:
|
|
15
|
+
- **Variance is high**: The same prompt can produce different outputs, so you need more samples
|
|
16
|
+
- **Context matters**: The same change might help for one task and hurt for another
|
|
17
|
+
- **Metrics lag**: AI quality changes may take time to show up in user behavior
|
|
18
|
+
- **Interaction effects**: A change to one part of the conversation affects all subsequent parts
|
|
19
|
+
Design A/B tests with:
|
|
20
|
+
- Sufficient sample sizes to account for output variance
|
|
21
|
+
- Segmentation by task type and user experience level
|
|
22
|
+
- Multiple metrics (don't optimise for one at the expense of others)
|
|
23
|
+
- Guardrails to catch severe quality regressions quickly
|
|
24
|
+
## Side-by-Side Evaluation Design
|
|
25
|
+
For human evaluation of AI outputs:
|
|
26
|
+
- **Blind evaluation**: Evaluators shouldn't know which version is which
|
|
27
|
+
- **Consistent inputs**: Compare outputs generated from the same input
|
|
28
|
+
- **Structured criteria**: Give evaluators specific dimensions to compare on, not just "which is better"
|
|
29
|
+
- **Multiple evaluators**: Use at least 3 evaluators per comparison for reliability
|
|
30
|
+
- **Diverse inputs**: Test across a representative sample of real user inputs
|
|
31
|
+
## When to Use Comparative vs. Absolute Evaluation
|
|
32
|
+
- **Comparative**: Best for choosing between alternatives, detecting subtle quality differences, and model selection
|
|
33
|
+
- **Absolute**: Best for measuring against a standard, tracking progress over time, and certification
|
|
34
|
+
## Design Artefacts
|
|
35
|
+
- A/B test design templates
|
|
36
|
+
- Side-by-side evaluation protocols
|
|
37
|
+
- Evaluator instructions and rubrics
|
|
38
|
+
- Sample size calculators for AI experiments
|
|
39
|
+
- Comparison result analysis frameworks
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: failure-taxonomy
|
|
3
|
+
description: Classifying AI failures — hallucination, refusal, irrelevance, tone mismatch, latency.
|
|
4
|
+
---
|
|
5
|
+
# Failure Taxonomy
|
|
6
|
+
Not all AI failures are the same. A hallucination is different from a refusal, which is different from a tone mismatch. A failure taxonomy classifies failure types so teams can track, prioritise, and address them systematically.
|
|
7
|
+
## Failure Categories
|
|
8
|
+
**Content Failures:**
|
|
9
|
+
- **Hallucination**: The AI presents false information as fact
|
|
10
|
+
- **Inaccuracy**: The AI gets details wrong (dates, numbers, names)
|
|
11
|
+
- **Incompleteness**: The AI misses important information
|
|
12
|
+
- **Irrelevance**: The AI's response doesn't address the user's actual question
|
|
13
|
+
- **Contradiction**: The AI contradicts itself within or across responses
|
|
14
|
+
**Behavioral Failures:**
|
|
15
|
+
- **Inappropriate refusal**: The AI refuses a reasonable request
|
|
16
|
+
- **Missing refusal**: The AI fulfils a request it should have declined
|
|
17
|
+
- **Tone mismatch**: The AI's tone is wrong for the context
|
|
18
|
+
- **Persona break**: The AI drops out of its defined persona
|
|
19
|
+
- **Over-generation**: The AI produces far more than needed
|
|
20
|
+
**Technical Failures:**
|
|
21
|
+
- **Latency**: Response takes too long
|
|
22
|
+
- **Truncation**: Response is cut off
|
|
23
|
+
- **Format errors**: Output is in the wrong format or structure
|
|
24
|
+
- **Tool failures**: The AI attempts to use a tool and fails
|
|
25
|
+
- **Context loss**: The AI loses track of conversation history
|
|
26
|
+
**Safety Failures:**
|
|
27
|
+
- **Harmful content**: The AI generates content that could cause harm
|
|
28
|
+
- **Privacy violation**: The AI reveals sensitive information
|
|
29
|
+
- **Bias manifestation**: The AI's output shows bias against a group
|
|
30
|
+
- **Manipulation**: The AI's output could be used to deceive or manipulate
|
|
31
|
+
## Severity Levels
|
|
32
|
+
- **Critical**: Causes harm or creates serious trust violation. Requires immediate fix.
|
|
33
|
+
- **High**: Significantly degrades user experience or task success. Fix within days.
|
|
34
|
+
- **Medium**: Noticeable quality issue that users can work around. Fix within weeks.
|
|
35
|
+
- **Low**: Minor quality issue. Track and batch with other fixes.
|
|
36
|
+
## Using the Taxonomy
|
|
37
|
+
- **Logging**: Classify every detected failure by type and severity
|
|
38
|
+
- **Trending**: Track failure type frequency over time
|
|
39
|
+
- **Prioritisation**: Address highest-severity, highest-frequency failures first
|
|
40
|
+
- **Root cause analysis**: Group failures by type to identify systemic causes
|
|
41
|
+
- **Prevention**: Use failure patterns to inform guardrail design and prompt improvements
|
|
42
|
+
## Design Artefacts
|
|
43
|
+
- Failure taxonomy reference document
|
|
44
|
+
- Failure logging templates
|
|
45
|
+
- Severity classification rubric
|
|
46
|
+
- Failure trend dashboards
|
|
47
|
+
- Root cause analysis protocols
|
package/src/skills-lib/ai-product-design/references/evaluation/heuristic-evaluation-ai/SKILL.md
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: heuristic-evaluation-ai
|
|
3
|
+
description: Adapting Nielsen's heuristics and new AI-specific heuristics for AI interfaces.
|
|
4
|
+
---
|
|
5
|
+
# Heuristic Evaluation for AI
|
|
6
|
+
Nielsen's 10 usability heuristics were designed for traditional software. AI products need adapted heuristics that address the unique challenges of probabilistic, generative, and conversational systems.
|
|
7
|
+
## Classic Heuristics, Adapted for AI
|
|
8
|
+
**1. Visibility of system status**
|
|
9
|
+
AI adaptation: The user should always know what the AI is doing, what it's working with, and how confident it is. Progress indicators for generation. Transparency about data sources.
|
|
10
|
+
**2. Match between system and real world**
|
|
11
|
+
AI adaptation: The AI should use language and concepts the user understands. Don't expose model internals. Frame capabilities in terms of user tasks, not technical features.
|
|
12
|
+
**3. User control and freedom**
|
|
13
|
+
AI adaptation: Users must be able to stop generation, undo AI actions, edit outputs, and override suggestions. AI autonomy should always have an exit.
|
|
14
|
+
**4. Consistency and standards**
|
|
15
|
+
AI adaptation: The AI should behave consistently across similar requests. Same input type should produce same output format. Persona should be stable.
|
|
16
|
+
**5. Error prevention**
|
|
17
|
+
AI adaptation: Design prompts and interfaces that guide users toward effective interactions. Suggest clarifications before producing low-quality output.
|
|
18
|
+
**6. Recognition rather than recall**
|
|
19
|
+
AI adaptation: Show users what the AI can do rather than requiring them to discover commands. Surface relevant capabilities contextually.
|
|
20
|
+
**7. Flexibility and efficiency of use**
|
|
21
|
+
AI adaptation: Support both novice (guided) and expert (shortcut) interaction modes. Power users should be able to customise AI behavior.
|
|
22
|
+
**8. Aesthetic and minimalist design**
|
|
23
|
+
AI adaptation: AI outputs should be concise and well-structured. Don't pad responses with unnecessary caveats or filler.
|
|
24
|
+
**9. Help users recognise, diagnose, and recover from errors**
|
|
25
|
+
AI adaptation: When the AI fails, explain what went wrong in user terms, not technical terms. Offer clear recovery paths.
|
|
26
|
+
**10. Help and documentation**
|
|
27
|
+
AI adaptation: Provide contextual guidance on how to interact with the AI effectively. Teach prompting skills through the interface.
|
|
28
|
+
## AI-Specific Heuristics
|
|
29
|
+
Beyond the classic 10, AI products need evaluation against:
|
|
30
|
+
- **Calibrated trust**: Does the interface help users trust the AI appropriately — neither too much nor too little?
|
|
31
|
+
- **Graceful degradation**: When the AI can't fully help, does it partially help rather than failing completely?
|
|
32
|
+
- **Feedback effectiveness**: Can users correct the AI easily, and does the AI adapt?
|
|
33
|
+
- **Transparency of limitations**: Are the AI's boundaries clear before the user hits them?
|
|
34
|
+
- **Appropriate autonomy**: Does the AI take the right amount of initiative for the task and context?
|
|
35
|
+
## Running an AI Heuristic Evaluation
|
|
36
|
+
1. Select 3-5 evaluators with AI product experience
|
|
37
|
+
2. Define the scope (which features, which user tasks)
|
|
38
|
+
3. Each evaluator independently works through the heuristics
|
|
39
|
+
4. Capture issues with severity ratings
|
|
40
|
+
5. Consolidate findings and prioritise
|
|
41
|
+
## Design Artefacts
|
|
42
|
+
- AI heuristic checklist (adapted classics + AI-specific)
|
|
43
|
+
- Evaluation protocol and scoring rubric
|
|
44
|
+
- Issue severity classification guide
|
|
45
|
+
- Heuristic evaluation report template
|
|
46
|
+
- Prioritised findings matrix
|