Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4,196 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Chan

This is the source code of Chan, the modern engineer's IDE. 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):