@mytechtoday/augment-extensions 1.2.2 → 1.3.1

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.
Files changed (87) hide show
  1. package/LICENSE +22 -22
  2. package/augment-extensions/domain-rules/software-architecture/README.md +143 -143
  3. package/augment-extensions/domain-rules/software-architecture/examples/banking-layered.md +961 -961
  4. package/augment-extensions/domain-rules/software-architecture/examples/ecommerce-microservices.md +990 -990
  5. package/augment-extensions/domain-rules/software-architecture/examples/iot-eventdriven.md +882 -882
  6. package/augment-extensions/domain-rules/software-architecture/examples/monolith-to-microservices-migration.md +703 -703
  7. package/augment-extensions/domain-rules/software-architecture/examples/serverless-imageprocessing.md +957 -957
  8. package/augment-extensions/domain-rules/software-architecture/examples/trading-eventdriven.md +747 -747
  9. package/augment-extensions/domain-rules/software-architecture/module.json +119 -119
  10. package/augment-extensions/domain-rules/software-architecture/rules/challenges-solutions.md +763 -763
  11. package/augment-extensions/domain-rules/software-architecture/rules/definitions-terminology.md +409 -409
  12. package/augment-extensions/domain-rules/software-architecture/rules/design-principles.md +684 -684
  13. package/augment-extensions/domain-rules/software-architecture/rules/evaluation-testing.md +1381 -1381
  14. package/augment-extensions/domain-rules/software-architecture/rules/event-driven-architecture.md +616 -616
  15. package/augment-extensions/domain-rules/software-architecture/rules/fundamentals.md +306 -306
  16. package/augment-extensions/domain-rules/software-architecture/rules/industry-architectures.md +554 -554
  17. package/augment-extensions/domain-rules/software-architecture/rules/layered-architecture.md +776 -776
  18. package/augment-extensions/domain-rules/software-architecture/rules/microservices-architecture.md +503 -503
  19. package/augment-extensions/domain-rules/software-architecture/rules/modeling-documentation.md +1199 -1199
  20. package/augment-extensions/domain-rules/software-architecture/rules/monolithic-architecture.md +351 -351
  21. package/augment-extensions/domain-rules/software-architecture/rules/principles.md +556 -556
  22. package/augment-extensions/domain-rules/software-architecture/rules/quality-attributes.md +797 -797
  23. package/augment-extensions/domain-rules/software-architecture/rules/scalability-performance.md +1345 -1345
  24. package/augment-extensions/domain-rules/software-architecture/rules/security-architecture.md +1039 -1039
  25. package/augment-extensions/domain-rules/software-architecture/rules/serverless-architecture.md +711 -711
  26. package/augment-extensions/domain-rules/software-architecture/rules/skills-development.md +568 -568
  27. package/augment-extensions/domain-rules/software-architecture/rules/tools-methodologies.md +961 -961
  28. package/augment-extensions/visual-design/CHANGELOG.md +132 -0
  29. package/augment-extensions/visual-design/README.md +255 -0
  30. package/augment-extensions/visual-design/__tests__/README.md +119 -0
  31. package/augment-extensions/visual-design/__tests__/style-selector.test.ts +172 -0
  32. package/augment-extensions/visual-design/__tests__/vendor-styles.test.ts +214 -0
  33. package/augment-extensions/visual-design/domains/other/ai-prompt-helper.ts +157 -0
  34. package/augment-extensions/visual-design/domains/other/dotnet-application.ts +156 -0
  35. package/augment-extensions/visual-design/domains/other/linux-platform.ts +156 -0
  36. package/augment-extensions/visual-design/domains/other/mobile-application.ts +157 -0
  37. package/augment-extensions/visual-design/domains/other/motion-picture.ts +156 -0
  38. package/augment-extensions/visual-design/domains/other/os-application.ts +156 -0
  39. package/augment-extensions/visual-design/domains/other/print-campaigns.ts +158 -0
  40. package/augment-extensions/visual-design/domains/other/web-app.ts +157 -0
  41. package/augment-extensions/visual-design/domains/other/website.ts +161 -0
  42. package/augment-extensions/visual-design/domains/other/windows-platform.ts +156 -0
  43. package/augment-extensions/visual-design/domains/web-page-styles/amazon-cloudscape.ts +506 -0
  44. package/augment-extensions/visual-design/domains/web-page-styles/google-modern.ts +615 -0
  45. package/augment-extensions/visual-design/domains/web-page-styles/microsoft-fluent.ts +531 -0
  46. package/augment-extensions/visual-design/examples/README.md +97 -0
  47. package/augment-extensions/visual-design/examples/ai-prompt-generation.md +233 -0
  48. package/augment-extensions/visual-design/examples/basic-usage.md +216 -0
  49. package/augment-extensions/visual-design/examples/domain-workflows.md +257 -0
  50. package/augment-extensions/visual-design/examples/vendor-comparison.md +247 -0
  51. package/augment-extensions/visual-design/module.json +78 -0
  52. package/augment-extensions/visual-design/style-selector.ts +177 -0
  53. package/augment-extensions/visual-design/types.ts +302 -0
  54. package/augment-extensions/visual-design/visual-design-core.ts +469 -0
  55. package/augment-extensions/workflows/adr-support/README.md +227 -0
  56. package/augment-extensions/workflows/adr-support/__tests__/adr-validator.test.ts +203 -0
  57. package/augment-extensions/workflows/adr-support/adr-validator.ts +162 -0
  58. package/augment-extensions/workflows/adr-support/examples/complete-lifecycle-example.md +449 -0
  59. package/augment-extensions/workflows/adr-support/examples/integration-example.md +580 -0
  60. package/augment-extensions/workflows/adr-support/examples/superseding-example.md +436 -0
  61. package/augment-extensions/workflows/adr-support/module.json +112 -0
  62. package/augment-extensions/workflows/adr-support/rules/adr-creation.md +372 -0
  63. package/augment-extensions/workflows/adr-support/rules/beads-integration.md +443 -0
  64. package/augment-extensions/workflows/adr-support/rules/conflict-detection.md +486 -0
  65. package/augment-extensions/workflows/adr-support/rules/decision-detection.md +362 -0
  66. package/augment-extensions/workflows/adr-support/rules/lifecycle-management.md +427 -0
  67. package/augment-extensions/workflows/adr-support/rules/openspec-integration.md +465 -0
  68. package/augment-extensions/workflows/adr-support/rules/template-selection.md +405 -0
  69. package/augment-extensions/workflows/adr-support/rules/validation-rules.md +543 -0
  70. package/augment-extensions/workflows/adr-support/schemas/adr-config.json +191 -0
  71. package/augment-extensions/workflows/adr-support/schemas/adr-metadata.json +172 -0
  72. package/augment-extensions/workflows/adr-support/templates/business-case.md +235 -0
  73. package/augment-extensions/workflows/adr-support/templates/madr-elaborate.md +197 -0
  74. package/augment-extensions/workflows/adr-support/templates/madr-simple.md +68 -0
  75. package/augment-extensions/workflows/adr-support/templates/nygard.md +84 -0
  76. package/augment-extensions/writing-standards/screenplay/rules/file-organization.md +213 -213
  77. package/augment-extensions/writing-standards/screenplay/utils/__tests__/file-organization.test.ts +169 -169
  78. package/augment-extensions/writing-standards/screenplay/utils/file-organization.ts +165 -165
  79. package/cli/dist/utils/auto-sync.js +19 -19
  80. package/package.json +5 -3
  81. package/augment-extensions/workflows/openspec/README.md +0 -96
  82. package/augment-extensions/workflows/openspec/examples/complete-change-example.md +0 -244
  83. package/augment-extensions/workflows/openspec/module.json +0 -54
  84. package/augment-extensions/workflows/openspec/rules/best-practices.md +0 -272
  85. package/augment-extensions/workflows/openspec/rules/manual-setup.md +0 -231
  86. package/augment-extensions/workflows/openspec/rules/spec-format.md +0 -236
  87. package/augment-extensions/workflows/openspec/rules/workflow.md +0 -214
