Supernova analyze

Analyze code for design system adoption

Use Supernova analyze to scan your design system and usage code, then push snapshots to Supernova for processing. The output becomes a shared, LLM-optimized knowledge layer used by both:

  • Portal Create (prototyping agent)
  • MCP/CLI workflows (engineering)

This keeps prototyping and implementation aligned with the same source of truth.


What analyze does

Supernova analyze processes:

  • TypeScript definitions
  • JSDoc
  • Markdown documentation
  • Storybook stories
  • real usage/adoption signals in consumer code

It creates snapshot artifacts and uploads them for backend processing.


Analysis modes

Full pipeline

supernova analyze

Runs both analyzers:
  • Components: what exists and how to use it
  • Adoption: how it is used in real code

                                                        
                                                        
                                                            supernova analyze --package @design-system-package
                                                        
                                                            

If packages are already configured in supernova.config.json:

                                                        
                                                        
                                                            supernova analyze
                                                        
                                                            

For multiple packages:

                                                        
                                                        
                                                            supernova analyze --package @design-system-package --package @icons-package
                                                        
                                                            

 

Components flow

supernova analyze components

Use this for a structural design system refresh.

Scans:
  • DS package source
  • exports/APIs
  • TS types, JSDoc, markdown, stories
Produces:
  • component metadata
  • usage semantics and constraints
  • component-level guidance for generation

                                                        
                                                        
                                                            supernova analyze components --package @design-system-package --package @icons-package
                                                        
                                                            

 

Adoption flow

supernova analyze adoption

Use this for real-world usage refresh.

Scans:
  • consumer/workspace packages
  • import + usage occurrences
  • usage distribution patterns
Produces:
  • adoption snapshots
  • practical usage patterns
  • real-world grounding signals

                                                        
                                                        
                                                            supernova analyze adoption --package @design-system-package
                                                        
                                                            

Integration topologies

Unified monorepo (single root scan)

Use this when design system packages and consumer apps live in one monorepo.

How to run:
  • Execute from monorepo root
  • Provide all DS packages as -package (or persist in config)
  • Run full pipeline for complete context

                                                        
                                                        
                                                            # one-off run
                                                        supernova analyze \\
                                                        --package @company/design-system \\
                                                        --package @company/icons \\
                                                        --package @company/primitives
                                                        
                                                            

                                                        
                                                        
                                                            # after packages are saved in supernova.config
                                                        supernova analyze
                                                        
                                                            
When to use:
  • centralized platform ownership
  • easiest operational model
  • best end-to-end visibility in a single run

 

Distributed multi-repo

Use this when teams run separate CI pipelines in separate repositories.

How to run:
  • Run Analyze independently in each repo
  • Keep package naming and target designSystemId consistent
  • Use async mode in CI and monitor centrally

                                                        
                                                        
                                                            # repo A pipeline
                                                        supernova analyze --package @company/design-system --no-wait
                                                        
                                                            

                                                        
                                                        
                                                            # repo B pipeline
                                                        supernova analyze adoption --package @company/design-system --no-wait
                                                        
                                                            

                                                        
                                                        
                                                            # monitor processing
                                                        supernova analyze status --designSystemId <id>
                                                        
                                                            
When to use:
  • federated orgs
  • autonomous team pipelines
  • repo-level rollout control with shared DS identity

Typical flows

Full data refresh


                                                        
                                                        
                                                            supernova analyze --package @design-system-package
                                                        
                                                            

DS API/docs changed


                                                        
                                                        
                                                            supernova analyze components --package @design-system-package
                                                        
                                                            

Consumer rollout changed


                                                        
                                                        
                                                            supernova analyze adoption --package @design-system-package
                                                        
                                                            

CI async run


                                                        
                                                        
                                                            supernova analyze --package @design-system-package --no-wait
                                                        
                                                            

Preflight without upload


                                                        
                                                        
                                                            supernova analyze --package @design-system-package --dryRun
                                                        
                                                            

Monitor processing


                                                        
                                                        
                                                            supernova analyze status --designSystemId <id>
                                                        
                                                            

Command reference


                                                        
                                                        
                                                            supernova analyze [components|adoption] --package <package-name> [--package <package-name>...]
                                                        supernova analyze status [--designSystemId <id>]
                                                        
                                                            

Arguments

Name

Required

Description

[components\|adoption]

No

Optional targeted mode. Omit to run full pipeline.

Flags

Flag

Short

Required

Description

--package <value>

-p

Conditionally

Repeatable. Required only when analyze.packages is not configured.

--designSystemId <id>

-d

No

Uses provided design system ID; otherwise from config/prompt.

--exclude <path>

 

No

Repeatable path exclusion for analyzers.

--dryRun

 

No

Write local snapshots only; skip upload.

--no-wait

 

No

Upload and start processing, do not wait for completion.


Configuration

Analyze reads/writes supernova.config.json in the current directory.

Example:

                                                        
                                                        
                                                            {
                                                          "designSystemId": "123",
                                                          "analyze": {
                                                            "repoId": "7c8e9b6b-4c0a-4dbd-8f78-2d5c3d6a9f10",
                                                            "packages": ["@design-system-package", "@icons-package"],
                                                            "excludedPackages": ["excluded-package"]
                                                          }
                                                        }
                                                        
                                                            
Stored fields:
  • designSystemId
  • analyze.repoId
  • analyze.packages
  • analyze.excludedPackages

Output artifacts

Snapshots are written under:


                                                        
                                                        
                                                            <package>/.supernova/snapshots/<snapshotId>/
                                                        
                                                            
Primary files:
  • raw/*.json analyzer outputs

Upload and processing lifecycle

  1. CLI uploads snapshot archives
  2. CLI finalizes snapshots
  3. CLI starts processing runs
  4. CLI waits for completion (default)

Use --no-wait to skip step 4 in CI.

Best practices

  • Run full pipeline regularly (for example after releases).
  • Use targeted modes for faster incremental updates.
  • Keep analyze.packages explicit and versioned.
  • Use -dryRun before widening analysis scope.
  • Use -exclude to reduce noise.
  • In CI, use -no-wait plus supernova analyze status.