bots-garden/sidekickspublic Fork
⑂ ea08899
Commits
⬇ Clone ▾
git clone https://git.rickub.com/bots-garden/sidekicks.git
git clone ssh://git@rickub.com/bots-garden/sidekicks.git

Host key fingerprint (ed25519): SHA256:iycHnxEyq0Q7uyVpB7JlznP0G7JrTPXLYRcAU5CSLhc — verify it before your first connect.

Download ZIP

🛟 Updated.

k33g committed 2026-10-29T13:10:12+01:00 Browse files
ea08899 parent: b34befd
modified .memory/handoffs/2026-10-29-milestone-m1.md +2 -3
@@ -2,12 +2,11 @@
22
33 ## State
44
5-M1 is implemented on `feature/m1-foundations` (not committed by the agent). `make check` passes in the sandbox; `make test-real` passes with Alice. The app was exercised under Xvfb on Linux. Issues #8–#11, #13 closed; #12 open with one task: the owner's macOS check.
5+M1 is done and validated by the owner on macOS; first commit made by the owner on `feature/m1-foundations`. Issues #8–#13 and milestone "M1 · Fondations" closed.
66
77 ## In flight
88
9-- Owner: follow `docs/fr/how-to/tester-la-milestone-m1-sous-macos.md`, then close #12 and milestone "M1 · Fondations" (or ask the agent).
10-- First push: check that `.github/workflows/ci.yml` runs on rickub (ubuntu-latest must provide `libwebkitgtk-6.0-dev`; if not, the apt step needs another image or package set).
9+- First push: check that `.github/workflows/ci.yml` runs on rickub (ubuntu-latest must provide `libwebkitgtk-6.0-dev`).
1110
1211 ## Next steps
1312
@@ -2,12 +2,11 @@
2 2
3 ## State3 ## State
4 4
5-M1 is implemented on `feature/m1-foundations` (not committed by the agent). `make check` passes in the sandbox; `make test-real` passes with Alice. The app was exercised under Xvfb on Linux. Issues #8–#11, #13 closed; #12 open with one task: the owner's macOS check.5+M1 is done and validated by the owner on macOS; first commit made by the owner on `feature/m1-foundations`. Issues #8–#13 and milestone "M1 · Fondations" closed.
6 6
7 ## In flight7 ## In flight
8 8
9-- Owner: follow `docs/fr/how-to/tester-la-milestone-m1-sous-macos.md`, then close #12 and milestone "M1 · Fondations" (or ask the agent).9+- First push: check that `.github/workflows/ci.yml` runs on rickub (ubuntu-latest must provide `libwebkitgtk-6.0-dev`).
10-- First push: check that `.github/workflows/ci.yml` runs on rickub (ubuntu-latest must provide `libwebkitgtk-6.0-dev`; if not, the apt step needs another image or package set).
11 10
12 ## Next steps11 ## Next steps
13 12
modified .memory/history.md +4 -0
@@ -55,3 +55,7 @@
5555 - **Goal**: make the default configuration work with the test agents (owner's request), and give the owner a ready file in `./tmp`.
5656 - **Changes**: `scripts/install-test-config.sh` + `make install-test-config` (writes examples/test-agents.yaml at the default location with absolute repo paths and `MM_BIN`/`PATH` in each agent's env — an app opened from the Finder gets a minimal PATH and finds neither mm nor jq; keeps an existing file as `.bak`); Go test `internal/config/testconfig_test.go`; docs (commands reference, M1 guide, develop guide, EN/FR). `tmp/config.yaml` generated for the Mac (MM_BIN=/usr/local/bin/mm, PATH with /opt/homebrew/bin); `tmp/` git-ignored.
5757 - **Tests**: Go test passes; app started without --config and with `env -i PATH=/usr/bin:/bin` → Alice starts.
58+
59+## 2026-10-29 — M1 closed
60+
61+- Owner validated M1 on macOS and committed. Closed #12 (last task + comment) and milestone "M1 · Fondations"; summary and M1 handoff updated. #38 (qlty kit) stays open.
@@ -55,3 +55,7 @@
55 - **Goal**: make the default configuration work with the test agents (owner's request), and give the owner a ready file in `./tmp`.55 - **Goal**: make the default configuration work with the test agents (owner's request), and give the owner a ready file in `./tmp`.
56 - **Changes**: `scripts/install-test-config.sh` + `make install-test-config` (writes examples/test-agents.yaml at the default location with absolute repo paths and `MM_BIN`/`PATH` in each agent's env — an app opened from the Finder gets a minimal PATH and finds neither mm nor jq; keeps an existing file as `.bak`); Go test `internal/config/testconfig_test.go`; docs (commands reference, M1 guide, develop guide, EN/FR). `tmp/config.yaml` generated for the Mac (MM_BIN=/usr/local/bin/mm, PATH with /opt/homebrew/bin); `tmp/` git-ignored.56 - **Changes**: `scripts/install-test-config.sh` + `make install-test-config` (writes examples/test-agents.yaml at the default location with absolute repo paths and `MM_BIN`/`PATH` in each agent's env — an app opened from the Finder gets a minimal PATH and finds neither mm nor jq; keeps an existing file as `.bak`); Go test `internal/config/testconfig_test.go`; docs (commands reference, M1 guide, develop guide, EN/FR). `tmp/config.yaml` generated for the Mac (MM_BIN=/usr/local/bin/mm, PATH with /opt/homebrew/bin); `tmp/` git-ignored.
57 - **Tests**: Go test passes; app started without --config and with `env -i PATH=/usr/bin:/bin` → Alice starts.57 - **Tests**: Go test passes; app started without --config and with `env -i PATH=/usr/bin:/bin` → Alice starts.
58+
59+## 2026-10-29 — M1 closed
60+
61+- Owner validated M1 on macOS and committed. Closed #12 (last task + comment) and milestone "M1 · Fondations"; summary and M1 handoff updated. #38 (qlty kit) stays open.
modified .memory/summary.md +1 -2
@@ -6,7 +6,7 @@ A desktop application (Go + Wails) to talk with AI agents in channels, for non-t
66
77 ## State (2026-10-29, end of M1)
88
9-Milestone **Initialize** is closed. Milestone **M1 · Fondations** is implemented on branch `feature/m1-foundations` (issues #8–#11, #13 closed; #12 open until the owner checks the shell on macOS with `docs/fr/how-to/tester-la-milestone-m1-sous-macos.md`). The application opens, loads/validates/watches its configuration, lists the agents, starts/stops them over ACP (lazy start, LRU limit, idle stop, crash → error), shows states and stderr logs. **No conversation yet** (M2: #14–#19).
9+Milestones **Initialize** and **M1 · Fondations** are closed (M1 validated by the owner on macOS; issues #8–#13 closed). The application opens, loads/validates/watches its configuration, lists the agents, starts/stops them over ACP (lazy start, LRU limit, idle stop, crash → error), shows states and stderr logs. **No conversation yet**: next is M2 (#14–#19). Open outside milestones: #26 (spike agent→agent), #38 (qlty kit).
1010
1111 What exists:
1212
@@ -50,5 +50,4 @@ What exists:
5050 - How to exec a shell / read files inside an `sbx` sandbox (issue #28).
5151 - Quality gate: `qlty` is not in this sandbox → no qlty measurement yet (issue #38: build a sandbox kit with qlty). golangci-lint (go tool) is the stopgap.
5252 - Whether the CI workflow runs as-is on rickub (first push of `feature/m1-foundations`).
53-- The M1 shell on macOS (issue #12).
5453 - Whether `.claude/skills/*` (kit files) should be committed with the project is the owner's call.
@@ -6,7 +6,7 @@ A desktop application (Go + Wails) to talk with AI agents in channels, for non-t
6 6
7 ## State (2026-10-29, end of M1)7 ## State (2026-10-29, end of M1)
8 8
9-Milestone **Initialize** is closed. Milestone **M1 · Fondations** is implemented on branch `feature/m1-foundations` (issues #8–#11, #13 closed; #12 open until the owner checks the shell on macOS with `docs/fr/how-to/tester-la-milestone-m1-sous-macos.md`). The application opens, loads/validates/watches its configuration, lists the agents, starts/stops them over ACP (lazy start, LRU limit, idle stop, crash → error), shows states and stderr logs. **No conversation yet** (M2: #14–#19).9+Milestones **Initialize** and **M1 · Fondations** are closed (M1 validated by the owner on macOS; issues #8–#13 closed). The application opens, loads/validates/watches its configuration, lists the agents, starts/stops them over ACP (lazy start, LRU limit, idle stop, crash → error), shows states and stderr logs. **No conversation yet**: next is M2 (#14–#19). Open outside milestones: #26 (spike agent→agent), #38 (qlty kit).
10 10
11 What exists:11 What exists:
12 12
@@ -50,5 +50,4 @@ What exists:
50 - How to exec a shell / read files inside an `sbx` sandbox (issue #28).50 - How to exec a shell / read files inside an `sbx` sandbox (issue #28).
51 - Quality gate: `qlty` is not in this sandbox → no qlty measurement yet (issue #38: build a sandbox kit with qlty). golangci-lint (go tool) is the stopgap.51 - Quality gate: `qlty` is not in this sandbox → no qlty measurement yet (issue #38: build a sandbox kit with qlty). golangci-lint (go tool) is the stopgap.
52 - Whether the CI workflow runs as-is on rickub (first push of `feature/m1-foundations`).52 - Whether the CI workflow runs as-is on rickub (first push of `feature/m1-foundations`).
53-- The M1 shell on macOS (issue #12).
54 - Whether `.claude/skills/*` (kit files) should be committed with the project is the owner's call.53 - Whether `.claude/skills/*` (kit files) should be committed with the project is the owner's call.
modified .tickets/issues/0012-shell-ui-a-panels-inspire-de-zed.yaml +24 -3
@@ -1,12 +1,12 @@
11 # Managed by IssueSpec. Hand edits are welcome; keep the schema valid.
22 id: 12
33 title: "Shell UI à panels inspiré de Zed"
4-state: open
4+state: closed
55 author:
66 name: k33g
77 email: ph.charriere@gmail.com
88 createdAt: 2026-10-29T07:20:10.000Z
9-updatedAt: 2026-10-29T11:58:59.000Z
9+updatedAt: 2026-10-29T12:09:30.000Z
1010 labels:
1111 - "kind::feature"
1212 - "area::ui"
@@ -43,6 +43,8 @@ tasks:
4343 name: k33g
4444 email: ph.charriere@gmail.com
4545 createdAt: 2026-10-29T07:20:10.000Z
46+ updatedAt: 2026-10-29T12:09:30.000Z
47+ closedAt: 2026-10-29T12:09:30.000Z
4648 updatedAt: 2026-10-29T10:19:30.000Z
4749 closedAt: 2026-10-29T10:19:30.000Z
4850 - id: 2
@@ -53,6 +55,8 @@ tasks:
5355 name: k33g
5456 email: ph.charriere@gmail.com
5557 createdAt: 2026-10-29T07:20:10.000Z
58+ updatedAt: 2026-10-29T12:09:30.000Z
59+ closedAt: 2026-10-29T12:09:30.000Z
5660 updatedAt: 2026-10-29T10:19:30.000Z
5761 closedAt: 2026-10-29T10:19:30.000Z
5862 - id: 3
@@ -63,6 +67,8 @@ tasks:
6367 name: k33g
6468 email: ph.charriere@gmail.com
6569 createdAt: 2026-10-29T07:20:10.000Z
70+ updatedAt: 2026-10-29T12:09:30.000Z
71+ closedAt: 2026-10-29T12:09:30.000Z
6672 updatedAt: 2026-10-29T10:19:30.000Z
6773 closedAt: 2026-10-29T10:19:30.000Z
6874 - id: 4
@@ -73,6 +79,8 @@ tasks:
7379 name: k33g
7480 email: ph.charriere@gmail.com
7581 createdAt: 2026-10-29T07:20:10.000Z
82+ updatedAt: 2026-10-29T12:09:30.000Z
83+ closedAt: 2026-10-29T12:09:30.000Z
7684 updatedAt: 2026-10-29T10:19:30.000Z
7785 closedAt: 2026-10-29T10:19:30.000Z
7886 - id: 5
@@ -83,16 +91,20 @@ tasks:
8391 name: k33g
8492 email: ph.charriere@gmail.com
8593 createdAt: 2026-10-29T07:20:10.000Z
94+ updatedAt: 2026-10-29T12:09:30.000Z
95+ closedAt: 2026-10-29T12:09:30.000Z
8696 updatedAt: 2026-10-29T10:19:30.000Z
8797 closedAt: 2026-10-29T10:19:30.000Z
8898 - id: 6
8999 title: "Vérifier le shell sur macOS (guide de test M1, partie 2)"
90- state: open
100+ state: closed
91101 priority: high
92102 author:
93103 name: k33g
94104 email: ph.charriere@gmail.com
95105 createdAt: 2026-10-29T10:19:30.000Z
106+ updatedAt: 2026-10-29T12:09:30.000Z
107+ closedAt: 2026-10-29T12:09:30.000Z
96108 comments:
97109 - id: 1
98110 author:
@@ -116,3 +128,12 @@ comments:
116128 Cause : `System.IsMac()` lit `window._wails.environment`, que le runtime Wails remplit de façon asynchrone ; au chargement de la page il peut encore être vide (le runtime le dit lui-même dans `drag.js` et utilise une heuristique de secours). Selon le moment, la classe `macos` — et donc la marge `--titlebar-inset` — n'était pas posée. Correctif : `isMac(System.IsMac(), navigator.userAgent)` dans `frontend/src/lib/theme.ts` (le user agent de WKWebView contient « Macintosh »), avec 3 tests. À revérifier sur Mac (point 1 du guide).
117129
118130 Guide corrigé : Settings affiche le chemin complet ; `open '~/…'` entre guillemets ne développe pas `~` — commandes `open` et de remise en place ajoutées.
131+ - id: 3
132+ author:
133+ name: k33g
134+ email: ph.charriere@gmail.com
135+ createdAt: 2026-10-29T12:09:30.000Z
136+ body: |
137+ ## Vérifié sur macOS — issue fermée
138+
139+ Le propriétaire a validé M1 sur son Mac avec le [guide de test M1](docs/fr/how-to/tester-la-milestone-m1-sous-macos.md), après les deux correctifs issus de ce test : détection de macOS robuste (`isMac` avec repli sur le user agent) pour la marge sous les boutons de fenêtre, et `make install-test-config` pour une configuration par défaut qui fonctionne avec les agents de test, y compris depuis le Finder.
@@ -1,12 +1,12 @@
1 # Managed by IssueSpec. Hand edits are welcome; keep the schema valid.1 # Managed by IssueSpec. Hand edits are welcome; keep the schema valid.
2 id: 122 id: 12
3 title: "Shell UI à panels inspiré de Zed"3 title: "Shell UI à panels inspiré de Zed"
4-state: open4+state: closed
5 author:5 author:
6 name: k33g6 name: k33g
7 email: ph.charriere@gmail.com7 email: ph.charriere@gmail.com
8 createdAt: 2026-10-29T07:20:10.000Z8 createdAt: 2026-10-29T07:20:10.000Z
9-updatedAt: 2026-10-29T11:58:59.000Z9+updatedAt: 2026-10-29T12:09:30.000Z
10 labels:10 labels:
11 - "kind::feature"11 - "kind::feature"
12 - "area::ui"12 - "area::ui"
@@ -43,6 +43,8 @@ tasks:
43 name: k33g43 name: k33g
44 email: ph.charriere@gmail.com44 email: ph.charriere@gmail.com
45 createdAt: 2026-10-29T07:20:10.000Z45 createdAt: 2026-10-29T07:20:10.000Z
46+ updatedAt: 2026-10-29T12:09:30.000Z
47+ closedAt: 2026-10-29T12:09:30.000Z
46 updatedAt: 2026-10-29T10:19:30.000Z48 updatedAt: 2026-10-29T10:19:30.000Z
47 closedAt: 2026-10-29T10:19:30.000Z49 closedAt: 2026-10-29T10:19:30.000Z
48 - id: 250 - id: 2
@@ -53,6 +55,8 @@ tasks:
53 name: k33g55 name: k33g
54 email: ph.charriere@gmail.com56 email: ph.charriere@gmail.com
55 createdAt: 2026-10-29T07:20:10.000Z57 createdAt: 2026-10-29T07:20:10.000Z
58+ updatedAt: 2026-10-29T12:09:30.000Z
59+ closedAt: 2026-10-29T12:09:30.000Z
56 updatedAt: 2026-10-29T10:19:30.000Z60 updatedAt: 2026-10-29T10:19:30.000Z
57 closedAt: 2026-10-29T10:19:30.000Z61 closedAt: 2026-10-29T10:19:30.000Z
58 - id: 362 - id: 3
@@ -63,6 +67,8 @@ tasks:
63 name: k33g67 name: k33g
64 email: ph.charriere@gmail.com68 email: ph.charriere@gmail.com
65 createdAt: 2026-10-29T07:20:10.000Z69 createdAt: 2026-10-29T07:20:10.000Z
70+ updatedAt: 2026-10-29T12:09:30.000Z
71+ closedAt: 2026-10-29T12:09:30.000Z
66 updatedAt: 2026-10-29T10:19:30.000Z72 updatedAt: 2026-10-29T10:19:30.000Z
67 closedAt: 2026-10-29T10:19:30.000Z73 closedAt: 2026-10-29T10:19:30.000Z
68 - id: 474 - id: 4
@@ -73,6 +79,8 @@ tasks:
73 name: k33g79 name: k33g
74 email: ph.charriere@gmail.com80 email: ph.charriere@gmail.com
75 createdAt: 2026-10-29T07:20:10.000Z81 createdAt: 2026-10-29T07:20:10.000Z
82+ updatedAt: 2026-10-29T12:09:30.000Z
83+ closedAt: 2026-10-29T12:09:30.000Z
76 updatedAt: 2026-10-29T10:19:30.000Z84 updatedAt: 2026-10-29T10:19:30.000Z
77 closedAt: 2026-10-29T10:19:30.000Z85 closedAt: 2026-10-29T10:19:30.000Z
78 - id: 586 - id: 5
@@ -83,16 +91,20 @@ tasks:
83 name: k33g91 name: k33g
84 email: ph.charriere@gmail.com92 email: ph.charriere@gmail.com
85 createdAt: 2026-10-29T07:20:10.000Z93 createdAt: 2026-10-29T07:20:10.000Z
94+ updatedAt: 2026-10-29T12:09:30.000Z
95+ closedAt: 2026-10-29T12:09:30.000Z
86 updatedAt: 2026-10-29T10:19:30.000Z96 updatedAt: 2026-10-29T10:19:30.000Z
87 closedAt: 2026-10-29T10:19:30.000Z97 closedAt: 2026-10-29T10:19:30.000Z
88 - id: 698 - id: 6
89 title: "Vérifier le shell sur macOS (guide de test M1, partie 2)"99 title: "Vérifier le shell sur macOS (guide de test M1, partie 2)"
90- state: open100+ state: closed
91 priority: high101 priority: high
92 author:102 author:
93 name: k33g103 name: k33g
94 email: ph.charriere@gmail.com104 email: ph.charriere@gmail.com
95 createdAt: 2026-10-29T10:19:30.000Z105 createdAt: 2026-10-29T10:19:30.000Z
106+ updatedAt: 2026-10-29T12:09:30.000Z
107+ closedAt: 2026-10-29T12:09:30.000Z
96 comments:108 comments:
97 - id: 1109 - id: 1
98 author:110 author:
@@ -116,3 +128,12 @@ comments:
116 Cause : `System.IsMac()` lit `window._wails.environment`, que le runtime Wails remplit de façon asynchrone ; au chargement de la page il peut encore être vide (le runtime le dit lui-même dans `drag.js` et utilise une heuristique de secours). Selon le moment, la classe `macos` — et donc la marge `--titlebar-inset` — n'était pas posée. Correctif : `isMac(System.IsMac(), navigator.userAgent)` dans `frontend/src/lib/theme.ts` (le user agent de WKWebView contient « Macintosh »), avec 3 tests. À revérifier sur Mac (point 1 du guide).128 Cause : `System.IsMac()` lit `window._wails.environment`, que le runtime Wails remplit de façon asynchrone ; au chargement de la page il peut encore être vide (le runtime le dit lui-même dans `drag.js` et utilise une heuristique de secours). Selon le moment, la classe `macos` — et donc la marge `--titlebar-inset` — n'était pas posée. Correctif : `isMac(System.IsMac(), navigator.userAgent)` dans `frontend/src/lib/theme.ts` (le user agent de WKWebView contient « Macintosh »), avec 3 tests. À revérifier sur Mac (point 1 du guide).
117 129
118 Guide corrigé : Settings affiche le chemin complet ; `open '~/…'` entre guillemets ne développe pas `~` — commandes `open` et de remise en place ajoutées.130 Guide corrigé : Settings affiche le chemin complet ; `open '~/…'` entre guillemets ne développe pas `~` — commandes `open` et de remise en place ajoutées.
131+ - id: 3
132+ author:
133+ name: k33g
134+ email: ph.charriere@gmail.com
135+ createdAt: 2026-10-29T12:09:30.000Z
136+ body: |
137+ ## Vérifié sur macOS — issue fermée
138+
139+ Le propriétaire a validé M1 sur son Mac avec le [guide de test M1](docs/fr/how-to/tester-la-milestone-m1-sous-macos.md), après les deux correctifs issus de ce test : détection de macOS robuste (`isMac` avec repli sur le user agent) pour la marge sous les boutons de fenêtre, et `make install-test-config` pour une configuration par défaut qui fonctionne avec les agents de test, y compris depuis le Finder.
modified .tickets/milestones.yaml +1 -1
@@ -5,7 +5,7 @@ milestones:
55 description: Specification of the project, settings, definition of tools
66 dueOn: 2026-10-30
77 - title: "M1 · Fondations"
8- state: open
8+ state: closed
99 description: "Squelette Go + Wails, chargement de la config YAML, client ACP capable de démarrer un agent et de faire le handshake, shell UI à panels vide."
1010 dueOn: 2026-11-13
1111 - title: "M2 · Conversation avec un agent"
@@ -5,7 +5,7 @@ milestones:
5 description: Specification of the project, settings, definition of tools5 description: Specification of the project, settings, definition of tools
6 dueOn: 2026-10-306 dueOn: 2026-10-30
7 - title: "M1 · Fondations"7 - title: "M1 · Fondations"
8- state: open8+ state: closed
9 description: "Squelette Go + Wails, chargement de la config YAML, client ACP capable de démarrer un agent et de faire le handshake, shell UI à panels vide."9 description: "Squelette Go + Wails, chargement de la config YAML, client ACP capable de démarrer un agent et de faire le handshake, shell UI à panels vide."
10 dueOn: 2026-11-1310 dueOn: 2026-11-13
11 - title: "M2 · Conversation avec un agent"11 - title: "M2 · Conversation avec un agent"