更新任務內容描述,允許已完成任務更新相關文件摘要;移除不再使用的更新任務相關文件工具,並調整思考流程描述以強化理解與解決方案生成的指導。

This commit is contained in:
siage 2025-04-22 20:20:19 +08:00
parent 9911ff95ef
commit b07672c805
3 changed files with 22 additions and 22 deletions

View File

@ -147,15 +147,15 @@ async function main() {
{
name: "update_task",
description:
"更新任務內容,包括名稱、描述和注記但不允許修改已完成的任務",
"更新任務內容,包括名稱、描述和注記、依賴任務、相關文件、實現指南和驗證標準,已完成的任務僅允許更新摘要和相關文件",
inputSchema: zodToJsonSchema(updateTaskContentSchema),
},
{
name: "update_task_files",
description:
"更新任務相關文件列表,用於記錄與任務相關的代碼文件、參考資料等",
inputSchema: zodToJsonSchema(updateTaskRelatedFilesSchema),
},
// {
// name: "update_task_files",
// description:
// "更新任務相關文件列表,用於記錄與任務相關的代碼文件、參考資料等",
// inputSchema: zodToJsonSchema(updateTaskRelatedFilesSchema),
// },
{
name: "query_task",
description: "根據關鍵字或ID搜尋任務顯示省略版的任務資訊",
@ -170,7 +170,7 @@ async function main() {
{
name: "process_thought",
description:
"任何需要思考或分析的時候,透過該工具進行靈活的、可適應和發展的思考過程來分析問題,隨著理解的加深,每個想法都可以建立、質疑或修改先前的見解。你可以質疑想法、假設想法、驗證想法,並且可以建立新的想法。你將重複這個過程,直到你對問題有足夠的理解,並且能夠提出有效的解決方案。如果你覺得思考已經充分可以把 nextThoughtNeeded 設為 false 並且停止思考,如果你覺得需要更多的思考你可以隨時變更 total_thoughts 來增加步驟。",
"進行靈活且可演化的思考流程,透過建立、質疑、驗證與修正想法,逐步深化理解並產生有效解法。遇到需收集資料或分析或研究的情境時,應優先查看專案相關程式;如相關程式不存在,可查詢網路而非臆測。思考充分時設 nextThoughtNeeded 為 false否則調整 total_thoughts 延長流程",
inputSchema: zodToJsonSchema(processThoughtSchema),
},
{
@ -303,16 +303,16 @@ async function main() {
);
}
return await updateTaskContent(parsedArgs.data);
case "update_task_files":
parsedArgs = await updateTaskRelatedFilesSchema.safeParseAsync(
request.params.arguments
);
if (!parsedArgs.success) {
throw new Error(
`Invalid arguments for tool ${request.params.name}: ${parsedArgs.error.message}`
);
}
return await updateTaskRelatedFiles(parsedArgs.data);
// case "update_task_files":
// parsedArgs = await updateTaskRelatedFilesSchema.safeParseAsync(
// request.params.arguments
// );
// if (!parsedArgs.success) {
// throw new Error(
// `Invalid arguments for tool ${request.params.name}: ${parsedArgs.error.message}`
// );
// }
// return await updateTaskRelatedFiles(parsedArgs.data);
case "query_task":
parsedArgs = await queryTaskSchema.safeParseAsync(
request.params.arguments

View File

@ -119,8 +119,8 @@ export async function updateTask(
// 檢查任務是否已完成,已完成的任務不允許更新(除非是明確允許的欄位)
if (tasks[taskIndex].status === TaskStatus.COMPLETED) {
// 僅允許更新 summary 欄位(任務摘要)
const allowedFields = ["summary"];
// 僅允許更新 summary 欄位(任務摘要)和 relatedFiles 欄位
const allowedFields = ["summary", "relatedFiles"];
const attemptedFields = Object.keys(updates);
const disallowedFields = attemptedFields.filter(

View File

@ -19,10 +19,10 @@ export const analysisResultTemplate = `\n## 分析背景\n\n{analysisResult}\n\n
export const relatedFilesSummaryTemplate = `## 相關文件\n\n{relatedFilesSummary}\n\n`;
// 相關文件未指定模板
export const noRelatedFilesTemplate = `## 相關文件\n\n當前任務沒有關聯的文件。可以使用 \`update_task_files\` 工具添加相關文件,以便在執行任務時提供上下文。`;
export const noRelatedFilesTemplate = `## 相關文件\n\n當前任務沒有關聯的文件。可以使用 \`update_task\` 工具添加相關文件,以便在執行任務時提供上下文。`;
// 推薦相關文件模板
export const recommendedFilesTemplate = `\n\n### 推薦操作\n基於任務描述您可能需要查看以下相關文件\n{potentialFiles}\n使用 update_task_files 工具關聯相關文件,以獲得更好的上下文記憶支持。`;
export const recommendedFilesTemplate = `\n\n### 推薦操作\n基於任務描述您可能需要查看以下相關文件\n{potentialFiles}\n使用 update_task 工具關聯相關文件,以獲得更好的上下文記憶支持。`;
// 依賴任務完成摘要模板
export const dependencyTaskSummaryTemplate = `\n## 依賴任務完成摘要\n\n`;