Capsules & Packages
Capsules are Sailfin’s package format. Each capsule has a capsule.toml manifest.
Creating a Capsule
sfn init my-capsule
This generates:
my-capsule/
├── capsule.toml
├── src/
│ └── main.sfn
└── tests/
capsule.toml
[capsule]
name = "my-capsule"
version = "0.1.0"
edition = "2025"
[dependencies]
http-client = "^1.2.0"
[capabilities]
required = ["io", "net"]
Dependencies
sfn add http-client # Add a dependency
sfn remove http-client # Remove it
sfn update # Update all dependencies
Dependencies are resolved from registry.sailfin.dev.
Publishing
sfn publish
Capability Auditing
sfn capabilities audit
Lists all capabilities required by your capsule and its dependency tree.
Model Dependencies
Capsules can declare model dependencies:
[models]
gpt4o = { provider = "openai", model = "gpt-4o", version = "2025-01-01" }
sfn add-model openai:gpt-4o
sfn models sync
Package management CLI integration is planned for post-1.0. The registry at registry.sailfin.dev is live.