Umbrella repository and Cargo workspace for Omne host/runtime crates. This workspace resolves
cross-repository foundation dependencies through canonical git source pins to
omne42/omne_foundation.
crates/omne-artifact-install-primitives: reusable artifact download, verification, and install pipeline primitivescrates/omne-archive-primitives: low-level archive/compression primitives for binary extractioncrates/omne-fs: policy-bounded filesystem runtime APIs and CLIcrates/omne-fs/cli: nestedomne-fs-cliworkspace package that exposes theomne-fsbinary while staying inside theomne-fsboundarycrates/omne-fs-primitives: low-level filesystem primitives shared across adapterscrates/omne-host-info-primitives: low-level host/platform identity and target-triple primitivescrates/omne-integrity-primitives: low-level digest parsing and integrity verification primitivescrates/omne-process-primitives: low-level host-command, host-recipe, and process-tree primitivescrates/omne-system-package-primitives: low-level canonical package-manager and install-recipe primitivescrates/omne-execution-gateway: execution gateway and sandbox-facing orchestration
This repository follows an agent-first documentation model:
AGENTS.md: short map onlydocs/README.md: workspace docs entrypointdocs/docs-system-map.md: workspace documentation entrypointdocs/workspace-crate-boundaries.md: workspace boundary referencedocs/source-layout.md: workspace layout mapdocs/quality-and-doc-maintenance.md: documentation maintenance rules
Each crate under crates/ owns the same minimum documentation skeleton:
README.mdAGENTS.mddocs/docs-system-map.mddocs/architecture/system-boundaries.mddocs/architecture/source-layout.md
Run ./scripts/check-docs-system.sh to verify the workspace documentation skeletons against the
actual Cargo.toml member list. The nested workspace package crates/omne-fs/cli stays
documented through crates/omne-fs/*; it is a package inside the omne-fs boundary, not a tenth
top-level capability crate.
Naming follows omne-<capability> so each crate name carries both product scope and boundary role at
a glance. Public crate names avoid redundant prefixes and unclear jargon; established abbreviations
such as fs are acceptable when they are shorter and still immediately recognizable. Suffixes
such as -primitives and -gateway communicate depth and responsibility, and workspace directory
names mirror package names directly.
- Shared CI and release automation live at the repository root under
.github/. - Shared Cargo resolution is rooted at this workspace
Cargo.toml. - Build/test commands fetch
http-kitandpolicy-metafrom the canonicalomne42/omne_foundationgit source pin declared in member manifests; no sibling checkout is required, including CI and release workflows. - Generated build outputs are ignored via the root
.gitignore; member crates do not carry their own repository-level ignore or workflow configuration. - We do not create a catch-all
platformcrate. Boundaries are capability-based: artifact-install primitives, archive primitives, filesystem primitives, integrity primitives, process primitives, and sandbox/execution orchestration stay separate. unsafeis governed structurally: binaries and leaf crates that do not own syscall/FFI boundaries forbid it, while crates that own narrowplatform/*orsandbox/*syscall boundaries deny it by default and locally allow it only inside those modules.
./scripts/check-docs-system.sh
cargo test --workspace --all-features