zai-org / zai-org/feedback

[建议 / Feature] When opening a file in ZCode, let me choose which EXISTING conversation to send it to (don't always start a new one)

Open
#119 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

priority: P2
Dominant language
No language data
Stars
22
Forks
1
PR merge metrics
No merged PRs in 30d

Description

提交前确认 · Pre-submission checklist

  • I searched existing issues and confirmed this isn't a duplicate.
  • I've read CONTRIBUTING.md.

ℹ️ The dropdown fields below (Category / Framework / Severity) could not be set programmatically. Please select them manually when reviewing:

  • Category: 文件 / 项目操作 · File / Project ops
  • Agent framework: 不涉及框架 · Not framework-specific

使用场景 · Use case

This is the natural complement to a (future) "Open file in ZCode" entry point from external apps, but it matters even with today's drag-and-drop / File → Open.

I do my code review/evaluation work in another coding tool (e.g. Codex). When I want to pull a specific file into ZCode to work on it with an agent, the file lands in a brand-new conversation — not in the conversation where I'm already deep in context about that project, that bug, or that feature.

Starting fresh every time throws away all the context I've built up, so I gain nothing from opening the file externally — I might as well re-navigate to it inside ZCode. The feature effectively can't be used the way a real cross-tool workflow needs it.

我现在在 另一个编程工具(如 Codex)里做代码评估。当我把某个文件交给 ZCode 处理时,文件被打开到一个全新的会话里,而不是我当前已经有大量上下文的那个会话。每次都从头开始,等于完全没有利用到"从外部打开文件"这个能力。


建议方案 · Proposal

When a file is opened in ZCode (from an external app, drag-and-drop, zcode://workspace/open, or File → Open), don't unconditionally create a new conversation. Instead offer a target picker:

  1. Recent conversations in this workspace (list with title + last-active time + message count).
  2. "New conversation" (the current default behavior) — still one click away.
  3. (Optional) "Open in the active conversation" as a quick default, with a setting to remember the last choice.

This mirrors how editors behave for files (you pick the window/tab), and how some chat tools let you route an incoming share into an existing thread.

Why it matters
  • Preserves hard-won agent context (architecture decisions, prior fixes, in-flight TODOs).
  • Makes external "Open in ZCode" actually useful for the cross-tool workflow described in the related bug.
  • Avoids conversation sprawl — dozens of 1-message threads, one per opened file.
Suggested interaction
  • First open per workspace: show the picker.
  • Subsequent opens: default to the last-used target, with a tiny affordance to change it.
  • Provide a setting: external-open-target = {picker | new | active | most-recent}.

关联 · Related

  • Pairs with the editor-registration bug — together they enable a real "hand this file to ZCode in the right conversation" workflow: #118

🙏 Thank you!

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the existing drag-and-drop, File → Open, and zcode://workspace/open flows, and review related issue #118. Define how these entry points select among recent workspace conversations, the active conversation, or a new conversation, including the proposed setting. The work is done when files can be routed to an existing conversation without losing the current new-conversation behavior.

Written by the indexing model from the issue text.

Assessment

Domain
desktop, developer-experience
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.