How jozu-ai/kitops works
KitOps is a Go CLI for generating Kitfiles, packaging AI/ML project assets as OCI-based ModelKits or ModelPacks, and managing those artifacts locally or in registries. The principal workflow is to initialize or import project contents, pack them, push or pull a version, then inspect or selectively unpack it. The graph also includes documented listing, comparison, authentication, and skill-install capabilities. Relationships among unsampled command implementations are shown only where the README documents them; edges to external systems reflect documented product behavior.
Main entry points: root.go CLI command root · push/cmd.go Push artifact · pull.go Pull artifact · kitimport/cmd.go Import model
Components 22
CLI workflows
- CLI command root
cmd/root.go - Push artifact
pkg/cmd/push/cmd.go - Pull artifact
pkg/cmd/pull/pull.go - Selective unpack
pkg/lib/filesystem/unpack/core.go - Inspect artifact
pkg/cmd/inspect/cmd.go - Compare artifacts
pkg/cmd/diff/cmd.go - List artifacts
pkg/cmd/list/cmd.go - Install agent skills
pkg/lib/skill/install.go
Kitfile and packaging
- Initialize Kitfile
pkg/cmd/kitinit/cmd.go - Import model
pkg/cmd/kitimport/cmd.go - Kitfile generation
pkg/lib/kitfile/generate/generate.go - Pack artifact
pkg/cmd/pack/cmd.go
Artifact storage
- Build OCI layers
pkg/lib/filesystem/local-storage.go - Kitfile model
pkg/artifact/kitfile.go - Local OCI repository
pkg/lib/repo/local/repository.go - Local OCI store
pkg/lib/repo/local/storage.go - Remote registry client
pkg/lib/repo/remote/repository.go
External integrations
- Registry authentication
pkg/lib/network/auth.go - Hugging Face
- Git repositories
- OCI registry
Other components
- CLI user
Connections 30
- CLI user → CLI command root: runs commands
- CLI command root → Initialize Kitfile: registers command
cmd/root.go - CLI command root → Import model: registers command
cmd/root.go - CLI command root → Pack artifact: registers command
cmd/root.go - CLI command root → Push artifact: registers command
cmd/root.go - CLI command root → Pull artifact: registers command
cmd/root.go - CLI command root → Selective unpack: registers command
cmd/root.go - CLI command root → Inspect artifact: registers command
cmd/root.go - CLI command root → Compare artifacts: registers command
cmd/root.go - CLI command root → List artifacts: registers command
cmd/root.go - Initialize Kitfile → Kitfile generation: generates Kitfile
pkg/cmd/kitinit/cmd.go - Initialize Kitfile → Hugging Face: lists remote files
pkg/cmd/kitinit/cmd.go - Import model → Hugging Face: downloads model
pkg/cmd/kitimport/cmd.go - Import model → Git repositories: supports download
pkg/cmd/kitimport/cmd.go - Pack artifact → Build OCI layers: packages project
pkg/cmd/pack/cmd.go - Build OCI layers → Kitfile model: reads metadata
pkg/lib/filesystem/local-storage.go - Push artifact → Remote registry client: uploads artifact
pkg/cmd/push/cmd.go - Pull artifact → Remote registry client: retrieves artifact
pkg/cmd/pull/pull.go - Push artifact → Local OCI repository: reads local artifact
pkg/cmd/push/cmd.go - Pull artifact → Local OCI repository: stores artifact
pkg/cmd/pull/pull.go - Local OCI repository → Local OCI store: uses OCI store
pkg/lib/repo/local/repository.go - Remote registry client → OCI registry: transfers OCI content
pkg/lib/repo/remote/repository.go - Selective unpack → OCI registry: supports remote pulls
- Selective unpack → Install agent skills: installs skill layers
- Push artifact → Registry authentication: uses credentials
- Pull artifact → Registry authentication: uses credentials
- Import model → Pack artifact: packages downloaded files
pkg/cmd/kitimport/cmd.go - CLI user → Inspect artifact: views contents
- CLI user → Compare artifacts: compares versions
- CLI user → List artifacts: lists artifacts