Install
$ agentstack add skill-evolplus-talos-visual-spec-author ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Visual Spec Author
Use
Use this skill in QA-Author by-task mode for UI tasks before authoring structural.md.
Inputs
docs/uiux/handoffs/.md- SRS §3.4.1 Design References and §3.4.2 UI Introspection Profile
docs/instrumentation-contract.md- Figma read access
- Linked US/FR files and task file
Procedure
- Confirm task design sub-status is
design-confirmed. - Confirm handoff Figma version matches the task's confirmed version.
- Read handoff surface/component inventory,
## Design Element Manifest, decorative exclusions, and pinned Figma node IDs. If the handoff lacks the manifest for a UI task, halt withNEEDS_CONTEXTand request UI/UX Designer regenerate the handoff. - Fetch Figma nodes read-only:
- component tree;
- visible text nodes and semantic item order;
- auto-layout properties;
- fills/strokes/effects;
- typography;
- variants/states.
- Reconcile the manifest against live Figma:
- every manifest row must map to an existing Figma node or repeated template;
- every visible user-observable Figma text/field/item/action must be in the manifest or in decorative exclusions;
- exact static labels, options, placeholders, helper/error text, table/list/card field names, button text, tab/menu/chip labels, modal/toast copy, and state copy must match Figma.
- Resolve concrete values to design tokens. Hardcoded values without token mapping become open issues, not silent spec entries.
- Read instrumentation contract and attach expected test IDs/accessibility IDs to component entries and manifest rows.
- Produce
docs/uiux/visual-specs/.mdwith:
- status, source handoff hash, Figma file/version;
- component/screen entries;
## Design Element Assertionscopied from the manifest with expected role, text/value, order, required implementation, selector/accessibility hook, and verification method;- per-property assertions;
- required states;
- coverage map from US/FR/task to components and future TC IDs.
- For
Noneintrospection surfaces, generate degraded spec with pixel/OCR/verifiable properties, but still include manifest assertions for static visible text and required field/item presence. List properties not verifiable. - Use tolerances unless overridden by project docs:
- bounds/spacing ±2px;
- token colors exact, hardcoded color ΔE < 2;
- typography size exact;
- corner radius ±1px.
Design Element Assertions
The visual spec must convert each manifest row into an assertion FE Dev and QA-Exec can verify:
## Design Element Assertions
| Manifest ID | Frame / State | Role | Expected visible text / value | Required implementation | Verification method | Selector / a11y hook | Status |
|---|---|---|---|---|---|---|---|
| DEM-001 | Checkout / Payment / Default | input.field | Label: "Card number"; Placeholder: "1234 1234 1234 1234" | Field present with exact label + placeholder | DOM/text query + selector | `checkout-card-number` | required |
| DEM-002 | Orders / List / Default | table.column | "Status" | Status column present in table header and row template | DOM/text query + row-shape check | `orders-col-status` | required |
Rules:
- Static copy is exact by default: capitalization, punctuation, and ordering match Figma unless SRS/i18n explicitly overrides it.
- Dynamic data rows assert shape, field presence, and label/column/header text; sample data values are not hardcoded unless the manifest marks them static.
- Repeated groups assert the template fields/items once plus any fixed options/actions.
- Decorative exclusions never become assertions.
Hard Rules
- Do not mutate Figma.
- Do not accept stale handoffs.
- Do not accept a handoff that lacks
## Design Element Manifestfor a UI task. - Do not invent tokens, selectors, or states.
- Do not collapse multiple Figma fields/items into a generic "component present" assertion. Every manifest row gets an assertion or an explicit gap.
- Do not treat degraded mode as failure by itself; report unverifiable properties clearly.
- Commit before signaling done as part of QA-Author dispatch.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: evolplus
- Source: evolplus/talos
- License: Apache-2.0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.