speckit_specify
Define project specifications and requirements through guided prompts to structure development tasks and implementation phases.
Instructions
Describe what to build
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| request | No | The user's requirement (e.g., speckit: add new user) |
Implementation Reference
- src/index.ts:273-286 (handler)The core handler function for the 'speckit_specify' tool. It constructs a prompt message that instructs the AI to read the 'commands/speckit.specify' template (if exists) and combine it with the user's request to describe what to build.private async handleSpecify(commandsPath: string, request?: string) { const userRequest = request || "No specific requirement provided."; return { messages: [ { role: "user", content: { type: "text", text: `Please read the specification template at 'commands/speckit.specify'[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.specify.xxx] [It's important. You must read it]. Combine this template with the User Requirement: '${userRequest}' to describe what to build.`, }, }, ], }; }
- src/index.ts:144-156 (schema)The tool definition including name, description, and input schema (object with 'request' string property) returned in the tools/list response.{ name: "speckit_specify", description: "Describe what to build", inputSchema: { type: "object", properties: { request: { type: "string", description: "The user's requirement (e.g., speckit: add new user)", }, }, }, },
- src/index.ts:203-205 (registration)The switch case in the CallToolRequestSchema handler that registers and dispatches the 'speckit_specify' tool call to the handleSpecify method.case "speckit_specify": result = await this.handleSpecify(commandsPath, args.request as string); break;