feat(tui): uam explore — jailed file explorer integrated into sessions via prefix+e#13
Closed
aksOps wants to merge 1 commit into
Closed
feat(tui): uam explore — jailed file explorer integrated into sessions via prefix+e#13aksOps wants to merge 1 commit into
aksOps wants to merge 1 commit into
Conversation
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
A standalone, borderless file explorer with live preview, opened inside any managed session via the tmux prefix+e binding (split-window rooted at the pane's directory). Replaces the earlier dashboard cockpit approach. - internal/explore: symlink-proof jailed file tree + live, syntax-highlighted, line-numbered preview; preview-on-highlight (no enter needed); q/esc quits. - uam explore [dir] subcommand (internal/cli) + Usage entry. - uam tmux server binds prefix+e to split the window and run uam explore rooted+jailed at the pane's current directory (best-effort; same path-safety guard as the session-closed hook). - Adds bubbles v0.21.1 (viewport), chroma/v2 v2.24.0, termenv for highlighting; sets go/toolchain to 1.25.8 (from 1.24) to fix reachable stdlib vuln GO-2026-4602 (os) — and keeps CI's setup-go on a single version (no toolchain switch, fixes the covdata coverage break). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Summary
Adds an opt-in file explorer integrated into managed sessions. Inside any uam session, press
<prefix> e(defaultCtrl+bthene) to split the window and openuam explore— a borderless, jailed file explorer with live preview — rooted at that pane's working directory (the project). Also usable standalone:uam explore [dir].This replaces the earlier dashboard-mode "cockpit" with the tmux-split integration the project wanted: the explorer lives beside the agent, inside the session.
Explorer (
internal/explore)EvalSymlinks) — can't navigate above the project root.↑↓previews the file instantly (no enter);→/enterenters a dir,←/backspacegoes up (stops at root),pgup/pgdnscroll,q/escquit.io.LimitReader, no TOCTOU).Integration
uam explore [dir]subcommand.<prefix> e→split-window -c <pane dir> uam explore(best-effort; same path-safety guard as the session-closed hook). Applied automatically when uam (re)configures its server.Deps / toolchain
bubbles v0.21.1(viewport),chroma/v2 v2.24.0,termenv— all MIT, on the Go-1.24-compatible lines.toolchain go1.24.7→go1.25.8to fix reachable stdlib vuln GO-2026-4602 (os, reachable via the Bubble Tea TUI) — clears the govulncheck CI failure.#nosec G304(read-only; path jailed to the project) — clears the gosec CI failure.Test plan
go test -race ./...— all pass (incl. jail/symlink-escape, preview, truncation tests)golangci-lint run ./...— 0 issuesgovulncheck ./...under go1.25.8 — 0 reachablego build/make build; installed + smoke-tested standalone; confirmed the<prefix> ebinding is live on the running uam server<prefix> ein a session — confirm the jail + live preview🤖 Generated with Claude Code