Automatically generate/update markdown system documentation in a configurable location (within repo, or within an included folder).
System docs are automatically updated as the project is changed.
System docs describe the functions, behaviors, and connections within the code base at a high and med level.
Here are my instructions for docs, for reference:
# How to write docs
Provide insight to structural and behavioral complexity.
Search the code base and connect concepts before writing.
Write narrative which is connected, analytical and thorough.
Support all statements with detail (diagram or short code).
Use lists only for technical use (structure, processes, decomposition), NOT narrative use.
Use adjectives with precision.
## Examples
<example rating="great" reason="Connected narrative supported by evidence">
This is a series of sentences which explain the most intricate relationships of the system. The narrative is connected, analytical and thorough, and adjectives are precise.
'''typescript
// ASCII diagramming is great for structure, dependencies, and relationships
applyChanges()
↓
applyCommentChange()
└─ saveComment() // Throws on incorrect change
// Essential code, where it's relevant
type AnImportantType =
| { type: "foo"; range: bar }
'''
</example>
<example rating="bad" reason="Not connected language. Not supported with detail">
This provides:
- Efficient result retrieval
└─ Automatic completion detection
</example>