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:
@@ -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
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
||||||
|
|
||||||
|
|||||||
@@ -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^^
|
||||||
|
|
||||||
|
|||||||
@@ -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^^
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
Reference in New Issue
Block a user