The open-source package registry for AI workflows, schemas, skills, and agents.
- Overview
- The SuperNovae Ecosystem
- Quick Start
- Registry Architecture
- Packages
- Package Format
- Publishing Packages
- CLI Reference
- Contributing
- Related Projects
- License
SuperNovae Registry is a git-based package registry for distributing AI development assets. It provides reusable workflows, schemas, skills, prompts, jobs, and agents that integrate with:
- Nika — Semantic YAML workflow engine
- NovaNet — Knowledge graph for localization
- Claude Code — AI assistant
- Cursor — AI-powered IDE
+-----------------------------------------------------------------------------+
| SUPERNOVAE REGISTRY v2 |
+-----------------------------------------------------------------------------+
| |
| Package Types (6) |
| +-- @workflows/ -> Nika YAML DAG workflows (.nika.yaml) |
| +-- @schemas/ -> NovaNet node/arc classes |
| +-- @skills/ -> Skill definitions for Claude/Cursor |
| +-- @prompts/ -> Prompt templates |
| +-- @jobs/ -> Scheduled/triggered jobs |
| +-- @agents/ -> Agent configurations |
| |
| Alternate Scopes (aliases) |
| +-- @nika/ -> alias for @workflows/ |
| +-- @novanet/ -> alias for @schemas/ |
| +-- @shared/ -> alias for @skills/ (cross-project) |
| |
+-----------------------------------------------------------------------------+
NIKA (Papillon)
Runtime
Orchestrates the 5 semantic verbs
|
+---------------+-----------+-----------+---------------+
| | | | |
v v v v v
infer: exec: fetch: invoke: agent:
LLM Shell HTTP MCP (Space Chicken)
|
spawn_agent
|
+-----------+-----------+
v v v
(Subagents - Poussins)
| Mascot | Role | What it does |
|---|---|---|
| Nika | Runtime | Executes YAML workflows, runs chat UI, launches agents |
| Agent | One verb | Multi-turn agentic loop with MCP tools, spawns subagents |
| Subagent | Spawned | Executes subtask, returns result to parent, depth-limited |
Important: Nika is NOT an agent. Nika is the runtime that orchestrates agents.
+-----------------------------------------------------------------------------+
| PACKAGE FLOW |
+-----------------------------------------------------------------------------+
| |
| 1. Author publishes |
| +-------------------+ |
| | packages/@nika/ | |
| | generate-page/ | |
| | index.json | <-- Version metadata |
| | v1.0.0.tar.gz | <-- Package tarball (GitHub Release) |
| +-------------------+ |
| | |
| v |
| 2. User installs |
| +-------------------+ +-------------------+ +-------------------+ |
| | spn add ... | --> | Index Client | --> | Downloader | |
| | | | (fetch metadata) | | (fetch tarball) | |
| +-------------------+ +-------------------+ +-------------------+ |
| | |
| v |
| 3. Package installed |
| +-------------------+ |
| | ~/.spn/cache/ | |
| | workflows/ | |
| | generate-page/| <-- Ready to use |
| +-------------------+ |
| |
+-----------------------------------------------------------------------------+
# Via Homebrew (recommended)
brew tap supernovae-st/tap
brew install supernovae-st/tap/spn
# Via Cargo
cargo install spn
# Verify installation
spn --version
spn doctor# Install a workflow package
spn add @nika/generate-page
# Install a schema package
spn add @novanet/core-schema
# Install with specific version
spn add @nika/generate-page@1.0.0
# Install all dependencies from manifest
spn installCreate a spn.yaml manifest in your project root:
# spn.yaml
name: my-project
version: 1.0.0
# Owned packages (from registry)
workflows:
- "@nika/generate-page@^1.0.0"
- "@nika/seo-audit@^2.0.0"
schemas:
- "@novanet/core-schema@^0.14.0"
# Interop packages (proxied)
skills:
- "brainstorming" # -> skills.sh
- "superpowers/tdd" # -> skills.sh
mcp:
- "neo4j" # -> npm @neo4j/mcp-server-neo4j
- "perplexity" # -> npm perplexity-mcpThen run:
spn installThe registry uses a sparse index pattern (inspired by Cargo) for efficient package resolution:
supernovae-registry/
+-- packages/
| +-- @workflows/
| | +-- dev-productivity/
| | | +-- code-review/
| | | +-- index.json # Version metadata
| | | +-- 1.0.0.tar.gz # (or GitHub Release)
| | +-- fun/
| | +-- weather-outfit/
| | +-- index.json
| +-- @schemas/
| | +-- novanet/
| | +-- core-schema/
| | +-- index.json
| +-- @skills/
| +-- @prompts/
| +-- @jobs/
| +-- @agents/
+-- index.json # Root index with all packages
+-- registry.yaml # Registry configuration
Each package has an index.json with version metadata:
{
"name": "@nika/generate-page",
"versions": {
"1.0.0": {
"version": "1.0.0",
"cksum": "sha256:abc123...",
"yanked": false,
"published": "2026-02-01T00:00:00Z",
"deps": []
},
"1.1.0": {
"version": "1.1.0",
"cksum": "sha256:def456...",
"yanked": false,
"published": "2026-02-15T00:00:00Z",
"deps": []
}
},
"latest": "1.1.0"
}- Client requests
@nika/generate-page@^1.0.0 - Index lookup: Fetch
packages/@workflows/nika/generate-page/index.json - Version resolve: Find latest compatible version (1.1.0 satisfies ^1.0.0)
- Download: Fetch tarball from GitHub Release or direct URL
- Verify: Check SHA256 checksum
- Install: Extract to
~/.spn/cache/workflows/generate-page/1.1.0/
| Scope | Count | Description |
|---|---|---|
@workflows/ |
31 | Ready-to-use workflow templates |
@schemas/ |
2 | NovaNet graph schemas |
@skills/ |
10 | Cross-project development skills |
@prompts/ |
2 | Prompt templates |
@jobs/ |
1 | Scheduled jobs |
| Total | 46 | All packages |
Skills for authoring and debugging Nika YAML workflows.
| Package | Description | Version |
|---|---|---|
nika-run |
Run workflows with validation | 1.0.0 |
nika-debug |
Debug with traces and logging | 1.0.0 |
nika-spec |
Workflow specification reference | 1.0.0 |
nika-yaml |
YAML authoring guide | 1.0.0 |
nika-binding |
Data binding syntax (use:, {{}}) |
1.0.0 |
nika-arch |
Architecture diagrams | 1.0.0 |
nika-diagnose |
Troubleshooting checklist | 1.0.0 |
workflow-validate |
Schema validation | 1.0.0 |
Skills for NovaNet schema design and graph operations.
| Package | Description | Version |
|---|---|---|
schema-validate |
Schema validation patterns | 1.0.0 |
novanet-yaml |
YAML schema authoring | 1.0.0 |
Cross-project skills for code quality and productivity.
| Package | Description | Version |
|---|---|---|
brainstorming |
Socratic ideation workflow | 1.0.0 |
test-driven-development |
TDD methodology | 1.0.0 |
systematic-debugging |
4-phase debugging | 1.0.0 |
code-review |
Automated code review | 1.0.0 |
codebase-audit |
Dead code detection | 1.0.0 |
security-audit |
Vulnerability scanning | 1.0.0 |
token-audit |
API token management | 1.0.0 |
workspace-nav |
Project navigation | 1.0.0 |
release |
Release automation | 1.0.0 |
adr |
Architecture Decision Records | 1.0.0 |
Pre-built Nika workflows organized by category:
| Workflow | Description | Pattern |
|---|---|---|
pr-description |
Generate PR description from diff | Linear DAG |
changelog-generator |
Generate changelog from commits | Linear DAG |
readme-generator |
Generate README from codebase | Fan-out |
code-review |
AI-powered code review | Parallel |
api-docs-generator |
Generate OpenAPI docs | Linear DAG |
test-generator |
Generate unit tests | Fan-out |
refactor-suggestions |
Suggest refactoring | Agent loop |
dependency-audit |
Audit dependencies | Parallel |
| Workflow | Description | Pattern |
|---|---|---|
blog-post |
Generate blog posts | Linear |
social-media-pack |
Multi-platform content | Fan-out |
landing-page-copy |
Marketing copy | Parallel |
email-template |
Email generation | Linear |
documentation |
Technical docs | Agent |
translation |
Multi-language content | Fan-out |
| Workflow | Description | Pattern |
|---|---|---|
web-research |
Web research aggregation | Agent |
competitor-analysis |
Competitive intelligence | Parallel |
paper-summarizer |
Academic paper summary | Linear |
trend-analysis |
Market trends | Parallel |
sentiment-analysis |
Text sentiment | Linear |
| Workflow | Description | Pattern |
|---|---|---|
json-transformer |
JSON transformation | Linear |
csv-analyzer |
CSV analysis | Linear |
api-aggregator |
Multi-API aggregation | Parallel |
data-validator |
Schema validation | Linear |
| Workflow | Description | Pattern |
|---|---|---|
weather-outfit |
Weather-based outfit | fetch + infer |
recipe-wizard |
Recipe generation | Fan-out |
story-collab |
Collaborative stories | Agent |
meme-generator |
Meme captions | Parallel |
travel-planner |
Travel itinerary | Agent |
movie-night |
Movie recommendations | Conditional |
trivia-quiz |
Quiz generation | Linear |
fortune-teller |
Daily fortune | Creative |
Each package follows a minimal structure:
packages/@scope/category/package-name/
+-- index.json # Version metadata (auto-generated)
+-- package.yaml # Package definition
+-- package-name.md # Main content (skill/prompt/etc)
+-- workflow.nika.yaml # (for workflow packages)
name: "@nika/generate-page"
version: "1.0.0"
type: workflow
description: Generate a landing page from entity context
files:
main: generate-page.nika.yaml
readme: README.md
metadata:
author: SuperNovae Studio
license: MIT
keywords: [nika, workflow, page, generation]
dependencies:
- "@novanet/core-schema@^0.14.0"---
name: brainstorming
description: Socratic ideation through collaborative questioning
---
# Brainstorming Skill
## Overview
[Skill content with instructions for Claude/Cursor...]
## Usage
[How to use this skill...]
## Examples
[Example interactions...]# workflow.nika.yaml
workflow: generate-page
version: "1.0.0"
description: Generate a landing page from entity context
steps:
- id: load_context
invoke: novanet_generate
params:
entity: "{{input.entity}}"
locale: "{{input.locale}}"
use.ctx: entity_context
- id: generate_content
infer: |
Generate a landing page based on this context:
{{$entity_context}}
context: $entity_context
use.out: page_content
- id: format_output
exec: "echo '{{$page_content}}' > output.html"- Fork this repository
- Create package directory under
packages/@scope/category/ - Add required files (package.yaml, content files)
- Submit PR — CI auto-generates index.json
- Merge — Package available immediately
# Authenticate
spn auth login
# Package your content
cd my-package/
spn pack
# Publish to registry
spn publish
# Or publish a specific version
spn publish --version 1.0.0We use semver with these constraint patterns:
| Pattern | Meaning |
|---|---|
1.0.0 |
Exact version |
^1.0.0 |
Compatible (>=1.0.0 <2.0.0) |
~1.0.0 |
Approximate (>=1.0.0 <1.1.0) |
>=1.0.0 |
Greater or equal |
* |
Any version |
| Command | Description |
|---|---|
spn add <pkg> |
Add package to manifest and install |
spn remove <pkg> |
Remove package |
spn install |
Install all from manifest |
spn install --frozen |
Install exact versions from lockfile |
spn update [pkg] |
Update packages |
spn outdated |
List outdated packages |
spn search <query> |
Search registry |
spn info <pkg> |
Show package details |
spn list |
List installed packages |
| Command | Description |
|---|---|
spn pack |
Create package tarball |
spn publish |
Publish to registry |
spn version <bump> |
Bump version (major/minor/patch) |
spn yank <pkg@version> |
Yank a version |
| Command | Description |
|---|---|
spn auth login |
Authenticate with registry |
spn auth logout |
Remove credentials |
spn auth status |
Show auth status |
We welcome contributions! See CONTRIBUTING.md for detailed guidelines.
- Fork this repository
- Create a feature branch:
git checkout -b feat/my-package - Add your package under
packages/@scope/ - Test locally:
spn add file:./packages/@scope/my-package - Submit a PR with description
- Skills: Markdown with YAML frontmatter, actionable instructions
- Workflows: Valid
.nika.yamlwith DAG definition - Schemas: NovaNet node/arc class definitions
- Prompts: Template strings with
{{variable}}placeholders
- Package has
package.yamlwith all required fields - Main content file exists and is valid
- Description is clear and accurate
- Keywords help discoverability
- License is specified (default: MIT)
| Project | Description |
|---|---|
| spn (supernovae-cli) | CLI for package management |
| Nika | Semantic YAML workflow engine |
| NovaNet | Knowledge graph for localization |
| supernovae-index | Sparse package index |
| homebrew-tap | Homebrew formulas |
MIT (c) SuperNovae Studio
Links: Documentation | CLI Guide | Discord