Contributing
Repository layout
The Cori crate and package tree with one-line purposes — edition 2024, MSRV and Node requirements.
Rust crates
Cori is primarily a Rust project using Cargo workspace edition 2024 (MSRV 1.94).
crates/
cori-cli/ # The `cori` binary — clap-derived commands, thin wrappers over `cori-run`
cori-run/ # Run orchestration library — preflight, run_workflow, planner, temporal_endpoint,
# remote-ref resolver, workflow loader, paths, config, schedule store + cron driver
cori-worker/ # Temporal worker: workflow + activities + runtime + runner
cori-compiler/ # Manifest + step parsing → CompiledWorkflow (computes Placement)
cori-broker/ # Capability broker (cli, code, mcp, llm, oauth, cli_auth) — trust boundary
cori-ledger/ # Placeholder for cost analytics (mostly empty in v1)
cori-manifest/ # YAML schema + parser (manifest.md frontmatter + body)
cori-protocol/ # Wire types (CompiledWorkflow, Placement, WorkerIdentity, RunTrace, TokenUsage,
# task_queue_for, …) — shared across CLI, run library, and desktop appDependency direction (no cycles): cori-cli → cori-run; console/src-tauri (cori-console) → cori-run, cori-worker. All → cori-protocol. cori-run depends on cori-broker, cori-compiler, cori-manifest, cori-worker, cori-protocol.
TypeScript / Deno packages
A pnpm workspace (pnpm-workspace.yaml globs packages/sdk and packages/runner, Node ≥ 20).
packages/
sdk/ # @cori-do/sdk — step constructors users import in step files (`step.cli`, `step.code`, …)
runner/ # Deno script that hosts `code` activitiesCori Console (desktop app)
console/
src-tauri/ # Rust crate `cori-console` — Tauri v2 shell, IPC commands, sidecar supervisor,
# in-process worker, cron driver
app/ # React Router v7 SPA (`ssr: false`) served by the Tauri webviewBuild: pnpm install && pnpm --dir console build to populate console/build/client/, then cargo tauri build from console/src-tauri/. For development use cargo tauri dev, which starts the Vite dev server and the Tauri shell with hot reload.
Other
examples/
hello_world/ # Minimal example workflow for the quickstart
translate_product_sheets_fr/ # Canonical example from the cookbook
code_only/ # Pure-code workflow demonstrating the `code` step kind
skills/ # Cori agent skills (authored via `npx skills add cori-do/cori`)
docs/ # This documentation site (Fumadocs + Next.js + Tailwind v4)
teaser/ # Landing page (cori.do)
scripts/install.sh # One-line installerRequirements
- Rust: edition 2024, MSRV 1.94 (set in the root
Cargo.toml) - Node.js: ≥ 20 for TypeScript step execution, the SDK package, and the Console SPA build
- pnpm: used for the Node.js workspace (
pnpm-workspace.yaml) - Tauri CLI:
cargo install tauri-cli --version '^2'(or usecargo taurivia the workspace's[dependencies]pin inconsole/src-tauri/Cargo.toml)

