Constraints for this marketplace — what DVstack is allowed to ship. Not a product definition of done.
Only document plugins and skills that exist in the tree. Do not advertise empty plugins, future topics, or README placeholders.
Shipped plugins:
dvstack-frontend— testable-ui, font-switcherdvstack-testing— twenty Playwright skillsdvstack-agents— using-dvstack, repo-recon, agent-ops-bar, verify-loop, agent-session, agent-rigor, anti-rationalization, doubt-check, source-checkdvstack-harness— harness-engineering, agent-execution-surfaces, agent-tool-design, safeguard-parity, agent-boundary-tests, agent-risk-chains
- One narrow subject per skill.
SKILL.mdfrontmatter:name(same as the folder) anddescription(what it does and when to use it).- No attribution or source lists in public skills.
- New skills should end with a
## Verificationchecklist. The Playwright skills use## Verifyplus## Rulesfor the same purpose — follow the plugin's local convention rather than mixing both. - Claims about a framework API are checked against the installed version's official docs before they ship, per
source-check. A wrong API in a skill is worse than no skill.
Agents stay light (habits). Harness owns heavy system concerns (contracts, tools, verify/recover, durable state, feature maps, hard CI, plus execution-surface / tool-design / safeguard-parity / boundary-test / risk-chain QA). Do not duplicate across that boundary — point instead.
Only subjects covered by real, first-hand experience: Playwright and test automation, the front-end side of making an app testable, and the system around coding agents. No back-end, database, SQL, or infrastructure skills.
Plugin commands/*.md are force-loaders for installed skills. They tell the agent which SKILL.md to Read and follow. They must not invent parallel rules.
AGENTS.md is the single always-on file, and it stays short. Detail lives in skills that load when relevant.
Claude Code reads AGENTS.md as project instructions when a repository has no CLAUDE.md (v2.1.277+, on the default setting), and Cursor and other agents read it too — so one file covers every tool. Do not add a CLAUDE.md here: its presence makes Claude Code skip AGENTS.md entirely, and the two would drift.
This repo is public. No private themes, secrets, personal tokens, or unpublished product internals.