@@ -1,213 +1,213 @@
1
- # Screenplay File Organization
2
-
3
- ## Purpose
4
-
5
- This document defines the file organization structure for screenplay projects generated using the `writing-standards/screenplay` module in Augment Extensions.
6
-
7
- ---
8
-
9
- ## Directory Structure
10
-
11
- ### Root Directory: `screenplays/`
12
-
13
- All screenplay projects are organized under a top-level `screenplays/` directory in the repository root.
14
-
15
- ```
16
- repository-root/
17
- ├── screenplays/ # Top-level screenplay directory
18
- │ ├── project-name-1/ # Individual screenplay project
19
- │ │ ├── screenplay.fountain
20
- │ │ ├── outline.md
21
- │ │ ├── characters/
22
- │ │ └── notes/
23
- │ ├── project-name-2/
24
- │ └── ...
25
- ├── .beads/
26
- ├── openspec/
27
- └── ...
28
- ```
29
-
30
- ---
31
-
32
- ## Project Naming Convention
33
-
34
- Project directories are named using the following priority:
35
-
36
- 1. **OpenSpec Spec Name** (highest priority)
37
- - If an active OpenSpec change exists, use the change directory name
38
- - Example: `openspec/changes/heist-movie/` → `screenplays/heist-movie/`
39
-
40
- 2. **Beads Epic ID** (second priority)
41
- - If a Beads epic with `screenplay` or `writing-standards` labels exists, use the epic ID
42
- - Example: Epic `bd-scr-org` → `screenplays/bd-scr-org/`
43
-
44
- 3. **Timestamp Fallback** (lowest priority)
45
- - If neither OpenSpec nor Beads context is available, use a timestamped name
46
- - Format: `screenplay-YYYY-MM-DD`
47
- - Example: `screenplays/screenplay-2026-02-03/`
48
-
49
- ---
50
-
51
- ## Conflict Resolution
52
-
53
- If a project directory already exists, the system handles conflicts using one of these strategies:
54
-
55
- ### Append Number (Default)
56
- ```
57
- screenplays/heist-movie/ # Original
58
- screenplays/heist-movie-1/ # First conflict
59
- screenplays/heist-movie-2/ # Second conflict
60
- ```
61
-
62
- ### Append Timestamp
63
- ```
64
- screenplays/heist-movie/ # Original
65
- screenplays/heist-movie-2026-02-03T14-30/ # Conflict with timestamp
66
- ```
67
-
68
- ### Error on Conflict
69
- Throw an error and require manual resolution.
70
-
71
- ---
72
-
73
- ## File Placement
74
-
75
- All screenplay-related files MUST be placed within the project directory:
76
-
77
- ### Primary Files
78
- - `screenplay.fountain` - Main screenplay in Fountain format
79
- - `screenplay.pdf` - Exported PDF (if generated)
80
- - `outline.md` - Story outline
81
-
82
- ### Supporting Directories
83
- - `characters/` - Character profiles and development
84
- - `notes/` - Research, brainstorming, and notes
85
- - `drafts/` - Previous versions and drafts
86
- - `assets/` - Images, references, and other media
87
-
88
- ### Example Structure
89
- ```
90
- screenplays/heist-movie/
91
- ├── screenplay.fountain # Main screenplay
92
- ├── outline.md # Story outline
93
- ├── beat-sheet.yaml # Save the Cat beat sheet
94
- ├── characters/
95
- │ ├── protagonist.yaml
96
- │ ├── antagonist.yaml
97
- │ └── supporting-cast.yaml
98
- ├── notes/
99
- │ ├── research.md
100
- │ ├── brainstorming.md
101
- │ └── feedback.md
102
- ├── drafts/
103
- │ ├── draft-1.fountain
104
- │ └── draft-2.fountain
105
- └── assets/
106
- ├── location-photos/
107
- └── character-sketches/
108
- ```
109
-
110
- ---
111
-
112
- ## Persistence During Cleanup
113
-
114
- The `screenplays/` directory and all its contents MUST be preserved during cleanup operations.
115
-
116
- ### Protected Paths
117
- - `screenplays/` (entire directory)
118
- - All subdirectories and files within `screenplays/`
119
-
120
- ### Cleanup Exemptions
121
- When running `augment-extensions self-remove` or similar cleanup commands:
122
- - ✅ Remove temporary augment-extensions files
123
- - ✅ Remove cached module data
124
- - ❌ **DO NOT** remove `screenplays/` directory
125
- - ❌ **DO NOT** remove any screenplay project directories
126
- - ❌ **DO NOT** remove any user-generated creative content
127
-
128
- ---
129
-
130
- ## Integration with Workflows
131
-
132
- ### OpenSpec Integration
133
- When creating a screenplay from an OpenSpec spec:
134
- 1. Read the spec name from `openspec/changes/[spec-name]/`
135
- 2. Create `screenplays/[spec-name]/`
136
- 3. Place all generated files in the project directory
137
- 4. Reference the spec in project metadata
138
-
139
- ### Beads Integration
140
- When creating a screenplay from a Beads epic:
141
- 1. Read the epic ID from `.beads/issues.jsonl`
142
- 2. Create `screenplays/[epic-id]/`
143
- 3. Track file creation in Beads comments
144
- 4. Link screenplay files to epic tasks
145
-
146
- ---
147
-
148
- ## Best Practices
149
-
150
- ### DO
151
- ✅ Always create `screenplays/` directory before generating files
152
- ✅ Use OpenSpec or Beads names when available
153
- ✅ Group all related files in the same project directory
154
- ✅ Use descriptive subdirectory names (`characters/`, `notes/`, etc.)
155
- ✅ Preserve the directory during cleanup operations
156
-
157
- ### DON'T
158
- ❌ Create screenplay files in the repository root
159
- ❌ Mix multiple screenplay projects in one directory
160
- ❌ Use special characters in directory names
161
- ❌ Delete `screenplays/` during cleanup
162
- ❌ Hardcode project names without checking OpenSpec/Beads
163
-
164
- ---
165
-
166
- ## Error Handling
167
-
168
- ### Missing Permissions
169
- If the system cannot create directories due to permissions:
170
- - Log an informative error message
171
- - Suggest running with appropriate permissions
172
- - Provide fallback location (e.g., user's home directory)
173
-
174
- ### Name Conflicts
175
- If a project directory already exists:
176
- - Apply the configured conflict resolution strategy
177
- - Log the resolution action
178
- - Continue with the new directory name
179
-
180
- ### Missing Context
181
- If neither OpenSpec nor Beads context is available:
182
- - Use timestamp-based naming
183
- - Log a warning suggesting manual renaming
184
- - Continue with generation
185
-
186
- ---
187
-
188
- ## Configuration
189
-
190
- Project-specific configuration can be set in `.augment/screenplay-config.json`:
191
-
192
- ```json
193
- {
194
- "fileOrganization": {
195
- "rootDir": "screenplays",
196
- "conflictResolution": "append-number",
197
- "autoCreateDirectories": true,
198
- "preserveOnCleanup": true
199
- }
200
- }
201
- ```
202
-
203
- ---
204
-
205
- ## Summary
206
-
207
- The screenplay file organization system ensures:
208
- - **Logical structure** - All screenplay files grouped by project
209
- - **Context awareness** - Names derived from OpenSpec/Beads
210
- - **Conflict resolution** - Automatic handling of duplicate names
211
- - **Persistence** - Creative content preserved during cleanup
212
- - **Integration** - Seamless workflow with OpenSpec and Beads
213
-
1
+ # Screenplay File Organization
2
+
3
+ ## Purpose
4
+
5
+ This document defines the file organization structure for screenplay projects generated using the `writing-standards/screenplay` module in Augment Extensions.
6
+
7
+ ---
8
+
9
+ ## Directory Structure
10
+
11
+ ### Root Directory: `screenplays/`
12
+
13
+ All screenplay projects are organized under a top-level `screenplays/` directory in the repository root.
14
+
15
+ ```
16
+ repository-root/
17
+ ├── screenplays/ # Top-level screenplay directory
18
+ │ ├── project-name-1/ # Individual screenplay project
19
+ │ │ ├── screenplay.fountain
20
+ │ │ ├── outline.md
21
+ │ │ ├── characters/
22
+ │ │ └── notes/
23
+ │ ├── project-name-2/
24
+ │ └── ...
25
+ ├── .beads/
26
+ ├── openspec/
27
+ └── ...
28
+ ```
29
+
30
+ ---
31
+
32
+ ## Project Naming Convention
33
+
34
+ Project directories are named using the following priority:
35
+
36
+ 1. **OpenSpec Spec Name** (highest priority)
37
+ - If an active OpenSpec change exists, use the change directory name
38
+ - Example: `openspec/changes/heist-movie/` → `screenplays/heist-movie/`
39
+
40
+ 2. **Beads Epic ID** (second priority)
41
+ - If a Beads epic with `screenplay` or `writing-standards` labels exists, use the epic ID
42
+ - Example: Epic `bd-scr-org` → `screenplays/bd-scr-org/`
43
+
44
+ 3. **Timestamp Fallback** (lowest priority)
45
+ - If neither OpenSpec nor Beads context is available, use a timestamped name
46
+ - Format: `screenplay-YYYY-MM-DD`
47
+ - Example: `screenplays/screenplay-2026-02-03/`
48
+
49
+ ---
50
+
51
+ ## Conflict Resolution
52
+
53
+ If a project directory already exists, the system handles conflicts using one of these strategies:
54
+
55
+ ### Append Number (Default)
56
+ ```
57
+ screenplays/heist-movie/ # Original
58
+ screenplays/heist-movie-1/ # First conflict
59
+ screenplays/heist-movie-2/ # Second conflict
60
+ ```
61
+
62
+ ### Append Timestamp
63
+ ```
64
+ screenplays/heist-movie/ # Original
65
+ screenplays/heist-movie-2026-02-03T14-30/ # Conflict with timestamp
66
+ ```
67
+
68
+ ### Error on Conflict
69
+ Throw an error and require manual resolution.
70
+
71
+ ---
72
+
73
+ ## File Placement
74
+
75
+ All screenplay-related files MUST be placed within the project directory:
76
+
77
+ ### Primary Files
78
+ - `screenplay.fountain` - Main screenplay in Fountain format
79
+ - `screenplay.pdf` - Exported PDF (if generated)
80
+ - `outline.md` - Story outline
81
+
82
+ ### Supporting Directories
83
+ - `characters/` - Character profiles and development
84
+ - `notes/` - Research, brainstorming, and notes
85
+ - `drafts/` - Previous versions and drafts
86
+ - `assets/` - Images, references, and other media
87
+
88
+ ### Example Structure
89
+ ```
90
+ screenplays/heist-movie/
91
+ ├── screenplay.fountain # Main screenplay
92
+ ├── outline.md # Story outline
93
+ ├── beat-sheet.yaml # Save the Cat beat sheet
94
+ ├── characters/
95
+ │ ├── protagonist.yaml
96
+ │ ├── antagonist.yaml
97
+ │ └── supporting-cast.yaml
98
+ ├── notes/
99
+ │ ├── research.md
100
+ │ ├── brainstorming.md
101
+ │ └── feedback.md
102
+ ├── drafts/
103
+ │ ├── draft-1.fountain
104
+ │ └── draft-2.fountain
105
+ └── assets/
106
+ ├── location-photos/
107
+ └── character-sketches/
108
+ ```
109
+
110
+ ---
111
+
112
+ ## Persistence During Cleanup
113
+
114
+ The `screenplays/` directory and all its contents MUST be preserved during cleanup operations.
115
+
116
+ ### Protected Paths
117
+ - `screenplays/` (entire directory)
118
+ - All subdirectories and files within `screenplays/`
119
+
120
+ ### Cleanup Exemptions
121
+ When running `augment-extensions self-remove` or similar cleanup commands:
122
+ - ✅ Remove temporary augment-extensions files
123
+ - ✅ Remove cached module data
124
+ - ❌ **DO NOT** remove `screenplays/` directory
125
+ - ❌ **DO NOT** remove any screenplay project directories
126
+ - ❌ **DO NOT** remove any user-generated creative content
127
+
128
+ ---
129
+
130
+ ## Integration with Workflows
131
+
132
+ ### OpenSpec Integration
133
+ When creating a screenplay from an OpenSpec spec:
134
+ 1. Read the spec name from `openspec/changes/[spec-name]/`
135
+ 2. Create `screenplays/[spec-name]/`
136
+ 3. Place all generated files in the project directory
137
+ 4. Reference the spec in project metadata
138
+
139
+ ### Beads Integration
140
+ When creating a screenplay from a Beads epic:
141
+ 1. Read the epic ID from `.beads/issues.jsonl`
142
+ 2. Create `screenplays/[epic-id]/`
143
+ 3. Track file creation in Beads comments
144
+ 4. Link screenplay files to epic tasks
145
+
146
+ ---
147
+
148
+ ## Best Practices
149
+
150
+ ### DO
151
+ ✅ Always create `screenplays/` directory before generating files
152
+ ✅ Use OpenSpec or Beads names when available
153
+ ✅ Group all related files in the same project directory
154
+ ✅ Use descriptive subdirectory names (`characters/`, `notes/`, etc.)
155
+ ✅ Preserve the directory during cleanup operations
156
+
157
+ ### DON'T
158
+ ❌ Create screenplay files in the repository root
159
+ ❌ Mix multiple screenplay projects in one directory
160
+ ❌ Use special characters in directory names
161
+ ❌ Delete `screenplays/` during cleanup
162
+ ❌ Hardcode project names without checking OpenSpec/Beads
163
+
164
+ ---
165
+
166
+ ## Error Handling
167
+
168
+ ### Missing Permissions
169
+ If the system cannot create directories due to permissions:
170
+ - Log an informative error message
171
+ - Suggest running with appropriate permissions
172
+ - Provide fallback location (e.g., user's home directory)
173
+
174
+ ### Name Conflicts
175
+ If a project directory already exists:
176
+ - Apply the configured conflict resolution strategy
177
+ - Log the resolution action
178
+ - Continue with the new directory name
179
+
180
+ ### Missing Context
181
+ If neither OpenSpec nor Beads context is available:
182
+ - Use timestamp-based naming
183
+ - Log a warning suggesting manual renaming
184
+ - Continue with generation
185
+
186
+ ---
187
+
188
+ ## Configuration
189
+
190
+ Project-specific configuration can be set in `.augment/screenplay-config.json`:
191
+
192
+ ```json
193
+ {
194
+ "fileOrganization": {
195
+ "rootDir": "screenplays",
196
+ "conflictResolution": "append-number",
197
+ "autoCreateDirectories": true,
198
+ "preserveOnCleanup": true
199
+ }
200
+ }
201
+ ```
202
+
203
+ ---
204
+
205
+ ## Summary
206
+
207
+ The screenplay file organization system ensures:
208
+ - **Logical structure** - All screenplay files grouped by project
209
+ - **Context awareness** - Names derived from OpenSpec/Beads
210
+ - **Conflict resolution** - Automatic handling of duplicate names
211
+ - **Persistence** - Creative content preserved during cleanup
212
+ - **Integration** - Seamless workflow with OpenSpec and Beads
213
+