Skip to main content
ClaudeWave
Skill3.7k repo starsupdated 3d ago

tutti-ui-system

Use when working with @tutti-os/ui-system components, replacing local UI with shared components, querying component ids or metadata, promoting UI into shared base or business components, or maintaining UI-system storyboard inventory.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/tutti-os/tutti /tmp/tutti-ui-system && cp -r /tmp/tutti-ui-system/packages/ui/system/agent/tutti-ui-system ~/.claude/skills/tutti-ui-system
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# Tutti UI System

Use this skill as the single entrypoint for `@tutti-os/ui-system` component
reuse, extraction, promotion, metadata, and storyboard work.

## Non-Negotiable Standard

Any UI promoted into `@tutti-os/ui-system` must fully follow the UI-system
design standard before it can be reported as complete.

Treat these as hard requirements, not cleanup suggestions:

- use UI-system semantic tokens and existing shared CSS variables; do not leave
  raw `hex`, `rgb(...)`, `rgba(...)`, ad hoc gradients, or app-local palette
  values in promoted components or their storyboard examples unless the source
  of truth already exposes them as approved tokens
- compose existing UI-system `base` primitives such as `Card`, `Button`,
  `Tooltip`, `Dialog`, and related vocabulary before creating custom panel,
  button, field, or overlay treatments
- use icon components from `@tutti-os/ui-system/icons` for promoted
  components and storyboard examples. Do not inline SVG/data URI assets, import
  app-local icon files, or pull third-party icon packages directly from promoted
  UI. If the source UI depends on an icon that is not in the UI system, promote
  the source-derived icon into `packages/ui/system/src/icons` with metadata
  first, then consume the UI-system icon export.
- make storyboard examples render the real component surface and states; do not
  rely on surrounding docs chrome to hide component-level visual drift or to
  fake the final panel/surface language
- when a consumer is migrated, its final rendered result must also follow the
  same UI-system visual standard; a temporary bridge may help wiring, but it is
  not acceptable as the final visual implementation if it keeps a second token
  system or divergent component styling

If these conditions are not met, report the promotion as incomplete or blocked,
not complete.

## Source Of Truth

Read these before editing:

1. nearest `AGENTS.md` for the target code
2. local `AGENTS.md` bundled with this skill
3. local `ui-system.md` bundled with this skill
4. component metadata from the first available source:
   - `GET http://127.0.0.1:4100/components`
   - `packages/ui/system/src/metadata/components.json`
   - `@tutti-os/ui-system/metadata` from the installed package

Use stable public imports only:

- `@tutti-os/ui-system`
- `@tutti-os/ui-system/components`
- `@tutti-os/ui-system/icons`
- `@tutti-os/ui-system/metadata`
- `@tutti-os/ui-system/styles.css`
- `@tutti-os/ui-system/utils`

Never deep import `@tutti-os/ui-system/src/*` or per-file component paths.

## Route The Task

Read only the reference file that matches the task.

- Using or querying existing components:
  `references/use-existing-component.md`
- Extracting a low-level base primitive:
  `references/extract-base-component.md`
- Promoting reusable business UI into a shared component:
  `references/promote-business-component.md`
- Maintaining ids, metadata, exports, or storyboard inventory:
  `references/maintain-inventory.md`

## Global Boundaries

Keep these outside `@tutti-os/ui-system` components:

- daemon, Electron, filesystem, router, or host adapter calls
- data fetching, cache mutation, persistence, polling, and global store
  ownership
- workflow orchestration such as onboarding, workspace registration, install or
  uninstall flows, confirmation dialogs, queueing, or navigation
- i18n key lookup and business-specific copy derivation unless supplied by
  props, children, or labels

For any promoted public component, add stable exports, metadata, and storyboard
coverage that match the chosen reference workflow.

For promoted base components, preview coverage is not satisfied by metadata
alone. DOM components need a real renderable example in `apps/ui-storyboard`.
React Native components need a real renderable example in the Mobile
development gallery because the DOM storyboard cannot render their final
surface. In both cases, the example must use the stable public entrypoint and
show the component's public states.

