Collections
What you'll accomplish: Use and create curated package collections for quick onboarding.
What is a collection?
A collection is a curated, self-contained set of packages. Installing a collection gives you everything needed for a specific use case — no manual dependency hunting.
Installing a collection
hoziron collection install insurance-starter
# Installs all packages, skipping any already installed
Collections are additive — install multiple, overlapping packages are deduplicated.
COLLECTION.toml format
name = "insurance-starter"
display_name = "Insurance Starter Kit"
description = "Everything needed to start processing claims"
version = "1.0.0"
license = "MIT"
featured = true
tags = ["insurance", "claims", "starter"]
icon = "shield-check"
[author]
name = "Hoziron Team"
[[packages]]
name = "claims-intake"
version = "1.2.0"
package_type = "competency"
is_dependency = false
[[packages]]
name = "document-ocr"
version = "1.4.0"
package_type = "tool"
is_dependency = true
[[packages]]
name = "postgresql-connector"
version = "2.1.0"
package_type = "tool"
is_dependency = true
Closure invariant
A collection must include ALL transitive dependencies of every package it contains. Installing a collection never requires fetching packages outside the collection.
This is validated during collection creation — if a dependency is missing, you'll get a clear error indicating which package is missing which dependency.
Creating a collection
- Define your
COLLECTION.toml - List all packages (mark shared deps with
is_dependency = true) - Validate closure: all transitive deps must be included
- Publish alongside or separate from individual packages
Package fields
| Field | Description |
|---|---|
name | Package name |
version | Exact version included |
package_type | tool, skill, competency, etc. |
is_dependency | true for shared deps, false for primary packages |
Next steps
Related: