A terminal-based outliner and task manager, built with Go. Run locally or as an SSH app!
- π Hierarchical bullet points with unlimited nesting
- β Task management with checkboxes and completion tracking
- π¨ Color coding for bullets (5 color options)
- π Zoom functionality to focus on specific branches
- βοΈ Settings system with visual hierarchy lines toggle
- πΎ Persistent storage with JSON-based save/load
- π― Vim-style navigation with keyboard shortcuts
- π³ Visual hierarchy with optional tree-style connectors
Requirements: Go 1.19+ installed on your system
go install github.com/vladzima/ocli@latestMake sure your $GOPATH/bin is in your $PATH. Add this to your shell profile if needed:
export PATH=$PATH:$(go env GOPATH)/binDownload the latest release for your platform from the releases page.
git clone https://github.com/vladzima/ocli.git
cd ocli
make build
# Or simply: go build -o ocli .ocli --versionSimply run the command in your terminal:
ocliOn first run, OCLI creates a config directory at ~/.config/ocli/ with default tutorial content.
Use OCLI remotely with persistent cloud storage:
# Install remote client (one-time setup)
curl -fsSL https://raw.githubusercontent.com/vladzima/ocli/main/cmd/ocli-ssh/install-client.sh | bash
# Connect remotely
ocliYour data is automatically saved on the server and synced across sessions. Perfect for accessing your notes from anywhere!
Alternative: Use
ssh ocliafter running the SSH config setup.
ββorj/k- Navigate up/downβ- Zoom outβ- Zoom in
Enter- Create new bullete- Edit selected bulletd- Delete selected bullet
Tab- Indent (move right)Shift+Tab- Outdent (move left)Shift+ββ- Move bullet up/downSpace- Collapse/expand
c- Cycle bullet colort- Toggle task modex- Mark task complete/incomplete
h- Show help screens- Open settingsq- Quit (auto-saves)
OCLI automatically saves your data to ~/.config/ocli/data.json. All changes are auto-saved when you:
- Add/edit/delete bullets
- Change settings
- Quit the application
Update Safety: Your data is always preserved when updating OCLI. Tutorial content only appears for new installations - existing users keep all their data intact.
Settings are stored in the same JSON file and include:
- Hierarchy lines display toggle
- Future customization options
Built with:
- Bubble Tea - TUI framework
- Lipgloss - Styling and layout
- Bubbles - Common UI components
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
MIT License - see LICENSE file for details
Created by Vlad Arbatov