This repository has been archived on 2026-04-02. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
claude-code-2026-04-02/docs-site/docs/reference/query-engine.md
2026-03-31 15:38:58 +05:00

907 B

Query loop and streaming

Primary paths: src/query.ts, src/QueryEngine.ts, src/utils/processUserInput/

query.ts defines queryLoop, the async generator that drives a single conversation turn: streams assistant content, handles tool calls, merges tool results back into context, and coordinates with compaction and permission checks.

QueryEngine.ts exposes submitMessage for non-interactive flows: it prepares processUserInputContext with isNonInteractiveSession: true, runs skill/plugin caches, and streams SDK-style messages—used from headless and SDK control transports.

Shared input processing (slash commands embedded in prompts, tool permission context updates) lives under utils/processUserInput/ and related modules.

See also: How Claude Code works, Headless.