Sign inSign up

gobha/ai-editor

By gobha

•Updated 4 months ago

Browser-based code editor with AI assistance, multi-provider Git integration, and plugin system.

Image
Machine learning & AI
Developer tools
0

9.1K

gobha/ai-editor repository overview

⁠AI Editor

A browser-based code editor with integrated AI assistance. Multi-provider Git, multi-provider LLM, plugin system — no backend, no build step, no Electron.

Think Cursor / Windsurf, but it runs entirely in your browser and talks directly to your Git host.

⁠Quick Start

docker run -d -p 8080:8000 gobha/ai-editor

Open http://localhost:8080, press Ctrl+, to configure a Git connection and LLM provider. That's it.

⁠What's Inside

Three-panel layout — file browser, CodeMirror 6 editor, AI chat — with everything stored in your Git host. No database, no cloud sync, no accounts.

25+ AI tools — The assistant reads, edits, creates, and deletes files; searches the project; manages issues and pull requests; handles cross-project reference. It makes surgical line-based edits in your buffer — you review before committing.

Multi-provider Git — Gitea, GitHub, and GitLab. Multiple connections active simultaneously. Your self-hosted Gitea and your GitHub repos side by side.

Multi-provider LLM — Venice, OpenRouter, or any OpenAI-compatible endpoint. Streaming, function calling, embeddings.

Plugin system — Manifest-based with lifecycle hooks, toolbar buttons, modal UI, and configurable settings. Install from URL or bundle locally.

⁠Features

  • CodeMirror 6 with syntax highlighting for 15+ languages
  • Quick Open (Ctrl+P) with fuzzy matching
  • Multi-tab editing with preview/pin tabs
  • Project-wide regex search & replace (Web Worker)
  • Live preview for HTML, Markdown, SVG
  • Side-by-side and unified diff views
  • Git blame with commit-colored gutter and interactive history
  • AI-generated commit messages
  • Branch management with protected branch enforcement
  • Pull request creation, review, and merge with CI/CD status
  • Issue management with triage mode
  • Conversation persistence with history summarization
  • Image/screenshot paste for vision models
  • Resizable panels, mobile responsive layout

⁠Configuration

All configuration happens in the browser UI via Ctrl+, (Settings).

⁠Git Connection

Click + Add Connection, select a provider (Gitea / GitHub / GitLab), enter your instance URL and API token. See REPOS.md⁠ for minimum token permissions per provider.

⁠LLM Provider
SettingDescription
ProviderVenice, OpenRouter, or Custom (any OpenAI-compatible)
EndpointAuto-filled per provider, or your custom URL
API KeyYour API key
ModelDefault model for chat
Commit ModelOptional: cheaper model for commit messages

⁠Environment Variables

VariableDefaultDescription
BASE_PATH/Serve the app from a sub-path (e.g. /editor, /test)
⁠Multi-environment example
# Root path
docker run -d -p 80:8000 gobha/ai-editor

# Sub-path: /editor
docker run -d -p 80:8000 -e BASE_PATH=/editor gobha/ai-editor

# Multiple environments on one host
docker run -d -p 8001:8000 -e BASE_PATH=/dev gobha/ai-editor:dev
docker run -d -p 8002:8000 -e BASE_PATH=/test gobha/ai-editor:test
docker run -d -p 8003:8000 gobha/ai-editor:latest

⁠Tags

TagDescription
latestStable release (tagged versions)
vX.Y.ZPinned release version
testPre-release (merged to main, not yet tagged)
devDevelopment preview (PR builds)

⁠Kubernetes

A Kubernetes deployment manifest is included in the repository with Ingress definitions for 3-environment promotion (dev → test → production).

⁠Image Details

  • Base: nginx:1-alpine
  • Architecture: linux/amd64
  • Port: 8000
  • Size: ~30MB
  • Runtime dependencies: None — all vendor libraries (CodeMirror, marked, DOMPurify, JSZip) are bundled at build time. The container requires no internet access to serve the application.

If you find AI Editor useful, ☕ buy me a coffee⁠.

Tag summary

Content type

Image

Digest

sha256:7a75ad484…

Size

29.7 MB

Last updated

4 months ago

docker pull gobha/ai-editor