Releases: Nwokike/CollabShell
Releases · Nwokike/CollabShell
Release list
Colab Shell v1.1.0
Colab Shell: Notebook & TTY (v1.1.0) is a major release bringing full real-time interactive terminal emulation, robust multi-platform storage normalization, enhanced remote file management, and polished action workflows.
🔥 Major New Features & Architectural Upgrades
1. Interactive PTY Terminal & Tabbed Workspace
- Real-Time Web-Based Terminal (TTY) — Integrated live interactive terminal sessions directly into the session workspace via Google Colab's
/api/terminalsWebSocket endpoints. - Tabbed Session Interface — Seamlessly toggle between Notebook cell execution and Terminal shell tabs within an active cloud instance.
- WebSocket Header & Protocol Engineering — Resolved remote connection rejections by injecting
Origin: https://colab.research.google.comand properly formatting subprotocols (['colab-ws-token']) acrosstornadoproxy tunnels.
2. Unified Storage & History Logging Infrastructure
- Universal Storage Patching (
storage_patch.py) — Intercepted and wrappedHistoryLogger.__init__,StateStore, andSettingsStoreto ensure all execution logs and session histories persist reliably insidestorage/history/on both Android mobile devices and Linux desktop environments. - Full Backend Audit Logging — Added automatic
HistoryLogger().log_event()hooks across all core operations:new_session,stop_session,exec_code,ls,upload,download, andrm. - Instant Log Visibility — Fixed previous issues where session history views displayed empty lists by eliminating split configuration directory paths.
3. Interactive File Manager Improvements
- Parent Directory Navigation — Upgraded directory traversal using
posixpath.dirnameandposixpath.normpathto allow seamless browsing from subdirectories up to/contentand root (/). - Instant UI Repainting — Uploading (
upload) or deleting (rm) files now automatically refreshes directory listings (_load_files) and forces immediate UI repainting (page.update()) so changes appear instantly. - Native OS File Picker & Folder Downloading — Integrated
ft.FilePickerso users can choose exact save destinations on their device without Android storage permission conflicts. Added comprehensive Zip-and-Download support for archiving and downloading entire remote directories. - Animated Progress Bars & Payload Sizes — Replaced indeterminate loading spinners with sweeping
ft.ProgressBarcontrols that accurately report total payload sizes during uploads and downloads. - Path Normalization — Standardized POSIX path joining (
posixpath.normpath) across all file operations to eliminate path double-slashes and clean up file transfers.
4. Action Bar & Home Dashboard Refinements
- Home Quick Actions Redesign — Replaced ambiguous dashboard buttons with clear, action-oriented controls: New Notebook, Quick Terminal, and Cloud Files.
- Intelligent New Session Routing — Launching a new instance directly from the Terminal, Files, or Notebooks dashboard actions now preserves the user's intent, routing straight into that feature view as soon as provisioning completes.
- Robust Modal & Dialog Management — Eliminated UI freezing and unresponsive barriers across the app by replacing deprecated
page.pop_dialog()calls with explicitdialog.open = Falsestate management. - Live Output for Drive & GCP Auth — Wired live execution streaming (
on_output=_action_output) to Mount Drive and Auth GCP buttons, showing immediate authorization prompts and progress updates directly in the snackbar. - Clearer Labeling — Updated the
Browseraction chip label toColab Webfor improved user clarity. - Google Play Title Compliance — Updated official app branding to
Colab Shell: Notebook & TTY(28 characters, adhering to Google Play's 30-character limit).
CollabShell v1.0.0 — Initial Release
Welcome to the initial launch of CollabShell, an independent, premium client application designed to manage, monitor, and run Google Colab cloud environments directly from your mobile device. Built using the Flet framework with the Flutter engine and Python, CollabShell provides a beautiful, responsive, and native client interface wrapping the Google Colab CLI.
Core Features
1. Session Lifecycle & Accelerator Control
- Accelerator Selection — Provision GPU tiers (
T4on the free tier;L4,G4,A100,H100on Pro/Pro+) or TPU models (v5e1,v6e1) to handle deep learning, AI inference, and high-performance computing. - Kernel Management — Start new instances with custom names, check active runtime statuses, restart python kernels to clear variables, and stop/terminate instances to release compute quota.
- Active Keep-Alive Daemon — Enable active background pings every 60 seconds to prevent Google from shutting down your VM due to idle timeouts.
- Auto-Cleanup — Configure session termination on app disconnect to preserve compute credits, or keep them active when the app closes.
2. Interactive Notebook Cell Editor
- Jupyter-Style Cells — Add, edit, delete, and re-order Code and Markdown cells.
- Rich Output Console — Parse colorized ANSI logs, output streams, execution traces, and view inline generated images (e.g. Matplotlib charts).
- Interactive Stdin Inputs — Support for interactive code prompts through clean pop-up dialog overlays when the remote kernel demands user input.
- Google Cloud & Drive Integration — Mount your personal Google Drive filesystem directly to the VM path (
/content/drive) or propagate credentials (GCP authentication) with one click. - Import / Export IPYNB — Load local
.ipynbfiles to parse cell lists, and export your notebook progress back to standard Jupyter Notebook format.
3. Standalone Quick Run
- One-Shot Script Run — Execute local
.pyscripts on temporary Colab VMs without writing code in the cell editor. - Script Customization — Pass custom command-line arguments to your scripts, specify execution timeouts, and choose to terminate or persist the VM afterward.
- Live Output Stream — View output streams and logs in real-time as your python script compiles and runs.
4. Remote File Browser
- Virtual Directory Navigation — Navigate the remote Linux filesystem of your Google Colab instance.
- File Transfers — Upload local datasets and scripts from your mobile storage, download remote output assets to your local device
Downloadsfolder, and delete files on the instance.
5. Chronological Event Logging & History
- Event Trace Logs — Keep an audit trail of session creations, script executions, file transfers, and system automations.
- Filters & Search — Filter event lists by type (executions, file operations, state transitions) or session name.
- Export System Logs — Export history tables as
.ipynb,.md,.jsonl, or.txtformats.
UI & Polish
- Solarized Branding Palette — Custom Solarized and dark-mode designs with Outfit typography and RobotoMono monospace console text.
- Swipe Onboarding Guide — Modern 3-step gesture onboarding introducing core features and handling permissions.
- Responsive Layout — Responsive screen design adapts smoothly from compact mobile viewports to widescreen tablets.
- Interstitial Ads — Built-in Google AdMob integration to support compute operations.
Performance & Security
- Multi-threaded Async Architecture — Heavy CLI operations run non-blockingly via Python's
asyncio.to_threadengine, ensuring the user interface remains smooth and interactive even during long remote VM assignments. - Mobile Forge Binary Compatibility — Recompiled native wheels (
tornado,pyarrow) dynamically loaded from Flet's mobile forge to run the gRPC and websocket client bindings directly on Android. - Privacy-First Sovereignty — All network connections go directly to Google Cloud without middleman proxies, and authentication tokens are kept secure in local sandbox directories.