For business component promotion, use a copy-first workflow: move the existing
business component structure as intact as possible, preserve the real DOM,
visual hierarchy, state branches, and interaction layout, then progressively
remove host dependencies and standardize the public API. Do not begin by
inventing a cleaner abstraction or new visual treatment. The state matrix,
props boundary, and candidate source UI define what to copy, what to keep
caller-owned, and what to standardize after parity exists.

Treat business component promotion as an iterative migration-review loop, not a
single extraction pass:

1. migrate the source UI copy-first
2. recreate source-backed states in storyboard
3. run independent review against the original source and screenshot
4. migrate again to close review findings
5. repeat review until source/design parity is acceptable

Only after that loop should the API be generalized further. Do not report the
component as complete after the first migration if review still shows material
DOM, visual, token, state, icon, or storyboard coverage drift.

The promoted UI must follow the original design exactly unless the user
explicitly approves a visual change. Do not add new decoration, controls,
icons, layout chrome, copy, motion, states, spacing, or visual hierarchy that
does not exist in the source UI or provided screenshot. If UI-system token or
primitive replacement is needed, it must preserve the observed design and
interaction path rather than becoming a redesign.

Copy-first also applies to dependent presentational subcomponents and
third-party-library wrappers used by the candidate UI. Do not copy only the top
level JSX and recreate nested behavior from memory. Trace the dependency tree:
pure display helpers should move with the component; reusable wrappers around
Radix, floating UI, resizable panels, virtualization, or similar libraries
should be promoted or reused as `base` primitives first; host-coupled children
must be sp
analyze-performance-tracesSkill

Analyze Chrome, Chromium, Electron, React DevTools, or Perfetto-compatible JSON traces and audit user-reported profiling findings without loading large artifacts into context; prove trigger-to-render/layout chains, separate measured facts from source inference, find exact code choke points, classify forced layout and render fanout, implement semantically safe fixes, and verify behavior plus repository budgets. Use for trace files, reported profiling durations or call chains, dropped frames, long tasks, resize or scroll jank, render storms, layout thrashing, selector hot paths, interaction latency, or requests to locate exact source-level bottlenecks.

tutti-app-releaseSkill

Set up, review, run, or debug external repositories that publish a Tutti workspace app through the reusable Tutti App Release GitHub Actions workflow. Use for caller workflows, tutti.app.json manifests, @tutti-os/app-release-tools, S3/CloudFront release hosting, latest.json, versions.json, catalog.json, catalog-only repairs, and App Center visibility issues.

tutti-architecture-reviewSkill

Review tutti git diffs for project structure, layering, module ownership, and duplicate event-center infrastructure by planning focused architecture review tasks, then having the main agent orchestrate sub-agents for only the changed areas.

tutti-record-agent-session-replaySkill

>-

tutti-test-auditSkill

Audit, design, write, materially revise, or remove Tutti tests. Use whenever Codex changes or reviews unit, component, conformance, integration, regression, platform, or repository tests; enforce a protected product contract, credible failure, correct owning boundary, negative-control evidence, overlap review, deterministic setup, and an executing CI lane.

tutti-agent-workspace-appSkill

Build or evolve a complex agent-enabled Tutti workspace app repository. Use for Tutti apps with web/server/shared monorepos, @tutti-os/agent-acp-kit local agent runtimes, kit-owned TUTTI_CLI agent/composer discovery, dynamic agent catalogs, run-scoped MCP tool gateways, app-owned package builders, web-first debugging, i18n harnesses, and production package validation. For simple package creation or repair, use tutti-workspace-app-factory instead.

tutti-workspace-app-factorySkill

Create, convert, or repair one Tutti workspace app as either a self-contained publishable package under package/ or a Chrome-style local debug app under .tutti/dev-app/. Use for mention://workspace-app-factory/create handoffs, mention://workspace-app-factory handoffs, standalone app generation, adapting existing repositories, Load unpacked repair flows for invalid local project directories, tutti.app.json and tutti.cli.json manifests, bootstrap.sh scripts, package-local AGENTS.md, local HTTP runtimes, TUTTI_APP_* host/port/storage rules, healthchecks, app assets, i18n, validation, and optional Tutti CLI integration.