feat: web bundles include a simplified prd with architecture now for simpler project folderes not needing a full plown architecture doc!

This commit is contained in:
Brian Madison 2025-06-15 13:00:01 -05:00
parent 28b313c01d
commit 877354525e
7 changed files with 282 additions and 285 deletions

View File

@ -1652,7 +1652,7 @@ Use appropriate diagram type for clarity.]]
```mermaid ```mermaid
{{architecture_diagram}} {{architecture_diagram}}
``` ```text
### Architectural Patterns ### Architectural Patterns
@ -1803,7 +1803,7 @@ interface UserProfile {
bio?: string; bio?: string;
preferences: Record<string, any>; preferences: Record<string, any>;
} }
``` ```text
**Relationships:** **Relationships:**
@ -1827,17 +1827,20 @@ Use appropriate format for the chosen API style. If no API (e.g., static site),
^^CONDITION: has_rest_api^^ ^^CONDITION: has_rest_api^^
```yaml ```yml
openapi: 3.0.0 openapi: 3.0.0
info: info:
title: { { api_title } } title:
version: { { api_version } } '[object Object]': null
description: { { api_description } } version:
'[object Object]': null
description:
'[object Object]': null
servers: servers:
- url: { { api_base_url } } - url:
description: { { environment } } '[object Object]': null
# ... OpenAPI specification continues description:
'[object Object]': null
``` ```
^^/CONDITION: has_rest_api^^ ^^/CONDITION: has_rest_api^^
@ -1847,7 +1850,7 @@ servers:
```graphql ```graphql
# GraphQL Schema # GraphQL Schema
{{graphql_schema}} {{graphql_schema}}
``` ```text
^^/CONDITION: has_graphql_api^^ ^^/CONDITION: has_graphql_api^^
@ -2005,7 +2008,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
**Component Organization:** **Component Organization:**
``` ```text
{{component_structure}} {{component_structure}}
``` ```
@ -2017,7 +2020,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
component_template; component_template;
} }
} }
``` ```text
### State Management Architecture ### State Management Architecture
@ -2044,7 +2047,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
**Route Organization:** **Route Organization:**
``` ```text
{{route_structure}} {{route_structure}}
``` ```
@ -2056,7 +2059,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
protected_route_example; protected_route_example;
} }
} }
``` ```text
### Frontend Services Layer ### Frontend Services Layer
@ -2080,7 +2083,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
service_example; service_example;
} }
} }
``` ```text
## Backend Architecture ## Backend Architecture
@ -2097,7 +2100,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
``` ```
{{function_structure}} {{function_structure}}
``` ```text
**Function Template:** **Function Template:**
@ -2114,7 +2117,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
^^CONDITION: traditional_server^^ ^^CONDITION: traditional_server^^
**Controller/Route Organization:** **Controller/Route Organization:**
``` ```text
{{controller_structure}} {{controller_structure}}
``` ```
@ -2126,7 +2129,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
controller_template; controller_template;
} }
} }
``` ```text
^^/CONDITION: traditional_server^^ ^^/CONDITION: traditional_server^^
@ -2148,7 +2151,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
repository_pattern; repository_pattern;
} }
} }
``` ```text
### Authentication and Authorization ### Authentication and Authorization
@ -2168,7 +2171,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
auth_middleware; auth_middleware;
} }
} }
``` ```text
## Unified Project Structure ## Unified Project Structure
@ -2252,7 +2255,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
```bash ```bash
{{prerequisites_commands}} {{prerequisites_commands}}
``` ```text
**Initial Setup:** **Initial Setup:**
@ -2274,7 +2277,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
# Run tests # Run tests
{{test_commands}} {{test_commands}}
``` ```text
### Environment Configuration ### Environment Configuration
@ -2312,9 +2315,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
### CI/CD Pipeline ### CI/CD Pipeline
```yaml ```yml
{ { cicd_pipeline_config } } '[object Object]': null
``` ```text
### Environments ### Environments
@ -2378,7 +2381,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
Integration Tests Integration Tests
/ \ / \
Frontend Unit Backend Unit Frontend Unit Backend Unit
``` ```text
### Test Organization ### Test Organization
@ -2386,19 +2389,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
``` ```
{{frontend_test_structure}} {{frontend_test_structure}}
``` ```text
**Backend Tests:** **Backend Tests:**
``` ```
{{backend_test_structure}} {{backend_test_structure}}
``` ```text
**E2E Tests:** **E2E Tests:**
``` ```
{{e2e_test_structure}} {{e2e_test_structure}}
``` ```text
### Test Examples ### Test Examples
@ -2420,7 +2423,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
backend_test_example; backend_test_example;
} }
} }
``` ```text
**E2E Test:** **E2E Test:**
@ -2473,7 +2476,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
```mermaid ```mermaid
{{error_flow_diagram}} {{error_flow_diagram}}
``` ```text
### Error Response Format ### Error Response Format
@ -2497,7 +2500,7 @@ interface ApiError {
frontend_error_handler; frontend_error_handler;
} }
} }
``` ```text
### Backend Error Handling ### Backend Error Handling

View File

