microsoft / microsoft/hve-core

feat(skills): lofi prototype for dt-coach

Open
#1,688 0 comments 0 reactions 1 assignee Claimed by @chaosdinosaur View on GitHub
design-thinking feature skills
Dominant language
Python
Stars
1.5k
Forks
301
Avg merge
3d 3h
Merged PRs (30d)
92

Description

## Summary

Add a new skill that generates lo-fi prototype image prompts for DT Coach Method 6 (Low-Fidelity Prototypes). The skill produces pencil-sketch-style image generation prompts that enforce the "scrappy by design" philosophy — outputs should look like real hand-drawn sketches, not polished UI mockups.

Mirrors the structure and conventions of the `hifi-prototype` skill (#1496).

## Motivation

DT Coach Method 6 emphasizes lo-fi prototyping to keep stakeholders focused on behavior and flow rather than aesthetics. Image generation models drift toward polished output by default. A dedicated skill can encode the prompt engineering patterns needed to consistently produce hand-drawn-style prototype sketches suitable for user testing.

## Key Deliverables

- `SKILL.md` — core skill definition (philosophy, constraints, prompt templates, iteration guidance, validation checklist)
- `references/prompt-patterns.md` — reusable prompt fragments for sketch style enforcement, panel layouts, annotation styles
- `references/templates.md` — storyboard templates, annotation lists, hypothesis checklists
- `references/iteration-guide.md` — techniques for pulling image models back from polished output, text-legibility workarounds

## Reference Prompt for Conversion to SKILL

The following prompt demonstrates the target output style and should serve as the foundation for the skill's prompt templates:

---

> A hand-drawn pencil sketch on slightly off-white sketchbook paper, in the style of a designer's lo-fi prototype scribbled during a working session. Top of the page reads "BREWED AWAKENING — DRIVE-THRU LO-FI v0.1" in casual hand-printed lettering with a wavy underline. The sketch is laid out as a 5-step storyboard with rough hand-drawn arrows connecting the panels.
>
> Panel 1 (top-left): a simple line-drawing of a car pulling up to a coffee shop drive-thru speaker box. A small thought bubble or label says "Mao approaches."
>
> Panel 2 (top-right): a small camera icon and a Bluetooth/wifi-style icon mounted near the speaker, with a dotted line beaming toward the car. Hand-printed callout: "Auto-detect: license plate OR phone BLE." Below it, a speech-bubble from the speaker: "Hi Mao! Same as usual? Large oat latte, extra shot? [Y / N]"
>
> Panel 3 (middle-left): a sketch of a cheap wall-mounted tablet with two oversized buttons labeled "[Y]" and "[N, change it]." Annotated: "no menu to read, no talking required."
>
> Panel 4 (middle-right): a sketch of a small ticket printer inside the shop, with a printed receipt poking out reading "MAO — lg oat latte +1 shot — ready 90s." Arrow points to a stick-figure barista at an espresso bar with the note "Emme — never touched the speaker."
>
> Panel 5 (bottom): a sketch of the pickup window. The barista hands a coffee cup to the driver. Annotated: "~45 sec at window vs ~2 min today."
>
> In the right margin, a hand-printed "ANNOTATIONS" list with a vertical line separating it from the sketch:
> - "Regulars only in v0.1"
> - "Wizard-of-Oz the camera at first"
> - "No app required"
> - "Test 5 regulars × 1 week"
>
> In the bottom margin, a boxed "WHAT WE'RE TESTING" checklist with hand-drawn empty checkboxes:
> - "Do regulars want auto-detect or is it creepy?"
> - "Does Emme get her hands back?"
> - "<60 sec window-to-window for a regular?"
> - "How often is the 'usual' wrong?"
>
> Style: graphite pencil and a touch of blue ballpoint pen for accents and arrows. Imperfect lines, slightly crooked rectangles, the kind of sketch a designer makes with a real human hand on real paper. Some words slightly larger or underlined for emphasis. Visible eraser marks and one or two small smudges. NOT digital, NOT polished UI, NOT a wireframe tool output. Should feel like a photo of a page torn from a Moleskine.
>
> Aspect ratio: 4:3 or letter-paper portrait orientation.

---

### Coaching Notes (encode in skill guidance)

1. **Lo-fi is the point.** If the first generation comes back looking like a clean Figma wireframe, push back with "more like a real pencil sketch on paper, not a UI mockup" — image models drift toward polished by default and you have to keep pulling them back.
2. **Expect to iterate.** Image models are bad at hand-printed text. You may get gibberish in the callouts. That's actually fine for a lo-fi sketch — it preserves the "this is a thinking artifact, not a spec" vibe — but if you need the words legible, generate the sketch without text and add the labels yourself in any markup tool.

## Acceptance Criteria

- [ ] New skill at `.github/skills/lofi-prototype/SKILL.md`
- [ ] Skill encodes prompt templates for storyboard-style lo-fi prototype sketches
- [ ] Includes iteration guidance for pulling image models back from polished output
- [ ] Supports parameterization (project name, panel count, annotations, test hypotheses)
- [ ] Referenced from DT Coach Method 6 instructions where appropriate
- [ ] Added to `collections/design-thinking.collection.yml`
- [ ] Passes `npm run validate:skills`

## Implementation Approach

Use the RPI (Research → Plan → Implement) workflow:
1. **Research**: Review existing `dt-method-06-lofi-prototypes.instructions.md`, `dt-image-prompt-generation.instructions.md`, and the `hifi-prototype` skill structure for patterns.
2. **Plan**: Define skill structure, prompt template schema, and integration points with DT Coach agent.
3. **Implement**: Create the skill, update collection manifests, and validate.

## Related Files

- `.github/skills/hifi-prototype/SKILL.md` (sibling skill to mirror)
- `.github/instructions/design-thinking/dt-method-06-lofi-prototypes.instructions.md`
- `.github/instructions/design-thinking/dt-image-prompt-generation.instructions.md`
- `collections/design-thinking.collection.yml`

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.