@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.
- package/README.md +38 -0
- package/dist/sleds.mjs +8502 -3360
- 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
|