Podium version: v0.4.0

0.4.x — early release

One catalog.
Every harness.

A catalog for reusable AI skills and other artifacts, with tools to translate them into harness-specific formats.

brew install lennylabs/tap/podium
~/projects/foo
$ podium sync --harness claude-code
.claude/skills/rollback/SKILL.md
.claude/skills/rollback/scripts/verify_revision.py
.claude/commands/query-review.md
.mcp.json
$ podium sync --harness cursor
.cursor/skills/rollback/SKILL.md
.cursor/skills/rollback/scripts/verify_revision.py
.cursor/commands/query-review.md
.cursor/mcp.json
$ podium sync --config marketplace.yaml
.claude-plugin/marketplace.json
claude/acme/skills/rollback/SKILL.md
claude/acme/skills/rollback/scripts/verify_revision.py
cursor/acme/skills/rollback/SKILL.md
$
Terminal transcript. Three podium sync runs materialize the same artifacts three ways: into the Claude Code layout, into the Cursor layout, and into the marketplace layout a shared configuration file describes.
ADAPTERSClaude CodeClaude DesktopClaude CoworkCursorCodexGemini CLIOpenCodePiHermes+ custom

Features

01

Cross-harness delivery

Write canonical artifacts once. Automatically translate into the format your runtime expects.

02

Domains and subdomains

Easy artifact maintenance and discoverability through the use of domains and sub-domains.

03

Selective materialization

Sync a subset of the catalog into a workspace. Define profiles to quickly and seamlessly switch between scopes.

04

Progressive discovery

Minimalistic set of tools for agents to traverse domains and find artifacts, materializing artifacts (including bundled files) lazily as they are needed.

05

Layered composition

Compose the catalog from multiple independent sources with deterministic merge and explicit precedence.

06

Access control

Declare who can see what: public, org-wide, scoped to OIDC groups, or specific users.

Run it three ways

Local

Server-side deployment
None
Catalog source
A folder, read from disk
Materialization
User-driven sync
  • Author, lint, sync
  • Domains and profiles
  • Ordered layers from disk

Single node

Server-side deployment
One binary
Catalog source
One or more folders or remote Git repos
Materialization
User-driven sync, or agent-driven on demand

Everything in local, plus

  • Discovery via MCP or SDK
  • Hybrid search
  • Registered and remote layers, with visibility
  • One audit log

Clustered

Server-side deployment
Replicas, Postgres, storage
Catalog source
One or more folders or remote Git repos
Materialization
User-driven sync, or agent-driven on demand

Everything in single node, plus

  • Multi-tenancy
  • SCIM group sync
  • Signing and transparency log
  • High availability

The artifacts never change. They are independent of Podium's deployment model.

Server-side integrations

IntegrationOut of the boxCompatible alternatives
Metadata storeSQLite
  • Postgres
Object storageLocal filesystem
  • S3 or S3-compatible storage
Vector indexsqlite-vec
  • pgvector
  • Pinecone
  • Weaviate Cloud
  • Qdrant Cloud

pgvector is the default when you already run Postgres.

EmbeddingsBM25 only
  • OpenAI
  • Voyage
  • Cohere
  • Ollama

A provider is configured by default (ollama, or openai on Postgres) but ships in no binary, so hybrid search needs it reachable. Or let Pinecone, Weaviate, or Qdrant embed on ingest. Vectors are fused with BM25 hits via reciprocal rank fusion.

IdentityNone
  • oidc-jwt
  • trusted-headers
  • injected-session-token

SCIM provisions groups alongside a provider rather than replacing one.

Layer sourcesGit and local paths
  • Custom via SPI

S3 buckets, OCI registries, HTTP archives.

Nothing in the right column is required to start. At cluster scale, Postgres and object storage become requirements. Easily re-embed during vector backend migrations.