@aicgen/aicgen 1.0.0-beta.1 → 1.0.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.
Files changed (160) hide show
  1. package/{.claude/guidelines → .agent/rules}/api-design.md +5 -1
  2. package/{.claude/guidelines → .agent/rules}/architecture.md +5 -1
  3. package/{.claude/guidelines → .agent/rules}/best-practices.md +5 -1
  4. package/{.claude/guidelines → .agent/rules}/code-style.md +5 -1
  5. package/{.claude/guidelines → .agent/rules}/design-patterns.md +5 -1
  6. package/{.claude/guidelines → .agent/rules}/devops.md +5 -1
  7. package/{.claude/guidelines → .agent/rules}/error-handling.md +5 -1
  8. package/.agent/rules/instructions.md +28 -0
  9. package/{.claude/guidelines → .agent/rules}/language.md +5 -1
  10. package/{.claude/guidelines → .agent/rules}/performance.md +5 -1
  11. package/{.claude/guidelines → .agent/rules}/security.md +5 -1
  12. package/{.claude/guidelines → .agent/rules}/testing.md +5 -1
  13. package/.agent/workflows/add-documentation.md +10 -0
  14. package/.agent/workflows/generate-integration-tests.md +10 -0
  15. package/.agent/workflows/generate-unit-tests.md +11 -0
  16. package/.agent/workflows/performance-audit.md +11 -0
  17. package/.agent/workflows/refactor-extract-module.md +12 -0
  18. package/.agent/workflows/security-audit.md +12 -0
  19. package/.gemini/instructions.md +4843 -0
  20. package/.vs/ProjectSettings.json +2 -2
  21. package/.vs/VSWorkspaceState.json +15 -15
  22. package/.vs/aicgen.slnx/v18/DocumentLayout.json +53 -53
  23. package/AGENTS.md +9 -11
  24. package/assets/icon.svg +33 -33
  25. package/bun.lock +734 -26
  26. package/{CLAUDE.md → claude.md} +2 -2
  27. package/config.example.yml +129 -0
  28. package/config.yml +38 -0
  29. package/data/architecture/microservices/api-gateway.md +56 -56
  30. package/data/devops/observability.md +73 -73
  31. package/data/guideline-mappings.yml +128 -0
  32. package/data/language/dart/async.md +289 -0
  33. package/data/language/dart/basics.md +280 -0
  34. package/data/language/dart/error-handling.md +355 -0
  35. package/data/language/dart/index.md +10 -0
  36. package/data/language/dart/testing.md +352 -0
  37. package/data/language/swift/basics.md +477 -0
  38. package/data/language/swift/concurrency.md +654 -0
  39. package/data/language/swift/error-handling.md +679 -0
  40. package/data/language/swift/swiftui-mvvm.md +795 -0
  41. package/data/language/swift/testing.md +708 -0
  42. package/data/version.json +10 -8
  43. package/dist/index.js +50153 -28959
  44. package/jest.config.js +46 -0
  45. package/package.json +14 -3
  46. package/.claude/agents/architecture-reviewer.md +0 -88
  47. package/.claude/agents/guideline-checker.md +0 -73
  48. package/.claude/agents/security-auditor.md +0 -108
  49. package/.claude/settings.json +0 -98
  50. package/.claude/settings.local.json +0 -8
  51. package/.eslintrc.json +0 -28
  52. package/.github/workflows/release.yml +0 -180
  53. package/.github/workflows/test.yml +0 -81
  54. package/CONTRIBUTING.md +0 -821
  55. package/dist/commands/init.d.ts +0 -8
  56. package/dist/commands/init.d.ts.map +0 -1
  57. package/dist/commands/init.js +0 -46
  58. package/dist/commands/init.js.map +0 -1
  59. package/dist/config/profiles.d.ts +0 -4
  60. package/dist/config/profiles.d.ts.map +0 -1
  61. package/dist/config/profiles.js +0 -30
  62. package/dist/config/profiles.js.map +0 -1
  63. package/dist/config/settings.d.ts +0 -7
  64. package/dist/config/settings.d.ts.map +0 -1
  65. package/dist/config/settings.js +0 -7
  66. package/dist/config/settings.js.map +0 -1
  67. package/dist/index.d.ts +0 -3
  68. package/dist/index.d.ts.map +0 -1
  69. package/dist/index.js.map +0 -1
  70. package/dist/models/guideline.d.ts +0 -15
  71. package/dist/models/guideline.d.ts.map +0 -1
  72. package/dist/models/guideline.js +0 -2
  73. package/dist/models/guideline.js.map +0 -1
  74. package/dist/models/preference.d.ts +0 -9
  75. package/dist/models/preference.d.ts.map +0 -1
  76. package/dist/models/preference.js +0 -2
  77. package/dist/models/preference.js.map +0 -1
  78. package/dist/models/profile.d.ts +0 -9
  79. package/dist/models/profile.d.ts.map +0 -1
  80. package/dist/models/profile.js +0 -2
  81. package/dist/models/profile.js.map +0 -1
  82. package/dist/models/project.d.ts +0 -13
  83. package/dist/models/project.d.ts.map +0 -1
  84. package/dist/models/project.js +0 -2
  85. package/dist/models/project.js.map +0 -1
  86. package/dist/services/ai/anthropic.d.ts +0 -7
  87. package/dist/services/ai/anthropic.d.ts.map +0 -1
  88. package/dist/services/ai/anthropic.js +0 -39
  89. package/dist/services/ai/anthropic.js.map +0 -1
  90. package/dist/services/generator.d.ts +0 -2
  91. package/dist/services/generator.d.ts.map +0 -1
  92. package/dist/services/generator.js +0 -4
  93. package/dist/services/generator.js.map +0 -1
  94. package/dist/services/learner.d.ts +0 -2
  95. package/dist/services/learner.d.ts.map +0 -1
  96. package/dist/services/learner.js +0 -4
  97. package/dist/services/learner.js.map +0 -1
  98. package/dist/services/scanner.d.ts +0 -3
  99. package/dist/services/scanner.d.ts.map +0 -1
  100. package/dist/services/scanner.js +0 -54
  101. package/dist/services/scanner.js.map +0 -1
  102. package/dist/utils/errors.d.ts +0 -15
  103. package/dist/utils/errors.d.ts.map +0 -1
  104. package/dist/utils/errors.js +0 -27
  105. package/dist/utils/errors.js.map +0 -1
  106. package/dist/utils/file.d.ts +0 -7
  107. package/dist/utils/file.d.ts.map +0 -1
  108. package/dist/utils/file.js +0 -32
  109. package/dist/utils/file.js.map +0 -1
  110. package/dist/utils/logger.d.ts +0 -6
  111. package/dist/utils/logger.d.ts.map +0 -1
  112. package/dist/utils/logger.js +0 -17
  113. package/dist/utils/logger.js.map +0 -1
  114. package/dist/utils/path.d.ts +0 -6
  115. package/dist/utils/path.d.ts.map +0 -1
  116. package/dist/utils/path.js +0 -14
  117. package/dist/utils/path.js.map +0 -1
  118. package/docs/planning/memory-lane.md +0 -83
  119. package/packaging/linux/aicgen.spec +0 -23
  120. package/packaging/linux/control +0 -9
  121. package/packaging/macos/scripts/postinstall +0 -12
  122. package/packaging/windows/setup.nsi +0 -92
  123. package/scripts/add-categories.ts +0 -87
  124. package/scripts/build-binary.ts +0 -46
  125. package/scripts/embed-data.ts +0 -105
  126. package/scripts/generate-version.ts +0 -150
  127. package/scripts/test-decompress.ts +0 -27
  128. package/scripts/test-extract.ts +0 -31
  129. package/src/__tests__/services/assistant-file-writer.test.ts +0 -400
  130. package/src/__tests__/services/guideline-loader.test.ts +0 -281
  131. package/src/__tests__/services/tarball-extraction.test.ts +0 -125
  132. package/src/commands/add-guideline.ts +0 -296
  133. package/src/commands/clear.ts +0 -61
  134. package/src/commands/guideline-selector.ts +0 -123
  135. package/src/commands/init.ts +0 -645
  136. package/src/commands/quick-add.ts +0 -586
  137. package/src/commands/remove-guideline.ts +0 -152
  138. package/src/commands/stats.ts +0 -49
  139. package/src/commands/update.ts +0 -240
  140. package/src/config.ts +0 -82
  141. package/src/embedded-data.ts +0 -1492
  142. package/src/index.ts +0 -67
  143. package/src/models/profile.ts +0 -24
  144. package/src/models/project.ts +0 -43
  145. package/src/services/assistant-file-writer.ts +0 -612
  146. package/src/services/config-generator.ts +0 -150
  147. package/src/services/config-manager.ts +0 -70
  148. package/src/services/data-source.ts +0 -248
  149. package/src/services/first-run-init.ts +0 -148
  150. package/src/services/guideline-loader.ts +0 -311
  151. package/src/services/hook-generator.ts +0 -178
  152. package/src/services/subagent-generator.ts +0 -310
  153. package/src/utils/banner.ts +0 -66
  154. package/src/utils/errors.ts +0 -27
  155. package/src/utils/file.ts +0 -67
  156. package/src/utils/formatting.ts +0 -172
  157. package/src/utils/logger.ts +0 -89
  158. package/src/utils/path.ts +0 -17
  159. package/src/utils/wizard-state.ts +0 -132
  160. package/tsconfig.json +0 -25
