Behind jackin❯ — crates

jackin❯

The jackin❯ CLI — the operator-facing binary that loads roles into isolated containers, drives the console, and wires the workspace together. This crate is the L4 entry/glue layer: lib.rs re-exports the module tree consumed by main.rs, src/bin/role.rs, and integration tests; the crate is simultaneously a library and a binary.

What this crate owns

  • The CLI surface (cli) and top-level application wiring (app), error type (error), and preflight checks (preflight).
  • Console entry (console), launch/prompt flow (prompt), and the Warp integration (warp).
  • Role-authoring (role_authoring, role_claude_plugins) and workspace commands (workspace).

Architecture tier and allowed dependencies

L4 entry/glue crate. It depends on the whole stack, including TermRock-backed presentation crates. Nothing depends on this crate; it is the top of the graph. Keep it thin — it assembles, it does not implement domain logic. Product-owned terminal formatting and ownership policy now live with their CLI callers instead of the retired shared donor modules.

Structure

ModuleOwnsTests
lib.rslibrary re-exports—
main.rsbinary entry—
cli.rs · cli/CLI parsing, including diagnostics validation (no local logs command)tests.rs
app.rs · app/app wiringtests.rs
console.rs · console/console entry and dependency-crossing host adapters—
prompt.rs · prompt/prompt flowtests.rs
preflight.rs · preflight/preflight checkstests.rs
workspace.rs · workspace/workspace commandstests.rs
role_authoring.rs · role_authoring/role-authoring commandstests.rs
role_claude_plugins.rs · role_claude_plugins/role Claude-plugins commandstests.rs
warp.rsWarp integration—
error.rstop-level error type—
bin/extra binaries—

Public API

The jackin binary (jackin, jackin load, jackin console, …) plus the library re-exports used by integration tests. New user-visible flags/commands land here (CLI-first), then optionally surface in the console.

How to verify

cargo nextest run -p jackin
cargo clippy -p jackin --all-targets -- -D warnings

On this page