qwen-code/docs
顾盼 7ede46cff2
feat(cli): reference prior sessions via @ and add completion tabs (#7302)
* docs: design spec for @ session reference + tabbed completion UI

* docs: implementation plan for @ session reference + tabbed completion UI

* feat(cli): add @session: mention ref parser

* feat(core): add SessionReferenceService for slimmed session injection

* feat(cli): inject slimmed prior-session context on @session: mention

* feat(cli): surface prior sessions as @ completion suggestions

* feat(cli): tabbed category layout for @ completion dropdown

* feat(cli): ←/→ tab switching for @ completion categories

* docs: mark @ session reference design as implemented

* fix(cli): preserve assistant text on tool-call turns, keep newest turn under budget, guard stale session results

* docs(core): clarify SessionReferenceService slimming rules

* perf(cli): remove @ completion input latency from session listing

Dispatch file/MCP suggestions immediately and append prior-session
suggestions in a second render once the disk listing resolves, instead
of blocking the first render on session I/O. Cache the per-cwd session
listing for a short TTL so rapid keystrokes don't re-walk the chats dir.

* Revert "perf(cli): remove @ completion input latency from session listing"

This reverts commit 08bbbc21386ac0cd6db7a6f480f0fd59f2e6b8d4.

* fix(cli): harden session ref resolution and i18n tab labels (#7302)

* fix(cli): guard session ref I/O errors to never abort the turn (#7302)

* fix(cli): strip session: prefix in completion filter and align tab guard (#7302)

* fix(cli): address review feedback on session refs and tab tests (#7302)

* fix(cli): use SESSION_MENTION_PREFIX constant in completion filter (#7302)

* fix(cli): address review feedback on session refs and tab tests (#7302)

* fix(cli): address review feedback on session refs and tab tests (#7302)

- Constrain ctrl/command on completion tab-switch bindings so
  ctrl+left/right (word-jump) is not consumed for tab switching
- Derive a friendly title from the first user message in
  SessionReferenceService.resolve() when no explicit title is given,
  so UUID-based refs show meaningful context headers
- Fix dead conditional in plan doc code snippet

* fix(cli): surface real session lookup errors and test left tab switch (#7302)

* fix(cli): reset suggestion indices when active category tab disappears (#7302)

* fix(cli): address review feedback on session refs docs and tests (#7302)

* fix(cli): address review feedback on session refs and completion ordering (#7302)

* docs(cli): clarify title matching semantics in session reference design (#7302)

* test(cli): assert error card in ambiguous session title test (#7302)

* fix(core,cli): address review feedback on session refs (#7302)

- Replace O(N²) budget trimming with single-pass backward accumulation
  (maintainer-measured 6.8s → ~80ms for 8k-record sessions)
- Include header/marker overhead in approxTokens
- Prefer custom_title system record in deriveTitle over first user message
- Move session-ref detection before MCP resource ref to prevent collision
  with an MCP server literally named "session"
- Handle bare @session (no colon) as empty filter in completion
- Clamp activeSuggestionIndex when suggestion list shrinks
- Strengthen not-found test assertion to check ToolCallStatus.Error
- Fix unreachable mock state in InputPrompt tab-guard test
- Add tests: custom_title derivation, overhead in approxTokens,
  bare session filter, index clamping, activeCategory reset

* fix(core,cli): address review feedback on session refs (#7302)

- Fix approxTokens to exclude omission marker cost when not truncated
- Clamp visibleStartIndex when suggestion list shrinks to prevent empty dropdown
- Document merge order invariant for session suggestions in @ completion

* fix(core,cli): address review feedback on session refs (#7302)

* fix(core): address review feedback on session refs (#7302)

* fix(core,cli): address review feedback on session refs (#7302)

* fix(core): address review feedback on session refs (#7302)

* fix(cli): address review feedback on session refs (#7302)

* fix(core,cli): address review feedback on session refs (#7302)

- Wrap MCP category label in t() for i18n consistency
- Fix comment to match > 2 tab guard semantics
- Add test for Ctrl+arrow with exactly 2 categories (guard boundary)
- Fix budget loop to not reserve marker tokens when session fits

---------

Co-authored-by: qwen-code-ci-bot <qwen-code-ci-bot@users.noreply.github.com>
Co-authored-by: Qwen Code Bot <qwen-code-bot@users.noreply.github.com>
Co-authored-by: Shaojin Wen <shaojin.wensj@alibaba-inc.com>
2026-07-24 06:11:48 +00:00
..
assets feat: support workspace display names (#7179) 2026-07-20 15:16:44 +00:00
design feat(core): align GenAI request telemetry fields (#7635) 2026-07-24 04:34:00 +00:00
developers feat(core): align GenAI request telemetry fields (#7635) 2026-07-24 04:34:00 +00:00
e2e-tests feat(worktree): Phase D — startup --worktree flag + symlinkDirectories + PR refs (#4381) 2026-05-27 17:04:51 +08:00
images fix(web-shell): render built-in tag icons (#7024) 2026-07-17 15:33:34 +00:00
plans feat(daemon): add explicit channel delivery (#7388) 2026-07-23 17:44:23 +00:00
superpowers feat(cli): reference prior sessions via @ and add completion tabs (#7302) 2026-07-24 06:11:48 +00:00
users docs: refresh subagent lifecycle guidance (#7624) 2026-07-24 03:03:27 +00:00
verification/abort-controller-refactor fix(core): stop AbortSignal listener leak in long sessions (MaxListenersExceededWarning) (#4366) 2026-05-26 14:21:49 +08:00
_meta.ts feat: refactor docs 2025-12-05 10:51:57 +08:00
index.md fix: lint issues 2025-12-19 15:52:11 +08:00