Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add bearlike/Grove --skill mocking-up-in-grovegit clone --depth 1 https://github.com/bearlike/GroveWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/bearlike/grove/mocking-up-in-grove)<a href="https://agentmods.dev/skills/bearlike/grove/mocking-up-in-grove"><img src="https://agentmods.dev/badge/skills/bearlike/grove/mocking-up-in-grove/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/bearlike/grove/mocking-up-in-grove"><img src="https://agentmods.dev/badge/skills/bearlike/grove/mocking-up-in-grove.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00090 | $0.00905 |
| Opus 5.5 | $0.00036 | $0.00362 |
| Sonnet 5.5 | $0.00018 | $0.00181 |
| Haiku 4.5 | $0.00009 | $0.00090 |
Grade A, and why
mocking-up-in-grove scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 22d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 77 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Mocking up in Grove
A frontend change is approved as a picture before it exists as code. The
picture lives in a .drawio file the human can open in the workspace's
Diagram tab; the approved render lives on the tracker issue, where people who
never open the workspace can see what was agreed. Nothing in the mockup path
is committed.
1. Read before you draw
Read the surface's own guide and its visual contract (webapp/CLAUDE.md and
webapp/design-system.md for the web app, src/grove/tui/CLAUDE.md and
docs/design-system.md for the TUI). Take the census of vendored components
before deciding anything is missing. Screenshot the current surface with the
browser tools so the mockup can be compared against something real. Report
scope, then plan, through the phase channel working-in-grove
describes.
2. Draw where nothing tracks it
Write uncompressed <mxfile> XML to a workspace-relative path under
.grove/attachments/ — that directory is excluded from git — with the
.drawio suffix the diagram tools require. Then open it managed:
grove_open_diagram(workspace_id=…, path=".grove/attachments/<topic>.drawio")
From here every edit goes through grove_update_diagram with the revision and
session id from the last read, exactly as collaborating-on-diagrams says.
Three drawing rules keep the export honest: plain-text labels (text; style,
no html=1, whiteSpace=wrap so a box's geometry is respected), one shape per
control with its label riding the shape, and brand marks as shape=image
cells pointing at Iconify SVG URLs so the mockup uses the marks the code will.
Prefer a small set of real states — resting, open, light, dark — over a wall of
variants.
3. Preview, then ask
The human opens the workspace's Diagram tab; that browser frame is the only renderer. Wait for it, then:
grove_read_diagram_preview(workspace_id=…)
Inspect the PNG for clipped labels, overlaps and missing images before showing it. Present the mockup with what it decides and what it deliberately leaves out, and stop. Approval is a gate, not a formality: nothing below happens until the human says yes, and a "yes, but" restarts step 2.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 22d ago Changed cb33a3d6df59
- 29d ago First seen · 77 lines · 90 tokens per session scan A 1cdc56abed5f
mocking-up-in-grove is a skill published in the GitHub repository bearlike/Grove (9 stars, last pushed 14d ago), licensed MIT. It adds 90 tokens to every session and 905 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-17.
Other skills, from other repositories
frontend-ui-dark-ts
Build dark-themed React applications using Tailwind CSS with custom theming, glassmorphism effects, and Framer Motion animations. Use when creating dashboards, admin panels, or data-rich interfaces with a refined dark aesthetic.
smui
The CAD Viewer is a Vite and Tailwind v4 host of @text-to-cad/ui. Shared components and CAD controls live in that package; the web app owns its top bar and browser-specific composition. In a repository checkout, read packages/ui/README.md before changing a shared control.
bb-theme-authoring
Create or edit BB color themes and inspect them in the Theme Preview panel.
agent-annotations
Create or edit element annotations in desktop Browser tabs, or update saved annotation comments through the plugin RPC.
web-animation-design
Design and implement web animations that feel natural and purposeful. Use this skill proactively whenever the user asks questions about animations, motion, easing, timing, duration, springs, transitions, or animation performance. This includes questions about how to animate specific UI elements, which easing to use…
design-context-extract
Extract design DNA from app screenshots, live URLs, or screen recordings using Google Stitch — color palettes, typography, spacing tokens, component patterns, and motion specs as design-tokens.json or Tailwind config. Use when the user points to a screenshot, URL, or video and asks to extract or audit the design…