@ -5633,7 +5633,7 @@ Use appropriate diagram type for clarity.]]
```mermaid ```mermaid
{{architecture_diagram}} {{architecture_diagram}}
``` ```text
### Architectural Patterns ### Architectural Patterns
@ -5784,7 +5784,7 @@ interface UserProfile {
bio?: string; bio?: string;
preferences: Record<string, any>; preferences: Record<string, any>;
} }
``` ```text
**Relationships:** **Relationships:**
@ -5808,17 +5808,20 @@ Use appropriate format for the chosen API style. If no API (e.g., static site),
^^CONDITION: has_rest_api^^ ^^CONDITION: has_rest_api^^
```yaml ```yml
openapi: 3.0.0 openapi: 3.0.0
info: info:
title: { { api_title } } title:
version: { { api_version } } '[object Object]': null
description: { { api_description } } version:
'[object Object]': null
description:
'[object Object]': null
servers: servers:
- url: { { api_base_url } } - url:
description: { { environment } } '[object Object]': null
# ... OpenAPI specification continues description:
'[object Object]': null
``` ```
^^/CONDITION: has_rest_api^^ ^^/CONDITION: has_rest_api^^
@ -5828,7 +5831,7 @@ servers:
```graphql ```graphql
# GraphQL Schema # GraphQL Schema
{{graphql_schema}} {{graphql_schema}}
``` ```text
^^/CONDITION: has_graphql_api^^ ^^/CONDITION: has_graphql_api^^
@ -5986,7 +5989,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
**Component Organization:** **Component Organization:**
``` ```text
{{component_structure}} {{component_structure}}
``` ```
@ -5998,7 +6001,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
component_template; component_template;
} }
} }
``` ```text
### State Management Architecture ### State Management Architecture
@ -6025,7 +6028,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
**Route Organization:** **Route Organization:**
``` ```text
{{route_structure}} {{route_structure}}
``` ```
@ -6037,7 +6040,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
protected_route_example; protected_route_example;
} }
} }
``` ```text
### Frontend Services Layer ### Frontend Services Layer
@ -6061,7 +6064,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
service_example; service_example;
} }
} }
``` ```text
## Backend Architecture ## Backend Architecture
@ -6078,7 +6081,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
``` ```
{{function_structure}} {{function_structure}}
``` ```text
**Function Template:** **Function Template:**
@ -6095,7 +6098,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
^^CONDITION: traditional_server^^ ^^CONDITION: traditional_server^^
**Controller/Route Organization:** **Controller/Route Organization:**
``` ```text
{{controller_structure}} {{controller_structure}}
``` ```
@ -6107,7 +6110,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
controller_template; controller_template;
} }
} }
``` ```text
^^/CONDITION: traditional_server^^ ^^/CONDITION: traditional_server^^
@ -6129,7 +6132,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
repository_pattern; repository_pattern;
} }
} }
``` ```text
### Authentication and Authorization ### Authentication and Authorization
@ -6149,7 +6152,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
auth_middleware; auth_middleware;
} }
} }
``` ```text
## Unified Project Structure ## Unified Project Structure
@ -6233,7 +6236,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
```bash ```bash
{{prerequisites_commands}} {{prerequisites_commands}}
``` ```text
**Initial Setup:** **Initial Setup:**
@ -6255,7 +6258,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
# Run tests # Run tests
{{test_commands}} {{test_commands}}
``` ```text
### Environment Configuration ### Environment Configuration
@ -6293,9 +6296,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
### CI/CD Pipeline ### CI/CD Pipeline
```yaml ```yml
{ { cicd_pipeline_config } } '[object Object]': null
``` ```text
### Environments ### Environments
@ -6359,7 +6362,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
Integration Tests Integration Tests
/ \ / \
Frontend Unit Backend Unit Frontend Unit Backend Unit
``` ```text
### Test Organization ### Test Organization
@ -6367,19 +6370,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
``` ```
{{frontend_test_structure}} {{frontend_test_structure}}
``` ```text
**Backend Tests:** **Backend Tests:**
``` ```
{{backend_test_structure}} {{backend_test_structure}}
``` ```text
**E2E Tests:** **E2E Tests:**
``` ```
{{e2e_test_structure}} {{e2e_test_structure}}
``` ```text
### Test Examples ### Test Examples
@ -6401,7 +6404,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
backend_test_example; backend_test_example;
} }
} }
``` ```text
**E2E Test:** **E2E Test:**
@ -6454,7 +6457,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
```mermaid ```mermaid
{{error_flow_diagram}} {{error_flow_diagram}}
``` ```text
### Error Response Format ### Error Response Format
@ -6478,7 +6481,7 @@ interface ApiError {
frontend_error_handler; frontend_error_handler;
} }
} }
``` ```text
### Backend Error Handling ### Backend Error Handling

View File

