Expand description
LOGOS CLI (largo)
Command-line interface for the LOGOS build system and package registry.
This crate provides the largo CLI tool for creating, building, and
publishing LOGOS projects. It can be used as a library for programmatic
access to the build system.
§Commands
| Command | Description |
|---|---|
largo new | Create a new project |
largo init | Initialize project in current directory |
largo build | Compile a LOGOS module to Rust |
largo run | Build and execute a module |
largo check | Type-check without building |
largo verify | Run Z3 static verification |
largo publish | Publish package to registry |
largo login | Authenticate with registry |
largo logout | Remove stored credentials |
§Module Structure
cli- Command-line argument parsing and dispatchcompile- Re-exports from the compilation pipelineproject- Project management (manifest, build, registry)project::manifest-Largo.tomlparsingproject::build- Build orchestrationproject::credentials- API token storageproject::registry- Package registry client
§Feature Flags
| Feature | Description |
|---|---|
verification | Enable Z3 static verification (requires Z3 installed) |
§Library Usage
While largo is primarily a CLI tool, the library API can be used
for build system integration:
use logicaffeine_cli::project::{BuildConfig, build, find_project_root};
use std::env;
let cwd = env::current_dir().unwrap();
let root = find_project_root(&cwd).expect("Not in a LOGOS project");
let result = build(BuildConfig {
project_dir: root,
release: false,
})?;
println!("Built: {}", result.binary_path.display());Re-exports§
pub use cli::run_cli;