How to run the end-to-end scenarios (v0.1)
This guide runs the six scenarios that validate a release with the real test agents (issue #34), then the checks of what v0.1 added. It assumes a Mac with mm, llmman running, the models of the four test agents pulled, and Sidekicks built from the release's tag (make package-macos, or make dev).
Two agents at most run at once (limits.maxRunningAgents: 2). Between two scenarios, unload every model, so each scenario starts cold:
scripts/agents.sh unload --all
scripts/agents.sh ps # no model loaded
0. Prepare
make install-test-config(the four test agents at the default location; the previous file is kept as a backup).- Open Sidekicks. Under AGENTS: Alice, Bob, Riker, Garfield, all "stopped".
- Open the report below in a text editor, to fill it in as you go.
1. Alice — a simple conversation, Markdown, cancelling
- Click Alice (assistant), send:
Donne un tableau markdown de 2 lignes (nom, rôle) puis un bloc de code Go qui affiche hello. - Expected: the answer streams; a table and coloured Go code with Copy appear.
- Send:
Écris un poème de 40 vers sur la mer.and click ■ Stop after a few lines. - Expected: the answer stops and ends with "Answer stopped."; Alice goes back to "ready".
2. Alice + Bob — a multi-agent channel, routing, shared context
- Create a channel
#e2e(⌘N). Send:@alice donne un prénom pour un chat roux. - Expected: "Alice (assistant) joined the channel." then her answer with a name.
- Send:
@bob que penses-tu du prénom proposé par Alice ? - Expected: Bob joins and quotes the name Alice gave: he received the messages he had not seen.
- Send a message without any mention: expected, the last agent who spoke (Bob) answers.
3. Riker — tool calls, permissions
- Unload the models. Click Riker (tools), send:
Crée le fichier e2e.txt contenant "ok", puis liste le dossier. - Expected: a permission card in plain words. Click Allow once: the tool card turns ✓,
e2e.txtis listed. - Send:
Supprime e2e.txt.Click Reject once. - Expected: Riker says it could not; the file is still there (📂 → Files).
4. Garfield — slash commands and skills
- Unload the models. Click Garfield (translator), type
/. - Expected: "Asking Garfield (translator) for their commands…" then Garfield's commands and skills (
idioms,styles…). - Pick
/idioms(Tab), addil pleut des cordes, send. - Expected: the answer explains the idiom with an English equivalent.
5. Garfield + Bob — /garfield:command in a channel
- Unload the models. In
#e2e, invite Garfield (+ Invite), then type/gar. - Expected:
/garfield:idioms,/garfield:styles… listed with their agent. - Send
/garfield:styles Bonjour à tous. Expected: only Garfield answers. - Send
@bob traduis la première version de Garfield en espagnol.Expected: Bob answers from Garfield's text.
6. Alice — restart and resume
- Quit Sidekicks (⌘Q) while nothing is answering. Reopen it.
- Expected:
#e2eand the direct conversations are there with their messages; the agents are "stopped". - In Alice's conversation, send:
Quelle était ma première question ? - Expected: Alice answers from the earlier exchange (her session was resumed, or the history was given back to her).
7. What v0.1 added
| # | Check | Expected |
|---|---|---|
| 7.1 | mv ~/Library/Application\ Support/sidekicks ~/sidekicks-backup, open Sidekicks |
Welcome screen: logo, three steps, + Add my first agent |
| 7.2 | Add Alice with the assistant (program mm, arguments -acp -config agent.yaml, folder agents/alice) |
Her conversation opens; Settings shows her entry, the file's comments are kept |
| 7.3 | Add an agent whose program is nothere, start it (▶) |
"The program "nothere" cannot be found…", with Technical details folded |
| 7.4 | Add an agent in a container that does not exist, start it | A sentence about the missing container |
| 7.5 | ⌘K, type ali, Enter; ⌘N; ⌘L; ⌘,; ⌘J; ⌘B; ⇧⌘N |
Each does what Keyboard shortcuts says |
| 7.6 | Tab through the window | The focused element is always outlined |
| 7.7 | Open the .app installed from the .dmg from the Finder, start Alice |
It starts: mm is found without a full path (the shell's PATH) |
| 7.8 | Put the backup back: rm -r ~/Library/Application\ Support/sidekicks && mv ~/sidekicks-backup ~/Library/Application\ Support/sidekicks |
Your agents and history are back |
Report
Copy this into a comment of issue #34 and fill it in:
## End-to-end report — Sidekicks <version>, <date>
Mac: <model, RAM>, macOS <version> · mm <version> · build: <dmg | make dev>
| # | Scenario | Result | Notes |
| --- | --- | --- | --- |
| 1 | Alice: conversation, Markdown, cancel | ✅ / ❌ | |
| 2 | Alice + Bob: channel, routing, shared context | ✅ / ❌ | |
| 3 | Riker: tools, allow / reject | ✅ / ❌ | |
| 4 | Garfield: / commands and skills | ✅ / ❌ | |
| 5 | Garfield + Bob: /garfield:command in a channel | ✅ / ❌ | |
| 6 | Alice: restart and resume | ✅ / ❌ | |
| 7 | v0.1 checks (7.1–7.8) | ✅ / ❌ | |
Models unloaded between scenarios: yes / no
See also
- How to run the tests — the automated tests, with and without real agents
- scripts/agents.sh
- How to publish a release
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
|