@@ -1,3 +1,3 @@
1
- {
2
- "CurrentProjectSetting": null
1
+ {
2
+ "CurrentProjectSetting": null
3
3
  }
@@ -1,16 +1,16 @@
1
- {
2
- "ExpandedNodes": [
3
- "",
4
- "\\src",
5
- "\\src\\config",
6
- "\\src\\models",
7
- "\\src\\prompts",
8
- "\\src\\services",
9
- "\\src\\services\\ai",
10
- "\\src\\templates",
11
- "\\src\\templates\\guidelines",
12
- "\\src\\utils"
13
- ],
14
- "SelectedNode": "\\src\\services\\ai\\anthropic.ts",
15
- "PreviewInSolutionExplorer": false
1
+ {
2
+ "ExpandedNodes": [
3
+ "",
4
+ "\\src",
5
+ "\\src\\config",
6
+ "\\src\\models",
7
+ "\\src\\prompts",
8
+ "\\src\\services",
9
+ "\\src\\services\\ai",
10
+ "\\src\\templates",
11
+ "\\src\\templates\\guidelines",
12
+ "\\src\\utils"
13
+ ],
14
+ "SelectedNode": "\\src\\services\\ai\\anthropic.ts",
15
+ "PreviewInSolutionExplorer": false
16
16
  }
@@ -1,54 +1,54 @@
1
- {
2
- "Version": 1,
3
- "WorkspaceRootPath": "F:\\aicgen\\aicgen\\",
4
- "Documents": [
5
- {
6
- "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|F:\\aicgen\\aicgen\\src\\services\\ai\\anthropic.ts||{0F2454B1-A556-402D-A7D0-1FDE7F99DEE0}",
7
- "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:src\\services\\ai\\anthropic.ts||{0F2454B1-A556-402D-A7D0-1FDE7F99DEE0}"
8
- },
9
- {
10
- "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|F:\\aicgen\\aicgen\\src\\commands\\init.ts||{0F2454B1-A556-402D-A7D0-1FDE7F99DEE0}",
11
- "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:src\\commands\\init.ts||{0F2454B1-A556-402D-A7D0-1FDE7F99DEE0}"
12
- }
13
- ],
14
- "DocumentGroupContainers": [
15
- {
16
- "Orientation": 0,
17
- "VerticalTabListWidth": 256,
18
- "DocumentGroups": [
19
- {
20
- "DockedWidth": 200,
21
- "SelectedChildIndex": 0,
22
- "Children": [
23
- {
24
- "$type": "Document",
25
- "DocumentIndex": 0,
26
- "Title": "anthropic.ts",
27
- "DocumentMoniker": "F:\\aicgen\\aicgen\\src\\services\\ai\\anthropic.ts",
28
- "RelativeDocumentMoniker": "src\\services\\ai\\anthropic.ts",
29
- "ToolTip": "F:\\aicgen\\aicgen\\src\\services\\ai\\anthropic.ts",
30
- "RelativeToolTip": "src\\services\\ai\\anthropic.ts",
31
- "ViewState": "AgIAAAAAAAAAAAAAAAAAAB8AAAAqAAAAAAAAAA==",
32
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003213|",
33
- "WhenOpened": "2025-12-06T03:22:51.667Z",
34
- "EditorCaption": ""
35
- },
36
- {
37
- "$type": "Document",
38
- "DocumentIndex": 1,
39
- "Title": "init.ts",
40
- "DocumentMoniker": "F:\\aicgen\\aicgen\\src\\commands\\init.ts",
41
- "RelativeDocumentMoniker": "src\\commands\\init.ts",
42
- "ToolTip": "F:\\aicgen\\aicgen\\src\\commands\\init.ts",
43
- "RelativeToolTip": "src\\commands\\init.ts",
44
- "ViewState": "AgIAABsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
45
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003213|",
46
- "WhenOpened": "2025-12-06T03:20:37.462Z",
47
- "EditorCaption": ""
48
- }
49
- ]
50
- }
51
- ]
52
- }
53
- ]
1
+ {
2
+ "Version": 1,
3
+ "WorkspaceRootPath": "F:\\aicgen\\aicgen\\",
4
+ "Documents": [
5
+ {
6
+ "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|F:\\aicgen\\aicgen\\src\\services\\ai\\anthropic.ts||{0F2454B1-A556-402D-A7D0-1FDE7F99DEE0}",
7
+ "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:src\\services\\ai\\anthropic.ts||{0F2454B1-A556-402D-A7D0-1FDE7F99DEE0}"
8
+ },
9
+ {
10
+ "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|F:\\aicgen\\aicgen\\src\\commands\\init.ts||{0F2454B1-A556-402D-A7D0-1FDE7F99DEE0}",
11
+ "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:src\\commands\\init.ts||{0F2454B1-A556-402D-A7D0-1FDE7F99DEE0}"
12
+ }
13
+ ],
14
+ "DocumentGroupContainers": [
15
+ {
16
+ "Orientation": 0,
17
+ "VerticalTabListWidth": 256,
18
+ "DocumentGroups": [
19
+ {
20
+ "DockedWidth": 200,
21
+ "SelectedChildIndex": 0,
22
+ "Children": [
23
+ {
24
+ "$type": "Document",
25
+ "DocumentIndex": 0,
26
+ "Title": "anthropic.ts",
27
+ "DocumentMoniker": "F:\\aicgen\\aicgen\\src\\services\\ai\\anthropic.ts",
28
+ "RelativeDocumentMoniker": "src\\services\\ai\\anthropic.ts",
29
+ "ToolTip": "F:\\aicgen\\aicgen\\src\\services\\ai\\anthropic.ts",
30
+ "RelativeToolTip": "src\\services\\ai\\anthropic.ts",
31
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAB8AAAAqAAAAAAAAAA==",
32
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003213|",
33
+ "WhenOpened": "2025-12-06T03:22:51.667Z",
34
+ "EditorCaption": ""
35
+ },
36
+ {
37
+ "$type": "Document",
38
+ "DocumentIndex": 1,
39
+ "Title": "init.ts",
40
+ "DocumentMoniker": "F:\\aicgen\\aicgen\\src\\commands\\init.ts",
41
+ "RelativeDocumentMoniker": "src\\commands\\init.ts",
42
+ "ToolTip": "F:\\aicgen\\aicgen\\src\\commands\\init.ts",
43
+ "RelativeToolTip": "src\\commands\\init.ts",
44
+ "ViewState": "AgIAABsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
45
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003213|",
46
+ "WhenOpened": "2025-12-06T03:20:37.462Z",
47
+ "EditorCaption": ""
48
+ }
49
+ ]
50
+ }
51
+ ]
52
+ }
53
+ ]
54
54
  }
package/AGENTS.md CHANGED
@@ -3,7 +3,7 @@
3
3
  ## Project Overview
4
4
 
5
5
  **Language:** typescript
6
- **Type:** cli
6
+ **Type:** other
7
7
 
8
8
  ## Development Guidelines
9
9
 
@@ -15,17 +15,11 @@ This project follows structured coding guidelines across multiple categories:
15
15
  - async
16
16
  - interfaces-types
17
17
 
18
- ### Architecture
19
-
20
- - boundaries
21
- - communication
22
- - data
23
-
24
18
  ### Testing
25
19
 
26
20
  - unit-fundamentals
27
21
  - unit-mocking
28
- - integration
22
+ - basics
29
23
 
30
24
  ### Security
31
25
 
@@ -36,7 +30,6 @@ This project follows structured coding guidelines across multiple categories:
36
30
  ### Performance
37
31
 
38
32
  - basics
39
- - caching
40
33
  - async
41
34
 
42
35
  ### API Design
@@ -55,10 +48,15 @@ This project follows structured coding guidelines across multiple categories:
55
48
  - strategy
56
49
  - basics
57
50
 
51
+ ### Architecture
52
+
53
+ - principles
54
+ - patterns
55
+ - patterns
56
+
58
57
  ### DevOps
59
58
 
60
59
  - ci-cd
61
- - practices
62
60
  - observability
63
61
 
64
62
  ### Best Practices
@@ -70,8 +68,8 @@ This project follows structured coding guidelines across multiple categories:
70
68
  ### Design Patterns
71
69
 
72
70
  - base-patterns
73
- - concurrency
74
71
  - data-access
72
+ - domain-logic
75
73
 
76
74
 
77
75
  ## Commands
package/assets/icon.svg CHANGED
@@ -1,34 +1,34 @@
1
- <svg width="300" height="150" viewBox="0 0 300 150" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <defs>
3
- <linearGradient id="flowGradient" x1="50" y1="75" x2="160" y2="75" gradientUnits="userSpaceOnUse">
4
- <stop offset="0%" stop-color="#06b6d4" /> <stop offset="100%" stop-color="#8b5cf6" /> </linearGradient>
5
- <filter id="glow" x="-20%" y="-20%" width="140%" height="140%">
6
- <feGaussianBlur stdDeviation="2" result="coloredBlur"/>
7
- <feMerge>
8
- <feMergeNode in="coloredBlur"/>
9
- <feMergeNode in="SourceGraphic"/>
10
- </feMerge>
11
- </filter>
12
- </defs>
13
-
14
- <rect width="700" height="150" fill="#0f172a" rx="8" />
15
-
16
- <g transform="translate(40, 35)">
17
- <rect x="160" y="0" width="60" height="80" rx="6" fill="#1e1b4b" stroke="#8b5cf6" stroke-width="2"/>
18
- <path d="M200 0 L220 20 L220 6 A 6 6 0 0 0 214 0 Z" fill="#8b5cf6" opacity="0.5"/>
19
- <rect x="170" y="20" width="30" height="4" rx="2" fill="#8b5cf6" opacity="0.6"/>
20
- <rect x="170" y="32" width="40" height="4" rx="2" fill="#8b5cf6" opacity="0.6"/>
21
- <rect x="170" y="44" width="35" height="4" rx="2" fill="#8b5cf6" opacity="0.6"/>
22
- <circle cx="210" cy="70" r="3" fill="#10b981" filter="url(#glow)" />
23
-
24
- <circle cx="20" cy="15" r="8" fill="#06b6d4" filter="url(#glow)" />
25
- <circle cx="20" cy="40" r="8" fill="#06b6d4" filter="url(#glow)" />
26
- <circle cx="20" cy="65" r="8" fill="#06b6d4" filter="url(#glow)" />
27
-
28
- <path d="M28 15 C 60 15, 100 15, 160 30" stroke="url(#flowGradient)" stroke-width="3" fill="none" stroke-linecap="round"/>
29
- <path d="M28 40 C 60 40, 100 40, 160 40" stroke="url(#flowGradient)" stroke-width="3" fill="none" stroke-linecap="round"/>
30
- <path d="M28 65 C 60 65, 100 65, 160 50" stroke="url(#flowGradient)" stroke-width="3" fill="none" stroke-linecap="round"/>
31
- </g>
32
-
33
-
1
+ <svg width="300" height="150" viewBox="0 0 300 150" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <defs>
3
+ <linearGradient id="flowGradient" x1="50" y1="75" x2="160" y2="75" gradientUnits="userSpaceOnUse">
4
+ <stop offset="0%" stop-color="#06b6d4" /> <stop offset="100%" stop-color="#8b5cf6" /> </linearGradient>
5
+ <filter id="glow" x="-20%" y="-20%" width="140%" height="140%">
6
+ <feGaussianBlur stdDeviation="2" result="coloredBlur"/>
7
+ <feMerge>
8
+ <feMergeNode in="coloredBlur"/>
9
+ <feMergeNode in="SourceGraphic"/>
10
+ </feMerge>
11
+ </filter>
12
+ </defs>
13
+
14
+ <rect width="700" height="150" fill="#0f172a" rx="8" />
15
+
16
+ <g transform="translate(40, 35)">
17
+ <rect x="160" y="0" width="60" height="80" rx="6" fill="#1e1b4b" stroke="#8b5cf6" stroke-width="2"/>
18
+ <path d="M200 0 L220 20 L220 6 A 6 6 0 0 0 214 0 Z" fill="#8b5cf6" opacity="0.5"/>
19
+ <rect x="170" y="20" width="30" height="4" rx="2" fill="#8b5cf6" opacity="0.6"/>
20
+ <rect x="170" y="32" width="40" height="4" rx="2" fill="#8b5cf6" opacity="0.6"/>
21
+ <rect x="170" y="44" width="35" height="4" rx="2" fill="#8b5cf6" opacity="0.6"/>
22
+ <circle cx="210" cy="70" r="3" fill="#10b981" filter="url(#glow)" />
23
+
24
+ <circle cx="20" cy="15" r="8" fill="#06b6d4" filter="url(#glow)" />
25
+ <circle cx="20" cy="40" r="8" fill="#06b6d4" filter="url(#glow)" />
26
+ <circle cx="20" cy="65" r="8" fill="#06b6d4" filter="url(#glow)" />
27
+
28
+ <path d="M28 15 C 60 15, 100 15, 160 30" stroke="url(#flowGradient)" stroke-width="3" fill="none" stroke-linecap="round"/>
29
+ <path d="M28 40 C 60 40, 100 40, 160 40" stroke="url(#flowGradient)" stroke-width="3" fill="none" stroke-linecap="round"/>
30
+ <path d="M28 65 C 60 65, 100 65, 160 50" stroke="url(#flowGradient)" stroke-width="3" fill="none" stroke-linecap="round"/>
31
+ </g>
32
+
33
+
34
34
  </svg>