aihaipeng/opencode-dir-tree-tui
aihaipeng/opencode-dir-tree-tui has 28 GitHub stars and 2 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-14 19:02 UTC. Last push 2026-10-10.
Measured star growth
- in 24h
- 0
- in 7 days
- Collecting history
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
About
A file tree sidebar for OpenCode with Git status indicators, custom ignore rules, path copying, and quick file and folder opening.
Developer ToolsREADME.md
Original🌳 opencode-dir-tree-tui
Browse project files, track Git changes, copy paths, and open files and folders from the OpenCode terminal sidebar.

📦 Install / update / remove
Requires OpenCode ≥ 2.0. Terminal UI (TUI) only.
opencode plugin add opencode-dir-tree-tui
- Update:
opencode plugin update opencode-dir-tree-tui - Remove:
opencode plugin remove opencode-dir-tree-tui
If an update is not reflected, restart the TUI client, not just the server.
On V1, pin [email protected] and see the V1 guide.
⚙️ Settings
Run /dirtree-sidebar to open Dir Tree Sidebar. Use Tab / Shift+Tab or click to switch between Settings and Ignore Rules; Esc closes the panel.
| Setting | Description | Available values |
|---|---|---|
| Show file tree | Show/hide the tree and its title | on / off |
| Open file | Open files with the system default app | left-click / middle-click / right-click / off |
| Copy file path | Copy absolute file paths | left-click / middle-click / right-click / off |
| Open folder | Open folders with the system default app | left-click / middle-click / right-click / off |
| Copy folder path | Copy absolute folder paths | left-click / middle-click / right-click / off |
| Expand/collapse folder | Expand/collapse folders | left-click / middle-click / right-click |
Preferences save automatically and survive restarts. Mouse bindings are global; visibility and ignore rules are per-project, including its subdirectory sessions. Panel collapse is temporary and per-terminal.
💡 Notes
Default mouse actions
| Click target | Left-click | Middle-click | Right-click |
|---|---|---|---|
| Folder | Expand / collapse | Copy its absolute path | Open with the system default app |
| File | — | Copy its absolute path | Open with the system default app |
The terminal must forward middle-click rather than use it for paste. Copying paths over SSH requires terminal OSC 52 support.
Git colors
| Color | Status |
|---|---|
| Theme accent | Folder |
| Green | Added A, untracked ??, renamed R, or copied C |
| Yellow | Modified M or changed file type T |
| Red | Deleted D or merge conflicts such as UU / AA / DD |
| Gray | Git-ignored !!; not automatically hidden |
Changed files also show Git status badges such as M, ?? or MM.
Ignore rules
Patterns follow .gitignore syntax; the git command must be available locally.
| Example pattern | Effect |
|---|---|
node_modules/ |
Hide node_modules folders at any depth |
/dist/ |
Hide only the root dist folder |
*.log |
Hide files or folders ending in .log at any depth |
!keep.log |
Place after *.log to show keep.log again |
Rules only hide tree entries; they do not change Git tracking or import .gitignore. A parent folder must be visible before a child can be re-included.
- The expanded tree refreshes on file changes and every 10 seconds. Rules saved in another TUI apply on refresh.
- Git features and default-app opening require the workspace path to be locally accessible.