speckit_plan
Create technical plans for project specifications and implementation phases using guided prompts to structure workflows.
Instructions
Create a technical plan
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| context | No | Additional context or requirement |
Implementation Reference
- src/index.ts:289-302 (handler)The handler function that executes the logic for the 'speckit_plan' tool. It constructs a prompt message instructing the LLM to read the 'commands/speckit.plan' template and generate a technical plan using the provided optional context.private async handlePlan(commandsPath: string, context?: string) { const extraContext = context ? `\nContext: '${context}'` : ""; return { messages: [ { role: "user", content: { type: "text", text: `Please read the planning template at 'commands/speckit.plan'[Note that if this file exists, it is generally in the current directory's commands/ directory,Scan this folder directly to obtain it,And the suffixes of each project are not consistent: speckit.plan.xxx] [It's important. You must read it]. Analyze the current project to identify the technology stack. Then, using the template and the Context: '${extraContext}', create a technical plan.`, }, }, ], }; }
- src/index.ts:157-169 (schema)The schema definition for the 'speckit_plan' tool returned in the listTools response, specifying an optional 'context' string input.{ name: "speckit_plan", description: "Create a technical plan", inputSchema: { type: "object", properties: { context: { type: "string", description: "Additional context or requirement", }, }, }, },
- src/index.ts:206-208 (registration)The switch case in the CallToolRequestSchema handler that registers and dispatches the 'speckit_plan' tool call to the handlePlan function.case "speckit_plan": result = await this.handlePlan(commandsPath, args.context as string); break;