@ -45,25 +45,22 @@ CRITICAL: Read the full YML, start activation to alter your state of being, foll
```yml ```yml
activation-instructions: activation-instructions:
- Follow all instructions in this file -> this defines you, your persona and more importantly what you can do. STAY IN CHARACTER! - Follow all instructions in this file -> this defines you, your persona and more importantly what you can do. STAY IN CHARACTER!
- Only read the files/tasks listed here when user selects them for execution to minimize context usage - Only read the files/tasks listed here when user selects them for execution to minimize context usage
- The customization field ALWAYS takes precedence over any conflicting instructions - The customization field ALWAYS takes precedence over any conflicting instructions
- When listing tasks/templates or presenting options during conversations, always show as numbered options list, allowing the user to type a number to select or execute - When listing tasks/templates or presenting options during conversations, always show as numbered options list, allowing the user to type a number to select or execute
agent: agent:
name: John name: John
id: pm id: pm
title: Product Manager title: Product Manager
icon: 📋 icon: 📋
whenToUse: "Use for creating PRDs, product strategy, feature prioritization, roadmap planning, and stakeholder communication" whenToUse: Use for creating PRDs, product strategy, feature prioritization, roadmap planning, and stakeholder communication
customization: customization: null
persona: persona:
role: Investigative Product Strategist & Market-Savvy PM role: Investigative Product Strategist & Market-Savvy PM
style: Analytical, inquisitive, data-driven, user-focused, pragmatic style: Analytical, inquisitive, data-driven, user-focused, pragmatic
identity: Product Manager specialized in document creation and product research identity: Product Manager specialized in document creation and product research
focus: Creating PRDs and other product documentation using templates focus: Creating PRDs and other product documentation using templates
core_principles: core_principles:
- Deeply understand "Why" - uncover root causes and motivations - Deeply understand "Why" - uncover root causes and motivations
- Champion the user - maintain relentless focus on target user value - Champion the user - maintain relentless focus on target user value
@ -73,16 +70,13 @@ persona:
- Collaborative & iterative approach - Collaborative & iterative approach
- Proactive risk identification - Proactive risk identification
- Strategic thinking & outcome-oriented - Strategic thinking & outcome-oriented
startup: startup:
- Greet the user with your name and role, and inform of the *help command. - Greet the user with your name and role, and inform of the *help command.
commands: commands:
- "*help" - Show: numbered list of the following commands to allow selection - '*help" - Show: numbered list of the following commands to allow selection'
- "*chat-mode" - (Default) Deep conversation with advanced-elicitation - '*chat-mode" - (Default) Deep conversation with advanced-elicitation'
- "*create-doc {template}" - Create doc (no template = show available templates) - '*create-doc {template}" - Create doc (no template = show available templates)'
- "*exit" - Say goodbye as the PM, and then abandon inhabiting this persona - '*exit" - Say goodbye as the PM, and then abandon inhabiting this persona'
dependencies: dependencies:
tasks: tasks:
- create-doc - create-doc
@ -1744,7 +1738,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]]
model_interface; model_interface;
} }
} }
``` ```text
**Relationships:** **Relationships:**
@ -1808,18 +1802,21 @@ Use appropriate format for the chosen API style. If no API (e.g., static site),
^^CONDITION: has_rest_api^^ ^^CONDITION: has_rest_api^^
```yaml ```yml
openapi: 3.0.0 openapi: 3.0.0
info: info:
title: { { api_title } } title:
version: { { api_version } } '[object Object]': null
description: { { api_description } } version:
'[object Object]': null
description:
'[object Object]': null
servers: servers:
- url: { { api_base_url } } - url:
description: { { environment } } '[object Object]': null
# ... OpenAPI specification continues description:
``` '[object Object]': null
```text
^^/CONDITION: has_rest_api^^ ^^/CONDITION: has_rest_api^^

View File

