Files
jpmschweitzerandClaude Opus 4.7 a355751437 move python clide to legacy/
Clide is being rebuilt as a Flutter desktop app. The Python Textual
implementation moves wholesale into legacy/ rather than being deleted:
its pane model, panel set, git skills, and panel communication design
are real thought that should remain readable next to the new code
while the rebuild finds its shape. Git's rename tracking preserves
history, so `git log -- legacy/` still works.

The Flutter rebuild lives at the repo root alongside a Go sidecar
(the architecture claudian was heading toward, which folds into
clide as a core component rather than a separate plugin project).
Bootstrap of the new shape lands in subsequent commits.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-20 20:30:51 +02:00

3.5 KiB

TODO

Long-term open items for Clide development.

Core Features

Claude Integration

  • Streaming markdown responses in Claude panel
  • Visual distinction between Claude responses, tool calls, and user input
  • Claude history browser (past conversations)
  • Claude diff flow (propose changes → diff tab → accept/reject)

Editor

  • Multi-file tab support with state preservation
  • Cursor position and scroll position persistence
  • Undo/redo history preservation when hiding panel
  • Find in file (Ctrl+F)
  • Go to line (Ctrl+G)

Diff Panel

  • Side-by-side diff view
  • Unified diff view toggle
  • Accept/Reject buttons for Claude-proposed changes
  • Syntax highlighting in diff content

Terminal

  • Full PTY integration for terminal emulation
  • Command history preservation
  • Output buffer retention when hiding

Git Integration

  • Stage/unstage files from Git tab
  • Discard changes context menu
  • Git graph visualization (Tree tab)
  • Branch popout with checkout/new branch actions

Context Panel (Right Sidebar)

Problems View

  • Linter integration (ruff, eslint, etc.)
  • Click to navigate to file:line
  • Reactive problem count badge

TODOs View

  • Scan for TODO/FIXME/HACK/XXX comments
  • Click to navigate to file:line
  • Reactive count badge

Jira View

  • Render Jira CLI markdown output
  • Auto-refresh on panel focus
  • Configurable refresh interval

UI/UX

Responsiveness

  • CSS breakpoints for different terminal widths
  • Auto-hide sidebars on narrow terminals (<100 cols)
  • Compact mode toggle (Alt+C)

Fullscreen Mode

  • Any panel can go fullscreen (F11)
  • Exit fullscreen with Escape

Command Palette

  • Implement command palette (Alt+P)
  • Quick open file (Alt+O)

State Management

Session Persistence

  • Remember open files across sessions
  • Persist panel sizes and layout
  • Save last git state
  • Remember expanded/collapsed sections

Multiple Projects

  • Workspace switcher
  • Recent projects list

Plugin System

  • User-defined panels via pluggy
  • Custom integrations support (hookspecs defined)
  • Extension API documentation

Testing

  • Snapshot tests for all panels
  • Integration tests for panel communication
  • Unit tests for controllers
  • Unit tests for services

Documentation

  • User guide
  • Plugin development guide
  • Architecture documentation updates

Web Deployment (ttyd)

  • Image paste support: intercept browser clipboard image on Ctrl+V, upload blob to server, save as temp file. Claude Code already handles Ctrl+V as image paste — just needs the image on the filesystem
  • Right-click context menu for copy/paste in web terminal
  • Multiple terminal tabs: the workspace terminal already runs inside a shell — leverage this for tabbed terminal sessions (new tab, close tab, switch tabs)

Build & Distribution

  • PyInstaller builds for macOS
  • PyInstaller builds for Linux
  • CI/CD pipeline with Gitea Actions