@sleds/cli 0.1.25 → 0.1.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +38 -0
  2. package/dist/sleds.mjs +8502 -3360
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -50,6 +50,44 @@ Inside Claude Code:
50
50
 
51
51
  Nothing changes until a wall.
52
52
 
53
+ ## Routes and the engine
54
+
55
+ An item can have a route: its work split into nodes, each one session on its own branch, each waiting on the nodes before it. Draft one with the `route` tool; read and run it from here.
56
+
57
+ ```
58
+ sleds route QW-142 the nodes, what each waits on, what is ready, where each run can be watched
59
+ sleds route QW-142 --dot | dot -Tpng -o route.png the same route as a Graphviz picture
60
+ sleds route run QW-142 run this one item's route here until it lands, then exit
61
+ sleds engine the long-running loop over every route Run armed on your sled
62
+ sleds engine --jira EPIC-7 the same loop over a Jira epic's Blocks links, no SLEDS route needed
63
+ ```
64
+
65
+ For each ready node the engine makes a worktree, starts an agent session on the node's branch (default `route/{item}-{node}`), and follows its PR to the merge: CI failures and review feedback go back to the session; a merge lands the node, closes the session, removes the worktree and, on Jira, moves the issue to Done. Stopping the engine leaves its sessions running — the next start picks them up from its state file. `sleds route run` keeps its own state file, so it can run beside a `sleds engine` on the same box.
66
+
67
+ Where each node runs is `--runner`:
68
+
69
+ ```
70
+ tmux the default — any terminal; one detached session per node, `tmux attach -t <name>` to watch
71
+ headless Claude Code's -p with no terminal; the transcript goes to a file beside the prompt, nothing goes in
72
+ command your own launcher: --runner-cmd '<shell template>' with {prompt} {cwd} {name} {branch} {agent};
73
+ it must block until the session ends, or the node reads as exited at once
74
+ orca for people who run agents in Orca: Orca makes the worktree and starts the agent in its terminal
75
+ ```
76
+
77
+ The flags `sleds route run` and `sleds engine` share:
78
+
79
+ ```
80
+ --at-once <n> sessions at once (default 1; one per seat)
81
+ --agent '<command>' the agent CLI each session starts (default Claude Code); its flags go in the command
82
+ --mode <permission-mode> Claude Code's (default auto); refused with --agent
83
+ --model <id> Claude Code's model; refused with --agent
84
+ --branch '<template>' the node's branch: {key} {ticket} {item} {node} {slug}, e.g. 'feature/{key}-{slug}'
85
+ --pr-title '<template>' the PR title: {key} {ticket} {item} {node} {title}, e.g. 'feat: [{key}] {title}'
86
+ --repo <path> | --repos-dir <dir> where the node's repo is checked out
87
+ ```
88
+
89
+ `sleds engine` also takes `--name <n>` (default the hostname; it signs as `engine:<n>`), `--interval <s>`, `--lease <min>`, `--idle <min>` (default 20: a session showing nothing new and no PR has ended) and `--once` for a single tick. `--jira` reads `JIRA_BASE_URL`, `JIRA_EMAIL` and `JIRA_TOKEN`. `sleds help` has the full list.
90
+
53
91
  ## Docs
54
92
 
55
93
  Repo: github.com/spdyadam/sleds · Site: sleds.ai