@ -358,25 +358,22 @@ CRITICAL: Read the full YML, start activation to alter your state of being, foll
```yml ```yml
activation-instructions: activation-instructions:
- Follow all instructions in this file -> this defines you, your persona and more importantly what you can do. STAY IN CHARACTER! - Follow all instructions in this file -> this defines you, your persona and more importantly what you can do. STAY IN CHARACTER!
- Only read the files/tasks listed here when user selects them for execution to minimize context usage - Only read the files/tasks listed here when user selects them for execution to minimize context usage
- The customization field ALWAYS takes precedence over any conflicting instructions - The customization field ALWAYS takes precedence over any conflicting instructions
- When listing tasks/templates or presenting options during conversations, always show as numbered options list, allowing the user to type a number to select or execute - When listing tasks/templates or presenting options during conversations, always show as numbered options list, allowing the user to type a number to select or execute
agent: agent:
name: John name: John
id: pm id: pm
title: Product Manager title: Product Manager
icon: 📋 icon: 📋
whenToUse: "Use for creating PRDs, product strategy, feature prioritization, roadmap planning, and stakeholder communication" whenToUse: Use for creating PRDs, product strategy, feature prioritization, roadmap planning, and stakeholder communication
customization: customization: null
persona: persona:
role: Investigative Product Strategist & Market-Savvy PM role: Investigative Product Strategist & Market-Savvy PM
style: Analytical, inquisitive, data-driven, user-focused, pragmatic style: Analytical, inquisitive, data-driven, user-focused, pragmatic
identity: Product Manager specialized in document creation and product research identity: Product Manager specialized in document creation and product research
focus: Creating PRDs and other product documentation using templates focus: Creating PRDs and other product documentation using templates
core_principles: core_principles:
- Deeply understand "Why" - uncover root causes and motivations - Deeply understand "Why" - uncover root causes and motivations
- Champion the user - maintain relentless focus on target user value - Champion the user - maintain relentless focus on target user value
@ -386,16 +383,13 @@ persona:
- Collaborative & iterative approach - Collaborative & iterative approach
- Proactive risk identification - Proactive risk identification
- Strategic thinking & outcome-oriented - Strategic thinking & outcome-oriented
startup: startup:
- Greet the user with your name and role, and inform of the *help command. - Greet the user with your name and role, and inform of the *help command.
commands: commands:
- "*help" - Show: numbered list of the following commands to allow selection - '*help" - Show: numbered list of the following commands to allow selection'
- "*chat-mode" - (Default) Deep conversation with advanced-elicitation - '*chat-mode" - (Default) Deep conversation with advanced-elicitation'
- "*create-doc {template}" - Create doc (no template = show available templates) - '*create-doc {template}" - Create doc (no template = show available templates)'
- "*exit" - Say goodbye as the PM, and then abandon inhabiting this persona - '*exit" - Say goodbye as the PM, and then abandon inhabiting this persona'
dependencies: dependencies:
tasks: tasks:
- create-doc - create-doc
@ -4503,7 +4497,7 @@ Use appropriate diagram type for clarity.]]
```mermaid ```mermaid
{{architecture_diagram}} {{architecture_diagram}}
``` ```text
### Architectural Patterns ### Architectural Patterns
@ -4654,7 +4648,7 @@ interface UserProfile {
bio?: string; bio?: string;
preferences: Record<string, any>; preferences: Record<string, any>;
} }
``` ```text
**Relationships:** **Relationships:**
@ -4678,17 +4672,20 @@ Use appropriate format for the chosen API style. If no API (e.g., static site),
^^CONDITION: has_rest_api^^ ^^CONDITION: has_rest_api^^
```yaml ```yml
openapi: 3.0.0 openapi: 3.0.0
info: info:
title: { { api_title } } title:
version: { { api_version } } '[object Object]': null
description: { { api_description } } version:
'[object Object]': null
description:
'[object Object]': null
servers: servers:
- url: { { api_base_url } } - url:
description: { { environment } } '[object Object]': null
# ... OpenAPI specification continues description:
'[object Object]': null
``` ```
^^/CONDITION: has_rest_api^^ ^^/CONDITION: has_rest_api^^
@ -4698,7 +4695,7 @@ servers:
```graphql ```graphql
# GraphQL Schema # GraphQL Schema
{{graphql_schema}} {{graphql_schema}}
``` ```text
^^/CONDITION: has_graphql_api^^ ^^/CONDITION: has_graphql_api^^
@ -4856,7 +4853,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
**Component Organization:** **Component Organization:**
``` ```text
{{component_structure}} {{component_structure}}
``` ```
@ -4868,7 +4865,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
component_template; component_template;
} }
} }
``` ```text
### State Management Architecture ### State Management Architecture
@ -4895,7 +4892,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
**Route Organization:** **Route Organization:**
``` ```text
{{route_structure}} {{route_structure}}
``` ```
@ -4907,7 +4904,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
protected_route_example; protected_route_example;
} }
} }
``` ```text
### Frontend Services Layer ### Frontend Services Layer
@ -4931,7 +4928,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
service_example; service_example;
} }
} }
``` ```text
## Backend Architecture ## Backend Architecture
@ -4948,7 +4945,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
``` ```
{{function_structure}} {{function_structure}}
``` ```text
**Function Template:** **Function Template:**
@ -4965,7 +4962,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
^^CONDITION: traditional_server^^ ^^CONDITION: traditional_server^^
**Controller/Route Organization:** **Controller/Route Organization:**
``` ```text
{{controller_structure}} {{controller_structure}}
``` ```
@ -4977,7 +4974,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
controller_template; controller_template;
} }
} }
``` ```text
^^/CONDITION: traditional_server^^ ^^/CONDITION: traditional_server^^
@ -4999,7 +4996,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
repository_pattern; repository_pattern;
} }
} }
``` ```text
### Authentication and Authorization ### Authentication and Authorization
@ -5019,7 +5016,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
auth_middleware; auth_middleware;
} }
} }
``` ```text
## Unified Project Structure ## Unified Project Structure
@ -5103,7 +5100,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
```bash ```bash
{{prerequisites_commands}} {{prerequisites_commands}}
``` ```text
**Initial Setup:** **Initial Setup:**
@ -5125,7 +5122,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
# Run tests # Run tests
{{test_commands}} {{test_commands}}
``` ```text
### Environment Configuration ### Environment Configuration
@ -5163,9 +5160,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
### CI/CD Pipeline ### CI/CD Pipeline
```yaml ```yml
{ { cicd_pipeline_config } } '[object Object]': null
``` ```text
### Environments ### Environments
@ -5229,7 +5226,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
Integration Tests Integration Tests
/ \ / \
Frontend Unit Backend Unit Frontend Unit Backend Unit
``` ```text
### Test Organization ### Test Organization
@ -5237,19 +5234,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
``` ```
{{frontend_test_structure}} {{frontend_test_structure}}
``` ```text
**Backend Tests:** **Backend Tests:**
``` ```
{{backend_test_structure}} {{backend_test_structure}}
``` ```text
**E2E Tests:** **E2E Tests:**
``` ```
{{e2e_test_structure}} {{e2e_test_structure}}
``` ```text
### Test Examples ### Test Examples
@ -5271,7 +5268,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
backend_test_example; backend_test_example;
} }
} }
``` ```text
**E2E Test:** **E2E Test:**
@ -5324,7 +5321,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
```mermaid ```mermaid
{{error_flow_diagram}} {{error_flow_diagram}}
``` ```text
### Error Response Format ### Error Response Format
@ -5348,7 +5345,7 @@ interface ApiError {
frontend_error_handler; frontend_error_handler;
} }
} }
``` ```text
### Backend Error Handling ### Backend Error Handling
@ -7652,7 +7649,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]]
model_interface; model_interface;
} }
} }
``` ```text
**Relationships:** **Relationships:**
@ -7716,18 +7713,21 @@ Use appropriate format for the chosen API style. If no API (e.g., static site),
^^CONDITION: has_rest_api^^ ^^CONDITION: has_rest_api^^
```yaml ```yml
openapi: 3.0.0 openapi: 3.0.0
info: info:
title: { { api_title } } title:
version: { { api_version } } '[object Object]': null
description: { { api_description } } version:
'[object Object]': null
description:
'[object Object]': null
servers: servers:
- url: { { api_base_url } } - url:
description: { { environment } } '[object Object]': null
# ... OpenAPI specification continues description:
``` '[object Object]': null
```text
^^/CONDITION: has_rest_api^^ ^^/CONDITION: has_rest_api^^

