https://github.com/reeceyang/bleebo-code
https://github.com/reeceyang/bleebo-code
Last synced: 24 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/reeceyang/bleebo-code
- Owner: reeceyang
- Created: 2026-04-27T04:21:01.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-06-13T23:08:14.000Z (about 1 month ago)
- Last Synced: 2026-06-14T00:15:53.598Z (about 1 month ago)
- Language: Rust
- Size: 11.7 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
```
____ _ U _____ uU _____ u ____ U ___ u ____ U ___ u ____ U _____ u
U | __")u |"| \| ___"|/\| ___"|/U | __")u \/"_ \/ U /"___| \/"_ \/ | _"\ \| ___"|/
\| _ \/U | | u | _|" | _|" \| _ \/ | | | | \| | u | | | |/| | | | | _|"
| |_) | \| |/__ | |___ | |___ | |_) |.-,_| |_| | | |/__.-,_| |_| |U| |_| |\| |___
|____/ |_____| |_____| |_____| |____/ \_)-\___/ \____|\_)-\___/ |____/ u|_____|
_|| \\_ // \\ << >> << >> _|| \\_ \\ _// \\ \\ |||_ << >>
(__) (__) (_")("_)(__) (__)(__) (__)(__) (__) (__) (__)(__) (__) (__)_) (__) (__)
```
# Bleebo Code
*agent orchestrator built on jj*
a set of tui mini-apps and a server that automates zellij to display them
workspace browser:
- manage workspaces
- create workspaces from main (or any change)
- select a workspace to set it as the active workspace
- implementation:
- read config from some file
- when creating a new workspace,
- ask for slug and create a new folder in configured directory
- zellij create new tab in directory, set the layout, and switch to tab
- write to state file tab corresponding to workspace
- indicate what workspace corresponds to the current working directory
- to switch workspaces,
- switch to tab corresponding to workspace
- if the tab doesn't exist, recreate it
- watch the state file and rerender if it changes
- to delete workspace
- update state file
- delete directory (hopefully the process keeps running)
- close tabs
file browser:
- browse files in a workspace
- should show directories/files with changes
- i'm sure there's already a tui tool for this, but the main useful feature for me would be to copy file paths quickly
- maybe this could be a plugin
- maybe this could be nvim...
terminal panes
- terminal in the active workspace
terminal pane selector
- like zellij's default tab bar, but only shows terminal panes in the current workspace
- idk if this is even necessary tbh. maybe we just run zellij inside zellij lmao
diff viewer
- view the current changed files and review the diff against main (or any change)
- a little bit unsure about this one, bc you could just run jj diff in a terminal
- this could just be 2 zellij run panes with jj diff and jj st
jj log
- set the base branch
- manage prs
- shortcuts for editing changes, new change, squashing, describing
- maybe rebasing and updating stale workspace (could also go in the workspace browser)
~~server~~
- receives active workspace selection from workspace browser
- on change, runs zellij cli commands to update panes in the active session.
- maybe it could be even simpler, where 1 tab = 1 workspace, and we just switch tabs
- do we even need a server? the workspace browser app can just run the zellij commands itself
- creating a new workspace opens a new tab with a new layout
- workspace browser persists the active selection state to a shared file on disk
design principles
- let zellij handle all the hard work. we should try to do as little zellij automation as possible to keep things simple