You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
says the tool isn't relevant. Used so `sbx` doesn't appear at all
244
+
when the user has no sandbox-mode repo. **Important:**`Applies`
245
+
gates visibility of missing entries only — installed tools always
246
+
show as green even when the user's config doesn't strictly need them.
247
+
That way `sbx v0.29.0` is reported correctly on machines where the
248
+
user just happens to have it.
249
+
-`Partition` splits the surviving entries into a primary list and an
250
+
optional list (`Optional && Missing`). The dialog renders the
251
+
primary list at the top and the optional list (currently just `rgt`)
252
+
under an "Optional tools" heading.
253
+
254
+
The systray label is `Dependencies: N/M ✓` (or
255
+
`Dependencies: N/M (X need attention)`), where N/M counts only the
256
+
visible primary entries. Clicking opens the dialog; the dialog's
257
+
**Re-check** button invalidates the cache and refreshes the systray
258
+
label in one call.
259
+
179
260
## Pitfalls
180
261
181
262
- go-git v6 is a pseudo-version. Do NOT use a `replace` directive.
@@ -185,3 +266,7 @@ to those two paths, and biomelab turns them into the actual PR on the next
185
266
-`widget.Button` implements Focusable — don't put buttons in the main content.
186
267
- IDE `ProcessPatterns` order matters: specific before broad (`"nvim"` before `"vim"`).
187
268
- Always bounds-check `a.active < len(a.repos)` before accessing repos.
269
+
-`rgt init` ignores positional path args and operates on `cwd`. Use `cmd.Dir`, not `rgt init <path>`.
270
+
-`rgt init` hook installer needs a TTY; biomelab writes `.claude/settings.json` itself via `regent.EnsureClaudeHooks`. Don't rely on `--agent claude` to skip the prompt — it doesn't.
271
+
-`widget.Accordion` misbehaves inside `container.NewVScroll` (clicks don't toggle). Use a button + visibility toggle instead — see the regent log dialog's tools collapsible.
272
+
- The shared regent log window is keyed by `App.regentLogWindow` (single instance). Don't spawn a new window per worktree; reuse via `regentLogReload`.
-**rgt CLI** ([re_gent](https://github.com/regent-vcs/re_gent)) -- Optional. When installed, biomelab auto-initializes `.regent/` per worktree and wires Claude Code hooks.
42
43
43
44
## Package layout
44
45
45
46
```
46
47
cmd/biomelab/ Entry point, icon embedding, PATH expansion
Copy file name to clipboardExpand all lines: README.md
+6Lines changed: 6 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -22,6 +22,8 @@
22
22
-**Open in terminal** -- Press `Enter` to open a worktree in a terminal. If a terminal is already detected for that worktree, it is brought to the foreground instead of opening a new one. On macOS, activation uses TTY matching via AppleScript (requires Automation permission on first use).
23
23
-**Open in editor** -- Press `e` to open in `$BIOME_EDITOR` (defaults to VS Code).
24
24
-**Task notes** -- Press `m` (or right-click a card) to open a Markdown editor with a live preview, scoped to that worktree. Notes are stored at `<worktree>/.biomelab/note.md` (description) and `<worktree>/.biomelab/pr-title.md` (single-line title), auto-excluded from git, and mounted into the sandbox alongside the source so agents can read them. When you `Shift+P` to send a PR, biomelab offers to use the prepared title and description in place of the commit-derived defaults. External tools that write to those two paths become contributors to the next PR.
25
+
-**Agent audit trail** ([re_gent](https://github.com/regent-vcs/re_gent)) -- When `rgt` is installed, biomelab auto-initializes `.regent/` in every regular-mode worktree and writes Claude Code hooks into `.claude/settings.json` — no terminal step. Press `l` (or systray → Dependencies) to open the activity window: one resizable view per session with `Human` / `Agent` rows, collapsible tool lists (full file paths, no truncation), and an **Export JSON…** button that writes the raw `rgt log --json` via the OS-native save dialog.
26
+
-**System dependencies dialog** -- Systray entry (`Dependencies: N/M ✓`) opens a modal listing every external CLI biomelab relies on (`gh`, `glab`, `sbx`, `rgt`) with status dot, version, install hint, and docs link. A first-run banner above the dashboard nags only when a primary tool is missing or degraded; redundant CLIs (e.g. `glab` when `gh` is fine) are suppressed.
25
27
-**Zoom** -- `Ctrl+=` / `Ctrl+-` / `Ctrl+0` to scale the UI font.
26
28
-**System tray** -- Closing the window hides to system tray. Tray menu toggles Show/Hide.
27
29
-**Auto-refresh** -- Local state refreshes every 5s, network state every 30s (configurable).
@@ -126,6 +128,7 @@ Launch `biomelab` from any directory, or open `Biomelab.app` from Spotlight/Find
126
128
|`Enter`| Activate existing terminal or open new | Any card |
127
129
|`e`| Open in editor | Any card |
128
130
|`m`| Open note editor (right-click also works) | Any card |
0 commit comments