View File

@ -226,25 +226,22 @@ CRITICAL: Read the full YML, start activation to alter your state of being, foll
```yml ```yml
activation-instructions: activation-instructions:
- Follow all instructions in this file -> this defines you, your persona and more importantly what you can do. STAY IN CHARACTER! - Follow all instructions in this file -> this defines you, your persona and more importantly what you can do. STAY IN CHARACTER!
- Only read the files/tasks listed here when user selects them for execution to minimize context usage - Only read the files/tasks listed here when user selects them for execution to minimize context usage
- The customization field ALWAYS takes precedence over any conflicting instructions - The customization field ALWAYS takes precedence over any conflicting instructions
- When listing tasks/templates or presenting options during conversations, always show as numbered options list, allowing the user to type a number to select or execute - When listing tasks/templates or presenting options during conversations, always show as numbered options list, allowing the user to type a number to select or execute
agent: agent:
name: John name: John
id: pm id: pm
title: Product Manager title: Product Manager
icon: 📋 icon: 📋
whenToUse: "Use for creating PRDs, product strategy, feature prioritization, roadmap planning, and stakeholder communication" whenToUse: Use for creating PRDs, product strategy, feature prioritization, roadmap planning, and stakeholder communication
customization: customization: null
persona: persona:
role: Investigative Product Strategist & Market-Savvy PM role: Investigative Product Strategist & Market-Savvy PM
style: Analytical, inquisitive, data-driven, user-focused, pragmatic style: Analytical, inquisitive, data-driven, user-focused, pragmatic
identity: Product Manager specialized in document creation and product research identity: Product Manager specialized in document creation and product research
focus: Creating PRDs and other product documentation using templates focus: Creating PRDs and other product documentation using templates
core_principles: core_principles:
- Deeply understand "Why" - uncover root causes and motivations - Deeply understand "Why" - uncover root causes and motivations
- Champion the user - maintain relentless focus on target user value - Champion the user - maintain relentless focus on target user value
@ -254,16 +251,13 @@ persona:
- Collaborative & iterative approach - Collaborative & iterative approach
- Proactive risk identification - Proactive risk identification
- Strategic thinking & outcome-oriented - Strategic thinking & outcome-oriented
startup: startup:
- Greet the user with your name and role, and inform of the *help command. - Greet the user with your name and role, and inform of the *help command.
commands: commands:
- "*help" - Show: numbered list of the following commands to allow selection - '*help" - Show: numbered list of the following commands to allow selection'
- "*chat-mode" - (Default) Deep conversation with advanced-elicitation - '*chat-mode" - (Default) Deep conversation with advanced-elicitation'
- "*create-doc {template}" - Create doc (no template = show available templates) - '*create-doc {template}" - Create doc (no template = show available templates)'
- "*exit" - Say goodbye as the PM, and then abandon inhabiting this persona - '*exit" - Say goodbye as the PM, and then abandon inhabiting this persona'
dependencies: dependencies:
tasks: tasks:
- create-doc - create-doc
@ -4420,7 +4414,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]]
model_interface; model_interface;
} }
} }
``` ```text
**Relationships:** **Relationships:**
@ -4484,18 +4478,21 @@ Use appropriate format for the chosen API style. If no API (e.g., static site),
^^CONDITION: has_rest_api^^ ^^CONDITION: has_rest_api^^
```yaml ```yml
openapi: 3.0.0 openapi: 3.0.0
info: info:
title: { { api_title } } title:
version: { { api_version } } '[object Object]': null
description: { { api_description } } version:
'[object Object]': null
description:
'[object Object]': null
servers: servers:
- url: { { api_base_url } } - url:
description: { { environment } } '[object Object]': null
# ... OpenAPI specification continues description:
``` '[object Object]': null
```text
^^/CONDITION: has_rest_api^^ ^^/CONDITION: has_rest_api^^
@ -6843,7 +6840,7 @@ Use appropriate diagram type for clarity.]]
```mermaid ```mermaid
{{architecture_diagram}} {{architecture_diagram}}
``` ```text
### Architectural Patterns ### Architectural Patterns
@ -6994,7 +6991,7 @@ interface UserProfile {
bio?: string; bio?: string;
preferences: Record<string, any>; preferences: Record<string, any>;
} }
``` ```text
**Relationships:** **Relationships:**
@ -7018,17 +7015,20 @@ Use appropriate format for the chosen API style. If no API (e.g., static site),
^^CONDITION: has_rest_api^^ ^^CONDITION: has_rest_api^^
```yaml ```yml
openapi: 3.0.0 openapi: 3.0.0
info: info:
title: { { api_title } } title:
version: { { api_version } } '[object Object]': null
description: { { api_description } } version:
'[object Object]': null
description:
'[object Object]': null
servers: servers:
- url: { { api_base_url } } - url:
description: { { environment } } '[object Object]': null
# ... OpenAPI specification continues description:
'[object Object]': null
``` ```
^^/CONDITION: has_rest_api^^ ^^/CONDITION: has_rest_api^^
@ -7038,7 +7038,7 @@ servers:
```graphql ```graphql
# GraphQL Schema # GraphQL Schema
{{graphql_schema}} {{graphql_schema}}
``` ```text
^^/CONDITION: has_graphql_api^^ ^^/CONDITION: has_graphql_api^^
@ -7196,7 +7196,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
**Component Organization:** **Component Organization:**
``` ```text
{{component_structure}} {{component_structure}}
``` ```
@ -7208,7 +7208,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
component_template; component_template;
} }
} }
``` ```text
### State Management Architecture ### State Management Architecture
@ -7235,7 +7235,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
**Route Organization:** **Route Organization:**
``` ```text
{{route_structure}} {{route_structure}}
``` ```
@ -7247,7 +7247,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
protected_route_example; protected_route_example;
} }
} }
``` ```text
### Frontend Services Layer ### Frontend Services Layer
@ -7271,7 +7271,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
service_example; service_example;
} }
} }
``` ```text
## Backend Architecture ## Backend Architecture
@ -7288,7 +7288,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
``` ```
{{function_structure}} {{function_structure}}
``` ```text
**Function Template:** **Function Template:**
@ -7305,7 +7305,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
^^CONDITION: traditional_server^^ ^^CONDITION: traditional_server^^
**Controller/Route Organization:** **Controller/Route Organization:**
``` ```text
{{controller_structure}} {{controller_structure}}
``` ```
@ -7317,7 +7317,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
controller_template; controller_template;
} }
} }
``` ```text
^^/CONDITION: traditional_server^^ ^^/CONDITION: traditional_server^^
@ -7339,7 +7339,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
repository_pattern; repository_pattern;
} }
} }
``` ```text
### Authentication and Authorization ### Authentication and Authorization
@ -7359,7 +7359,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
auth_middleware; auth_middleware;
} }
} }
``` ```text
## Unified Project Structure ## Unified Project Structure
@ -7443,7 +7443,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
```bash ```bash
{{prerequisites_commands}} {{prerequisites_commands}}
``` ```text
**Initial Setup:** **Initial Setup:**
@ -7465,7 +7465,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
# Run tests # Run tests
{{test_commands}} {{test_commands}}
``` ```text
### Environment Configuration ### Environment Configuration
@ -7503,9 +7503,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
### CI/CD Pipeline ### CI/CD Pipeline
```yaml ```yml
{ { cicd_pipeline_config } } '[object Object]': null
``` ```text
### Environments ### Environments
@ -7569,7 +7569,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
Integration Tests Integration Tests
/ \ / \
Frontend Unit Backend Unit Frontend Unit Backend Unit
``` ```text
### Test Organization ### Test Organization
@ -7577,19 +7577,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
``` ```
{{frontend_test_structure}} {{frontend_test_structure}}
``` ```text
**Backend Tests:** **Backend Tests:**
``` ```
{{backend_test_structure}} {{backend_test_structure}}
``` ```text
**E2E Tests:** **E2E Tests:**
``` ```
{{e2e_test_structure}} {{e2e_test_structure}}
``` ```text
### Test Examples ### Test Examples
@ -7611,7 +7611,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
backend_test_example; backend_test_example;
} }
} }
``` ```text
**E2E Test:** **E2E Test:**
@ -7664,7 +7664,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
```mermaid ```mermaid
{{error_flow_diagram}} {{error_flow_diagram}}
``` ```text
### Error Response Format ### Error Response Format
@ -7688,7 +7688,7 @@ interface ApiError {
frontend_error_handler; frontend_error_handler;
} }
} }
``` ```text
### Backend Error Handling ### Backend Error Handling

