squad-kit 1.1.0 → 1.2.0
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/CHANGELOG.md +201 -1
- package/README.md +51 -13
- package/SECURITY.md +9 -2
- package/dist/cli.js +31977 -15588
- package/dist/console-ui/assets/index-3sA27BxT.css +1 -0
- package/dist/console-ui/assets/index-CXdIA4pC.js +632 -0
- package/dist/console-ui/index.html +2 -2
- package/package.json +18 -13
- package/dist/console-ui/assets/index-B5OB6sbE.css +0 -1
- package/dist/console-ui/assets/index-CmwEXgR9.js +0 -551
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,204 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [1.2.0] — 2026-11-05
|
|
11
|
+
|
|
12
|
+
squad-kit 1.2 is about trust: squad-kit shows that it understands your project, says what the work really cost, and
|
|
13
|
+
makes the squad's work harder to fake. It also takes a whole requirements document and builds it, story by story.
|
|
14
|
+
Windows is less protected and not fully tested yet (see What's safer).
|
|
15
|
+
|
|
16
|
+
### What's new
|
|
17
|
+
|
|
18
|
+
#### From a BRD to a built product
|
|
19
|
+
|
|
20
|
+
- **A new Requirements page** (after Overview). **Add a BRD**: a PDF, Word or Markdown file, or pasted text, with
|
|
21
|
+
mockups if you have them. The Analyst reads it live and asks only about what is **missing in the BRD** or where
|
|
22
|
+
**two parts clash**. Then it writes epics, features and stories, each with its checks (Given, When, Then), size,
|
|
23
|
+
needs and its place in the document.
|
|
24
|
+
- **Review it as a tree or a map.** Rename, rewrite, move, add or remove any part, or ask the Analyst to redo one.
|
|
25
|
+
An estimate from this project's own tickets: "20 stories, about $140 and 6 hours, 2 at a time". Nothing is built
|
|
26
|
+
or sent before **Approve breakdown**.
|
|
27
|
+
- **Send to Azure DevOps**: epics, features and stories with parent and dependency links, into the backlog. **Send
|
|
28
|
+
changes** updates only what changed. squad-kit never deletes there, and a cut-off send makes no doubles.
|
|
29
|
+
- **Build continuously**: each story becomes a ticket on the new **Builds by itself** track, in the order its needs
|
|
30
|
+
allow, within the parallel limit and the budgets. No questions, the plan is approved by itself, small choices are
|
|
31
|
+
listed under **Decided for you** (press **Change** on any), and it merges by itself once the checks, the review
|
|
32
|
+
and the screenshots pass. It stops only for a gap, a clash or a failed check, and then only that story and the
|
|
33
|
+
ones that need it wait. Releases stay your button.
|
|
34
|
+
- Terminal: `squad requirements add|show|answer|edit|move|approve|send|build|start|…`, `squad decided`. See
|
|
35
|
+
[From a BRD to a built product](docs/requirements.md).
|
|
36
|
+
|
|
37
|
+
#### Proof you can read
|
|
38
|
+
|
|
39
|
+
- **squad-kit takes the screenshots itself, with its own browser.** The Tester says which pages, steps and sizes.
|
|
40
|
+
squad-kit opens the story's own copy of the app, does the steps and takes the pictures.
|
|
41
|
+
- **One or more pictures for each "done when"**: one per part or case, up to 6.
|
|
42
|
+
- **Each "done when" gets a verdict**, from the Tester and squad-kit's own check of all its pictures together:
|
|
43
|
+
**Met**, **Not working yet** (a picture shows it does not work), **Not shown yet** (the pictures do not show it
|
|
44
|
+
clearly) or **Not on a screen** (it cannot be shown at all, like an email or what happens after a restart). Not
|
|
45
|
+
working yet goes back to the Builder once, then it is a plain stop. Not shown yet goes back to the Tester up to 2
|
|
46
|
+
more times, keeps the good pictures and never reaches the Builder. Not on a screen keeps its reason and does not
|
|
47
|
+
stop the story, unless every "done when" ends that way.
|
|
48
|
+
- **Also changed, not in the plan**: what the change touches beyond its plan, in the Reviewer's words. It never
|
|
49
|
+
blocks. You see it at your check, on a stop, on the ticket and in the release notes.
|
|
50
|
+
|
|
51
|
+
#### Your turn
|
|
52
|
+
|
|
53
|
+
- **Where to look**: each page the proof names, with the "done when" it shows.
|
|
54
|
+
- **Try it yourself**: runs the story's own copy of the app, with the change in it and nothing merged, so you can
|
|
55
|
+
click through it before **Looks right**. It stops by itself when the story moves on. Terminal: `squad try <ticket>`.
|
|
56
|
+
- **Ask a question** on every story, in every state: working, in the queue, waiting for another story, stopped, at
|
|
57
|
+
review, taken over or released. Whoever knows the story best answers: the Analyst before the build, the Builder
|
|
58
|
+
during and after it, the Tester once there are screenshots. It answers questions only, and the story stays exactly
|
|
59
|
+
where it is. Terminal: `squad chat <ticket> --ask`.
|
|
60
|
+
|
|
61
|
+
#### First run and Overview
|
|
62
|
+
|
|
63
|
+
- **Add project says what it found** (code with or without git, an empty folder, several repos, an older
|
|
64
|
+
squad-kit) and what happens next, before you confirm.
|
|
65
|
+
- **A setup page with live steps**: project memory, the AI tool, the Architect reading the code, how to test and run
|
|
66
|
+
it, trying the tests, opening the app once with a screenshot, and your overview. Each step has its time; a failure
|
|
67
|
+
has a way out and never stops the setup. **Notify me when it is ready**. Quality is asked once here.
|
|
68
|
+
- **The Overview page**, first in the sidebar: what the project is, who uses it, what it can do today, how its parts
|
|
69
|
+
fit together, things worth knowing, the rules found, the proof, and three ideas for a first ticket. It stays up to
|
|
70
|
+
date after every merged ticket.
|
|
71
|
+
- **The rules the Architect found are proposals until you approve them** with **Looks right, start working**. They
|
|
72
|
+
used to be saved as approved without being shown. **Something is wrong** opens a talk with the Architect.
|
|
73
|
+
- **An empty project asks "What do you want to build?"**, in your own words, in English or Arabic. The Architect
|
|
74
|
+
writes down what you want with first stories for it, and picks the technology itself when your first story is
|
|
75
|
+
planned. Terminal: `squad overview --build "what you want"`.
|
|
76
|
+
- **squad-kit finds the commands of a project that started empty.** After the first build it reads how to test and
|
|
77
|
+
run the project from its files, and saves that. Nobody is asked.
|
|
78
|
+
- Terminal: `squad setup`, `squad overview`, `squad demo --first-run`.
|
|
79
|
+
|
|
80
|
+
#### Conversation and Cost
|
|
81
|
+
|
|
82
|
+
- **Conversation opens on "What happened"**: one card per step with its time, a one-line summary and what it handed
|
|
83
|
+
in, drawn as the real thing. **Full log** keeps the detail, in plain words, with **Open it in Claude Code**.
|
|
84
|
+
- **Cost follows how you pay.** On a subscription: "Included in your Claude plan. No extra charge.", the size of the
|
|
85
|
+
work and where it went, with the API-price figure shown as a value, not a bill. With an API key: real dollars, a
|
|
86
|
+
budget per ticket and per month, a warning at 80% and a pause at 100%.
|
|
87
|
+
- **Averages per Quality setting** (cost and squad time per accepted ticket) on the Squad and AI page.
|
|
88
|
+
- Terminal: `squad cost`, `squad config set payment`, `squad config set budget`.
|
|
89
|
+
|
|
90
|
+
#### Tickets that depend on each other
|
|
91
|
+
|
|
92
|
+
- **The Analyst and the Architect see the other open tickets** and the files they change.
|
|
93
|
+
- **A design can depend on another ticket.** The ticket then waits before building: **Build on its branch**, **Build
|
|
94
|
+
anyway**, or **Wait** (it starts by itself when the other one merges). Terminal: `squad depends`, `squad build`.
|
|
95
|
+
- **Bring in latest main** is a button on a ticket being built (`squad bring-in`).
|
|
96
|
+
|
|
97
|
+
#### Releases
|
|
98
|
+
|
|
99
|
+
- **Take a ticket out of the next release** before you release it (`squad release --without`).
|
|
100
|
+
- **Released tickets' branches are cleaned up** on this computer, and on the remote when you ask (`squad branches`).
|
|
101
|
+
A branch with unmerged work is never deleted.
|
|
102
|
+
- **A release cut off by a restart finishes or rolls back** cleanly on the next start.
|
|
103
|
+
|
|
104
|
+
#### Also
|
|
105
|
+
|
|
106
|
+
- **The ticket can go full width** (the button next to Close; remembered in this browser). **Hand over** and
|
|
107
|
+
**Propose a change** moved to the ⋯ menu, and Propose a change is also on the ticket's bottom bar, so the header is
|
|
108
|
+
one row at any width.
|
|
109
|
+
- **The Waiting for you banner is one slim, calm row**, and stays readable beside a docked chat.
|
|
110
|
+
- **The update banner shows what is new in every release since your version**, and **Check for updates** reads the
|
|
111
|
+
notes again.
|
|
112
|
+
- **Free the port and try again** on a stuck Tester step, for programs squad-kit itself started.
|
|
113
|
+
|
|
114
|
+
### What's safer
|
|
115
|
+
|
|
116
|
+
- **Agents get fixed tools, "the window"**: `take_screenshots`, `look_at_page`, `start_app`, `stop_app`, `app_status`,
|
|
117
|
+
`run_checks` and `i_am_stuck`. An agent fills in the fields, squad-kit checks them, does the job itself and hands
|
|
118
|
+
back the result. There is no free command: only this story's app on this computer, only the project's saved
|
|
119
|
+
commands, only what squad-kit started. A request outside that is refused and written in the activity, and three
|
|
120
|
+
refusals in one step stop the agent.
|
|
121
|
+
- **`i_am_stuck`**: when something technical is in an agent's way, squad-kit tries its own fixes (its browser, a free
|
|
122
|
+
port, starting the app again) and writes one plain line. It is never a question to you.
|
|
123
|
+
- **Technical questions never reach you.** squad-kit reads each question an agent asks, with its choices and
|
|
124
|
+
everything shown with it, and does not trust the agent's label. A question about ports, commands, files or settings
|
|
125
|
+
goes back to the agent to decide. An agent that keeps asking stops in plain words. When another program holds a
|
|
126
|
+
port and going around it did not work, you get one plain card with no port in it: **Stop it** (with a confirm) or
|
|
127
|
+
**Skip the browser tests**.
|
|
128
|
+
- **Some asks are refused and logged.** Asking you to change squad-kit's settings or protected files, to hand over a
|
|
129
|
+
password or a key, or to change git history never reaches you. One plain line goes in the activity. A reply in a
|
|
130
|
+
chat that asks for any of these is left out too.
|
|
131
|
+
- **A second guard for the project's own commands.** The tests, lint, build, setup, the app's start and the release
|
|
132
|
+
pipeline run in squad-kit's own guard on Mac and Linux. They work normally, browser tests too, and can reach the
|
|
133
|
+
network, but they can't read your keys, sign-ins, browser profiles, squad-kit's own folder or the `.env` files in
|
|
134
|
+
your project folder. If a project truly needs a file outside its copy, one plain sentence says so, and an engineer
|
|
135
|
+
can allow it in Settings or with `squad config set allow-read <path>` and `squad config set allow-write <path>`.
|
|
136
|
+
`squad doctor` shows whether the guard runs here.
|
|
137
|
+
- **Windows is less protected and not fully tested yet.** There, the agents' own commands and the project's own
|
|
138
|
+
commands have no guard, so they can reach other files on the computer. Use it on projects you trust. Settings and
|
|
139
|
+
the Squad and AI page say "Windows: less protected".
|
|
140
|
+
- **"Not checked" instead of a green pass** when a project has no tests. You are asked once per project, with the
|
|
141
|
+
Architect's suggested test command. A project without tests also checks that the app starts.
|
|
142
|
+
- **Weakened tests stop the ticket**: deleted tests, fewer tests, a changed test setup, or new skip/only markers, in
|
|
143
|
+
the common languages. **Continue anyway** needs a reason that stays on the record.
|
|
144
|
+
- **Proof is verified**: each screenshot must be a real image taken in this step, and "after" must differ from
|
|
145
|
+
"before", unless the "done when" says the screen stays as it was.
|
|
146
|
+
- **The Reviewer sees the whole change and the check results** in every round, not only the fix. In its review it can
|
|
147
|
+
also look at a page of the app itself (`look_at_page`).
|
|
148
|
+
- **A change to the test command is tried first.** squad-kit runs the new command and the current one in the ticket's
|
|
149
|
+
copy, and keeps the new one only when it passes and runs at least as many tests. You choose only when it cannot
|
|
150
|
+
tell. Terminal: `squad test-command <ticket> --use | --keep`.
|
|
151
|
+
- **The Builder's and Tester's commands run in Claude Code's sandbox** where the computer allows it: they write only
|
|
152
|
+
in the ticket's copy, its proof folder and a private package cache, can't read your keys, sign-ins or `.env`
|
|
153
|
+
files, and reach only package registries and the websites you allow (Settings, `squad config set hosts`). A
|
|
154
|
+
blocked command says what and why. `squad doctor` shows whether the sandbox runs here.
|
|
155
|
+
- **Turn and spend caps per step** from the Quality setting. Reaching one keeps the work and offers **Give it more**
|
|
156
|
+
or **Stop**.
|
|
157
|
+
- **Every command squad-kit suggests you copy quotes your text safely**, on the board and in the terminal.
|
|
158
|
+
- **zod 4, the AI SDK 5 and diff 8** for the 0.x planner commands. This closes the last high alert. The planner's
|
|
159
|
+
file-read tool on the Claude Agent SDK path now works with ranged reads.
|
|
160
|
+
|
|
161
|
+
### What's fixed
|
|
162
|
+
|
|
163
|
+
- **Plain stop messages.** A stop says what happened in squad-kit's own plain words, with **Try again**. A tool's raw
|
|
164
|
+
error never reaches you: the exact words are in the ticket's Developer tab and the app log.
|
|
165
|
+
- **A failed check runs once more** before anyone is sent to fix it, so a flaky test costs no Builder run. If it passes
|
|
166
|
+
then, the activity and the Developer tab say "failed once, passed when run again". Not after a Stop, a command
|
|
167
|
+
squad-kit had to end, or a file the guard blocked.
|
|
168
|
+
- **The Builder is told about old failures**: the checks that already failed on the first run, before any story
|
|
169
|
+
touched the code. It fixes what its story broke and leaves other screens alone. The checks must still pass.
|
|
170
|
+
- **A clash no longer stops a story too soon on Builds by itself.** While main keeps moving, squad-kit brings it in
|
|
171
|
+
again by itself, up to 3 times, with the checks, the review and the proof each time. If main has not moved, or after
|
|
172
|
+
the third time, you get the clash card. Other tracks show the card at the first clash, as before.
|
|
173
|
+
- **Apps move to a free port by themselves** when another program holds the usual one: Your apps, the story's own copy
|
|
174
|
+
and Try it yourself. In Your apps this works when the start command or the app's code takes a port setting; if not,
|
|
175
|
+
one plain sentence says what is in the way. `--next-port` on `squad app start` and `squad app restart` is still
|
|
176
|
+
accepted, and now does nothing.
|
|
177
|
+
- **squad-kit installs its own screenshot browser.** No `npx playwright`, and nothing to install by hand. The first
|
|
178
|
+
time, one line says "Setting up squad-kit's screenshot browser. This happens only once."
|
|
179
|
+
- **The step timer counts only running time.** It stands still while a ticket waits for you, for another story or for
|
|
180
|
+
a free place, so "Taking longer than usual" no longer shows on a step that was only waiting.
|
|
181
|
+
- **A restart is not a failure.** Restarting the board, Stop or the computer sleeping no longer counts as a failed
|
|
182
|
+
try or raises the model's effort. The Builder carries on with the same step in the same conversation, instead of
|
|
183
|
+
starting the work again, and the step's clock keeps its time ("resumed after a restart").
|
|
184
|
+
- **Nothing is left behind.** When a step ends, on Stop, and when the board restarts or quits, squad-kit stops every
|
|
185
|
+
program it started for the ticket, including test servers that left their process group. It finds them by where
|
|
186
|
+
they run: inside squad-kit's own copy of the code, never your folders or Your apps.
|
|
187
|
+
- **squad-kit clears its own leftovers before the checks** and says so in one activity line. If an agent asks about a
|
|
188
|
+
busy port that squad-kit caused, squad-kit answers it and you never see the question.
|
|
189
|
+
- **Desktop notices: Turn on always answers.** It says when the browser is asking, explains how to allow notices
|
|
190
|
+
when the browser stays silent (for example in Arc), and sends one test notice.
|
|
191
|
+
- **A ticket a teammate deleted** shows "Deleted by <owner>" with **Remove from my board**.
|
|
192
|
+
- **A chat message sent during Claude's usage limit waits** and is answered when the squad carries on.
|
|
193
|
+
- **On a phone**, the banners fold into one slim row while a ticket is open, and the website's docs pages fit.
|
|
194
|
+
|
|
195
|
+
## [1.1.1] — 2026-11-03
|
|
196
|
+
|
|
197
|
+
A security update. Nothing changes in how squad-kit works.
|
|
198
|
+
|
|
199
|
+
### Security
|
|
200
|
+
|
|
201
|
+
- **Packages with known security problems are updated.** The app's web server (hono 4.13, @hono/node-server 2), the
|
|
202
|
+
parts of the MCP SDK's server it pulls in (proxy-addr, body-parser, qs, ip-address), @modelcontextprotocol/sdk
|
|
203
|
+
1.32, fast-uri and js-yaml; in the app's screens, seroval and js-yaml; and the test tools (vitest 4, vite 6).
|
|
204
|
+
- **The website's build tools** move to Astro 7.
|
|
205
|
+
- **Still open:** zod 3, used only by the 0.x planner commands (`squad new-plan` with an API key). Its fix needs
|
|
206
|
+
zod 4, which those commands' AI library does not read yet. It is planned.
|
|
207
|
+
|
|
10
208
|
## [1.1.0] — 2026-11-03
|
|
11
209
|
|
|
12
210
|
squad-kit 1.1 is about never wondering what the squad is doing, and always having a way out.
|
|
@@ -873,7 +1071,9 @@ First public release.
|
|
|
873
1071
|
- Plan-generation meta-prompt (`generate-plan.md`), intake template (`intake.md`), and plan skeleton reference (`story-skeleton.md`).
|
|
874
1072
|
- Documentation: `docs/philosophy.md`, `docs/getting-started.md`, `docs/customization.md`, `docs/vs-spec-kit.md`.
|
|
875
1073
|
|
|
876
|
-
[Unreleased]: https://github.com/AzmSquad/squad-kit/compare/v1.
|
|
1074
|
+
[Unreleased]: https://github.com/AzmSquad/squad-kit/compare/v1.2.0...HEAD
|
|
1075
|
+
[1.2.0]: https://github.com/AzmSquad/squad-kit/releases/tag/v1.2.0
|
|
1076
|
+
[1.1.1]: https://github.com/AzmSquad/squad-kit/releases/tag/v1.1.1
|
|
877
1077
|
[1.1.0]: https://github.com/AzmSquad/squad-kit/releases/tag/v1.1.0
|
|
878
1078
|
[1.0.1]: https://github.com/AzmSquad/squad-kit/releases/tag/v1.0.1
|
|
879
1079
|
[1.0.0]: https://github.com/AzmSquad/squad-kit/releases/tag/v1.0.0
|
package/README.md
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
<p align="center">
|
|
2
2
|
<a href="https://squad-kit.com">
|
|
3
|
-
<
|
|
3
|
+
<picture>
|
|
4
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://squad-kit.com/readme/header-dark.png">
|
|
5
|
+
<source media="(prefers-color-scheme: light)" srcset="https://squad-kit.com/readme/header-light.png">
|
|
6
|
+
<img src="https://squad-kit.com/readme/header-light.png" alt="squad-kit: Your AI Engineering Squad. One Unified Harness." width="800">
|
|
7
|
+
</picture>
|
|
4
8
|
</a>
|
|
5
9
|
</p>
|
|
6
10
|
|
|
@@ -11,8 +15,6 @@
|
|
|
11
15
|
<a href="https://squad-kit.com"><img src="https://img.shields.io/badge/site-squad--kit.com-7cffa0?labelColor=0a0a0c" alt="Website"></a>
|
|
12
16
|
</p>
|
|
13
17
|
|
|
14
|
-
**Your AI Engineering Squad. One Unified Harness.**
|
|
15
|
-
|
|
16
18
|
squad-kit is an agent harness for the whole software cycle. You describe what you need in plain words. A
|
|
17
19
|
squad of AI agents takes it from that ask to a release: the Analyst, the Architect, the Builder, the Tester
|
|
18
20
|
and the Reviewer. You stay in control. The squad asks you when it needs you, and nothing important moves on
|
|
@@ -34,8 +36,10 @@ without your approval.
|
|
|
34
36
|
4. The Architect writes the **design**: the decision and the steps. You, or a developer, approve it.
|
|
35
37
|
5. The Builder writes the code in its own copy of the project. Your own folder stays as it is.
|
|
36
38
|
6. squad-kit runs the tests, lint and build itself. The Reviewer checks the work with fresh eyes. The Tester
|
|
37
|
-
|
|
38
|
-
7. You check this **proof**
|
|
39
|
+
shows each "done when" in one or more screenshots, one per part or case, taken with squad-kit's own browser.
|
|
40
|
+
7. You check this **proof**: each "done when" says **Met**, **Not working yet**, **Not shown yet** or **Not on a
|
|
41
|
+
screen**. **Where to look** names the pages, and **Try it yourself** runs the ticket's own copy of the app, with
|
|
42
|
+
nothing merged. Then press **Looks right**.
|
|
39
43
|
8. You press **Release**. squad-kit writes the changelog, sets the version and adds the git tag.
|
|
40
44
|
|
|
41
45
|
When the squad needs you, a banner shows on every page with the button to press, the browser tab shows how many
|
|
@@ -50,6 +54,10 @@ terminal command, so developers can do the same from the terminal.
|
|
|
50
54
|
AI tool the squad runs on. squad-kit uses your existing sign-in, so there is nothing new to buy. squad-kit
|
|
51
55
|
also finds Codex, but cannot run it yet.
|
|
52
56
|
|
|
57
|
+
There is nothing else to install. squad-kit installs its own browser for the screenshots the first time it needs
|
|
58
|
+
one, so there is no `npx playwright` to run. **Windows** works, but it is less protected and not fully tested yet:
|
|
59
|
+
use it on projects you trust.
|
|
60
|
+
|
|
53
61
|
## Install
|
|
54
62
|
|
|
55
63
|
```bash
|
|
@@ -84,14 +92,16 @@ Any folder works:
|
|
|
84
92
|
|
|
85
93
|
| The folder | What squad-kit does |
|
|
86
94
|
| --- | --- |
|
|
87
|
-
| An empty folder | Makes a new git repo. The Architect picks the
|
|
95
|
+
| An empty folder | Makes a new git repo and asks "What do you want to build?". The Architect picks the technology when your first ticket is planned, and squad-kit finds how to test and run it after the first build. |
|
|
88
96
|
| Code with git | Keeps your repo and its history as they are. |
|
|
89
97
|
| Code without git | Makes a repo, with your files in its first commit. Generated folders like `node_modules` and `dist`, and `.env` files, stay out. |
|
|
90
98
|
| A folder with several code repos | Works across them. Each ticket works in one repo. |
|
|
91
99
|
| A squad-kit 0.x project | Keeps your stories, plans and tracker settings. Moves your sign-ins to this computer. |
|
|
92
100
|
|
|
93
|
-
Then
|
|
94
|
-
|
|
101
|
+
Then a setup page shows each step live while the Architect reads the project, finds how to test and run it, and
|
|
102
|
+
squad-kit tries the tests and opens the app once. It takes a few minutes, and you can leave the page. Then the
|
|
103
|
+
**Overview** opens: what the project is, who uses it, how its parts fit, the rules found, and ideas for a first
|
|
104
|
+
ticket. Approve it with **Looks right, start working**, and the squad follows those rules.
|
|
95
105
|
|
|
96
106
|
## Your first ticket
|
|
97
107
|
|
|
@@ -112,10 +122,26 @@ The step-by-step guide is in [Getting started](docs/getting-started.md).
|
|
|
112
122
|
- **A slow step says so**, with what it is doing and three ways out: **Give it 10 more minutes**, **Stop and try
|
|
113
123
|
again**, or **Stop**. A step that makes no progress says what squad-kit checked.
|
|
114
124
|
- **Run your app** from **Your apps** in the sidebar: Start, Open, Restart and Stop, from squad-kit's own copy of
|
|
115
|
-
`main`. After **Looks right**, **Run the new
|
|
125
|
+
`main`. If another program holds its port, it moves to a free one by itself. After **Looks right**, **Run the new
|
|
126
|
+
version** shows the change. Terminal: `squad app start`.
|
|
127
|
+
- **Tickets that need each other**: when a design depends on a ticket that is not merged yet, it waits with
|
|
128
|
+
**Build on its branch**, **Build anyway** or **Wait**.
|
|
116
129
|
- **Remove a ticket** you no longer want with **Delete**, and take finished ones off the board with **Archive**.
|
|
117
130
|
The dialog lists what goes and what stays; the cost stays in Usage. Terminal: `squad delete`, `squad archive`.
|
|
118
131
|
|
|
132
|
+
## Checks you can trust
|
|
133
|
+
|
|
134
|
+
- **Not checked, never a fake pass**: a project with no tests shows "Not checked" in orange.
|
|
135
|
+
- **Weakened tests stop the ticket**: deleted or skipped tests, fewer tests, or a changed test setup.
|
|
136
|
+
- **Proof is checked**: each screenshot must be a real, new picture, and squad-kit's own check looks at all the
|
|
137
|
+
pictures of each "done when" together before it says **Met**.
|
|
138
|
+
- **The Builder works in a sandbox** where the computer allows it: its copy only, no keys or `.env` files, and only
|
|
139
|
+
the package registries and websites you allow.
|
|
140
|
+
- **The project's own commands run in a guard** on Mac and Linux: the tests, the setup and the app work normally, but
|
|
141
|
+
can't read your keys, your sign-ins or squad-kit's own files.
|
|
142
|
+
- **Agents get fixed tools, no free commands**, for screenshots, the app and the checks. squad-kit checks each
|
|
143
|
+
request and does the job itself.
|
|
144
|
+
|
|
119
145
|
## When something goes wrong
|
|
120
146
|
|
|
121
147
|
- **Every stop says what happened, what is safe, and the ways out**, as buttons: Try again, Fix it yourself,
|
|
@@ -165,19 +191,29 @@ Hand over and clones work for a project whose `.squad/` sits in its one code rep
|
|
|
165
191
|
|
|
166
192
|
## Talk to the squad
|
|
167
193
|
|
|
168
|
-
|
|
169
|
-
|
|
194
|
+
**Ask a question** is at the top of every ticket, in every state: working, in the queue, waiting for another ticket,
|
|
195
|
+
stopped, at review, taken over or released. Whoever knows the ticket best answers: the Analyst before the build, the
|
|
196
|
+
Builder during and after it, the Tester once there are screenshots. It answers questions only, like "how do I test
|
|
197
|
+
this?" or "where is the new page?", and the ticket stays exactly where it is. Terminal: `squad chat <ticket> --ask`.
|
|
198
|
+
|
|
199
|
+
You can also open a chat with any agent on a ticket. **Asking never stops the work**: the squad keeps working while
|
|
200
|
+
you talk. To change what gets built, press **Propose a change**. The Analyst writes the change into the spec, old
|
|
170
201
|
and new side by side, and you approve it. A released ticket answers questions only. A change to it becomes a new
|
|
171
202
|
linked ticket or a bug report.
|
|
172
203
|
|
|
204
|
+
**The squad asks you only about the business.** Technical questions stay with the agent and squad-kit. Nobody may ask
|
|
205
|
+
you for a password or a key, to change squad-kit's settings, or to change git history: squad-kit refuses it and
|
|
206
|
+
writes one line in the ticket's activity.
|
|
207
|
+
|
|
173
208
|
## Cost and models
|
|
174
209
|
|
|
175
210
|
- squad-kit picks a **model level** for each role and step from the project's **Quality** setting: **Best**
|
|
176
211
|
(the default) builds and reviews on the strongest model, **Balanced** builds on it at medium effort, and
|
|
177
212
|
**Thrifty** builds on a lighter one. **Fast** stays for screenshots and small helpers. The team or each person
|
|
178
213
|
can change single steps on the **Squad and AI** page.
|
|
179
|
-
- The board shows **what each ticket and each role used**,
|
|
180
|
-
|
|
214
|
+
- The board shows **what each ticket and each role used**, the way you pay. On a Claude subscription it says the
|
|
215
|
+
work is included in your plan, and shows its size and its value at API prices (a value, not a bill). With an API
|
|
216
|
+
key it shows real dollars, against a budget per ticket and per month.
|
|
181
217
|
- One **limit of tickets at once** (2 by default, up to 5) is shared by all your projects, because they use the
|
|
182
218
|
same AI account.
|
|
183
219
|
|
|
@@ -186,6 +222,8 @@ linked ticket or a bug report.
|
|
|
186
222
|
- [Getting started](docs/getting-started.md): your first hour, from install to a release.
|
|
187
223
|
- [Moving to 1.0](docs/migrating-to-1.0.md): from squad-kit 0.x, and from early 1.0 boards.
|
|
188
224
|
- [The app](docs/console.md): Home, the board, the ticket drawer, Squad and AI, and Settings.
|
|
225
|
+
- [From a BRD to a built product](docs/requirements.md): upload a requirements document, approve the breakdown,
|
|
226
|
+
send it to Azure DevOps and let the squad build it.
|
|
189
227
|
- [CHANGELOG](CHANGELOG.md): what changed in each version.
|
|
190
228
|
|
|
191
229
|
The 0.x planner commands (`squad new-story`, `squad new-plan`, `squad auth` and others) still ship. Their docs
|
package/SECURITY.md
CHANGED
|
@@ -7,8 +7,8 @@ or `squad upgrade`.
|
|
|
7
7
|
|
|
8
8
|
| Version | Supported |
|
|
9
9
|
| ------- | --------- |
|
|
10
|
-
| 1.
|
|
11
|
-
| < 1.
|
|
10
|
+
| 1.2.x | ✅ |
|
|
11
|
+
| < 1.2 | ❌ |
|
|
12
12
|
|
|
13
13
|
## Reporting a vulnerability
|
|
14
14
|
|
|
@@ -44,6 +44,13 @@ Credit will be given in the release notes unless you prefer to remain anonymous.
|
|
|
44
44
|
own copy of the code, the Tester cannot change code, and no agent may change the instruction files the next session
|
|
45
45
|
would follow, squad-kit's own `.squad/` folder, or git history. squad-kit checks after each step and puts back what
|
|
46
46
|
an agent changed outside its lane. Text from trackers and pasted messages reaches agents as data, never as orders.
|
|
47
|
+
- **Agents get fixed tools, no free commands.** For screenshots, the app and the checks, an agent presses one of
|
|
48
|
+
squad-kit's tools. squad-kit checks every field, does the job itself, and refuses and logs what breaks a check.
|
|
49
|
+
- **The project's own commands run in a guard** on Mac and Linux: the tests, setup, the app and the release pipeline
|
|
50
|
+
can't read your keys, sign-ins, browser profiles, squad-kit's own folder or the `.env` files in your project folder.
|
|
51
|
+
- **Windows is less protected and not fully tested yet.** There, the agents' own commands and the project's own
|
|
52
|
+
commands have no guard, so they can reach other files on the computer, squad-kit's own too. Use it on projects you
|
|
53
|
+
trust. Settings says so.
|
|
47
54
|
- **The engine owns git and the release.** Agents never merge, push or grade their own work.
|
|
48
55
|
- **The npm package is built and published by GitHub Actions** from a release tag, with npm trusted publishing (no
|
|
49
56
|
npm token exists) and a signed provenance statement you can check on npmjs.com.
|