feat: 支持提示词创建项目及将日常对话无缝转入项目
- Dominant language
- TypeScript
- Stars
- 2.7k
- Forks
- 401
- Avg merge
- 21h 48m
- Merged PRs (30d)
- 776
Description
### 使用场景 / Use case
希望“项目”成为可由 AI 自动创建、也能从日常对话自然升级或归档的长期 Workspace,减少手动建目录、复制聊天记录和搬运 Context。
核心包含三个场景:
1. **通过“添加项目”创建新项目**
- 点击“添加项目”后弹出悬浮窗口。
- 用户输入自然语言提示词,例如:“创建一个 React + TypeScript 的个人记账应用。”
- 系统自动生成项目名称、简介、保存目录、技术方案、Workspace 结构和初始文件。
- 创建后自动加入项目列表并打开,用户可以立即继续开发或对话。
2. **将当前日常对话转化为长期项目**
- 用户未进入项目,只是在普通对话中交流。
- 当内容逐渐变大、需要长期推进时,用户可以直接说:“帮我转化成长期项目。”
- 系统自动提取当前对话中的目标、需求、结论、约束、附件和待办,创建新的项目文件夹与 Workspace。
- 创建完成后自动进入项目,继承有效 Context,无需用户复制聊天记录或重新解释背景。
3. **将当前日常对话并入已有项目**
- 用户发现当前讨论其实属于已有项目时,可以直接说:“帮我转进某某项目中。”
- 系统定位目标项目,将本次对话中的新增需求、结论、任务、附件和相关产物追加到项目 Context。
- 迁移完成后自动进入目标项目,从当前进度继续工作。
### 当前问题 / Current limitation
- 创建项目需要手动填写名称、选择文件夹并完成多项设置。
- 创建后的项目目录基本为空,仍需手动搭建结构和初始内容。
- 普通对话无法自然升级为长期项目。
- 对话内容无法便捷地并入已有项目。
- 用户需要手动复制 Context、附件和结论,并在切换后重新描述背景。
- 对话与项目之间缺少连续、可追溯的转换机制。
### 期望方案 / Proposed solution
#### 1. 提示词自动创建项目
系统根据提示词自动生成:
- 项目名称、简介和保存目录;
- 项目类型与推荐技术栈;
- 初始目录结构;
- README、需求说明、任务清单等基础文档;
- 必要的配置、代码或其他初始内容。
创建前可以展示简要预览,允许修改名称和保存位置;用户明确要求“直接创建”时,应尽量减少额外确认。创建出的项目不应只是空文件夹。
#### 2. 对话转为新项目
系统应从当前对话中结构化提取:
- 目标和背景;
- 已确认需求与结论;
- 关键决策和约束;
- 已完成事项与待办;
- 附件、文件及其他生成产物。
随后创建项目 Workspace 和初始文档,将当前对话与新项目关联,并自动切换到新项目继续交流。
#### 3. 对话并入已有项目
- 只有一个明确匹配项目时可以直接执行。
- 存在多个同名或相似项目时,必须让用户选择。
- 找不到目标项目时,可搜索其他项目、创建新项目或取消。
- 新 Context 采用追加、合并或关联方式写入,不得直接覆盖已有内容。
#### 4. 上下文迁移规则
- 优先沉淀结构化有效信息,而不是无差别复制整段聊天。
- 原日常对话始终保留。
- 项目中记录来源对话、迁移时间和内容摘要,支持双向追溯。
- 重复内容可合并;出现冲突时展示差异,不静默覆盖。
- 失败或取消不得损坏原对话、已有项目或遗留不可用的半成品项目。
- 创建和迁移过程需显示进度、成功结果与明确的失败原因。
#### 验收标准
- 点击“添加项目”后可输入提示词自动创建非空项目。
- 系统能生成合理的项目名称、目录、Workspace 和初始文件。
- 用户说“帮我转化成长期项目”后,可在无需复制 Context 的情况下创建项目并继续当前任务。
- 用户说“帮我转进某某项目”后,系统能定位目标项目并迁移有效上下文。
- 多个相似项目存在时不会擅自选错目标。
- 新增内容不会覆盖目标项目已有 Context。
- 创建或迁移后可以直接延续当前对话,无需重新介绍背景。
- 原日常对话始终保留,迁移记录可追溯。
- 取消或失败不会丢失、损坏已有内容。
#### 建议首期范围
1. “添加项目”提示词悬浮窗口;
2. 自动生成项目名称、简介、目录与基础文件;
3. 日常对话转化为新项目;
4. 日常对话并入已有项目;
5. Context 摘要、迁移与来源关联;
6. 进度反馈、失败回滚和原始数据保护。
自动安装依赖、自动运行项目、复杂冲突合并、跨项目引用等能力可以后续增强。
### 已考虑的替代方案 / Alternatives considered
- 继续由用户手动创建文件夹和空项目:步骤多,且不能利用已有对话生成初始内容。
- 由用户复制聊天记录到新项目:容易遗漏 Context,需要重复整理和解释背景。
- 只把完整聊天文本直接塞入项目:噪音较多,不利于长期维护,因此更适合“结构化摘要 + 原始对话关联”。
Contributor guide
Research direction
The issue names no files, tests, or entry points. Start by mapping the existing project-creation flow, conversation persistence, workspace storage, and context-transfer paths before splitting the proposal into smaller changes. Done means prompt-based creation and both conversation migration paths preserve original data, avoid overwrites, report progress and failures, and remain traceable.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- developer-experience
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100