navori AI harness
navori

workspace

Config and tickets shared across repos: defaults that apply to all of them, and one render for the whole fleet.

Usage

navori workspace <init|ls|show|link|add-repo|set-default|render|rename|delete> [args]

Flags

init <name> [--description <txt>] [--yes] Create the workspace at ~/.navori/workspaces/<name>.json.
ls [--json] List the known workspaces.
show <name> [--json] Show paths, defaults and registered repos.
link [<name>] [--cwd <dir>] Register the current repo in the workspace and record it in its navori.config.json. With no name it uses the one the config declares.
add-repo <workspace> --name <n> --path <p> [--stack <s>] [--description <d>] Register a repo by path, without standing in it.
set-default <workspace> <key> <value> A default applied to every repo in the workspace (engines: comma-separated; plugins: true|false).
render <workspace> [--apply] [--force] [--verbose] Render every registered repo. Without --apply it is a preview.
rename <from> <to> [--yes] Rename, preserving tickets, repos and defaults.
delete <name> [--yes] Move it to ~/.navori/.trash (recoverable).

Examples

Create and link

$ navori workspace init bonum --yes
◆  Wrote ~/.navori/workspaces/bonum/workspace.json

$ navori workspace link bonum
◆  Registered 'demo' in workspace 'bonum'.
◆  workspace → 'bonum' saved in navori.config.json

Inspect it

$ navori workspace show bonum
│    ticketsDir : tickets
│    defaults   : {"engines":["claude"]}
│    repos      : 1
│  Repos:
│      · demo  /Users/you/dev/demo

Fleet render (preview)

$ navori workspace render bonum
│    · demo  up-to-date  45 unchanged
└  Preview 1/1 ok · 0 would change · 0 conflict · 1 warning · 0 failed

Notes

  • The workspace lives in ~/.navori/workspaces/: it is machine-local. All that stays in the repo is the 'workspace' key in navori.config.json.
  • 'link' is the short path from inside the repo; 'add-repo' is the same registration from outside, by path.
  • 'render' without --apply previews whole repos, so it measures the blast radius of a preset change before you apply it.
  • 'delete' does not delete: it moves to ~/.navori/.trash.