feat: add markdown-tree integration for document sharding

- Add markdownExploder setting to core-config.yml
- Update shard-doc task to use md-tree command when enabled
- Implement proper fallback handling when tool is unavailable
- Update core-config structure to remove nested wrapper
- Fix field naming to use camelCase throughout
This commit is contained in:
Brian Madison
2025-06-21 15:26:09 -05:00
parent 5c8485d09f
commit 540578b39d
9 changed files with 113 additions and 100 deletions

View File

@@ -24,6 +24,7 @@
"Immer",
"implementability",
"Inclusivity",
"kayvan",
"Luxon",
"MERN",
"mgmt",

View File

@@ -1,26 +1,20 @@
core-project-information:
dev-story-location: docs/stories # alternate could be .ai/stories if preferred for example
prd:
prd-file: docs/prd.md
prdVersion: v4
prdSharded: true
prdShardedLocation: docs/prd
epicFilePattern: epic-{n}*.md
architecture:
architecture-file: docs/architecture.md
architectureVersion: v4
architectureSharded: true
architectureShardedLocation: docs/architecture
# if you have a front-end architecture document, uncomment the following and validate the file path
# front-end-architecture:
# front-end-architecture-file: docs/front-end-architecture.md
# architectureVersion: v4
# architectureSharded: true
# architectureShardedLocation: docs/architecture
customTechnicalDocuments: null # list other documents only if you want the SM to read them when creating stories
devLoadAlwaysFiles:
- docs/architecture/coding-standards.md
- docs/architecture/tech-stack.md
- docs/architecture/source-tree.md
devDebugLog: .ai/debug-log.md
agentCoreDump: .ai/core-dump{n}.md
markdownExploder: true
prd:
prdFile: docs/prd.md
prdVersion: v4
prdSharded: true
prdShardedLocation: docs/prd
epicFilePattern: epic-{n}*.md
architecture:
architectureFile: docs/architecture.md
architectureVersion: v4
architectureSharded: true
architectureShardedLocation: docs/architecture
customTechnicalDocuments: null
devLoadAlwaysFiles:
- docs/architecture/coding-standards.md
- docs/architecture/tech-stack.md
- docs/architecture/source-tree.md
devDebugLog: .ai/debug-log.md
devStoryLocation: docs/stories
agentCoreDump: .ai/core-dump{n}.md

View File

@@ -17,14 +17,14 @@ To identify the next logical story based on project progress and epic definition
2. Run the BMAD installer against your project to upgrade and add the file automatically
Please add and configure core-config.yml before proceeding."
- Extract the following key configurations:
- `dev-story-location`: Where to save story files
- `devStoryLocation`: Where to save story files
- `prd.prdSharded`: Whether PRD is sharded or monolithic
- `prd.prd-file`: Location of monolithic PRD (if not sharded)
- `prd.prdFile`: Location of monolithic PRD (if not sharded)
- `prd.prdShardedLocation`: Location of sharded epic files
- `prd.epicFilePattern`: Pattern for epic files (e.g., `epic-{n}*.md`)
- `architecture.architectureVersion`: Architecture document version
- `architecture.architectureSharded`: Whether architecture is sharded
- `architecture.architecture-file`: Location of monolithic architecture
- `architecture.architectureFile`: Location of monolithic architecture
- `architecture.architectureShardedLocation`: Location of sharded architecture files
### 1. Identify Next Story for Preparation
@@ -33,11 +33,11 @@ To identify the next logical story based on project progress and epic definition
- Based on `prdSharded` from config:
- **If `prdSharded: true`**: Look for epic files in `prdShardedLocation` using `epicFilePattern`
- **If `prdSharded: false`**: Load the full PRD from `prd-file` and extract epics from section headings (## Epic N or ### Epic N)
- **If `prdSharded: false`**: Load the full PRD from `prdFile` and extract epics from section headings (## Epic N or ### Epic N)
#### 1.2 Review Existing Stories
- Check `dev-story-location` from config (e.g., `docs/stories/`) for existing story files
- Check `devStoryLocation` from config (e.g., `docs/stories/`) for existing story files
- If the directory exists and has at least 1 file, find the highest-numbered story file.
- **If a highest story file exists (`{lastEpicNum}.{lastStoryNum}.story.md`):**
- Verify its `Status` is 'Done' (or equivalent).
@@ -126,13 +126,13 @@ Based on configuration loaded in Step 0:
- Follow the structured reading order in section 4.2 below
- **If `architectureVersion: v4` and `architectureSharded: false`**:
- Load the monolithic architecture from `architecture-file`
- Load the monolithic architecture from `architectureFile`
- Extract relevant sections based on v4 structure (tech stack, project structure, etc.)
- **If `architectureVersion` is NOT v4**:
- Inform user: "Architecture document is not v4 format. Will use best judgment to find relevant information."
- If `architectureSharded: true`: Search sharded files by filename relevance
- If `architectureSharded: false`: Search within monolithic `architecture-file` for relevant sections
- If `architectureSharded: false`: Search within monolithic `architectureFile` for relevant sections
#### 4.2 Recommended Reading Order Based on Story Type (v4 Sharded Only)
@@ -189,7 +189,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
### 6. Populate Story Template with Full Context
- Create a new story file: `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config).
- Create a new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config).
- Use the Story Template to structure the file.
- Fill in:
- Story `{EpicNum}.{StoryNum}: {Short Title Copied from Epic File}`
@@ -236,7 +236,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
- Verify all source references are included for technical details
- Ensure tasks align with both epic requirements and architecture constraints
- Update status to "Draft"
- Save the story file to `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config)
- Save the story file to `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config)
### 9. Report Completion

View File

@@ -6,9 +6,27 @@
- Create a folder structure to organize the sharded documents
- Maintain all content integrity including code blocks, diagrams, and markdown formatting
## Recommended Method: @kayvan/markdown-tree-parser
## Primary Method: Automatic with markdown-tree
[[LLM: First, suggest the user install and use the @kayvan/markdown-tree-parser tool if the md-tree command is unavailable so we can have the best performance and reliable document sharding. Let the user know this will save cost of having the LLM to the expensive sharding operation. Give instructions for MPV NPX and PNPM global installs.]]
[[LLM: First, check if markdownExploder is set to true in bmad-core/core-config.yml. If it is, attempt to run the command: `md-tree explode {input file} {output path}`.
If the command succeeds, inform the user that the document has been sharded successfully and STOP - do not proceed further.
If the command fails (especially with an error indicating the command is not found or not available), inform the user: "The markdownExploder setting is enabled but the md-tree command is not available. Please either:
1. Install @kayvan/markdown-tree-parser globally with: `npm install -g @kayvan/markdown-tree-parser`
2. Or set markdownExploder to false in bmad-core/core-config.yml
**IMPORTANT: STOP HERE - do not proceed with manual sharding until one of the above actions is taken.**"
If markdownExploder is set to false, inform the user: "The markdownExploder setting is currently false. For better performance and reliability, you should:
1. Set markdownExploder to true in bmad-core/core-config.yml
2. Install @kayvan/markdown-tree-parser globally with: `npm install -g @kayvan/markdown-tree-parser`
I will now proceed with the manual sharding process."
Then proceed with the manual method below ONLY if markdownExploder is false.]]
### Installation and Usage
@@ -41,19 +59,19 @@ If the user has @kayvan/markdown-tree-parser installed, use it and skip the manu
---
## Manual Method (if @kayvan/markdown-tree-parser is not available)
## Manual Method (if @kayvan/markdown-tree-parser is not available or user indicated manual method)
[[LLM: Only proceed with the manual instructions below if the user cannot or does not want to use @kayvan/markdown-tree-parser.]]
### Task Instructions
### 1. Identify Document and Target Location
1. Identify Document and Target Location
- Determine which document to shard (user-provided path)
- Create a new folder under `docs/` with the same name as the document (without extension)
- Example: `docs/prd.md` → create folder `docs/prd/`
### 2. Parse and Extract Sections
2. Parse and Extract Sections
[[LLM: When sharding the document:
@@ -63,7 +81,7 @@ If the user has @kayvan/markdown-tree-parser installed, use it and skip the manu
- Extract the section heading and ALL content until the next level 2 section
- Include all subsections, code blocks, diagrams, lists, tables, etc.
- Be extremely careful with:
- Fenced code blocks (```) - ensure you capture the full block including closing backticks
- Fenced code blocks (```) - ensure you capture the full block including closing backticks and account for potential misleading level 2's that are actually part of a fenced section example
- Mermaid diagrams - preserve the complete diagram syntax
- Nested markdown elements
- Multi-line content that might contain ## inside code blocks
@@ -82,7 +100,7 @@ For each extracted section:
2. **Adjust heading levels**:
- The level 2 heading becomes level 1 (# instead of ##)
- The level 2 heading becomes level 1 (# instead of ##) in the sharded new document
- All subsection levels decrease by 1:
```txt

View File

@@ -1734,14 +1734,14 @@ To identify the next logical story based on project progress and epic definition
2. Run the BMAD installer against your project to upgrade and add the file automatically
Please add and configure core-config.yml before proceeding."
- Extract the following key configurations:
- `dev-story-location`: Where to save story files
- `devStoryLocation`: Where to save story files
- `prd.prdSharded`: Whether PRD is sharded or monolithic
- `prd.prd-file`: Location of monolithic PRD (if not sharded)
- `prd.prdFile`: Location of monolithic PRD (if not sharded)
- `prd.prdShardedLocation`: Location of sharded epic files
- `prd.epicFilePattern`: Pattern for epic files (e.g., `epic-{n}*.md`)
- `architecture.architectureVersion`: Architecture document version
- `architecture.architectureSharded`: Whether architecture is sharded
- `architecture.architecture-file`: Location of monolithic architecture
- `architecture.architectureFile`: Location of monolithic architecture
- `architecture.architectureShardedLocation`: Location of sharded architecture files
### 1. Identify Next Story for Preparation
@@ -1750,11 +1750,11 @@ To identify the next logical story based on project progress and epic definition
- Based on `prdSharded` from config:
- **If `prdSharded: true`**: Look for epic files in `prdShardedLocation` using `epicFilePattern`
- **If `prdSharded: false`**: Load the full PRD from `prd-file` and extract epics from section headings (## Epic N or ### Epic N)
- **If `prdSharded: false`**: Load the full PRD from `prdFile` and extract epics from section headings (## Epic N or ### Epic N)
#### 1.2 Review Existing Stories
- Check `dev-story-location` from config (e.g., `docs/stories/`) for existing story files
- Check `devStoryLocation` from config (e.g., `docs/stories/`) for existing story files
- If the directory exists and has at least 1 file, find the highest-numbered story file.
- **If a highest story file exists (`{lastEpicNum}.{lastStoryNum}.story.md`):**
- Verify its `Status` is 'Done' (or equivalent).
@@ -1843,13 +1843,13 @@ Based on configuration loaded in Step 0:
- Follow the structured reading order in section 4.2 below
- **If `architectureVersion: v4` and `architectureSharded: false`**:
- Load the monolithic architecture from `architecture-file`
- Load the monolithic architecture from `architectureFile`
- Extract relevant sections based on v4 structure (tech stack, project structure, etc.)
- **If `architectureVersion` is NOT v4**:
- Inform user: "Architecture document is not v4 format. Will use best judgment to find relevant information."
- If `architectureSharded: true`: Search sharded files by filename relevance
- If `architectureSharded: false`: Search within monolithic `architecture-file` for relevant sections
- If `architectureSharded: false`: Search within monolithic `architectureFile` for relevant sections
#### 4.2 Recommended Reading Order Based on Story Type (v4 Sharded Only)
@@ -1906,7 +1906,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
### 6. Populate Story Template with Full Context
- Create a new story file: `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config).
- Create a new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config).
- Use the Story Template to structure the file.
- Fill in:
- Story `{EpicNum}.{StoryNum}: {Short Title Copied from Epic File}`
@@ -1953,7 +1953,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
- Verify all source references are included for technical details
- Ensure tasks align with both epic requirements and architecture constraints
- Update status to "Draft"
- Save the story file to `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config)
- Save the story file to `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config)
### 9. Report Completion

18
dist/agents/sm.txt vendored
View File

@@ -109,14 +109,14 @@ To identify the next logical story based on project progress and epic definition
2. Run the BMAD installer against your project to upgrade and add the file automatically
Please add and configure core-config.yml before proceeding."
- Extract the following key configurations:
- `dev-story-location`: Where to save story files
- `devStoryLocation`: Where to save story files
- `prd.prdSharded`: Whether PRD is sharded or monolithic
- `prd.prd-file`: Location of monolithic PRD (if not sharded)
- `prd.prdFile`: Location of monolithic PRD (if not sharded)
- `prd.prdShardedLocation`: Location of sharded epic files
- `prd.epicFilePattern`: Pattern for epic files (e.g., `epic-{n}*.md`)
- `architecture.architectureVersion`: Architecture document version
- `architecture.architectureSharded`: Whether architecture is sharded
- `architecture.architecture-file`: Location of monolithic architecture
- `architecture.architectureFile`: Location of monolithic architecture
- `architecture.architectureShardedLocation`: Location of sharded architecture files
### 1. Identify Next Story for Preparation
@@ -125,11 +125,11 @@ To identify the next logical story based on project progress and epic definition
- Based on `prdSharded` from config:
- **If `prdSharded: true`**: Look for epic files in `prdShardedLocation` using `epicFilePattern`
- **If `prdSharded: false`**: Load the full PRD from `prd-file` and extract epics from section headings (## Epic N or ### Epic N)
- **If `prdSharded: false`**: Load the full PRD from `prdFile` and extract epics from section headings (## Epic N or ### Epic N)
#### 1.2 Review Existing Stories
- Check `dev-story-location` from config (e.g., `docs/stories/`) for existing story files
- Check `devStoryLocation` from config (e.g., `docs/stories/`) for existing story files
- If the directory exists and has at least 1 file, find the highest-numbered story file.
- **If a highest story file exists (`{lastEpicNum}.{lastStoryNum}.story.md`):**
- Verify its `Status` is 'Done' (or equivalent).
@@ -218,13 +218,13 @@ Based on configuration loaded in Step 0:
- Follow the structured reading order in section 4.2 below
- **If `architectureVersion: v4` and `architectureSharded: false`**:
- Load the monolithic architecture from `architecture-file`
- Load the monolithic architecture from `architectureFile`
- Extract relevant sections based on v4 structure (tech stack, project structure, etc.)
- **If `architectureVersion` is NOT v4**:
- Inform user: "Architecture document is not v4 format. Will use best judgment to find relevant information."
- If `architectureSharded: true`: Search sharded files by filename relevance
- If `architectureSharded: false`: Search within monolithic `architecture-file` for relevant sections
- If `architectureSharded: false`: Search within monolithic `architectureFile` for relevant sections
#### 4.2 Recommended Reading Order Based on Story Type (v4 Sharded Only)
@@ -281,7 +281,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
### 6. Populate Story Template with Full Context
- Create a new story file: `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config).
- Create a new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config).
- Use the Story Template to structure the file.
- Fill in:
- Story `{EpicNum}.{StoryNum}: {Short Title Copied from Epic File}`
@@ -328,7 +328,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
- Verify all source references are included for technical details
- Ensure tasks align with both epic requirements and architecture constraints
- Update status to "Draft"
- Save the story file to `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config)
- Save the story file to `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config)
### 9. Report Completion

View File

@@ -8656,14 +8656,14 @@ To identify the next logical story based on project progress and epic definition
2. Run the BMAD installer against your project to upgrade and add the file automatically
Please add and configure core-config.yml before proceeding."
- Extract the following key configurations:
- `dev-story-location`: Where to save story files
- `devStoryLocation`: Where to save story files
- `prd.prdSharded`: Whether PRD is sharded or monolithic
- `prd.prd-file`: Location of monolithic PRD (if not sharded)
- `prd.prdFile`: Location of monolithic PRD (if not sharded)
- `prd.prdShardedLocation`: Location of sharded epic files
- `prd.epicFilePattern`: Pattern for epic files (e.g., `epic-{n}*.md`)
- `architecture.architectureVersion`: Architecture document version
- `architecture.architectureSharded`: Whether architecture is sharded
- `architecture.architecture-file`: Location of monolithic architecture
- `architecture.architectureFile`: Location of monolithic architecture
- `architecture.architectureShardedLocation`: Location of sharded architecture files
### 1. Identify Next Story for Preparation
@@ -8672,11 +8672,11 @@ To identify the next logical story based on project progress and epic definition
- Based on `prdSharded` from config:
- **If `prdSharded: true`**: Look for epic files in `prdShardedLocation` using `epicFilePattern`
- **If `prdSharded: false`**: Load the full PRD from `prd-file` and extract epics from section headings (## Epic N or ### Epic N)
- **If `prdSharded: false`**: Load the full PRD from `prdFile` and extract epics from section headings (## Epic N or ### Epic N)
#### 1.2 Review Existing Stories
- Check `dev-story-location` from config (e.g., `docs/stories/`) for existing story files
- Check `devStoryLocation` from config (e.g., `docs/stories/`) for existing story files
- If the directory exists and has at least 1 file, find the highest-numbered story file.
- **If a highest story file exists (`{lastEpicNum}.{lastStoryNum}.story.md`):**
- Verify its `Status` is 'Done' (or equivalent).
@@ -8765,13 +8765,13 @@ Based on configuration loaded in Step 0:
- Follow the structured reading order in section 4.2 below
- **If `architectureVersion: v4` and `architectureSharded: false`**:
- Load the monolithic architecture from `architecture-file`
- Load the monolithic architecture from `architectureFile`
- Extract relevant sections based on v4 structure (tech stack, project structure, etc.)
- **If `architectureVersion` is NOT v4**:
- Inform user: "Architecture document is not v4 format. Will use best judgment to find relevant information."
- If `architectureSharded: true`: Search sharded files by filename relevance
- If `architectureSharded: false`: Search within monolithic `architecture-file` for relevant sections
- If `architectureSharded: false`: Search within monolithic `architectureFile` for relevant sections
#### 4.2 Recommended Reading Order Based on Story Type (v4 Sharded Only)
@@ -8828,7 +8828,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
### 6. Populate Story Template with Full Context
- Create a new story file: `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config).
- Create a new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config).
- Use the Story Template to structure the file.
- Fill in:
- Story `{EpicNum}.{StoryNum}: {Short Title Copied from Epic File}`
@@ -8875,7 +8875,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
- Verify all source references are included for technical details
- Ensure tasks align with both epic requirements and architecture constraints
- Update status to "Draft"
- Save the story file to `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config)
- Save the story file to `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config)
### 9. Report Completion

View File

@@ -2763,14 +2763,14 @@ To identify the next logical story based on project progress and epic definition
2. Run the BMAD installer against your project to upgrade and add the file automatically
Please add and configure core-config.yml before proceeding."
- Extract the following key configurations:
- `dev-story-location`: Where to save story files
- `devStoryLocation`: Where to save story files
- `prd.prdSharded`: Whether PRD is sharded or monolithic
- `prd.prd-file`: Location of monolithic PRD (if not sharded)
- `prd.prdFile`: Location of monolithic PRD (if not sharded)
- `prd.prdShardedLocation`: Location of sharded epic files
- `prd.epicFilePattern`: Pattern for epic files (e.g., `epic-{n}*.md`)
- `architecture.architectureVersion`: Architecture document version
- `architecture.architectureSharded`: Whether architecture is sharded
- `architecture.architecture-file`: Location of monolithic architecture
- `architecture.architectureFile`: Location of monolithic architecture
- `architecture.architectureShardedLocation`: Location of sharded architecture files
### 1. Identify Next Story for Preparation
@@ -2779,11 +2779,11 @@ To identify the next logical story based on project progress and epic definition
- Based on `prdSharded` from config:
- **If `prdSharded: true`**: Look for epic files in `prdShardedLocation` using `epicFilePattern`
- **If `prdSharded: false`**: Load the full PRD from `prd-file` and extract epics from section headings (## Epic N or ### Epic N)
- **If `prdSharded: false`**: Load the full PRD from `prdFile` and extract epics from section headings (## Epic N or ### Epic N)
#### 1.2 Review Existing Stories
- Check `dev-story-location` from config (e.g., `docs/stories/`) for existing story files
- Check `devStoryLocation` from config (e.g., `docs/stories/`) for existing story files
- If the directory exists and has at least 1 file, find the highest-numbered story file.
- **If a highest story file exists (`{lastEpicNum}.{lastStoryNum}.story.md`):**
- Verify its `Status` is 'Done' (or equivalent).
@@ -2872,13 +2872,13 @@ Based on configuration loaded in Step 0:
- Follow the structured reading order in section 4.2 below
- **If `architectureVersion: v4` and `architectureSharded: false`**:
- Load the monolithic architecture from `architecture-file`
- Load the monolithic architecture from `architectureFile`
- Extract relevant sections based on v4 structure (tech stack, project structure, etc.)
- **If `architectureVersion` is NOT v4**:
- Inform user: "Architecture document is not v4 format. Will use best judgment to find relevant information."
- If `architectureSharded: true`: Search sharded files by filename relevance
- If `architectureSharded: false`: Search within monolithic `architecture-file` for relevant sections
- If `architectureSharded: false`: Search within monolithic `architectureFile` for relevant sections
#### 4.2 Recommended Reading Order Based on Story Type (v4 Sharded Only)
@@ -2935,7 +2935,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
### 6. Populate Story Template with Full Context
- Create a new story file: `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config).
- Create a new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config).
- Use the Story Template to structure the file.
- Fill in:
- Story `{EpicNum}.{StoryNum}: {Short Title Copied from Epic File}`
@@ -2982,7 +2982,7 @@ Format references as: `[Source: architecture/{filename}.md#{section}]`
- Verify all source references are included for technical details
- Ensure tasks align with both epic requirements and architecture constraints
- Update status to "Draft"
- Save the story file to `{dev-story-location}/{epicNum}.{storyNum}.story.md` (using location from config)
- Save the story file to `{devStoryLocation}/{epicNum}.{storyNum}.story.md` (using location from config)
### 9. Report Completion

View File

@@ -895,18 +895,18 @@ This configuration file acts as a map for BMAD agents, telling them exactly wher
#### Configuration Structure
```yaml
core-project-information:
dev-story-location: docs/stories # Where completed stories are saved
coreProjectLocation:
devStoryLocation: docs/stories # Where completed stories are saved
prd:
prd-file: docs/prd.md
prdFile: docs/prd.md
prdVersion: v4 # v3 or v4
prdSharded: true # false if epics are embedded in PRD
prdShardedLocation: docs/prd # Where sharded epics live
epicFilePattern: epic-{n}*.md # Pattern for epic files
architecture:
architecture-file: docs/architecture.md
architectureFile: docs/architecture.md
architectureVersion: v4 # v3 or v4
architectureSharded: true # false if monolithic
architectureShardedLocation: docs/architecture
@@ -932,7 +932,7 @@ The Scrum Master agent uses these settings to locate epics:
```yaml
prd:
prd-file: docs/prd.md
prdFile: docs/prd.md
prdVersion: v4
prdSharded: true
prdShardedLocation: docs/prd
@@ -943,7 +943,7 @@ prd:
```yaml
prd:
prd-file: docs/prd.md
prdFile: docs/prd.md
prdVersion: v3
prdSharded: false # Epics are inside PRD
```
@@ -952,7 +952,7 @@ prd:
```yaml
prd:
prd-file: docs/product-requirements.md
prdFile: docs/product-requirements.md
prdVersion: v4
prdSharded: true
prdShardedLocation: docs # Epics in docs/ not docs/prd/
@@ -967,7 +967,7 @@ Similar flexibility for architecture documents:
```yaml
architecture:
architecture-file: docs/architecture.md
architectureFile: docs/architecture.md
architectureVersion: v4
architectureSharded: true
architectureShardedLocation: docs/architecture
@@ -977,7 +977,7 @@ architecture:
```yaml
architecture:
architecture-file: docs/technical-architecture.md
architectureFile: docs/technical-architecture.md
architectureVersion: v3
architectureSharded: false # All in one file
```
@@ -1021,14 +1021,14 @@ Export entire chat conversations for preservation or analysis. The `{n}` is repl
##### Legacy V3 Project
```yaml
core-project-information:
dev-story-location: docs/stories
coreProjectLocation:
devStoryLocation: docs/stories
prd:
prd-file: docs/prd.md
prdFile: docs/prd.md
prdVersion: v3
prdSharded: false
architecture:
architecture-file: docs/architecture.md
architectureFile: docs/architecture.md
architectureVersion: v3
architectureSharded: false
devLoadAlwaysFiles: []
@@ -1037,14 +1037,14 @@ core-project-information:
##### Hybrid Project (V3 PRD, V4 Architecture)
```yaml
core-project-information:
dev-story-location: .ai/stories
coreProjectLocation:
devStoryLocation: .ai/stories
prd:
prd-file: docs/product-requirements.md
prdFile: docs/product-requirements.md
prdVersion: v3
prdSharded: false
architecture:
architecture-file: docs/architecture.md
architectureFile: docs/architecture.md
architectureVersion: v4
architectureSharded: true
architectureShardedLocation: docs/architecture
@@ -1055,16 +1055,16 @@ core-project-information:
##### Custom Organization
```yaml
core-project-information:
dev-story-location: development/completed-stories
coreProjectLocation:
devStoryLocation: development/completed-stories
prd:
prd-file: planning/requirements.md
prdFile: planning/requirements.md
prdVersion: v4
prdSharded: true
prdShardedLocation: planning/epics
epicFilePattern: requirement-{n}.md
architecture:
architecture-file: technical/system-design.md
architectureFile: technical/system-design.md
architectureVersion: v4
architectureSharded: true
architectureShardedLocation: technical/components
@@ -1122,7 +1122,7 @@ customTechnicalDocuments:
**Architecture Not Loading:**
- Verify `architecture-file` path
- Verify `architectureFile` path
- Check `architectureVersion` setting
- Confirm sharding configuration matches reality