jthorare

design-analyze

Detect web vs iOS automatically and delegate to /design-analyze-web (Dembrandt CLI on URLs) or /design-analyze-ios (Swift/Xcode asset extraction). Writes design-tokens.json.

jthorare 1 3 Updated 3w ago
GitHub

Install

npx skillscat add jthorare/agentic-workflow/design-analyze

Install via the SkillsCat registry.

SKILL.md

Before anything else: read $HOME/.agentic-workflow/toolkit/skills/_preamble.md and follow it (skill index, provider capability map, bootstrap check, session context). Run its Session Close section when this skill finishes.

Note: This skill creates design context — missing design-tokens.json is expected on first run.


Design Analyze — Platform Dispatcher

Detects whether this is a web or iOS project and delegates to the appropriate token extraction skill. Contains no implementation logic.

Tip: If you already know the platform, invoke directly:

  • Web: /design-analyze-web <url> [url2...]
  • iOS: /design-analyze-ios [path/to/Assets.xcassets]

Platform Detection & Dispatch

Resolve the shared dir from the stable toolkit path, then follow the shared detection contract:

SHARED_DIR="$HOME/.agentic-workflow/toolkit/skills/_shared"
echo "contract: $SHARED_DIR/platform-detection.md"

Read $SHARED_DIR/platform-detection.md and apply it exactly — the recursive iOS globs with excludes, the web package.json check, and the resolution table (both/neither present ⇒ Ask the user). Sub-skills for this dispatcher: iOS → design-analyze-ios, web → design-analyze-web.

Dispatch Contract

  1. Echo before dispatching: dispatch: <sub-skill> args=<args>
  2. Dispatch literally, passing all user-supplied arguments through unchanged:
    • Web: Invoke skill design-analyze-web with args "<original args verbatim>"
    • iOS: Invoke skill design-analyze-ios with args "<original args verbatim>"
  3. If a required argument is empty (web requires at least one URL), stop and ask — never dispatch with a blank required arg.

Next steps

  • /design-language — define brand personality from the extracted tokens