discobot

module
v0.0.1-alpha83 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 12, 2026 License: Apache-2.0

README

Discobot

Discobot is a coding agent session manager. It runs Discobot's built-in coding agent inside isolated sandboxed sessions so you can monitor and manage AI-assisted coding work safely.

Demo

Discobot Demo

Features

  • Built-in Coding Agent — Discobot ships with its own coding agent instead of depending on third-party coding CLIs
  • Anthropic + OpenAI Support — Run Discobot sessions with Anthropic and OpenAI models today, with more model providers coming soon
  • Session-Based Model Selection — Choose which model to use for each session
  • Isolated Sandboxed Sessions — Run parallel sessions in secure containers with full app debugging capabilities
  • Use Your Own IDE — Launch remote IDE sessions directly into each sandbox
  • SSH into Sandboxes — Direct SSH access to every sandbox environment
  • Integrated Lightweight Tools — Built-in terminal, diff viewer, and editor for quick edits
  • Workspaces — Organize sessions around git repositories or local folders

Customization

Automate session setup, enforce code quality, and run dev servers with .discobot/hooks/ and .discobot/services/.

Install

Download the macOS app from Releases.

Community

Join the #discobot channel on the Obot AI Discord.

License

Apache-2.0

Directories

Path Synopsis
agent
cmd/agent command
Package main is the entry point for the discobot-agent init process.
Package main is the entry point for the discobot-agent init process.
authservice
cmd/authservice command
proxy
cmd/proxy command
Package main is the entry point for the proxy server.
Package main is the entry point for the proxy server.
internal/api
Package proxyapi provides the REST API for runtime configuration.
Package proxyapi provides the REST API for runtime configuration.
internal/cache
Package cache provides HTTP response caching with LRU eviction.
Package cache provides HTTP response caching with LRU eviction.
internal/cert
Package cert provides certificate management for MITM proxying.
Package cert provides certificate management for MITM proxying.
internal/config
Package config provides configuration types, loading, and validation.
Package config provides configuration types, loading, and validation.
internal/filter
Package filter provides connection filtering by domain and IP.
Package filter provides connection filtering by domain and IP.
internal/injector
Package injector provides header injection with domain pattern matching.
Package injector provides header injection with domain pattern matching.
internal/logger
Package logger provides structured logging for the proxy.
Package logger provides structured logging for the proxy.
internal/proxy
Package proxy provides HTTP and SOCKS5 proxy implementations.
Package proxy provides HTTP and SOCKS5 proxy implementations.
internal/recorder
Package recorder records full HTTP request/response information to disk.
Package recorder records full HTTP request/response information to disk.
server
cmd/server command
cmd/vz-test command
internal/conntrack
Package conntrack provides a thread-safe tracker for active connections per session.
Package conntrack provides a thread-safe tracker for active connections per session.
internal/dispatcher
Package dispatcher provides a database-backed job queue with leader election.
Package dispatcher provides a database-backed job queue with leader election.
internal/encryption
Package encryption provides encryption utilities for secure credential storage.
Package encryption provides encryption utilities for secure credential storage.
internal/events
Package events provides a Server-Sent Events (SSE) system backed by database persistence.
Package events provides a Server-Sent Events (SSE) system backed by database persistence.
internal/git
Package git provides git operations with an abstracted interface.
Package git provides git operations with an abstracted interface.
internal/jobs
Package jobs defines job types and payloads for background job processing.
Package jobs defines job types and payloads for background job processing.
internal/model
Package model defines the database models used throughout the application.
Package model defines the database models used throughout the application.
internal/oauth
Package oauth provides OAuth utilities for AI provider authentication.
Package oauth provides OAuth utilities for AI provider authentication.
internal/routes
Package routes provides a centralized route registry with metadata.
Package routes provides a centralized route registry with metadata.
internal/sandbox
Package sandbox provides an abstraction for sandbox execution environments.
Package sandbox provides an abstraction for sandbox execution environments.
internal/sandbox/docker
Package docker provides cache volume management for Docker containers.
Package docker provides cache volume management for Docker containers.
internal/sandbox/local
Package local provides a local directory-based implementation of the sandbox.Provider interface.
Package local provides a local directory-based implementation of the sandbox.Provider interface.
internal/sandbox/mock
Package mock provides a mock implementation of sandbox.Provider for testing.
Package mock provides a mock implementation of sandbox.Provider for testing.
internal/sandbox/sandboxapi
Package sandboxapi defines the request/response types for the sandbox HTTP API.
Package sandboxapi defines the request/response types for the sandbox HTTP API.
internal/sandbox/vm
Package vm provides an abstraction for project-level virtual machine management.
Package vm provides an abstraction for project-level virtual machine management.
internal/sandbox/vz
Package vz provides a macOS Virtualization.framework-based implementation of the sandbox.Provider interface.
Package vz provides a macOS Virtualization.framework-based implementation of the sandbox.Provider interface.
internal/ssh
Package ssh provides an SSH server that routes connections to sandbox containers.
Package ssh provides an SSH server that routes connections to sandbox containers.
internal/startup
Package startup provides a system-wide startup task manager for tracking long-running operations that happen on server startup (VZ image download, Docker image pulls, VM warming, etc.)
Package startup provides a system-wide startup task manager for tracking long-running operations that happen on server startup (VZ image download, Docker image pulls, VM warming, etc.)
internal/store
Package store provides database operations using GORM.
Package store provides database operations using GORM.
internal/sysinfo
Package sysinfo provides cross-platform access to host system information.
Package sysinfo provides cross-platform access to host system information.
internal/terminal
Package terminal manages persistent PTY sessions that survive WebSocket disconnects.
Package terminal manages persistent PTY sessions that survive WebSocket disconnects.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL