Skip to content

Latest commit

 

History

4,877 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Chan

This is the source code of Chan, an IDE in a single binary: a terminal emulator and multiplexer plus a workspace manager. Download binaries from chan.app or build locally using the Makefile here.

Contributors and agents: start at .agents/README.md; the practical guide is CONTRIBUTING.md.

Design documents

The architecture is documented next to the code it describes. design.md is the whole-system reference (crate boundaries, runtime topology, bind vs tunnel, the devserver); each crate or surface below carries its own design of record.

Core:

  • crates/chan - the CLI binary: dispatch, process lifecycle, service supervision, self-upgrade.
  • crates/chan-workspace - the core: filesystem gates, workspace registry, search, graph, state placement, locking.
  • crates/chan-server - the serving layer: per-tenant HTTP/WS, SPA embed, MCP host, devserver builder.
  • crates/chan-library - multi-tenant orchestration: WorkspaceHost, the window registry, the launcher slot.
  • crates/chan-shell - cs: the control-socket wire contract and the client that speaks it.
  • crates/chan-llm - the MCP tool sandbox exposed to external agent CLIs.
  • crates/chan-systemd - the systemd boundary: notify, watchdog, fdstore, unit render and classification.
  • crates/chan-report - repository reports: the walker, the JSONL schema, the COCOMO model.
  • crates/fetch-models - build-only helper that produces the embedded-model tarball.

Desktop and web:

Tunnel:

Gateway (separate Cargo workspace; the chan.app account, sign-in, and proxy surface):

Releases

Packages

Contributors

Languages