Skip to main content

Crate nils_common

Crate nils_common 

Source
Expand description

Foundation crate shared across nils-* CLIs.

Each public module documents its own surface; crates/nils-common/README.md carries the per-module narrative and the consumer index, and docs/specs/workspace-shared-crate-boundary-v1.md carries the boundary contract.

§Compatibility rules

  • Returns structured results only; user-facing warning/error text stays in caller adapters.
  • Exit-code mapping stays in caller crates.
  • APIs stay domain-neutral and must not encode crate-specific UX policies.
  • Quoting and ANSI differences are expressed via explicit mode/policy parameters.

§Determinism contract (Resolved Decision #9)

agent-runtime-cli consumes this crate on its render path, so std::collections::HashMap, std::time::SystemTime::now, and chrono::Utc::now are forbidden inside this crate. The crate-wide #![deny(...)] below pairs with clippy.toml to make every violation a build failure. Use IndexMap or BTreeMap for any map that wants stable iteration. Source: agent-runtime-kit/docs/source/inventory-target-architecture.md → Resolved Decision #9.

Modules§

cli_contract
Workspace-wide CLI output contract primitives.
clipboard
diag_output
Shared JSON envelope helpers for CLI diagnostic / structured output.
env
fs
git
markdown
process
provider_runtime
rate_limits_ansi
redact
Domain-neutral secret redaction shared across evidence-producing CLIs.
shell

Functions§

greeting