@mytechtoday/augment-extensions 1.3.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -22
- package/README.md +105 -6
- package/augment-extensions/domain-rules/software-architecture/README.md +143 -143
- package/augment-extensions/domain-rules/software-architecture/examples/banking-layered.md +961 -961
- package/augment-extensions/domain-rules/software-architecture/examples/ecommerce-microservices.md +990 -990
- package/augment-extensions/domain-rules/software-architecture/examples/iot-eventdriven.md +882 -882
- package/augment-extensions/domain-rules/software-architecture/examples/monolith-to-microservices-migration.md +703 -703
- package/augment-extensions/domain-rules/software-architecture/examples/serverless-imageprocessing.md +957 -957
- package/augment-extensions/domain-rules/software-architecture/examples/trading-eventdriven.md +747 -747
- package/augment-extensions/domain-rules/software-architecture/module.json +119 -119
- package/augment-extensions/domain-rules/software-architecture/rules/challenges-solutions.md +763 -763
- package/augment-extensions/domain-rules/software-architecture/rules/definitions-terminology.md +409 -409
- package/augment-extensions/domain-rules/software-architecture/rules/design-principles.md +684 -684
- package/augment-extensions/domain-rules/software-architecture/rules/evaluation-testing.md +1381 -1381
- package/augment-extensions/domain-rules/software-architecture/rules/event-driven-architecture.md +616 -616
- package/augment-extensions/domain-rules/software-architecture/rules/fundamentals.md +306 -306
- package/augment-extensions/domain-rules/software-architecture/rules/industry-architectures.md +554 -554
- package/augment-extensions/domain-rules/software-architecture/rules/layered-architecture.md +776 -776
- package/augment-extensions/domain-rules/software-architecture/rules/microservices-architecture.md +503 -503
- package/augment-extensions/domain-rules/software-architecture/rules/modeling-documentation.md +1199 -1199
- package/augment-extensions/domain-rules/software-architecture/rules/monolithic-architecture.md +351 -351
- package/augment-extensions/domain-rules/software-architecture/rules/principles.md +556 -556
- package/augment-extensions/domain-rules/software-architecture/rules/quality-attributes.md +797 -797
- package/augment-extensions/domain-rules/software-architecture/rules/scalability-performance.md +1345 -1345
- package/augment-extensions/domain-rules/software-architecture/rules/security-architecture.md +1039 -1039
- package/augment-extensions/domain-rules/software-architecture/rules/serverless-architecture.md +711 -711
- package/augment-extensions/domain-rules/software-architecture/rules/skills-development.md +568 -568
- package/augment-extensions/domain-rules/software-architecture/rules/tools-methodologies.md +961 -961
- package/augment-extensions/visual-design/CHANGELOG.md +132 -132
- package/augment-extensions/visual-design/README.md +255 -255
- package/augment-extensions/visual-design/__tests__/README.md +119 -119
- package/augment-extensions/visual-design/__tests__/style-selector.test.ts +172 -172
- package/augment-extensions/visual-design/__tests__/vendor-styles.test.ts +214 -214
- package/augment-extensions/visual-design/domains/other/ai-prompt-helper.ts +157 -157
- package/augment-extensions/visual-design/domains/other/dotnet-application.ts +156 -156
- package/augment-extensions/visual-design/domains/other/linux-platform.ts +156 -156
- package/augment-extensions/visual-design/domains/other/mobile-application.ts +157 -157
- package/augment-extensions/visual-design/domains/other/motion-picture.ts +156 -156
- package/augment-extensions/visual-design/domains/other/os-application.ts +156 -156
- package/augment-extensions/visual-design/domains/other/print-campaigns.ts +158 -158
- package/augment-extensions/visual-design/domains/other/web-app.ts +157 -157
- package/augment-extensions/visual-design/domains/other/website.ts +161 -161
- package/augment-extensions/visual-design/domains/other/windows-platform.ts +156 -156
- package/augment-extensions/visual-design/domains/web-page-styles/amazon-cloudscape.ts +506 -506
- package/augment-extensions/visual-design/domains/web-page-styles/google-modern.ts +615 -615
- package/augment-extensions/visual-design/domains/web-page-styles/microsoft-fluent.ts +531 -531
- package/augment-extensions/visual-design/examples/README.md +97 -97
- package/augment-extensions/visual-design/examples/ai-prompt-generation.md +233 -233
- package/augment-extensions/visual-design/examples/basic-usage.md +216 -216
- package/augment-extensions/visual-design/examples/domain-workflows.md +257 -257
- package/augment-extensions/visual-design/examples/vendor-comparison.md +247 -247
- package/augment-extensions/visual-design/module.json +78 -78
- package/augment-extensions/visual-design/style-selector.ts +177 -177
- package/augment-extensions/visual-design/types.ts +302 -302
- package/augment-extensions/visual-design/visual-design-core.ts +469 -469
- package/augment-extensions/workflows/adr-support/README.md +227 -227
- package/augment-extensions/workflows/adr-support/__tests__/adr-validator.test.ts +203 -203
- package/augment-extensions/workflows/adr-support/adr-validator.ts +162 -162
- package/augment-extensions/workflows/adr-support/examples/complete-lifecycle-example.md +449 -449
- package/augment-extensions/workflows/adr-support/examples/integration-example.md +580 -580
- package/augment-extensions/workflows/adr-support/examples/superseding-example.md +436 -436
- package/augment-extensions/workflows/adr-support/module.json +112 -112
- package/augment-extensions/workflows/adr-support/rules/adr-creation.md +372 -372
- package/augment-extensions/workflows/adr-support/rules/beads-integration.md +443 -443
- package/augment-extensions/workflows/adr-support/rules/conflict-detection.md +486 -486
- package/augment-extensions/workflows/adr-support/rules/decision-detection.md +362 -362
- package/augment-extensions/workflows/adr-support/rules/lifecycle-management.md +427 -427
- package/augment-extensions/workflows/adr-support/rules/openspec-integration.md +465 -465
- package/augment-extensions/workflows/adr-support/rules/template-selection.md +405 -405
- package/augment-extensions/workflows/adr-support/rules/validation-rules.md +543 -543
- package/augment-extensions/workflows/adr-support/schemas/adr-config.json +191 -191
- package/augment-extensions/workflows/adr-support/schemas/adr-metadata.json +172 -172
- package/augment-extensions/workflows/adr-support/templates/business-case.md +235 -235
- package/augment-extensions/workflows/adr-support/templates/madr-elaborate.md +197 -197
- package/augment-extensions/workflows/adr-support/templates/madr-simple.md +68 -68
- package/augment-extensions/workflows/adr-support/templates/nygard.md +84 -84
- package/augment-extensions/writing-standards/screenplay/rules/file-organization.md +213 -213
- package/augment-extensions/writing-standards/screenplay/utils/__tests__/file-organization.test.ts +169 -169
- package/augment-extensions/writing-standards/screenplay/utils/file-organization.ts +165 -165
- package/cli/dist/commands/agent.d.ts +37 -0
- package/cli/dist/commands/agent.d.ts.map +1 -0
- package/cli/dist/commands/agent.js +222 -0
- package/cli/dist/commands/agent.js.map +1 -0
- package/cli/dist/commands/beads.d.ts +64 -0
- package/cli/dist/commands/beads.d.ts.map +1 -0
- package/cli/dist/commands/beads.js +377 -0
- package/cli/dist/commands/beads.js.map +1 -0
- package/cli/dist/commands/change.d.ts +54 -0
- package/cli/dist/commands/change.d.ts.map +1 -0
- package/cli/dist/commands/change.js +243 -0
- package/cli/dist/commands/change.js.map +1 -0
- package/cli/dist/commands/clean.d.ts +15 -0
- package/cli/dist/commands/clean.d.ts.map +1 -0
- package/cli/dist/commands/clean.js +63 -0
- package/cli/dist/commands/clean.js.map +1 -0
- package/cli/dist/commands/clone.d.ts +15 -0
- package/cli/dist/commands/clone.d.ts.map +1 -0
- package/cli/dist/commands/clone.js +49 -0
- package/cli/dist/commands/clone.js.map +1 -0
- package/cli/dist/commands/config.d.ts +33 -0
- package/cli/dist/commands/config.d.ts.map +1 -0
- package/cli/dist/commands/config.js +166 -0
- package/cli/dist/commands/config.js.map +1 -0
- package/cli/dist/commands/context.d.ts +38 -0
- package/cli/dist/commands/context.d.ts.map +1 -0
- package/cli/dist/commands/context.js +205 -0
- package/cli/dist/commands/context.js.map +1 -0
- package/cli/dist/commands/create.d.ts +18 -0
- package/cli/dist/commands/create.d.ts.map +1 -0
- package/cli/dist/commands/create.js +178 -0
- package/cli/dist/commands/create.js.map +1 -0
- package/cli/dist/commands/diff.d.ts +19 -0
- package/cli/dist/commands/diff.d.ts.map +1 -0
- package/cli/dist/commands/diff.js +104 -0
- package/cli/dist/commands/diff.js.map +1 -0
- package/cli/dist/commands/doctor.d.ts +14 -0
- package/cli/dist/commands/doctor.d.ts.map +1 -0
- package/cli/dist/commands/doctor.js +62 -0
- package/cli/dist/commands/doctor.js.map +1 -0
- package/cli/dist/commands/export.d.ts +28 -0
- package/cli/dist/commands/export.d.ts.map +1 -0
- package/cli/dist/commands/export.js +135 -0
- package/cli/dist/commands/export.js.map +1 -0
- package/cli/dist/commands/import.d.ts +23 -0
- package/cli/dist/commands/import.d.ts.map +1 -0
- package/cli/dist/commands/import.js +118 -0
- package/cli/dist/commands/import.js.map +1 -0
- package/cli/dist/commands/prompt.d.ts +45 -0
- package/cli/dist/commands/prompt.d.ts.map +1 -0
- package/cli/dist/commands/prompt.js +223 -0
- package/cli/dist/commands/prompt.js.map +1 -0
- package/cli/dist/commands/spec.d.ts +57 -0
- package/cli/dist/commands/spec.d.ts.map +1 -0
- package/cli/dist/commands/spec.js +279 -0
- package/cli/dist/commands/spec.js.map +1 -0
- package/cli/dist/commands/stats.d.ts +18 -0
- package/cli/dist/commands/stats.d.ts.map +1 -0
- package/cli/dist/commands/stats.js +85 -0
- package/cli/dist/commands/stats.js.map +1 -0
- package/cli/dist/commands/task.d.ts +65 -0
- package/cli/dist/commands/task.d.ts.map +1 -0
- package/cli/dist/commands/task.js +282 -0
- package/cli/dist/commands/task.js.map +1 -0
- package/cli/dist/commands/template.d.ts +17 -0
- package/cli/dist/commands/template.d.ts.map +1 -0
- package/cli/dist/commands/template.js +55 -0
- package/cli/dist/commands/template.js.map +1 -0
- package/cli/dist/utils/agent-config.d.ts +129 -0
- package/cli/dist/utils/agent-config.d.ts.map +1 -0
- package/cli/dist/utils/agent-config.js +297 -0
- package/cli/dist/utils/agent-config.js.map +1 -0
- package/cli/dist/utils/auto-sync.js +19 -19
- package/cli/dist/utils/beads-graph.d.ts +17 -0
- package/cli/dist/utils/beads-graph.d.ts.map +1 -0
- package/cli/dist/utils/beads-graph.js +150 -0
- package/cli/dist/utils/beads-graph.js.map +1 -0
- package/cli/dist/utils/beads-integration.d.ts +112 -0
- package/cli/dist/utils/beads-integration.d.ts.map +1 -0
- package/cli/dist/utils/beads-integration.js +312 -0
- package/cli/dist/utils/beads-integration.js.map +1 -0
- package/cli/dist/utils/beads-reporter.d.ts +17 -0
- package/cli/dist/utils/beads-reporter.d.ts.map +1 -0
- package/cli/dist/utils/beads-reporter.js +160 -0
- package/cli/dist/utils/beads-reporter.js.map +1 -0
- package/cli/dist/utils/cache-manager.d.ts +55 -0
- package/cli/dist/utils/cache-manager.d.ts.map +1 -0
- package/cli/dist/utils/cache-manager.js +150 -0
- package/cli/dist/utils/cache-manager.js.map +1 -0
- package/cli/dist/utils/change-manager.d.ts +70 -0
- package/cli/dist/utils/change-manager.d.ts.map +1 -0
- package/cli/dist/utils/change-manager.js +412 -0
- package/cli/dist/utils/change-manager.js.map +1 -0
- package/cli/dist/utils/config-manager-enhanced.d.ts +66 -0
- package/cli/dist/utils/config-manager-enhanced.d.ts.map +1 -0
- package/cli/dist/utils/config-manager-enhanced.js +77 -0
- package/cli/dist/utils/config-manager-enhanced.js.map +1 -0
- package/cli/dist/utils/context-manager.d.ts +96 -0
- package/cli/dist/utils/context-manager.d.ts.map +1 -0
- package/cli/dist/utils/context-manager.js +258 -0
- package/cli/dist/utils/context-manager.js.map +1 -0
- package/cli/dist/utils/diff-engine.d.ts +78 -0
- package/cli/dist/utils/diff-engine.d.ts.map +1 -0
- package/cli/dist/utils/diff-engine.js +233 -0
- package/cli/dist/utils/diff-engine.js.map +1 -0
- package/cli/dist/utils/export-system.d.ts +101 -0
- package/cli/dist/utils/export-system.d.ts.map +1 -0
- package/cli/dist/utils/export-system.js +289 -0
- package/cli/dist/utils/export-system.js.map +1 -0
- package/cli/dist/utils/health-checker.d.ts +66 -0
- package/cli/dist/utils/health-checker.d.ts.map +1 -0
- package/cli/dist/utils/health-checker.js +285 -0
- package/cli/dist/utils/health-checker.js.map +1 -0
- package/cli/dist/utils/import-system.d.ts +74 -0
- package/cli/dist/utils/import-system.d.ts.map +1 -0
- package/cli/dist/utils/import-system.js +317 -0
- package/cli/dist/utils/import-system.js.map +1 -0
- package/cli/dist/utils/module-cloner.d.ts +40 -0
- package/cli/dist/utils/module-cloner.d.ts.map +1 -0
- package/cli/dist/utils/module-cloner.js +136 -0
- package/cli/dist/utils/module-cloner.js.map +1 -0
- package/cli/dist/utils/prompt-manager.d.ts +90 -0
- package/cli/dist/utils/prompt-manager.d.ts.map +1 -0
- package/cli/dist/utils/prompt-manager.js +302 -0
- package/cli/dist/utils/prompt-manager.js.map +1 -0
- package/cli/dist/utils/spec-manager.d.ts +65 -0
- package/cli/dist/utils/spec-manager.d.ts.map +1 -0
- package/cli/dist/utils/spec-manager.js +329 -0
- package/cli/dist/utils/spec-manager.js.map +1 -0
- package/cli/dist/utils/stats-collector.d.ts +74 -0
- package/cli/dist/utils/stats-collector.d.ts.map +1 -0
- package/cli/dist/utils/stats-collector.js +164 -0
- package/cli/dist/utils/stats-collector.js.map +1 -0
- package/cli/dist/utils/template-engine.d.ts +47 -0
- package/cli/dist/utils/template-engine.d.ts.map +1 -0
- package/cli/dist/utils/template-engine.js +204 -0
- package/cli/dist/utils/template-engine.js.map +1 -0
- package/package.json +12 -3
- package/augment-extensions/workflows/openspec/README.md +0 -96
- package/augment-extensions/workflows/openspec/examples/complete-change-example.md +0 -244
- package/augment-extensions/workflows/openspec/module.json +0 -54
- package/augment-extensions/workflows/openspec/rules/best-practices.md +0 -272
- package/augment-extensions/workflows/openspec/rules/manual-setup.md +0 -231
- package/augment-extensions/workflows/openspec/rules/spec-format.md +0 -236
- package/augment-extensions/workflows/openspec/rules/workflow.md +0 -214
- package/cli/dist/utils/__tests__/adr-validator.example.d.ts +0 -6
- package/cli/dist/utils/__tests__/adr-validator.example.d.ts.map +0 -1
- package/cli/dist/utils/__tests__/adr-validator.example.js +0 -148
- package/cli/dist/utils/__tests__/adr-validator.example.js.map +0 -1
- package/cli/dist/utils/adr-validator.d.ts +0 -65
- package/cli/dist/utils/adr-validator.d.ts.map +0 -1
- package/cli/dist/utils/adr-validator.js +0 -203
- package/cli/dist/utils/adr-validator.js.map +0 -1
|
@@ -1,227 +1,227 @@
|
|
|
1
|
-
# ADR Support Module
|
|
2
|
-
|
|
3
|
-
**Version:** 1.0.0
|
|
4
|
-
**Type:** Workflow
|
|
5
|
-
**Category:** Architecture Documentation & Decision Management
|
|
6
|
-
|
|
7
|
-
## Overview
|
|
8
|
-
|
|
9
|
-
The ADR Support module enables Augment AI agents to **automatically** manage Architecture Decision Records (ADRs) throughout the software development lifecycle. This module transforms ADR management from a manual documentation task into an automated knowledge management system embedded in the development workflow.
|
|
10
|
-
|
|
11
|
-
## Purpose
|
|
12
|
-
|
|
13
|
-
This module enables AI agents to:
|
|
14
|
-
|
|
15
|
-
- ✅ **Detect** when architectural decisions are being made
|
|
16
|
-
- ✅ **Create** ADRs using appropriate templates
|
|
17
|
-
- ✅ **Track** ADR lifecycle and status transitions
|
|
18
|
-
- ✅ **Update** ADRs with new information while maintaining immutability
|
|
19
|
-
- ✅ **Supersede** outdated decisions with new ones
|
|
20
|
-
- ✅ **Validate** ADR completeness and compliance
|
|
21
|
-
- ✅ **Integrate** ADRs with OpenSpec specifications and Beads tasks
|
|
22
|
-
- ✅ **Review** decisions and compare planned vs actual outcomes
|
|
23
|
-
- ✅ **Detect** conflicts between decisions
|
|
24
|
-
|
|
25
|
-
## Supported Domains
|
|
26
|
-
|
|
27
|
-
This module applies to all project types:
|
|
28
|
-
|
|
29
|
-
- **Website** - Web presence and marketing sites
|
|
30
|
-
- **Web-app** - Web applications and SaaS platforms
|
|
31
|
-
- **OS Application** - Desktop applications
|
|
32
|
-
- **Linux** - Linux-specific applications
|
|
33
|
-
- **Windows** - Windows-specific applications
|
|
34
|
-
- **.NET** - .NET framework applications
|
|
35
|
-
- **Mobile** - Mobile applications (iOS, Android)
|
|
36
|
-
- **AI Prompt Helper** - AI/ML systems and prompt engineering
|
|
37
|
-
- **Motion Picture** - Video production and media workflows
|
|
38
|
-
- **Print Campaigns** - Print media and marketing materials
|
|
39
|
-
|
|
40
|
-
## Installation
|
|
41
|
-
|
|
42
|
-
### 1. Link the Module
|
|
43
|
-
|
|
44
|
-
```bash
|
|
45
|
-
augx link workflows/adr-support
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
### 2. Create ADR Directory
|
|
49
|
-
|
|
50
|
-
```bash
|
|
51
|
-
mkdir -p adr/templates
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
### 3. Copy Templates
|
|
55
|
-
|
|
56
|
-
```bash
|
|
57
|
-
cp augment-extensions/workflows/adr-support/templates/*.md adr/templates/
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
### 4. Create Configuration
|
|
61
|
-
|
|
62
|
-
Create `.adr-config.json` in your project root:
|
|
63
|
-
|
|
64
|
-
```json
|
|
65
|
-
{
|
|
66
|
-
"adrDirectory": "adr",
|
|
67
|
-
"defaultTemplate": "nygard",
|
|
68
|
-
"numberFormat": "0000",
|
|
69
|
-
"statusTypes": ["draft", "proposed", "approved", "implemented", "maintained", "superseded", "sunset"],
|
|
70
|
-
"reviewPeriodDays": 30,
|
|
71
|
-
"integration": {
|
|
72
|
-
"openspec": { "enabled": true, "specsDirectory": "openspec/specs" },
|
|
73
|
-
"beads": { "enabled": true, "issuesFile": ".beads/issues.jsonl" },
|
|
74
|
-
"git": { "enabled": true, "commitMessagePrefix": "ADR" }
|
|
75
|
-
},
|
|
76
|
-
"validation": {
|
|
77
|
-
"requireContext": true,
|
|
78
|
-
"requireDecision": true,
|
|
79
|
-
"requireConsequences": true,
|
|
80
|
-
"enforceStatusTransitions": true
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
## Directory Structure
|
|
86
|
-
|
|
87
|
-
```
|
|
88
|
-
repository-root/
|
|
89
|
-
├── adr/ # ADR directory
|
|
90
|
-
│ ├── README.md # ADL overview and index
|
|
91
|
-
│ ├── 0001-use-markdown.md # ADR files
|
|
92
|
-
│ ├── 0002-choose-database.md
|
|
93
|
-
│ ├── templates/ # Template directory
|
|
94
|
-
│ │ ├── nygard.md
|
|
95
|
-
│ │ ├── madr-simple.md
|
|
96
|
-
│ │ ├── madr-elaborate.md
|
|
97
|
-
│ │ └── business-case.md
|
|
98
|
-
│ └── .adr-config.json # Configuration
|
|
99
|
-
├── openspec/ # OpenSpec integration
|
|
100
|
-
│ └── specs/
|
|
101
|
-
│ └── [specs linked to ADRs]
|
|
102
|
-
└── .beads/ # Beads integration
|
|
103
|
-
└── issues.jsonl # Tasks linked to ADRs
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
## Features
|
|
107
|
-
|
|
108
|
-
### 1. Automatic Decision Detection
|
|
109
|
-
|
|
110
|
-
The AI agent monitors:
|
|
111
|
-
- Code changes (dependencies, schemas, APIs, infrastructure)
|
|
112
|
-
- Conversation triggers ("we should use...", "let's switch to...")
|
|
113
|
-
- OpenSpec spec creation/modification
|
|
114
|
-
- Significance criteria (affects multiple components, impacts NFRs, etc.)
|
|
115
|
-
|
|
116
|
-
### 2. ADR Creation & Templates
|
|
117
|
-
|
|
118
|
-
Four templates available:
|
|
119
|
-
- **Michael Nygard** (default) - Standard ADR format
|
|
120
|
-
- **MADR Simple** - Straightforward decisions
|
|
121
|
-
- **MADR Elaborate** - Complex decisions with multiple options
|
|
122
|
-
- **Business Case** - Cost/ROI analysis decisions
|
|
123
|
-
|
|
124
|
-
### 3. Lifecycle Management
|
|
125
|
-
|
|
126
|
-
```
|
|
127
|
-
draft → proposed → approved → implemented → maintained
|
|
128
|
-
↓
|
|
129
|
-
superseded/sunset
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
### 4. OpenSpec Integration
|
|
133
|
-
|
|
134
|
-
- Link ADRs to specifications
|
|
135
|
-
- Cross-reference in both directions
|
|
136
|
-
- Update coordination manifest
|
|
137
|
-
- Suggest spec updates when ADRs superseded
|
|
138
|
-
|
|
139
|
-
### 5. Beads Integration
|
|
140
|
-
|
|
141
|
-
- Create tasks for ADR implementation
|
|
142
|
-
- Link tasks to ADRs
|
|
143
|
-
- Update ADR status when tasks complete
|
|
144
|
-
- Track implementation progress
|
|
145
|
-
|
|
146
|
-
### 6. Validation & Quality
|
|
147
|
-
|
|
148
|
-
- Required sections check
|
|
149
|
-
- Status transition validation
|
|
150
|
-
- Reference validation
|
|
151
|
-
- Completeness criteria
|
|
152
|
-
|
|
153
|
-
### 7. Review & Outcomes
|
|
154
|
-
|
|
155
|
-
- Schedule reviews after implementation
|
|
156
|
-
- Compare planned vs actual outcomes
|
|
157
|
-
- Generate review templates
|
|
158
|
-
- Suggest superseding if needed
|
|
159
|
-
|
|
160
|
-
## Contents
|
|
161
|
-
|
|
162
|
-
### Rules (8 files)
|
|
163
|
-
- `decision-detection.md` - How AI agents detect architectural decisions
|
|
164
|
-
- `adr-creation.md` - ADR creation process and automation
|
|
165
|
-
- `lifecycle-management.md` - ADR lifecycle and status transitions
|
|
166
|
-
- `template-selection.md` - Template selection logic
|
|
167
|
-
- `validation.md` - Validation and completeness checks
|
|
168
|
-
- `openspec-integration.md` - OpenSpec integration patterns
|
|
169
|
-
- `beads-integration.md` - Beads integration patterns
|
|
170
|
-
- `conflict-detection.md` - Conflict detection and resolution
|
|
171
|
-
|
|
172
|
-
### Templates (4 files)
|
|
173
|
-
- `nygard.md` - Michael Nygard template
|
|
174
|
-
- `madr-simple.md` - MADR Simple template
|
|
175
|
-
- `madr-elaborate.md` - MADR Elaborate template
|
|
176
|
-
- `business-case.md` - Business Case template
|
|
177
|
-
|
|
178
|
-
### Examples (3 files)
|
|
179
|
-
- `complete-lifecycle-example.md` - Full lifecycle demonstration
|
|
180
|
-
- `superseding-example.md` - Superseding workflow
|
|
181
|
-
- `integration-example.md` - OpenSpec + Beads integration
|
|
182
|
-
|
|
183
|
-
### Schemas (2 files)
|
|
184
|
-
- `adr-config.json` - Configuration schema
|
|
185
|
-
- `adr-metadata.json` - Metadata schema
|
|
186
|
-
|
|
187
|
-
## Usage
|
|
188
|
-
|
|
189
|
-
The AI agent operates automatically. When it detects an architectural decision:
|
|
190
|
-
|
|
191
|
-
```
|
|
192
|
-
User: "I think we should use Redis for caching instead of Memcached"
|
|
193
|
-
|
|
194
|
-
AI: "I've detected an architectural decision about caching technology.
|
|
195
|
-
This affects:
|
|
196
|
-
- Performance (caching strategy)
|
|
197
|
-
- Infrastructure (new dependency)
|
|
198
|
-
- Multiple components (user service, product service)
|
|
199
|
-
|
|
200
|
-
Should I create an ADR? [Yes/No]"
|
|
201
|
-
|
|
202
|
-
User: "Yes"
|
|
203
|
-
|
|
204
|
-
AI: "Creating ADR 0044: Choose Redis for caching layer
|
|
205
|
-
Template: MADR Elaborate
|
|
206
|
-
Status: draft
|
|
207
|
-
Tags: caching, infrastructure, performance
|
|
208
|
-
|
|
209
|
-
I've pre-filled the context and options sections.
|
|
210
|
-
Please review and add details."
|
|
211
|
-
```
|
|
212
|
-
|
|
213
|
-
## Dependencies
|
|
214
|
-
|
|
215
|
-
- `workflows/openspec` >= 1.0.0
|
|
216
|
-
- `workflows/beads` >= 1.0.0
|
|
217
|
-
|
|
218
|
-
## References
|
|
219
|
-
|
|
220
|
-
- **ADR Framework:** https://github.com/joelparkerhenderson/architecture-decision-record
|
|
221
|
-
- **OpenSpec:** https://github.com/Fission-AI/OpenSpec.git
|
|
222
|
-
- **Beads:** https://github.com/steveyegge/beads.git
|
|
223
|
-
|
|
224
|
-
## License
|
|
225
|
-
|
|
226
|
-
Part of Augment Extensions - see repository root for license information.
|
|
227
|
-
|
|
1
|
+
# ADR Support Module
|
|
2
|
+
|
|
3
|
+
**Version:** 1.0.0
|
|
4
|
+
**Type:** Workflow
|
|
5
|
+
**Category:** Architecture Documentation & Decision Management
|
|
6
|
+
|
|
7
|
+
## Overview
|
|
8
|
+
|
|
9
|
+
The ADR Support module enables Augment AI agents to **automatically** manage Architecture Decision Records (ADRs) throughout the software development lifecycle. This module transforms ADR management from a manual documentation task into an automated knowledge management system embedded in the development workflow.
|
|
10
|
+
|
|
11
|
+
## Purpose
|
|
12
|
+
|
|
13
|
+
This module enables AI agents to:
|
|
14
|
+
|
|
15
|
+
- ✅ **Detect** when architectural decisions are being made
|
|
16
|
+
- ✅ **Create** ADRs using appropriate templates
|
|
17
|
+
- ✅ **Track** ADR lifecycle and status transitions
|
|
18
|
+
- ✅ **Update** ADRs with new information while maintaining immutability
|
|
19
|
+
- ✅ **Supersede** outdated decisions with new ones
|
|
20
|
+
- ✅ **Validate** ADR completeness and compliance
|
|
21
|
+
- ✅ **Integrate** ADRs with OpenSpec specifications and Beads tasks
|
|
22
|
+
- ✅ **Review** decisions and compare planned vs actual outcomes
|
|
23
|
+
- ✅ **Detect** conflicts between decisions
|
|
24
|
+
|
|
25
|
+
## Supported Domains
|
|
26
|
+
|
|
27
|
+
This module applies to all project types:
|
|
28
|
+
|
|
29
|
+
- **Website** - Web presence and marketing sites
|
|
30
|
+
- **Web-app** - Web applications and SaaS platforms
|
|
31
|
+
- **OS Application** - Desktop applications
|
|
32
|
+
- **Linux** - Linux-specific applications
|
|
33
|
+
- **Windows** - Windows-specific applications
|
|
34
|
+
- **.NET** - .NET framework applications
|
|
35
|
+
- **Mobile** - Mobile applications (iOS, Android)
|
|
36
|
+
- **AI Prompt Helper** - AI/ML systems and prompt engineering
|
|
37
|
+
- **Motion Picture** - Video production and media workflows
|
|
38
|
+
- **Print Campaigns** - Print media and marketing materials
|
|
39
|
+
|
|
40
|
+
## Installation
|
|
41
|
+
|
|
42
|
+
### 1. Link the Module
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
augx link workflows/adr-support
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### 2. Create ADR Directory
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
mkdir -p adr/templates
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### 3. Copy Templates
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
cp augment-extensions/workflows/adr-support/templates/*.md adr/templates/
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### 4. Create Configuration
|
|
61
|
+
|
|
62
|
+
Create `.adr-config.json` in your project root:
|
|
63
|
+
|
|
64
|
+
```json
|
|
65
|
+
{
|
|
66
|
+
"adrDirectory": "adr",
|
|
67
|
+
"defaultTemplate": "nygard",
|
|
68
|
+
"numberFormat": "0000",
|
|
69
|
+
"statusTypes": ["draft", "proposed", "approved", "implemented", "maintained", "superseded", "sunset"],
|
|
70
|
+
"reviewPeriodDays": 30,
|
|
71
|
+
"integration": {
|
|
72
|
+
"openspec": { "enabled": true, "specsDirectory": "openspec/specs" },
|
|
73
|
+
"beads": { "enabled": true, "issuesFile": ".beads/issues.jsonl" },
|
|
74
|
+
"git": { "enabled": true, "commitMessagePrefix": "ADR" }
|
|
75
|
+
},
|
|
76
|
+
"validation": {
|
|
77
|
+
"requireContext": true,
|
|
78
|
+
"requireDecision": true,
|
|
79
|
+
"requireConsequences": true,
|
|
80
|
+
"enforceStatusTransitions": true
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## Directory Structure
|
|
86
|
+
|
|
87
|
+
```
|
|
88
|
+
repository-root/
|
|
89
|
+
├── adr/ # ADR directory
|
|
90
|
+
│ ├── README.md # ADL overview and index
|
|
91
|
+
│ ├── 0001-use-markdown.md # ADR files
|
|
92
|
+
│ ├── 0002-choose-database.md
|
|
93
|
+
│ ├── templates/ # Template directory
|
|
94
|
+
│ │ ├── nygard.md
|
|
95
|
+
│ │ ├── madr-simple.md
|
|
96
|
+
│ │ ├── madr-elaborate.md
|
|
97
|
+
│ │ └── business-case.md
|
|
98
|
+
│ └── .adr-config.json # Configuration
|
|
99
|
+
├── openspec/ # OpenSpec integration
|
|
100
|
+
│ └── specs/
|
|
101
|
+
│ └── [specs linked to ADRs]
|
|
102
|
+
└── .beads/ # Beads integration
|
|
103
|
+
└── issues.jsonl # Tasks linked to ADRs
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## Features
|
|
107
|
+
|
|
108
|
+
### 1. Automatic Decision Detection
|
|
109
|
+
|
|
110
|
+
The AI agent monitors:
|
|
111
|
+
- Code changes (dependencies, schemas, APIs, infrastructure)
|
|
112
|
+
- Conversation triggers ("we should use...", "let's switch to...")
|
|
113
|
+
- OpenSpec spec creation/modification
|
|
114
|
+
- Significance criteria (affects multiple components, impacts NFRs, etc.)
|
|
115
|
+
|
|
116
|
+
### 2. ADR Creation & Templates
|
|
117
|
+
|
|
118
|
+
Four templates available:
|
|
119
|
+
- **Michael Nygard** (default) - Standard ADR format
|
|
120
|
+
- **MADR Simple** - Straightforward decisions
|
|
121
|
+
- **MADR Elaborate** - Complex decisions with multiple options
|
|
122
|
+
- **Business Case** - Cost/ROI analysis decisions
|
|
123
|
+
|
|
124
|
+
### 3. Lifecycle Management
|
|
125
|
+
|
|
126
|
+
```
|
|
127
|
+
draft → proposed → approved → implemented → maintained
|
|
128
|
+
↓
|
|
129
|
+
superseded/sunset
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### 4. OpenSpec Integration
|
|
133
|
+
|
|
134
|
+
- Link ADRs to specifications
|
|
135
|
+
- Cross-reference in both directions
|
|
136
|
+
- Update coordination manifest
|
|
137
|
+
- Suggest spec updates when ADRs superseded
|
|
138
|
+
|
|
139
|
+
### 5. Beads Integration
|
|
140
|
+
|
|
141
|
+
- Create tasks for ADR implementation
|
|
142
|
+
- Link tasks to ADRs
|
|
143
|
+
- Update ADR status when tasks complete
|
|
144
|
+
- Track implementation progress
|
|
145
|
+
|
|
146
|
+
### 6. Validation & Quality
|
|
147
|
+
|
|
148
|
+
- Required sections check
|
|
149
|
+
- Status transition validation
|
|
150
|
+
- Reference validation
|
|
151
|
+
- Completeness criteria
|
|
152
|
+
|
|
153
|
+
### 7. Review & Outcomes
|
|
154
|
+
|
|
155
|
+
- Schedule reviews after implementation
|
|
156
|
+
- Compare planned vs actual outcomes
|
|
157
|
+
- Generate review templates
|
|
158
|
+
- Suggest superseding if needed
|
|
159
|
+
|
|
160
|
+
## Contents
|
|
161
|
+
|
|
162
|
+
### Rules (8 files)
|
|
163
|
+
- `decision-detection.md` - How AI agents detect architectural decisions
|
|
164
|
+
- `adr-creation.md` - ADR creation process and automation
|
|
165
|
+
- `lifecycle-management.md` - ADR lifecycle and status transitions
|
|
166
|
+
- `template-selection.md` - Template selection logic
|
|
167
|
+
- `validation.md` - Validation and completeness checks
|
|
168
|
+
- `openspec-integration.md` - OpenSpec integration patterns
|
|
169
|
+
- `beads-integration.md` - Beads integration patterns
|
|
170
|
+
- `conflict-detection.md` - Conflict detection and resolution
|
|
171
|
+
|
|
172
|
+
### Templates (4 files)
|
|
173
|
+
- `nygard.md` - Michael Nygard template
|
|
174
|
+
- `madr-simple.md` - MADR Simple template
|
|
175
|
+
- `madr-elaborate.md` - MADR Elaborate template
|
|
176
|
+
- `business-case.md` - Business Case template
|
|
177
|
+
|
|
178
|
+
### Examples (3 files)
|
|
179
|
+
- `complete-lifecycle-example.md` - Full lifecycle demonstration
|
|
180
|
+
- `superseding-example.md` - Superseding workflow
|
|
181
|
+
- `integration-example.md` - OpenSpec + Beads integration
|
|
182
|
+
|
|
183
|
+
### Schemas (2 files)
|
|
184
|
+
- `adr-config.json` - Configuration schema
|
|
185
|
+
- `adr-metadata.json` - Metadata schema
|
|
186
|
+
|
|
187
|
+
## Usage
|
|
188
|
+
|
|
189
|
+
The AI agent operates automatically. When it detects an architectural decision:
|
|
190
|
+
|
|
191
|
+
```
|
|
192
|
+
User: "I think we should use Redis for caching instead of Memcached"
|
|
193
|
+
|
|
194
|
+
AI: "I've detected an architectural decision about caching technology.
|
|
195
|
+
This affects:
|
|
196
|
+
- Performance (caching strategy)
|
|
197
|
+
- Infrastructure (new dependency)
|
|
198
|
+
- Multiple components (user service, product service)
|
|
199
|
+
|
|
200
|
+
Should I create an ADR? [Yes/No]"
|
|
201
|
+
|
|
202
|
+
User: "Yes"
|
|
203
|
+
|
|
204
|
+
AI: "Creating ADR 0044: Choose Redis for caching layer
|
|
205
|
+
Template: MADR Elaborate
|
|
206
|
+
Status: draft
|
|
207
|
+
Tags: caching, infrastructure, performance
|
|
208
|
+
|
|
209
|
+
I've pre-filled the context and options sections.
|
|
210
|
+
Please review and add details."
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
## Dependencies
|
|
214
|
+
|
|
215
|
+
- `workflows/openspec` >= 1.0.0
|
|
216
|
+
- `workflows/beads` >= 1.0.0
|
|
217
|
+
|
|
218
|
+
## References
|
|
219
|
+
|
|
220
|
+
- **ADR Framework:** https://github.com/joelparkerhenderson/architecture-decision-record
|
|
221
|
+
- **OpenSpec:** https://github.com/Fission-AI/OpenSpec.git
|
|
222
|
+
- **Beads:** https://github.com/steveyegge/beads.git
|
|
223
|
+
|
|
224
|
+
## License
|
|
225
|
+
|
|
226
|
+
Part of Augment Extensions - see repository root for license information.
|
|
227
|
+
|