generate_adrs_from_prd
Automatically create Architectural Decision Records (ADRs) from Product Requirements Documents (PRDs) using advanced prompting techniques and domain-specific insights for precise architectural documentation.
Instructions
Generate Architectural Decision Records from a Product Requirements Document with advanced prompting techniques (APE + Knowledge Generation)
Input Schema
Name | Required | Description | Default |
---|---|---|---|
conversationContext | No | Rich context from the calling LLM about user goals and discussion history | |
enhancedMode | No | Enable advanced prompting features (APE + Knowledge Generation) | |
knowledgeEnhancement | No | Enable Knowledge Generation for domain-specific insights | |
outputDirectory | No | Directory to output generated ADRs (optional, uses configured ADR_DIRECTORY if not provided) | |
prdPath | Yes | Path to the PRD.md file | |
prdType | No | Type of PRD for optimized knowledge generation | general |
promptOptimization | No | Enable Automatic Prompt Engineering for optimized ADR generation |
Input Schema (JSON Schema)
{
"properties": {
"conversationContext": {
"additionalProperties": false,
"description": "Rich context from the calling LLM about user goals and discussion history",
"properties": {
"budget": {
"description": "Budget or resource constraints (e.g., \"limited budget\", \"enterprise scale\")",
"type": "string"
},
"constraints": {
"description": "Limitations, compliance requirements, or restrictions (e.g., [\"GDPR compliance\", \"budget under $50k\", \"minimal downtime\"])",
"items": {
"type": "string"
},
"type": "array"
},
"focusAreas": {
"description": "Specific areas of concern or interest (e.g., [\"security\", \"performance\", \"maintainability\"])",
"items": {
"type": "string"
},
"type": "array"
},
"humanRequest": {
"description": "Original human request text for context restoration and knowledge graph storage",
"type": "string"
},
"previousContext": {
"description": "Relevant context from previous conversation (e.g., \"User mentioned concerns about database splitting\")",
"type": "string"
},
"projectPhase": {
"description": "Current project phase (e.g., \"planning\", \"development\", \"migration\", \"production\")",
"type": "string"
},
"requirements": {
"description": "Specific requirements or preferences mentioned",
"items": {
"type": "string"
},
"type": "array"
},
"timeline": {
"description": "Timeline or urgency information (e.g., \"launch in 3 months\", \"urgent migration\")",
"type": "string"
},
"userGoals": {
"description": "Primary objectives the user wants to achieve (e.g., [\"microservices migration\", \"improve security\"])",
"items": {
"type": "string"
},
"type": "array"
},
"userRole": {
"description": "User's role or expertise level (e.g., \"senior architect\", \"developer\", \"project manager\")",
"type": "string"
}
},
"type": "object"
},
"enhancedMode": {
"default": true,
"description": "Enable advanced prompting features (APE + Knowledge Generation)",
"type": "boolean"
},
"knowledgeEnhancement": {
"default": true,
"description": "Enable Knowledge Generation for domain-specific insights",
"type": "boolean"
},
"outputDirectory": {
"description": "Directory to output generated ADRs (optional, uses configured ADR_DIRECTORY if not provided)",
"type": "string"
},
"prdPath": {
"description": "Path to the PRD.md file",
"type": "string"
},
"prdType": {
"default": "general",
"description": "Type of PRD for optimized knowledge generation",
"enum": [
"web-application",
"mobile-app",
"microservices",
"data-platform",
"api-service",
"general"
],
"type": "string"
},
"promptOptimization": {
"default": true,
"description": "Enable Automatic Prompt Engineering for optimized ADR generation",
"type": "boolean"
}
},
"required": [
"prdPath"
],
"type": "object"
}