@aicgen/aicgen 1.0.0-beta.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 (287) hide show
  1. package/.claude/agents/architecture-reviewer.md +88 -0
  2. package/.claude/agents/guideline-checker.md +73 -0
  3. package/.claude/agents/security-auditor.md +108 -0
  4. package/.claude/guidelines/api-design.md +645 -0
  5. package/.claude/guidelines/architecture.md +2503 -0
  6. package/.claude/guidelines/best-practices.md +618 -0
  7. package/.claude/guidelines/code-style.md +304 -0
  8. package/.claude/guidelines/design-patterns.md +573 -0
  9. package/.claude/guidelines/devops.md +226 -0
  10. package/.claude/guidelines/error-handling.md +413 -0
  11. package/.claude/guidelines/language.md +782 -0
  12. package/.claude/guidelines/performance.md +706 -0
  13. package/.claude/guidelines/security.md +583 -0
  14. package/.claude/guidelines/testing.md +568 -0
  15. package/.claude/settings.json +98 -0
  16. package/.claude/settings.local.json +8 -0
  17. package/.env.example +23 -0
  18. package/.eslintrc.json +28 -0
  19. package/.github/workflows/release.yml +180 -0
  20. package/.github/workflows/test.yml +81 -0
  21. package/.gitmodules +3 -0
  22. package/.vs/ProjectSettings.json +3 -0
  23. package/.vs/VSWorkspaceState.json +16 -0
  24. package/.vs/aicgen.slnx/FileContentIndex/5f0ce2a3-fd68-4863-9e23-e428cf1794e3.vsidx +0 -0
  25. package/.vs/aicgen.slnx/v18/.wsuo +0 -0
  26. package/.vs/aicgen.slnx/v18/DocumentLayout.json +54 -0
  27. package/.vs/slnx.sqlite +0 -0
  28. package/AGENTS.md +121 -0
  29. package/CLAUDE.md +36 -0
  30. package/CONTRIBUTING.md +821 -0
  31. package/LICENSE +21 -0
  32. package/README.md +199 -0
  33. package/assets/icon.svg +34 -0
  34. package/assets/logo.svg +41 -0
  35. package/bun.lock +848 -0
  36. package/data/LICENSE +21 -0
  37. package/data/README.md +203 -0
  38. package/data/api/basics.md +292 -0
  39. package/data/api/index.md +8 -0
  40. package/data/api/pagination.md +142 -0
  41. package/data/api/rest.md +137 -0
  42. package/data/api/versioning.md +60 -0
  43. package/data/architecture/clean-architecture/index.md +7 -0
  44. package/data/architecture/clean-architecture/layers.md +111 -0
  45. package/data/architecture/ddd/index.md +8 -0
  46. package/data/architecture/ddd/strategic.md +89 -0
  47. package/data/architecture/ddd/tactical.md +132 -0
  48. package/data/architecture/event-driven/index.md +7 -0
  49. package/data/architecture/event-driven/messaging.md +242 -0
  50. package/data/architecture/event-driven/patterns.md +129 -0
  51. package/data/architecture/feature-toggles/index.md +7 -0
  52. package/data/architecture/feature-toggles/patterns.md +73 -0
  53. package/data/architecture/gui/index.md +7 -0
  54. package/data/architecture/gui/patterns.md +132 -0
  55. package/data/architecture/hexagonal/ports-adapters.md +132 -0
  56. package/data/architecture/index.md +12 -0
  57. package/data/architecture/layered/index.md +7 -0
  58. package/data/architecture/layered/layers.md +100 -0
  59. package/data/architecture/microservices/api-gateway.md +56 -0
  60. package/data/architecture/microservices/boundaries.md +80 -0
  61. package/data/architecture/microservices/communication.md +97 -0
  62. package/data/architecture/microservices/data.md +92 -0
  63. package/data/architecture/microservices/index.md +11 -0
  64. package/data/architecture/microservices/resilience.md +111 -0
  65. package/data/architecture/modular-monolith/boundaries.md +133 -0
  66. package/data/architecture/modular-monolith/structure.md +131 -0
  67. package/data/architecture/serverless/best-practices.md +322 -0
  68. package/data/architecture/serverless/index.md +7 -0
  69. package/data/architecture/serverless/patterns.md +80 -0
  70. package/data/architecture/solid/index.md +7 -0
  71. package/data/architecture/solid/principles.md +187 -0
  72. package/data/database/basics.md +365 -0
  73. package/data/database/design-patterns.md +68 -0
  74. package/data/database/index.md +8 -0
  75. package/data/database/indexing.md +136 -0
  76. package/data/database/nosql.md +223 -0
  77. package/data/database/schema.md +137 -0
  78. package/data/devops/ci-cd.md +66 -0
  79. package/data/devops/index.md +8 -0
  80. package/data/devops/observability.md +73 -0
  81. package/data/devops/practices.md +77 -0
  82. package/data/error-handling/basics.md +222 -0
  83. package/data/error-handling/index.md +7 -0
  84. package/data/error-handling/strategy.md +185 -0
  85. package/data/guideline-mappings.yml +1077 -0
  86. package/data/index.md +3 -0
  87. package/data/language/csharp/basics.md +210 -0
  88. package/data/language/csharp/testing.md +252 -0
  89. package/data/language/go/basics.md +158 -0
  90. package/data/language/go/testing.md +192 -0
  91. package/data/language/index.md +14 -0
  92. package/data/language/java/basics.md +184 -0
  93. package/data/language/java/testing.md +273 -0
  94. package/data/language/javascript/basics.md +217 -0
  95. package/data/language/javascript/testing.md +269 -0
  96. package/data/language/python/async.md +100 -0
  97. package/data/language/python/basics.md +100 -0
  98. package/data/language/python/index.md +10 -0
  99. package/data/language/python/testing.md +125 -0
  100. package/data/language/python/types.md +99 -0
  101. package/data/language/ruby/basics.md +227 -0
  102. package/data/language/ruby/testing.md +267 -0
  103. package/data/language/rust/basics.md +175 -0
  104. package/data/language/rust/testing.md +219 -0
  105. package/data/language/typescript/async.md +103 -0
  106. package/data/language/typescript/basics.md +87 -0
  107. package/data/language/typescript/config.md +95 -0
  108. package/data/language/typescript/error-handling.md +98 -0
  109. package/data/language/typescript/generics.md +85 -0
  110. package/data/language/typescript/index.md +14 -0
  111. package/data/language/typescript/interfaces-types.md +83 -0
  112. package/data/language/typescript/performance.md +103 -0
  113. package/data/language/typescript/testing.md +98 -0
  114. package/data/patterns/base-patterns.md +105 -0
  115. package/data/patterns/concurrency.md +87 -0
  116. package/data/patterns/data-access.md +83 -0
  117. package/data/patterns/distribution.md +86 -0
  118. package/data/patterns/domain-logic.md +81 -0
  119. package/data/patterns/gof.md +109 -0
  120. package/data/patterns/index.md +12 -0
  121. package/data/performance/async.md +148 -0
  122. package/data/performance/basics.md +324 -0
  123. package/data/performance/caching-strategies.md +68 -0
  124. package/data/performance/caching.md +152 -0
  125. package/data/performance/index.md +8 -0
  126. package/data/practices/code-review.md +52 -0
  127. package/data/practices/documentation.md +260 -0
  128. package/data/practices/index.md +11 -0
  129. package/data/practices/planning.md +142 -0
  130. package/data/practices/refactoring.md +91 -0
  131. package/data/practices/version-control.md +55 -0
  132. package/data/security/auth-jwt.md +159 -0
  133. package/data/security/headers.md +143 -0
  134. package/data/security/index.md +10 -0
  135. package/data/security/injection.md +119 -0
  136. package/data/security/secrets.md +148 -0
  137. package/data/style/index.md +8 -0
  138. package/data/style/naming.md +136 -0
  139. package/data/style/organization.md +162 -0
  140. package/data/templates/agents/architecture-reviewer.md +88 -0
  141. package/data/templates/agents/guideline-checker.md +73 -0
  142. package/data/templates/agents/security-auditor.md +108 -0
  143. package/data/templates/antigravity/rules/architecture.md.hbs +5 -0
  144. package/data/templates/antigravity/rules/code-style.md.hbs +5 -0
  145. package/data/templates/antigravity/rules/language.md.hbs +5 -0
  146. package/data/templates/antigravity/rules/performance.md.hbs +5 -0
  147. package/data/templates/antigravity/rules/security.md.hbs +5 -0
  148. package/data/templates/antigravity/rules/testing.md.hbs +5 -0
  149. package/data/templates/antigravity/workflows/add-documentation.md.hbs +23 -0
  150. package/data/templates/antigravity/workflows/generate-integration-tests.md.hbs +17 -0
  151. package/data/templates/antigravity/workflows/generate-unit-tests.md.hbs +20 -0
  152. package/data/templates/antigravity/workflows/performance-audit.md.hbs +24 -0
  153. package/data/templates/antigravity/workflows/refactor-extract-module.md.hbs +17 -0
  154. package/data/templates/antigravity/workflows/security-audit.md.hbs +20 -0
  155. package/data/templates/hooks/formatting.json +26 -0
  156. package/data/templates/hooks/security.json +35 -0
  157. package/data/templates/hooks/testing.json +17 -0
  158. package/data/testing/basics.md +151 -0
  159. package/data/testing/index.md +9 -0
  160. package/data/testing/integration.md +159 -0
  161. package/data/testing/unit-fundamentals.md +128 -0
  162. package/data/testing/unit-mocking.md +116 -0
  163. package/data/version.json +49 -0
  164. package/dist/commands/init.d.ts +8 -0
  165. package/dist/commands/init.d.ts.map +1 -0
  166. package/dist/commands/init.js +46 -0
  167. package/dist/commands/init.js.map +1 -0
  168. package/dist/config/profiles.d.ts +4 -0
  169. package/dist/config/profiles.d.ts.map +1 -0
  170. package/dist/config/profiles.js +30 -0
  171. package/dist/config/profiles.js.map +1 -0
  172. package/dist/config/settings.d.ts +7 -0
  173. package/dist/config/settings.d.ts.map +1 -0
  174. package/dist/config/settings.js +7 -0
  175. package/dist/config/settings.js.map +1 -0
  176. package/dist/index.d.ts +3 -0
  177. package/dist/index.d.ts.map +1 -0
  178. package/dist/index.js +58489 -0
  179. package/dist/index.js.map +1 -0
  180. package/dist/models/guideline.d.ts +15 -0
  181. package/dist/models/guideline.d.ts.map +1 -0
  182. package/dist/models/guideline.js +2 -0
  183. package/dist/models/guideline.js.map +1 -0
  184. package/dist/models/preference.d.ts +9 -0
  185. package/dist/models/preference.d.ts.map +1 -0
  186. package/dist/models/preference.js +2 -0
  187. package/dist/models/preference.js.map +1 -0
  188. package/dist/models/profile.d.ts +9 -0
  189. package/dist/models/profile.d.ts.map +1 -0
  190. package/dist/models/profile.js +2 -0
  191. package/dist/models/profile.js.map +1 -0
  192. package/dist/models/project.d.ts +13 -0
  193. package/dist/models/project.d.ts.map +1 -0
  194. package/dist/models/project.js +2 -0
  195. package/dist/models/project.js.map +1 -0
  196. package/dist/services/ai/anthropic.d.ts +7 -0
  197. package/dist/services/ai/anthropic.d.ts.map +1 -0
  198. package/dist/services/ai/anthropic.js +39 -0
  199. package/dist/services/ai/anthropic.js.map +1 -0
  200. package/dist/services/generator.d.ts +2 -0
  201. package/dist/services/generator.d.ts.map +1 -0
  202. package/dist/services/generator.js +4 -0
  203. package/dist/services/generator.js.map +1 -0
  204. package/dist/services/learner.d.ts +2 -0
  205. package/dist/services/learner.d.ts.map +1 -0
  206. package/dist/services/learner.js +4 -0
  207. package/dist/services/learner.js.map +1 -0
  208. package/dist/services/scanner.d.ts +3 -0
  209. package/dist/services/scanner.d.ts.map +1 -0
  210. package/dist/services/scanner.js +54 -0
  211. package/dist/services/scanner.js.map +1 -0
  212. package/dist/utils/errors.d.ts +15 -0
  213. package/dist/utils/errors.d.ts.map +1 -0
  214. package/dist/utils/errors.js +27 -0
  215. package/dist/utils/errors.js.map +1 -0
  216. package/dist/utils/file.d.ts +7 -0
  217. package/dist/utils/file.d.ts.map +1 -0
  218. package/dist/utils/file.js +32 -0
  219. package/dist/utils/file.js.map +1 -0
  220. package/dist/utils/logger.d.ts +6 -0
  221. package/dist/utils/logger.d.ts.map +1 -0
  222. package/dist/utils/logger.js +17 -0
  223. package/dist/utils/logger.js.map +1 -0
  224. package/dist/utils/path.d.ts +6 -0
  225. package/dist/utils/path.d.ts.map +1 -0
  226. package/dist/utils/path.js +14 -0
  227. package/dist/utils/path.js.map +1 -0
  228. package/docs/planning/memory-lane.md +83 -0
  229. package/package.json +64 -0
  230. package/packaging/linux/aicgen.spec +23 -0
  231. package/packaging/linux/control +9 -0
  232. package/packaging/macos/scripts/postinstall +12 -0
  233. package/packaging/windows/setup.nsi +92 -0
  234. package/planning/BRANDING-SUMMARY.md +194 -0
  235. package/planning/BRANDING.md +174 -0
  236. package/planning/BUILD.md +186 -0
  237. package/planning/CHUNK-IMPLEMENTATION-PLAN.md +87 -0
  238. package/planning/CHUNK-TAXONOMY.md +375 -0
  239. package/planning/CHUNKS-COMPLETE.md +382 -0
  240. package/planning/DESIGN.md +313 -0
  241. package/planning/DYNAMIC-GUIDELINES-DESIGN.md +265 -0
  242. package/planning/ENTERPRISE-UX-COMPLETE.md +281 -0
  243. package/planning/IMPLEMENTATION-PLAN.md +20 -0
  244. package/planning/PHASE1-COMPLETE.md +211 -0
  245. package/planning/PHASE2-COMPLETE.md +350 -0
  246. package/planning/PHASE3-COMPLETE.md +399 -0
  247. package/planning/PHASE4-COMPLETE.md +361 -0
  248. package/planning/PHASE4.5-CHUNKS.md +462 -0
  249. package/planning/STRUCTURE.md +170 -0
  250. package/scripts/add-categories.ts +87 -0
  251. package/scripts/build-binary.ts +46 -0
  252. package/scripts/embed-data.ts +105 -0
  253. package/scripts/generate-version.ts +150 -0
  254. package/scripts/test-decompress.ts +27 -0
  255. package/scripts/test-extract.ts +31 -0
  256. package/src/__tests__/services/assistant-file-writer.test.ts +400 -0
  257. package/src/__tests__/services/guideline-loader.test.ts +281 -0
  258. package/src/__tests__/services/tarball-extraction.test.ts +125 -0
  259. package/src/commands/add-guideline.ts +296 -0
  260. package/src/commands/clear.ts +61 -0
  261. package/src/commands/guideline-selector.ts +123 -0
  262. package/src/commands/init.ts +645 -0
  263. package/src/commands/quick-add.ts +586 -0
  264. package/src/commands/remove-guideline.ts +152 -0
  265. package/src/commands/stats.ts +49 -0
  266. package/src/commands/update.ts +240 -0
  267. package/src/config.ts +82 -0
  268. package/src/embedded-data.ts +1492 -0
  269. package/src/index.ts +67 -0
  270. package/src/models/profile.ts +24 -0
  271. package/src/models/project.ts +43 -0
  272. package/src/services/assistant-file-writer.ts +612 -0
  273. package/src/services/config-generator.ts +150 -0
  274. package/src/services/config-manager.ts +70 -0
  275. package/src/services/data-source.ts +248 -0
  276. package/src/services/first-run-init.ts +148 -0
  277. package/src/services/guideline-loader.ts +311 -0
  278. package/src/services/hook-generator.ts +178 -0
  279. package/src/services/subagent-generator.ts +310 -0
  280. package/src/utils/banner.ts +66 -0
  281. package/src/utils/errors.ts +27 -0
  282. package/src/utils/file.ts +67 -0
  283. package/src/utils/formatting.ts +172 -0
  284. package/src/utils/logger.ts +89 -0
  285. package/src/utils/path.ts +17 -0
  286. package/src/utils/wizard-state.ts +132 -0
  287. package/tsconfig.json +25 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Lahiru Pathirage
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,199 @@
1
+ <p align="center">
2
+ <img src="assets/logo.svg" width="1000" alt="aicgen logo" />
3
+ </p>
4
+
5
+ <p align="center">
6
+ <em>Configuration generator for AI coding assistants</em>
7
+ </p>
8
+
9
+ <p align="center">
10
+ <img src="https://img.shields.io/badge/version-1.0--beta-cyan" alt="Version" />
11
+ <img src="https://img.shields.io/badge/license-MIT-purple" alt="License" />
12
+ <img src="https://img.shields.io/badge/bun-%3E%3D1.0.0-cyan" alt="Bun" />
13
+ <img src="https://img.shields.io/github/actions/workflow/status/aicgen/aicgen/test.yml?branch=main&label=tests" alt="Tests" />
14
+ <img src="https://img.shields.io/badge/coverage-94%25-brightgreen" alt="Coverage" />
15
+ </p>
16
+
17
+ ---
18
+
19
+ **aicgen** makes your project AI-ready in seconds. Generate tailored instruction files for your AI coding assistant with an interactive CLI wizard.
20
+
21
+ ## ✨ Features
22
+
23
+ - **🎯 Multi-Assistant Support** - Claude Code, GitHub Copilot, Gemini, Antigravity, Codex
24
+ - **📚 82+ Guidelines** - Organized into 12 categories (Language, Architecture, Testing, Security, etc.)
25
+ - **🎨 Interactive CLI** - Professional wizard with smart defaults and back navigation
26
+ - **⚡ Hooks & Sub-Agents** - Auto-generates Claude Code hooks and verification agents
27
+ - **🏗️ Architecture Aware** - Supports Microservices, Modular Monoliths, Hexagonal, and more
28
+ - **📦 Zero External Dependencies** - All guideline data is embedded in the binary
29
+
30
+ ## 🚀 Quick Start
31
+
32
+ Navigate to your project and run:
33
+
34
+ ```bash
35
+ aicgen init
36
+ ```
37
+
38
+ The CLI will:
39
+ 1. Detect your project language and structure
40
+ 2. Guide you through assistant, architecture, and detail level selection
41
+ 3. Let you customize which guidelines to include
42
+ 4. Generate the appropriate config files (`.claude/`, `.github/`, `.agent/`, etc.)
43
+
44
+ ---
45
+
46
+ ## 📦 Installation
47
+
48
+ ### From npm (Easiest)
49
+
50
+ ```bash
51
+ # Install globally
52
+ npm install -g @aicgen/aicgen
53
+
54
+ # Or use with npx (no installation)
55
+ npx @aicgen/aicgen init
56
+ ```
57
+
58
+ ### From Binary (Standalone)
59
+
60
+ Download the latest binary for your platform from the [releases page](https://github.com/aicgen/aicgen/releases):
61
+
62
+ - **Windows**: `aicgen.exe`
63
+ - **Linux**: `aicgen-linux`
64
+ - **macOS**: `aicgen-macos`
65
+
66
+ ```bash
67
+ # Windows
68
+ .\aicgen.exe init
69
+ ```
70
+
71
+ ### From Source
72
+
73
+ ```bash
74
+ git clone https://github.com/aicgen/aicgen.git
75
+ cd aicgen
76
+ bun install
77
+ bun run build:binary
78
+ bun run start init
79
+ ```
80
+
81
+ ---
82
+
83
+ ## 📚 Guideline System
84
+
85
+ aicgen uses a **modular guideline architecture** with **82+ guidelines** organized into **12 categories**.
86
+
87
+ ```bash
88
+ # View guideline statistics
89
+ aicgen stats
90
+ ```
91
+
92
+ **Categories:**
93
+ - **Language** - TypeScript, Python, Go, Rust, Java, C#, Ruby, JavaScript
94
+ - **Architecture** - Layered, Modular Monolith, Microservices, Event-Driven, Hexagonal
95
+ - **DevOps** - CI/CD, Docker, Observability (Log formats, Metrics)
96
+ - **Best Practices** - SOLID, DRY, Clean Code principles
97
+ - And more...
98
+
99
+ ## 📁 Generated Outputs
100
+
101
+ ### For Claude Code
102
+ ```text
103
+ CLAUDE.md # Master instructions (project root)
104
+ .claude/
105
+ ├── settings.json # Hooks & permissions
106
+ ├── guidelines/ # Modular guidelines
107
+ │ ├── language.md
108
+ │ ├── architecture.md
109
+ │ └── ...
110
+ └── agents/ # Sub-agents
111
+ └── guideline-checker.md
112
+ ```
113
+
114
+ ### For GitHub Copilot
115
+ ```text
116
+ .github/
117
+ ├── copilot-instructions.md # Master instructions
118
+ └── instructions/ # Topic-specific files
119
+ ```
120
+
121
+ ### For Gemini / Antigravity
122
+ ```text
123
+ .gemini/ # or .agent/
124
+ └── instructions.md # Consolidated system prompt
125
+ ```
126
+
127
+ ---
128
+
129
+ ## 🗺️ Roadmap
130
+
131
+ ### ✅ Completed
132
+
133
+ - [x] Interactive CLI wizard with back navigation
134
+ - [x] Multi-assistant support (Claude Code, Copilot, Gemini, Antigravity, Codex)
135
+ - [x] 82+ guidelines across 12 categories
136
+ - [x] Architecture-aware configuration (Layered, Modular Monolith, Microservices, etc.)
137
+ - [x] Auto-generated hooks and sub-agents for Claude Code
138
+ - [x] Custom guideline management (add/remove)
139
+ - [x] GitHub-based guideline updates
140
+
141
+ ### 🚧 Future Enhancements
142
+
143
+ - [ ] Custom validation hooks
144
+ - [ ] Guideline versioning and diffing
145
+ - [ ] Project-specific guideline templates
146
+
147
+ ## 🛠️ Development
148
+
149
+ ### Running Tests
150
+
151
+ The project includes a comprehensive test suite with 60+ tests covering all core functionality:
152
+
153
+ ```bash
154
+ # Run all tests
155
+ bun test
156
+
157
+ # Run tests with coverage report
158
+ bun test --coverage
159
+
160
+ # Run tests in watch mode
161
+ bun test --watch
162
+ ```
163
+
164
+ ### Test Coverage
165
+
166
+ Current test coverage: **94%** (93.44% function coverage, 94.52% line coverage)
167
+
168
+ **Test Suite Includes:**
169
+ - ✅ GuidelineLoader tests (filtering, level selection, architecture handling)
170
+ - ✅ Tarball extraction tests (CONFIG-based prefix validation)
171
+ - ✅ AssistantFileWriter tests (all 5 assistants - Claude Code, Copilot, Gemini, Antigravity, Codex)
172
+ - ✅ File generation and path handling (cross-platform compatibility)
173
+ - ✅ Content validation and metadata inclusion
174
+
175
+ Tests are automatically excluded from builds via `tsconfig.json`.
176
+
177
+ ### Project Structure
178
+
179
+ ```
180
+ src/
181
+ ├── __tests__/ # Test suite
182
+ │ └── services/
183
+ │ ├── guideline-loader.test.ts
184
+ │ ├── tarball-extraction.test.ts
185
+ │ └── assistant-file-writer.test.ts
186
+ ├── commands/ # CLI commands (init, update, quick-add)
187
+ ├── services/ # Core business logic
188
+ └── config.ts # Configuration management
189
+ ```
190
+
191
+ ---
192
+
193
+ ## 🤝 Contributing
194
+
195
+ Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for details.
196
+
197
+ ## 📄 License
198
+
199
+ MIT © 2025
@@ -0,0 +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
+
34
+ </svg>
@@ -0,0 +1,41 @@
1
+ <svg width="700" height="150" viewBox="0 0 700 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
+ <g transform="translate(290, 85)" text-anchor="start">
34
+ <text x="0" y="0" font-family="'Segoe UI', Roboto, Helvetica, Arial, sans-serif" font-weight="bold" font-size="32" fill="white" letter-spacing="1">
35
+ AI Config Generator
36
+ </text>
37
+ <text x="0" y="24" font-family="'Segoe UI', Roboto, Helvetica, Arial, sans-serif" font-weight="400" font-size="14" fill="#94a3b8" letter-spacing="1.2">
38
+ for better coding
39
+ </text>
40
+ </g>
41
+ </svg>