View File

@ -215,25 +215,22 @@ CRITICAL: Read the full YML, start activation to alter your state of being, foll
```yml ```yml
activation-instructions: activation-instructions:
- Follow all instructions in this file -> this defines you, your persona and more importantly what you can do. STAY IN CHARACTER! - Follow all instructions in this file -> this defines you, your persona and more importantly what you can do. STAY IN CHARACTER!
- Only read the files/tasks listed here when user selects them for execution to minimize context usage - Only read the files/tasks listed here when user selects them for execution to minimize context usage
- The customization field ALWAYS takes precedence over any conflicting instructions - The customization field ALWAYS takes precedence over any conflicting instructions
- When listing tasks/templates or presenting options during conversations, always show as numbered options list, allowing the user to type a number to select or execute - When listing tasks/templates or presenting options during conversations, always show as numbered options list, allowing the user to type a number to select or execute
agent: agent:
name: John name: John
id: pm id: pm
title: Product Manager title: Product Manager
icon: 📋 icon: 📋
whenToUse: "Use for creating PRDs, product strategy, feature prioritization, roadmap planning, and stakeholder communication" whenToUse: Use for creating PRDs, product strategy, feature prioritization, roadmap planning, and stakeholder communication
customization: customization: null
persona: persona:
role: Investigative Product Strategist & Market-Savvy PM role: Investigative Product Strategist & Market-Savvy PM
style: Analytical, inquisitive, data-driven, user-focused, pragmatic style: Analytical, inquisitive, data-driven, user-focused, pragmatic
identity: Product Manager specialized in document creation and product research identity: Product Manager specialized in document creation and product research
focus: Creating PRDs and other product documentation using templates focus: Creating PRDs and other product documentation using templates
core_principles: core_principles:
- Deeply understand "Why" - uncover root causes and motivations - Deeply understand "Why" - uncover root causes and motivations
- Champion the user - maintain relentless focus on target user value - Champion the user - maintain relentless focus on target user value
@ -243,16 +240,13 @@ persona:
- Collaborative & iterative approach - Collaborative & iterative approach
- Proactive risk identification - Proactive risk identification
- Strategic thinking & outcome-oriented - Strategic thinking & outcome-oriented
startup: startup:
- Greet the user with your name and role, and inform of the *help command. - Greet the user with your name and role, and inform of the *help command.
commands: commands:
- "*help" - Show: numbered list of the following commands to allow selection - '*help" - Show: numbered list of the following commands to allow selection'
- "*chat-mode" - (Default) Deep conversation with advanced-elicitation - '*chat-mode" - (Default) Deep conversation with advanced-elicitation'
- "*create-doc {template}" - Create doc (no template = show available templates) - '*create-doc {template}" - Create doc (no template = show available templates)'
- "*exit" - Say goodbye as the PM, and then abandon inhabiting this persona - '*exit" - Say goodbye as the PM, and then abandon inhabiting this persona'
dependencies: dependencies:
tasks: tasks:
- create-doc - create-doc
@ -4340,7 +4334,7 @@ After presenting all data models, apply `tasks#advanced-elicitation` protocol]]
model_interface; model_interface;
} }
} }
``` ```text
**Relationships:** **Relationships:**
@ -4404,18 +4398,21 @@ Use appropriate format for the chosen API style. If no API (e.g., static site),
^^CONDITION: has_rest_api^^ ^^CONDITION: has_rest_api^^
```yaml ```yml
openapi: 3.0.0 openapi: 3.0.0
info: info:
title: { { api_title } } title:
version: { { api_version } } '[object Object]': null
description: { { api_description } } version:
'[object Object]': null
description:
'[object Object]': null
servers: servers:
- url: { { api_base_url } } - url:
description: { { environment } } '[object Object]': null
# ... OpenAPI specification continues description:
``` '[object Object]': null
```text
^^/CONDITION: has_rest_api^^ ^^/CONDITION: has_rest_api^^
@ -6288,7 +6285,7 @@ Use appropriate diagram type for clarity.]]
```mermaid ```mermaid
{{architecture_diagram}} {{architecture_diagram}}
``` ```text
### Architectural Patterns ### Architectural Patterns
@ -6439,7 +6436,7 @@ interface UserProfile {
bio?: string; bio?: string;
preferences: Record<string, any>; preferences: Record<string, any>;
} }
``` ```text
**Relationships:** **Relationships:**
@ -6463,17 +6460,20 @@ Use appropriate format for the chosen API style. If no API (e.g., static site),
^^CONDITION: has_rest_api^^ ^^CONDITION: has_rest_api^^
```yaml ```yml
openapi: 3.0.0 openapi: 3.0.0
info: info:
title: { { api_title } } title:
version: { { api_version } } '[object Object]': null
description: { { api_description } } version:
'[object Object]': null
description:
'[object Object]': null
servers: servers:
- url: { { api_base_url } } - url:
description: { { environment } } '[object Object]': null
# ... OpenAPI specification continues description:
'[object Object]': null
``` ```
^^/CONDITION: has_rest_api^^ ^^/CONDITION: has_rest_api^^
@ -6483,7 +6483,7 @@ servers:
```graphql ```graphql
# GraphQL Schema # GraphQL Schema
{{graphql_schema}} {{graphql_schema}}
``` ```text
^^/CONDITION: has_graphql_api^^ ^^/CONDITION: has_graphql_api^^
@ -6641,7 +6641,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
**Component Organization:** **Component Organization:**
``` ```text
{{component_structure}} {{component_structure}}
``` ```
@ -6653,7 +6653,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
component_template; component_template;
} }
} }
``` ```text
### State Management Architecture ### State Management Architecture
@ -6680,7 +6680,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
**Route Organization:** **Route Organization:**
``` ```text
{{route_structure}} {{route_structure}}
``` ```
@ -6692,7 +6692,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
protected_route_example; protected_route_example;
} }
} }
``` ```text
### Frontend Services Layer ### Frontend Services Layer
@ -6716,7 +6716,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
service_example; service_example;
} }
} }
``` ```text
## Backend Architecture ## Backend Architecture
@ -6733,7 +6733,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
``` ```
{{function_structure}} {{function_structure}}
``` ```text
**Function Template:** **Function Template:**
@ -6750,7 +6750,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
^^CONDITION: traditional_server^^ ^^CONDITION: traditional_server^^
**Controller/Route Organization:** **Controller/Route Organization:**
``` ```text
{{controller_structure}} {{controller_structure}}
``` ```
@ -6762,7 +6762,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
controller_template; controller_template;
} }
} }
``` ```text
^^/CONDITION: traditional_server^^ ^^/CONDITION: traditional_server^^
@ -6784,7 +6784,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
repository_pattern; repository_pattern;
} }
} }
``` ```text
### Authentication and Authorization ### Authentication and Authorization
@ -6804,7 +6804,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
auth_middleware; auth_middleware;
} }
} }
``` ```text
## Unified Project Structure ## Unified Project Structure
@ -6888,7 +6888,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
```bash ```bash
{{prerequisites_commands}} {{prerequisites_commands}}
``` ```text
**Initial Setup:** **Initial Setup:**
@ -6910,7 +6910,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
# Run tests # Run tests
{{test_commands}} {{test_commands}}
``` ```text
### Environment Configuration ### Environment Configuration
@ -6948,9 +6948,9 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
### CI/CD Pipeline ### CI/CD Pipeline
```yaml ```yml
{ { cicd_pipeline_config } } '[object Object]': null
``` ```text
### Environments ### Environments
@ -7014,7 +7014,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
Integration Tests Integration Tests
/ \ / \
Frontend Unit Backend Unit Frontend Unit Backend Unit
``` ```text
### Test Organization ### Test Organization
@ -7022,19 +7022,19 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
``` ```
{{frontend_test_structure}} {{frontend_test_structure}}
``` ```text
**Backend Tests:** **Backend Tests:**
``` ```
{{backend_test_structure}} {{backend_test_structure}}
``` ```text
**E2E Tests:** **E2E Tests:**
``` ```
{{e2e_test_structure}} {{e2e_test_structure}}
``` ```text
### Test Examples ### Test Examples
@ -7056,7 +7056,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
backend_test_example; backend_test_example;
} }
} }
``` ```text
**E2E Test:** **E2E Test:**
@ -7109,7 +7109,7 @@ After presenting this section, apply `tasks#advanced-elicitation` protocol]]
```mermaid ```mermaid
{{error_flow_diagram}} {{error_flow_diagram}}
``` ```text
### Error Response Format ### Error Response Format
@ -7133,7 +7133,7 @@ interface ApiError {
frontend_error_handler; frontend_error_handler;
} }
} }
``` ```text
### Backend Error Handling ### Backend Error Handling

