diff --git a/src/store.ts b/src/store.ts index ecb04a5..f56e2f8 100644 --- a/src/store.ts +++ b/src/store.ts @@ -186,10 +186,16 @@ export const store = { await store.refreshArtifacts(projectId) }, - /** 新建任务(=会话):默认当前项目上下文;显式 projectId 用于"新建于指定项目"。 */ + /** 新建任务(=会话):默认当前项目上下文;显式 projectId 用于"新建于指定项目"。 + * 空库时主按钮与空状态都写着「点击新建任务开始」,这里先落一个默认项目再开会话。 */ async createTask(projectId?: string) { - const pid = projectId ?? state.currentProjectId - if (!pid) { store.toast('请先创建项目'); return } + let pid = projectId ?? state.currentProjectId + if (!pid && state.projects.length > 0) pid = state.projects[0].id + if (!pid) { + const p = await store.createProject('默认项目') + pid = p.id + } + if (pid !== state.currentProjectId) await store.openProject(pid) const c = await api.createConversation(pid) await store.refreshTasks() await store.openTask(c.id)