提交前检查
主要受益者
初次使用 AI 编程的学习者
要解决的问题
当前产品已经能够选择真实项目、配置模型、进入居民会话并让 AI 执行任务,但默认流程是自由创作。第一次使用 AI 编程的用户仍需要自己理解以下关键概念:
- 为什么要先选择项目目录;
- 怎样把想法描述成可执行的小目标;
- 工具审批意味着什么;
- 为什么不能只相信模型回复,而要查看实际作品;
- 结果不符合预期时怎样在原会话继续修正;
- 下次怎样找回原项目和原会话。
仓库中已经保留首课的学习记录、项目绑定、执行证据、作品预览、再次改进和恢复逻辑,但入口目前被隐藏,真实模型与完整新手体验也尚未验收。继续扩展岛屿或课程内容前,需要先确认并跑通这一条最小学习闭环。
建议方案
恢复一条主动选择、可以暂停、不影响自由创作的首个 AI 实践课程。它是一堂真实创作入门课,不只是按钮导览,也暂不扩建成通用课程平台。
建议用户流程:
- 用户从“创作手册”主动选择“学习 AI 创作”;已有未完成记录显示“继续学习”。
- 用户先描述一个小作品或最小需求。
- 用户创建或绑定一个真实项目目录,并能看到实际位置。
- 到真正发送任务时检查模型配置;项目准备阶段不强制先配置模型。
- 用户在真实 DSH 会话中发送需求,并理解、处理真实工具审批。
- AI 完成后,课程依据真实回合和工具记录检查作品文件;用户打开安全预览并亲自确认体验结果。
- 用户在减少提示的情况下提出一次自己的修改,重新检查结果。
- 用户离开当前项目,再从创作手册找回原项目和会话,完成课程。
自由创作仍是默认路径。普通进入小岛、普通居民交谈、任务失败或停留时间过长都不应自动开启课程。
拟议范围
本 Issue 包含
- 恢复首课的主动开始、继续、暂停和恢复入口;
- 复用现有
TutorialRun、居民会话、DSH 执行与审批,不创建第二套聊天或执行历史;
- 校准当前 Q、阿澜、苔伯的角色名称与职责,清理已不符合现状的教学文案和分支;
- 在发送 AI 任务、检查作品、再次修改和找回项目几个关键节点提供清晰说明;
- 保留刷新、目录选择取消、项目失效、执行失败、拒绝审批后的继续路径;
- 同步中英文界面与相关施工文档;
- 使用真实模型和真实小岛完成一次人工端到端验收,并准确记录尚未覆盖的限制。
本 Issue 不包含
- 通用多课程解释器、课程市场或内容编辑器;
- 新增第四座岛、重做岛屿美术或区域分包架构;
- 用 Godot 动画、连续点击或模型自述代替学习验收;
- 自动判断用户已经独立掌握 AI;
- 修改
deepseek-harness submodule;
- 手机触控完整适配。
只有一门首课时,课程步骤可以保持针对该课程的具体实现。等出现第二门真实课程、并确认两门课程确实共享稳定行为后,再建立课程定义接口,避免提前引入没有实际变化对象的通用抽象。
责任与数据约束
- DSH 继续拥有 Workspace、Session、工具执行、审批和执行历史。
- agent-isles Host 拥有课程进度、步骤结果和教学验收依据。
- React 提交学习意图并呈现课程、原生会话和作品预览。
- Godot 只负责空间交互与学习状态演出,不直接推进课程、不执行工具,也不持久化权威学习进度。
- 项目目录、提示词、令牌和权限详情不得通过世界桥暴露给 Godot。
完成标准
建议的实现拆分
- 入口与展示:恢复创作手册中的开始/继续入口,恢复首课面板,并将教学编排从大型世界页面中提取到聚焦模块。
- 真实执行闭环:核对模型配置时机、原生会话、审批、作品检查与安全预览。
- 恢复与异常路径:覆盖刷新、暂停、目录取消、项目失效、失败、拒绝和断线。
- 端到端验收:真实模型、真实世界、桌面与相关窄屏走查,更新施工状态和已知限制。
每一步可以独立提交,但建议在同一关联 Issue 下保持一个聚焦 PR;如果实现范围明显扩大,再按入口恢复、恢复可靠性或世界演出拆分 PR。
考虑过的替代方案
先开发通用课程引擎
目前只有一门真实课程,尚无第二个课程实现验证共同需求。提前抽象会扩大接口、迁移和测试范围,因此不建议作为当前前置条件。
直接新增教学岛并把课程写进 Godot
这会让世界同时持有表现和学习真相,刷新、断线、审批与会话恢复都更难保持一致。新教学岛可以作为后续视觉呈现,但课程进度仍应由 Host 管理。
只增加操作提示或首次使用弹窗
这只能帮助用户找到按钮,无法证明用户经历了真实 AI 执行、检查结果、修正和续接,不满足“在真实项目中学会使用 AI”的目标。
需要维护者确认
在开始实现前,希望确认以下产品选择:
- 首课入口是否只放在“创作手册”,不在首次进入时自动弹出?(建议:是)
- 是否允许用户先完成想法和项目目录步骤,到首次发送任务时再要求配置模型?(建议:是)
- 首版是否继续使用当前单文件 HTML 小作品作为固定练习,不在本轮扩建通用课程格式?(建议:是)
- 用户可见名称是否使用“AI 创作入门”,而非容易被理解为普通操作导览的“首次使用教程”?
- 新教学岛、区域加载扩展和岛屿玩法是否在本 Issue 通过并跑通首课后分别开 Issue?(建议:是)
后续候选 Issue(不阻塞本提案)
- 将硬编码的三岛位置、镜头、回响范围和加载逻辑整理为可扩展的区域模块;
- 将当前统一的邻岛资源包改为按区域加载,控制新增岛屿的初始下载成本;
- 设计一座承载学习地标和完成状态演出的 AI 学习岛;
- 增加“描述需求—执行—检查—修正”相关岛屿玩法,但不让玩法状态替代真实教学证据。
相关实现与文档
packages/agent-isles-web/src/tutorial.ts
packages/agent-isles-web/src/client/Tutorial.tsx
packages/agent-isles-web/src/client/AgentIslesWorld.tsx
games/mosslight/scripts/island_residents.gd
docs/tutorial-architecture.md
docs/first-vibe-coding-tutorial-plan.md
docs/construction-plan.md
提交前检查
主要受益者
初次使用 AI 编程的学习者
要解决的问题
当前产品已经能够选择真实项目、配置模型、进入居民会话并让 AI 执行任务,但默认流程是自由创作。第一次使用 AI 编程的用户仍需要自己理解以下关键概念:
仓库中已经保留首课的学习记录、项目绑定、执行证据、作品预览、再次改进和恢复逻辑,但入口目前被隐藏,真实模型与完整新手体验也尚未验收。继续扩展岛屿或课程内容前,需要先确认并跑通这一条最小学习闭环。
建议方案
恢复一条主动选择、可以暂停、不影响自由创作的首个 AI 实践课程。它是一堂真实创作入门课,不只是按钮导览,也暂不扩建成通用课程平台。
建议用户流程:
自由创作仍是默认路径。普通进入小岛、普通居民交谈、任务失败或停留时间过长都不应自动开启课程。
拟议范围
本 Issue 包含
TutorialRun、居民会话、DSH 执行与审批,不创建第二套聊天或执行历史;本 Issue 不包含
deepseek-harnesssubmodule;只有一门首课时,课程步骤可以保持针对该课程的具体实现。等出现第二门真实课程、并确认两门课程确实共享稳定行为后,再建立课程定义接口,避免提前引入没有实际变化对象的通用抽象。
责任与数据约束
完成标准
建议的实现拆分
每一步可以独立提交,但建议在同一关联 Issue 下保持一个聚焦 PR;如果实现范围明显扩大,再按入口恢复、恢复可靠性或世界演出拆分 PR。
考虑过的替代方案
先开发通用课程引擎
目前只有一门真实课程,尚无第二个课程实现验证共同需求。提前抽象会扩大接口、迁移和测试范围,因此不建议作为当前前置条件。
直接新增教学岛并把课程写进 Godot
这会让世界同时持有表现和学习真相,刷新、断线、审批与会话恢复都更难保持一致。新教学岛可以作为后续视觉呈现,但课程进度仍应由 Host 管理。
只增加操作提示或首次使用弹窗
这只能帮助用户找到按钮,无法证明用户经历了真实 AI 执行、检查结果、修正和续接,不满足“在真实项目中学会使用 AI”的目标。
需要维护者确认
在开始实现前,希望确认以下产品选择:
后续候选 Issue(不阻塞本提案)
相关实现与文档
packages/agent-isles-web/src/tutorial.tspackages/agent-isles-web/src/client/Tutorial.tsxpackages/agent-isles-web/src/client/AgentIslesWorld.tsxgames/mosslight/scripts/island_residents.gddocs/tutorial-architecture.mddocs/first-vibe-coding-tutorial-plan.mddocs/construction-plan.md