View File

@ -14,25 +14,22 @@ CRITICAL: Read the full YML, start activation to alter your state of being, foll
```yml ```yml
activation-instructions: activation-instructions:
- Follow all instructions in this file -> this defines you, your persona and more importantly what you can do. STAY IN CHARACTER! - Follow all instructions in this file -> this defines you, your persona and more importantly what you can do. STAY IN CHARACTER!
- Only read the files/tasks listed here when user selects them for execution to minimize context usage - Only read the files/tasks listed here when user selects them for execution to minimize context usage
- The customization field ALWAYS takes precedence over any conflicting instructions - The customization field ALWAYS takes precedence over any conflicting instructions
- When listing tasks/templates or presenting options during conversations, always show as numbered options list, allowing the user to type a number to select or execute - When listing tasks/templates or presenting options during conversations, always show as numbered options list, allowing the user to type a number to select or execute
agent: agent:
name: John name: John
id: pm id: pm
title: Product Manager title: Product Manager
icon: 📋 icon: 📋
whenToUse: "Use for creating PRDs, product strategy, feature prioritization, roadmap planning, and stakeholder communication" whenToUse: Use for creating PRDs, product strategy, feature prioritization, roadmap planning, and stakeholder communication
customization: customization: null
persona: persona:
role: Investigative Product Strategist & Market-Savvy PM role: Investigative Product Strategist & Market-Savvy PM
style: Analytical, inquisitive, data-driven, user-focused, pragmatic style: Analytical, inquisitive, data-driven, user-focused, pragmatic
identity: Product Manager specialized in document creation and product research identity: Product Manager specialized in document creation and product research
focus: Creating PRDs and other product documentation using templates focus: Creating PRDs and other product documentation using templates
core_principles: core_principles:
- Deeply understand "Why" - uncover root causes and motivations - Deeply understand "Why" - uncover root causes and motivations
- Champion the user - maintain relentless focus on target user value - Champion the user - maintain relentless focus on target user value
@ -42,16 +39,13 @@ persona:
- Collaborative & iterative approach - Collaborative & iterative approach
- Proactive risk identification - Proactive risk identification
- Strategic thinking & outcome-oriented - Strategic thinking & outcome-oriented
startup: startup:
- Greet the user with your name and role, and inform of the *help command. - Greet the user with your name and role, and inform of the *help command.
commands: commands:
- "*help" - Show: numbered list of the following commands to allow selection - '*help" - Show: numbered list of the following commands to allow selection'
- "*chat-mode" - (Default) Deep conversation with advanced-elicitation - '*chat-mode" - (Default) Deep conversation with advanced-elicitation'
- "*create-doc {template}" - Create doc (no template = show available templates) - '*create-doc {template}" - Create doc (no template = show available templates)'
- "*exit" - Say goodbye as the PM, and then abandon inhabiting this persona - '*exit" - Say goodbye as the PM, and then abandon inhabiting this persona'
dependencies: dependencies:
tasks: tasks:
- create-doc - create-doc