Skip to main content
Unlike standard CLI tools that are restricted to a single hard-coded domain, @soralabs/cli features a Universal Addressing Engine. When you pass a component specifier to add, the CLI automatically analyzes its format and resolves it via one of the following schemes:

1. Bare Component Names

  • First, the CLI looks up text-effect inside the active Sora UI registry (ui.soralabs.studio).
  • If not found, it automatically checks whether the name corresponds to a standard base primitive (e.g. button, dialog, input) and falls back to ui.shadcn.com using the style configured in your components.json.

2. Direct HTTP / HTTPS URLs

Install any component schema served over the web:
The CLI downloads the schema, inspects its registryDependencies and dependencies, and reconciles all imports automatically.

3. GitHub Specifiers

Directly reference component files located in any public GitHub repository:
You can specify branches, tags, or commit hashes using the #ref syntax:

4. Scoped Namespaces (@scope/item)

If your project’s components.json defines custom registries:
components.json
You can install directly using the namespace prefix:

5. Local File Paths

Useful when authoring new components or testing a local registry package before publishing: