product-app-surface

product-app-surface is a skill for Claude Code, Codex from GCWing/Sparo-OS. It costs 59 tokens per session (477 once invoked), scanned A, original, MIT.

Guidance for building an app-private surface, meaning the user interface of one product app. It covers the HTML, CSS, browser interaction code, optional backend coordination, permissions, and runtime preview.

In plain words
What is it for?
Creating or changing an app's main screen, styling it, handling user interactions and runtime events, calling app services, managing themes or locales, and validating the user-visible flow.
Why use it?
It gives the visible part of an app a defined structure and user path. This helps ensure that the interface, backend calls, storage, events, and permissions work together without relying on unrelated internal UI code.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Creating or changing an app's main screen, styling it, handling user interactions and runtime events, calling app services, managing themes or locales, and validating the user-visible flow.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/gcwing/sparo-os/product-app-surface
Install

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.

Any agent
npx skills add GCWing/Sparo-OS --skill product-app-surface
Clone the repo
git clone --depth 1 https://github.com/GCWing/Sparo-OS

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for product-app-surface

README.md
[![agentmods](https://agentmods.dev/badge/skills/gcwing/sparo-os/product-app-surface/github.svg)](https://agentmods.dev/skills/gcwing/sparo-os/product-app-surface)
Your own site
<a href="https://agentmods.dev/skills/gcwing/sparo-os/product-app-surface"><img src="https://agentmods.dev/badge/skills/gcwing/sparo-os/product-app-surface/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.

agentmods 80×15 button for product-app-surface

Your own site · 80×15
<a href="https://agentmods.dev/skills/gcwing/sparo-os/product-app-surface"><img src="https://agentmods.dev/badge/skills/gcwing/sparo-os/product-app-surface.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 59 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 477 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00059 $0.00477
Opus 5 $0.00030 $0.00238
Sonnet 5 $0.00012 $0.00095
Haiku 4.5 $0.00006 $0.00048

Measured 10d ago against content hash 408e175ee141, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

product-app-surface 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 10d 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.

bundles/skill-suites/product-app-development/skills/product-app-surface/SKILL.md · 31 lines

What it actually says

Product App Surface Skill

Use this skill when the Product App work changes what the user sees or operates. A surface is the app-private UI contract for a Product App, not a standalone web page and not a shared Component package.

Development Boundary

  • Start from the package facts and the generated surface scaffold. If the surface is missing, create it with CreateProductAppComponent using kind surface.
  • Treat source/index.html, source/style.css, source/ui.js, and optional source/worker.js as the editable surface source set.
  • Keep browser UI work in ui.js: DOM rendering, interaction, runtime events, theme, locale, and calls to window.app.
  • Keep custom backend logic in worker.js only when the app needs it, and align it with the Product App permission boundary.
  • Do not import Sparo host Web UI internals or React design-system modules from Product App surface code.

Key Decisions

  • Decide the primary user path first: what opens, what the user can do immediately, and what state proves the app is useful.
  • Use product-app-api when surface code touches window.app, permissions, backend calls, storage, file/network/shell access, AI, or runtime events.
  • Use product-app-ui-polish when the task is visual quality, layout, runtime UI Kit use, states, theme, density, responsiveness, or zh-CN/en-US polish.
  • If the surface needs intelligent behavior, call an app-private Agent or Bridge through backend bindings/service actions instead of treating the authoring session as app state.

Validation

  • Refresh the Product App lock after package or component graph changes.
  • Run Product App package validation.
  • Run or observe a Builder preview/runtime path for the surface. Completion requires evidence that the surface rendered and the main user path was exercised or that missing evidence is reported clearly.
  • For UI changes, check light/dark theme, empty/loading/error states, responsive behavior, and locale-sensitive text when relevant.
Changes

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.

  1. 10d ago First seen · 31 lines · 59 tokens per session scan A 408e175ee141

Subscribe to this mod's changes

product-app-surface is a skill published in the GitHub repository GCWing/Sparo-OS (20 stars, last pushed 29d ago), licensed MIT. It adds 59 tokens to every session and 477 once invoked, about $0.0003 per session on Opus 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-08-30.

Related

Other skills, from other repositories

anyui-template-authoring

Author and invoke high-quality, mobile-first AnyUI HTML templates for MioChat. Guides the creation of clean, responsive cards, game interfaces, forms, story choices, and Galgame/visual novel dialogue cards rendered via extraRender in Shadow DOM. Enforces decoupled zero-round-trip async image rendering (pure CSS…

Pretend-to/mio-chat-backend · 148 tokens

kernel-chat-web-design

Guides the design, layout, styling, and interactivity of kernel.chat editorial spreads and standalone artifact editions. Use this skill when editing or creating pages, React components, CSS files, or single-file HTML artifacts in the kernel.chat project to enforce the POPEYE-inspired bilingual design grammar and the…

isaacsight/kernel · 71 tokens

kernel-chat-design-qa

Audits kernel.chat pages for responsive visual craft, accessibility, motion safety, interaction truth, runtime health, and production rendering. Use when reviewing an issue or artifact, checking whether a design is finished, comparing desktop and mobile, validating reduced motion or print, finding overflow and broken…

isaacsight/kernel · 73 tokens

Color Palette Generator

Create beautiful, accessible color schemes for any project.

eddiebelaval/squire · 13 tokens

animation-vocabulary

Reverse-lookup glossary that turns a vague description of a web animation or motion effect into its exact term ("the bouncy thing when a popover opens" → Pop in; "the iOS rubber-band scroll" → Rubber-banding). Use when the user asks "what's it called when…", or describes a motion effect without knowing its name and…

isaacsight/kernel · 98 tokens

micro-interactions

Use when designing small UI feedback moments like button states, toggles, form validation, loading indicators, or notification badges.

isaacsight/kernel · 28 tokens