# Shard Document Tool Rule This rule defines the Shard Document tool. ## Tool Definition When this tool is triggered, execute the following: Split large markdown documents into smaller, organized files based on level 2 sections using @kayvan/markdown-tree-parser tool MANDATORY: Execute ALL steps in the flow section IN EXACT ORDER DO NOT skip steps or change the sequence HALT immediately when halt-conditions are met Each action xml tag within step xml tag is a REQUIRED action to complete that step Sections outside flow (validation, output, critical-context) provide essential context - review and apply throughout execution Uses `npx @kayvan/markdown-tree-parser` to automatically shard documents by level 2 headings and generate an index Ask user for the source document path if not provided already Verify file exists and is accessible Verify file is markdown format (.md extension) HALT with error message Determine default destination: same location as source file, folder named after source file without .md extension Example: /path/to/architecture.md → /path/to/architecture/ Ask user for the destination folder path ([y] to confirm use of default: [suggested-path], else enter a new path) Use the suggested destination path Use the custom destination path Verify destination folder exists or can be created Check write permissions for destination HALT with error message Inform user that sharding is beginning Execute command: `npx @kayvan/markdown-tree-parser [source-document] [destination-folder]` Capture command output and any errors HALT and display error to user Check that destination folder contains sharded files Verify index.md was created in destination folder Count the number of files created HALT with error message Display completion report to user including: - Source document path and name - Destination folder path - Number of section files created - Confirmation that index.md was created - Any tool output or warnings Inform user that sharding completed successfully HALT if npx command fails or produces no output files ## Usage Reference this tool with `@tool-shard-doc` to execute it. ## Module Part of the BMAD CORE module.