跳到主要内容

Loop 0.5.0 · 2026-10-31

文档对应最新 npm 发布版本,保留英文原文。

Loop Web Frontend

A React interface for local chat. It sends commands over HTTP and receives session state over SSE. The frontend does not call models, execute tools, or read the filesystem directly; the Web backend provides these capabilities through the public coding-agent SDK.

Start

From the project root:

pnpm dev

Configure a service in Settings → Models, then add a project and create a session. Existing sessions keep their selected model; change it in the composer's model settings menu. React and CSS support hot updates; backend source changes require a restart. See the Web README for installation.

Features

Feature Documentation
Create projects, select source folders, and navigate sessions Projects and sessions
Compose, send, cancel, and retry after failure Chat input
Local dictation, foreground voice calls and speech settings Voice input and calls
Markdown, Mermaid, thinking, tool results, and copying Message rendering
Custom providers and the current session's model Model settings
Configure, enable and discover MCP servers Integration settings
SSE subscriptions, snapshots, and reconnection Streaming state
Per-session permissions and allow-once/reject controls Permissions and approvals
Layout, language, appearance, and browser storage Interface preferences
Microsoft sign-in, tunnel controls and device pairing Remote connection settings
Mobile controls, installation, updates and offline page Mobile layout and PWA

Each page covers one feature: usage, contracts, lifecycle, limits, and links to source and colocated tests. Components use arrow functions with matching CSS and test files. Hooks and utilities are split by responsibility.

Validation

Run the matching tests for changed components, hooks, or utilities. For documentation-only edits, check links and content without running the full application suite. To check the entire frontend, run from the project root:

pnpm exec vitest run packages/web-ui/src/frontend

The Web workspace owns dependencies and development scripts; the frontend has no separate package.json. See the backend documentation for service contracts.