Skip to main content

Crate workon

Crate workon 

Source
Expand description

Library surface of the workon crate. The binary (main.rs) is a thin shim over these modules, and examples/generate_assets.rs reaches cli::Cli through here to render the man page and completion scripts.

Modules§

agent
The agent a config drives: which pane command is the agent, and the argument templates workon injects into it.
background
Work handed to a process that may outlive workon.
claude_trust
cli
deps
discover
Live inference of workspace structure from the filesystem plus git/jj, so the headless subcommands need no registry. The worktrees under ~/.worktrees are the source of truth; this module reads facts back off them. Anything stored (in .workon.json) is only what can’t be inferred — see specs/non-interactive-workspaces.md.
home
layout
mise_env
The environment mise env computes for a directory, handed to the session and to provisioners.
not_ready
What workon says when a setup step failed (issue #2): a test database that could not be created, or a schema load or migration that errors, does not stop provisioning, so the workspace exists but is not ready. create says so last, names the command that opens the workspace as it is, and exits with EXIT_NOT_READY; -w asks before zellij takes the screen, which would hide the warning.
provision
Per-workspace provisioners: modular setup that copying gitignored files can’t provide (isolated test databases today; more per ecosystem later). Each provisioner detects its project type and does only the irreducible work, recording any external resource it created so teardown can undo it. Mirrors the vcs trait + backend registry. See specs/workspace-provisioners.md.
resolve
session
trust
Config trust gate.
vcs
workspace