Skip to content

Repository files navigation

Summit — Multi-model discussions. One shared conclusion.

Summit

Summit is a local single-user dashboard where models from OpenAI, Anthropic, Google, xAI, OpenRouter, and Ollama Cloud discuss a question in a shared round-robin conversation.

Discussions use moderator-checked consensus by default, stream model responses, and preserve the complete Markdown transcript. Users can pause after the current turn, change participant or moderator models and reasoning levels for future responses, contribute to everyone, or ask a named participant or @Moderator a direct question before continuing. Each new discussion can optionally enable live web search or grant every participant and moderator read-only or read-write access to one selected local workspace. Provider failures pause at the affected model and offer retry, replacement, temporary skip, participant removal, or an unresolved ending without replaying completed turns. Chat messages use monochrome model-family marks, and the interface supports persistent light, dark, and automatic color schemes. Fixed-round discussions remain available as an alternative.

The product and architecture guideline is in docs/concept.md.

Requirements

  • Node.js 20 or newer
  • pnpm

Quick start

pnpm install
pnpm dev

Open http://127.0.0.1:3000, then configure provider access under Settings. You can also copy .env.example to .env.local to manage API keys through environment variables.

SQLite is initialized automatically in summit.db. The database contains configuration and transcripts but no API keys or provider tokens.

Optional integrations and system dependencies

The basic app and API-key authentication require only Node.js and pnpm. Codex, Claude Code, and Grok Build subscription turns plus local workspace commands are available only on Linux. Additional tools are needed only for their associated features:

Tool Used for
codex OpenAI ChatGPT login and subscription-backed model turns
claude Anthropic Claude Pro or Max subscription-backed model turns
agy Google Auth through Antigravity
grok xAI subscription-backed model turns through Grok Build
bubblewrap Isolating Codex, Claude Code, and Grok Build subscription turns and all local workspace commands
rsync Creating sanitized workspace snapshots and safely syncing read-write changes back
systemd user manager Enforcing resource and time limits on workspace commands
pasta Providing isolated networking when workspace shell network access is enabled
nftables (nft) Blocking access to local, private, reserved, and host IP addresses from that isolated network
zenity Native graphical workspace folder picker on Linux

nftables does not modify the host firewall for normal Summit use. It is invoked only inside the optional isolated workspace network.

Authentication modes

  • API key: Available for OpenAI, Anthropic, Google, xAI, OpenRouter, and Ollama Cloud. Environment variables take precedence; otherwise Settings stores the key in the current user's OS credential store. OpenRouter uses OPENROUTER_API_KEY; Ollama Cloud uses OLLAMA_API_KEY.
  • OpenAI ChatGPT login: Summit offers the official browser OAuth flow and device-code flow through the Codex app-server. Codex owns and stores the ChatGPT subscription credentials; Summit uses the Codex runtime for those turns.
  • Anthropic Claude login: Summit uses the official Claude Code CLI authenticated with Claude Pro or Max. Claude Code owns login, logout, token storage, refresh, and subscription usage.
  • Google Auth: Summit uses the official Antigravity CLI and its locally cached Google login. Google AI Plus is supported with its plan limits. Antigravity owns login, logout, token storage, and refresh.
  • xAI Grok login: Summit uses the official Grok Build CLI authenticated with an eligible Grok subscription. Grok Build owns login, logout, token storage, refresh, and subscription usage.

OpenRouter and Ollama Cloud use API keys only. Ollama requests go directly to ollama.com; Summit never starts or falls back to a local Ollama runtime. Consumer subscription credentials are never parsed or reused outside their official runtime. Model refresh is manual: API catalogs require the corresponding key, while subscription models come from Codex, Claude Code, Antigravity, or Grok Build.

Existing API keys are never returned to the browser. Provider access is reachable from Settings and the new-discussion form. Summit can save, replace, or remove only OS credential-store API-key entries. Keys supplied through environment variables are shown as externally managed and cannot be changed from Summit. Anthropic, Google, and xAI subscription logins are replaced or removed through their official interactive CLI flows and then rechecked in Summit.

Codex, Claude Code, and Grok Build subscription turns run inside a minimal bubblewrap filesystem without host executables. If a discussion has workspace access, the provider requests commands through Summit; commands execute in a separate sandbox that mounts only the selected workspace and system tools. Read-only versus read-write access and shell network access are fixed when the discussion is created. All three capabilities are disabled by default.

Subscription runtimes receive no direct local file or shell tools. Their native web tools are available only when Live Search is enabled.

Checks

Run the project check script to execute lint, tests, and the production build.

License

Summit is source-available under the PolyForm Noncommercial License 1.0.0. The software may be used, modified, and distributed only for noncommercial purposes as defined by the license. Commercial use, including integration into a commercial product or service, commercial hosting, and resale, is not permitted by this license.

Required Notice: Copyright 2026 pepperpark

About

Local multi-model AI discussions with OpenAI, Anthropic, Google, xAI, OpenRouter, and Ollama Cloud—moderated toward one shared conclusion.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages