@warpgogol/forge 0.17.0 → 0.18.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/README.md CHANGED
@@ -1,20 +1,203 @@
1
1
  # @warpgogol/forge
2
2
 
3
+ [Українська](README.uk.md) | English
4
+
3
5
  Portable governance engine for AI-assisted project development. Provides skills, RFC/ADR workflows, naming conventions, spec vendoring, and a CLI — all framework-agnostic and dependency-free (only `yaml` + `zod`).
4
6
 
5
- ## Install
7
+ ## What you can build with Forge
8
+
9
+ Forge supports four kinds of projects. You pick one when you start — everything else is automatic.
10
+
11
+ | Project type | What it is | Example ideas |
12
+ | --- | --- | --- |
13
+ | **Website** | A public website or web app — pages, blog, portfolio, landing page, online store | Photography studio site, restaurant website, SaaS landing page |
14
+ | **Browser game** | An interactive game that runs in a web browser — 2D, arcade, puzzle, adventure | Catch falling stars, tile-matching puzzle, platformer |
15
+ | **Video** | A programmatic video composition — animated logo, intro, product showcase, motion design | Brand intro video, product demo, social media ad clip |
16
+ | **Governance / library** | A code library or governance-only project — no website, no game, no video, just structure and documentation | npm package, internal toolkit, documentation hub |
17
+
18
+ Each project type gets its own scaffold: the right folder structure, the right dependencies, the right tools. You don't need to know what any of those are — Forge sets them up for you.
19
+
20
+ ---
21
+
22
+ ## Complete installation guide (from zero)
23
+
24
+ If you've never programmed before, this section takes you from a completely empty computer to a working Forge setup. Follow the steps for your operating system.
25
+
26
+ ### What you need
27
+
28
+ You need two free programs:
29
+
30
+ - **Node.js** (version 22 or newer) — lets your computer run JavaScript tools.
31
+ - **pnpm** — the package manager Forge uses to install dependencies. It's built into Node.js and just needs to be switched on.
32
+
33
+ Both are free. You install Node.js first, then enable pnpm with a single command.
34
+
35
+ ### Ubuntu
36
+
37
+ #### Step 1 — Install Node.js
38
+
39
+ 1. Open the **Terminal** app (press `Ctrl + Alt + T`, or search for "Terminal" in your applications).
40
+
41
+ 2. Download and install Node.js 22 (LTS) by pasting this command and pressing Enter:
42
+
43
+ ```sh
44
+ curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash - && sudo apt-get install -y nodejs
45
+ ```
46
+
47
+ You'll be asked for your password — type it (you won't see the characters as you type, that's normal) and press Enter.
48
+
49
+ 3. Verify it worked:
50
+
51
+ ```sh
52
+ node --version
53
+ ```
54
+
55
+ You should see a version number like `v22.x.x`, not an error message.
56
+
57
+ #### Step 2 — Enable pnpm
58
+
59
+ Node.js includes a tool called **Corepack** that manages package managers. Enable pnpm with:
60
+
61
+ ```sh
62
+ corepack enable pnpm
63
+ ```
64
+
65
+ Verify:
66
+
67
+ ```sh
68
+ pnpm --version
69
+ ```
70
+
71
+ You should see a version number like `10.x.x`.
72
+
73
+ #### Step 3 — Install Forge globally
74
+
75
+ Installing Forge globally means the `forge` command is available everywhere on your computer, not just inside one project:
76
+
77
+ ```sh
78
+ pnpm add -g @warpgogol/forge
79
+ ```
80
+
81
+ Verify:
6
82
 
7
83
  ```sh
8
- npm install @warpgogol/forge
9
- # or
10
- pnpm add @warpgogol/forge
84
+ forge --version
11
85
  ```
12
86
 
87
+ You should see a version number. Forge is now installed and ready.
88
+
89
+ #### Step 4 — Install an AI-powered IDE
90
+
91
+ Forge works through conversation with an AI agent. You need an IDE that supports AI agents. We recommend **Windsurf** (tested with Forge):
92
+
93
+ 1. Go to [windsurf.com](https://windsurf.com) and download the Linux version.
94
+ 2. Open the downloaded file and follow the installer.
95
+ 3. Launch Windsurf.
96
+
97
+ You can also use **Cursor** ([cursor.com](https://cursor.com)) or any IDE that supports AI agent skills.
98
+
99
+ ### Windows
100
+
101
+ #### Step 1 — Install Node.js
102
+
103
+ 1. Go to [nodejs.org](https://nodejs.org) in your web browser.
104
+ 2. Download the **LTS version** (it will say "LTS" and "Recommended for Most Users"). It should be version 22.x or newer.
105
+ 3. Run the downloaded installer (`.msi` file). Accept all default options by clicking **Next** through each screen, then **Install**. If Windows asks for permission, click **Yes**.
106
+
107
+ 4. Verify it worked. Open **PowerShell** (search for "PowerShell" in the Start menu) and type:
108
+
109
+ ```sh
110
+ node --version
111
+ ```
112
+
113
+ You should see a version number like `v22.x.x`, not an error message.
114
+
115
+ #### Step 2 — Enable pnpm
116
+
117
+ Node.js includes a tool called **Corepack** that manages package managers. Enable pnpm with:
118
+
119
+ ```sh
120
+ corepack enable pnpm
121
+ ```
122
+
123
+ Verify:
124
+
125
+ ```sh
126
+ pnpm --version
127
+ ```
128
+
129
+ You should see a version number like `10.x.x`.
130
+
131
+ #### Step 3 — Install Forge globally
132
+
133
+ Installing Forge globally means the `forge` command is available everywhere on your computer, not just inside one project:
134
+
135
+ ```sh
136
+ pnpm add -g @warpgogol/forge
137
+ ```
138
+
139
+ Verify:
140
+
141
+ ```sh
142
+ forge --version
143
+ ```
144
+
145
+ You should see a version number. Forge is now installed and ready.
146
+
147
+ #### Step 4 — Install an AI-powered IDE
148
+
149
+ Forge works through conversation with an AI agent. You need an IDE that supports AI agents. We recommend **Windsurf** (tested with Forge):
150
+
151
+ 1. Go to [windsurf.com](https://windsurf.com) and download the Windows version.
152
+ 2. Run the downloaded installer and follow the setup wizard.
153
+ 3. Launch Windsurf.
154
+
155
+ You can also use **Cursor** ([cursor.com](https://cursor.com)) or any IDE that supports AI agent skills.
156
+
157
+ ### Optional — Install FFmpeg (only for video projects)
158
+
159
+ If you're planning to create **video** projects (the `editframe` profile), you need **FFmpeg** — a free tool for processing video and audio.
160
+
161
+ **Ubuntu:**
162
+
163
+ ```sh
164
+ sudo apt-get install -y ffmpeg
165
+ ffmpeg -version
166
+ ```
167
+
168
+ **Windows:**
169
+
170
+ 1. Go to [ffmpeg.org/download.html](https://ffmpeg.org/download.html) in your browser.
171
+ 2. Download a Windows build (look for "Windows builds" — the gyan.dev or BtbN builds are good choices).
172
+ 3. Extract the downloaded `.zip` file to a folder, e.g. `C:\ffmpeg`.
173
+ 4. Add FFmpeg to your system PATH:
174
+ - Open the Start menu, search for "Environment Variables", and click "Edit the system environment variables".
175
+ - Click **Environment Variables**.
176
+ - Under "System variables" (or "User variables"), find **Path**, select it, and click **Edit**.
177
+ - Click **New** and type `C:\ffmpeg\bin` (or wherever you extracted FFmpeg, in the `bin` subfolder).
178
+ - Click **OK** on all three windows.
179
+ 5. Close and reopen PowerShell, then verify:
180
+
181
+ ```sh
182
+ ffmpeg -version
183
+ ```
184
+
185
+ You should see version information, not an error.
186
+
187
+ ### Troubleshooting
188
+
189
+ - **"command not found" after installing Node.js** — Close and reopen your terminal (Ubuntu) or PowerShell (Windows). The system needs to reload the list of available commands.
190
+ - **"EACCES permission denied" on Ubuntu when installing Forge globally** — Run `sudo pnpm add -g @warpgogol/forge` instead.
191
+ - **"corepack: command not found"** — Your Node.js version is too old. Install Node.js 22+ using the steps above.
192
+ - **Windsurf can't find `forge`** — Close and reopen Windsurf after installing Forge. IDEs need to restart to pick up new global commands.
193
+
194
+ ---
195
+
13
196
  ## Quick start
14
197
 
15
198
  ### For creative operators — no terminal needed
16
199
 
17
- You don't need to know what a terminal is. You don't need to type a single command. If you have an AI-powered IDE (like Windsurf, Devin, or Cursor), Forge works entirely through conversation.
200
+ You don't need to know what a terminal is. You don't need to type a single command. If you have an AI-powered IDE like Windsurf or Cursor Forge works entirely through conversation.
18
201
 
19
202
  #### Start a new project from scratch
20
203
 
@@ -34,16 +217,22 @@ You don't need to know what a terminal is. You don't need to type a single comma
34
217
 
35
218
  > I want to make a browser game where you catch falling stars.
36
219
 
220
+ Or:
221
+
222
+ > I want to create a TypeScript library for calculating astrology charts.
223
+
37
224
  That's it. The AI agent will do everything else:
38
225
  - Install Forge and all necessary tools
39
- - Set up the project structure based on what you described (video, website, game, etc.)
226
+ - Set up the project structure based on what you described (video, website, game, library, etc.)
40
227
  - Configure language preferences and project settings
41
- - Start a live preview so you can see your work
228
+ - Start a live preview so you can see your work (for websites, games, and videos)
42
229
  - Tell you the URL to open in your browser
43
230
 
44
- 4. **Watch the preview.** The AI agent will give you a localhost link. Click it — your project is already running. As you describe changes, the agent updates the project and the preview refreshes automatically.
231
+ 4. **Watch the preview.** For websites, games, and videos, the AI agent will give you a localhost link. Click it — your project is already running. As you describe changes, the agent updates the project and the preview refreshes automatically.
232
+
233
+ For governance and library projects, there's no visual preview — the agent will set up the project structure and tell you when it's ready.
45
234
 
46
- 5. **Create together.** From here on, you just talk. Want a different color? Want to add a scene? Want to change the music? Just say it. The agent handles all the technical work.
235
+ 5. **Create together.** From here on, you just talk. Want a different color? Want to add a scene? Want to change the music? Want to add a new function to your library? Just say it. The agent handles all the technical work.
47
236
 
48
237
  #### Bring an existing project into Forge
49
238
 
@@ -56,11 +245,11 @@ If you already have a project somewhere else and want to move it into Forge:
56
245
  > I want to bring my existing project into Forge. It's located at /path/to/my/project.
57
246
 
58
247
  The agent will:
59
- - Detect what kind of project it is (website, video, game, etc.)
248
+ - Detect what kind of project it is (website, video, game, library, etc.)
60
249
  - Move all your files into the new Forge project — including hidden files like `.env`
61
250
  - Optionally bring your git history
62
251
  - Verify everything builds correctly
63
- - Start a live preview
252
+ - Start a live preview (for visual project types)
64
253
 
65
254
  #### What if something goes wrong?
66
255
 
@@ -74,15 +263,20 @@ Just tell the AI agent. It can check the project's health, fix issues, and expla
74
263
 
75
264
  ```sh
76
265
  # Create a new project (scaffold + init + skills + AGENTS.md in one command)
77
- npx forge create my-project
266
+ forge create my-project
78
267
 
79
268
  # With a specific stack profile
80
- npx forge create my-site --profile astro-typescript-turborepo
81
- npx forge create my-game --profile phaser-turborepo
82
- npx forge create my-video --profile editframe
269
+ forge create my-site --profile astro-typescript-turborepo
270
+ forge create my-game --profile phaser-turborepo
271
+ forge create my-video --profile editframe
272
+ forge create my-library --profile forge-shell
83
273
 
84
- # With a non-default package manager
85
- npx forge create my-project --package-manager npm
274
+ ```
275
+
276
+ If Forge is not installed globally, use `pnpm dlx` instead:
277
+
278
+ ```sh
279
+ pnpm dlx @warpgogol/forge create my-project
86
280
  ```
87
281
 
88
282
  #### Bring an existing project into Forge
@@ -91,7 +285,7 @@ There is no CLI command for transplant — it is an interactive, AI-guided proce
91
285
 
92
286
  ```sh
93
287
  # 1. Create a new empty Forge project
94
- npx forge create my-project
288
+ forge create my-project
95
289
 
96
290
  # 2. Open the project in Windsurf (tested with forge) or your preferred IDE
97
291
 
@@ -108,29 +302,31 @@ npx forge create my-project
108
302
 
109
303
  ```sh
110
304
  # Check project health
111
- npx forge doctor
305
+ forge doctor
112
306
 
113
307
  # Validate RFCs
114
- npx forge rfc.validate
308
+ forge rfc.validate
115
309
 
116
310
  # List available skills
117
- npx forge skill.list
311
+ forge skill.list
118
312
  ```
119
313
 
120
314
  ## Stack profiles
121
315
 
122
316
  A stack profile defines the project scaffold: directory structure, dependencies, CI config, and first workspace. Choose a profile with `--profile` when creating a new project.
123
317
 
124
- | Profile | Description | First workspace | Use case |
125
- | --- | --- | --- | --- |
126
- | `forge-shell` | Minimal Forge shell (default) | — | Governance-only projects, libraries, non-web projects |
127
- | `astro-typescript-turborepo` | Astro + TypeScript + pnpm + Turborepo | `sites/my-site` | Websites, web apps, content-driven sites |
128
- | `phaser-turborepo` | Phaser + TypeScript + pnpm + Turborepo | `games/my-game` | Browser games, interactive experiences |
129
- | `editframe` | Editframe React + Vite + TailwindCSS | `compositions/my-first-video` | Video compositions, brand videos, motion design |
318
+ | Profile | Project type | Description | First workspace | Use case |
319
+ | --- | --- | --- | --- | --- |
320
+ | `forge-shell` | Governance / library | Minimal Forge shell (default) | — | Governance-only projects, libraries, non-web projects |
321
+ | `astro-typescript-turborepo` | Website | Astro + TypeScript + pnpm + Turborepo | `sites/my-site` | Websites, web apps, content-driven sites |
322
+ | `phaser-turborepo` | Browser game | Phaser + TypeScript + pnpm + Turborepo | `games/my-game` | Browser games, interactive experiences |
323
+ | `editframe` | Video | Editframe React + Vite + TailwindCSS | `compositions/my-first-video` | Video compositions, brand videos, motion design |
324
+
325
+ The `editframe` profile also supports an **HTML template** (instead of React) for users who prefer web components over JSX. Choose between the two during project setup.
130
326
 
131
327
  ```sh
132
328
  # List available profiles (after install)
133
- npx forge profile.validate
329
+ forge profile.validate
134
330
  ```
135
331
 
136
332
  When you bring an existing project through the `/forge-bootstrap` transplant mode, Forge detects the matching profile automatically by checking for marker files (`astro.config.*`, `phaser.config.*`, `editframe.config.*`, etc.).
@@ -141,13 +337,13 @@ When a new version of `@warpgogol/forge` is published, consumers upgrade additiv
141
337
 
142
338
  ```sh
143
339
  # 1. Install the latest version
144
- npm install @warpgogol/forge@latest
340
+ pnpm add -g @warpgogol/forge@latest
145
341
 
146
342
  # 2. Sync skills and binding defaults from the installed version
147
- npx forge upgrade
343
+ forge upgrade
148
344
 
149
345
  # 3. Check project health
150
- npx forge doctor
346
+ forge doctor
151
347
  ```
152
348
 
153
349
  `forge upgrade` is additive — it never overwrites operator-set bindings, never deletes files, and is idempotent. It updates `forge.syncedVersion` in `forge.yaml` to track the last synced version. Use `--dry-run` to preview changes.
package/README.uk.md ADDED
@@ -0,0 +1,471 @@
1
+ # @warpgogol/forge
2
+
3
+ Українська | [English](README.md)
4
+
5
+ Портативний рушій управління для розробки проєктів за допомогою ШІ. Надає навички, RFC/ADR робочі процеси, угоди про найменування, вендоринг специфікацій та CLI — все незалежне від фреймворку та без зайвих залежностей (тільки `yaml` + `zod`).
6
+
7
+ ## Що можна створити за допомогою Forge
8
+
9
+ Forge підтримує чотири типи проєктів. Ви обираєте один на старті — все інше відбувається автоматично.
10
+
11
+ | Тип проєкту | Що це | Приклади |
12
+ | --- | --- | --- |
13
+ | **Вебсайт** | Публічний сайт або вебзастосунок — сторінки, блог, портфоліо, лендінг, інтернет-магазин | Сайт фотостудії, сайт ресторану, лендінг SaaS |
14
+ | **Браузерна гра** | Інтерактивна гра, що працює в браузері — 2D, аркада, головоломка, пригода | Лови зірки, головоломка з плитками, платформер |
15
+ | **Відео** | Програмна відеокомпозиція — анімований логотип, інтро, презентація продукту, motion-дизайн | Брендове інтро, демо продукту, реклама для соцмереж |
16
+ | **Управління / бібліотека** | Бібліотека коду або проєкт лише з управлінською структурою — без сайту, без гри, без відео, лише структура та документація | npm-пакет, внутрішній інструмент, центр документації |
17
+
18
+ Кожен тип проєкту отримує власний каркас: правильну структуру папок, правильні залежності, правильні інструменти. Вам не потрібно знати, що це таке — Forge налаштує все за вас.
19
+
20
+ ---
21
+
22
+ ## Повний посібник зі встановлення (з нуля)
23
+
24
+ Якщо ви ніколи раніше не програмували, цей розділ проведе вас від абсолютно порожнього комп'ютера до робочого налаштування Forge. Виконайте кроки для вашої операційної системи.
25
+
26
+ ### Що вам потрібно
27
+
28
+ Потрібні дві безкоштовні програми:
29
+
30
+ - **Node.js** (версія 22 або новіша) — дозволяє вашому комп'ютеру запускати JavaScript-інструменти.
31
+ - **pnpm** — менеджер пакетів, який Forge використовує для встановлення залежностей. Він вбудований у Node.js і його лише треба увімкнути.
32
+
33
+ Обидві програми безкоштовні. Спочатку встановлюєте Node.js, потім вмикаєте pnpm однією командою.
34
+
35
+ ### Ubuntu
36
+
37
+ #### Крок 1 — Встановлення Node.js
38
+
39
+ 1. Відкрийте програму **Термінал** (натисніть `Ctrl + Alt + T` або знайдіть «Термінал» у ваших програмах).
40
+
41
+ 2. Завантажте та встановіть Node.js 22 (LTS), вставивши цю команду та натиснувши Enter:
42
+
43
+ ```sh
44
+ curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash - && sudo apt-get install -y nodejs
45
+ ```
46
+
47
+ Вас попросять ввести пароль — введіть його (символи не відображатимуться під час введення, це нормально) і натисніть Enter.
48
+
49
+ 3. Перевірте, чи все працює:
50
+
51
+ ```sh
52
+ node --version
53
+ ```
54
+
55
+ Ви маєте побачити номер версії, наприклад `v22.x.x`, а не повідомлення про помилку.
56
+
57
+ #### Крок 2 — Увімкнення pnpm
58
+
59
+ Node.js містить інструмент **Corepack**, який керує менеджерами пакетів. Увімкніть pnpm командою:
60
+
61
+ ```sh
62
+ corepack enable pnpm
63
+ ```
64
+
65
+ Перевірте:
66
+
67
+ ```sh
68
+ pnpm --version
69
+ ```
70
+
71
+ Ви маєте побачити номер версії, наприклад `10.x.x`.
72
+
73
+ #### Крок 3 — Глобальне встановлення Forge
74
+
75
+ Глобальне встановлення означає, що команда `forge` доступна скрізь на вашому комп'ютері, а не лише в одному проєкті:
76
+
77
+ ```sh
78
+ pnpm add -g @warpgogol/forge
79
+ ```
80
+
81
+ Перевірте:
82
+
83
+ ```sh
84
+ forge --version
85
+ ```
86
+
87
+ Ви маєте побачити номер версії. Forge встановлено та готовий до роботи.
88
+
89
+ #### Крок 4 — Встановлення IDE зі штучним інтелектом
90
+
91
+ Forge працює через розмову з ШІ-агентом. Вам потрібне IDE, що підтримує ШІ-агентів. Рекомендуємо **Windsurf** (протестовано з Forge):
92
+
93
+ 1. Перейдіть на [windsurf.com](https://windsurf.com) та завантажте версію для Linux.
94
+ 2. Відкрийте завантажений файл і дотримуйтесь інструкцій установника.
95
+ 3. Запустіть Windsurf.
96
+
97
+ Можете також використовувати **Cursor** ([cursor.com](https://cursor.com)) або будь-яке IDE, що підтримує навички ШІ-агентів.
98
+
99
+ ### Windows
100
+
101
+ #### Крок 1 — Встановлення Node.js
102
+
103
+ 1. Відкрийте [nodejs.org](https://nodejs.org) у вашому браузері.
104
+ 2. Завантажте **LTS-версію** (на ній буде написано «LTS» та «Recommended for Most Users»). Версія має бути 22.x або новіша.
105
+ 3. Запустіть завантажений установник (файл `.msi`). Прийміть усі стандартні параметри, натискаючи **Next** на кожному екрані, потім **Install**. Якщо Windows попросить дозвіл, натисніть **Yes**.
106
+
107
+ 4. Перевірте, чи все працює. Відкрийте **PowerShell** (знайдіть «PowerShell» у меню Пуск) і введіть:
108
+
109
+ ```sh
110
+ node --version
111
+ ```
112
+
113
+ Ви маєте побачити номер версії, наприклад `v22.x.x`, а не повідомлення про помилку.
114
+
115
+ #### Крок 2 — Увімкнення pnpm
116
+
117
+ Node.js містить інструмент **Corepack**, який керує менеджерами пакетів. Увімкніть pnpm командою:
118
+
119
+ ```sh
120
+ corepack enable pnpm
121
+ ```
122
+
123
+ Перевірте:
124
+
125
+ ```sh
126
+ pnpm --version
127
+ ```
128
+
129
+ Ви маєте побачити номер версії, наприклад `10.x.x`.
130
+
131
+ #### Крок 3 — Глобальне встановлення Forge
132
+
133
+ Глобальне встановлення означає, що команда `forge` доступна скрізь на вашому комп'ютері, а не лише в одному проєкті:
134
+
135
+ ```sh
136
+ pnpm add -g @warpgogol/forge
137
+ ```
138
+
139
+ Перевірте:
140
+
141
+ ```sh
142
+ forge --version
143
+ ```
144
+
145
+ Ви маєте побачити номер версії. Forge встановлено та готовий до роботи.
146
+
147
+ #### Крок 4 — Встановлення IDE зі штучним інтелектом
148
+
149
+ Forge працює через розмову з ШІ-агентом. Вам потрібне IDE, що підтримує ШІ-агентів. Рекомендуємо **Windsurf** (протестовано з Forge):
150
+
151
+ 1. Перейдіть на [windsurf.com](https://windsurf.com) та завантажте версію для Windows.
152
+ 2. Запустіть завантажений установник і дотримуйтесь майстра налаштування.
153
+ 3. Запустіть Windsurf.
154
+
155
+ Можете також використовувати **Cursor** ([cursor.com](https://cursor.com)) або будь-яке IDE, що підтримує навички ШІ-агентів.
156
+
157
+ ### Додатково — Встановлення FFmpeg (лише для відеопроєктів)
158
+
159
+ Якщо ви плануєте створювати **відеопроєкти** (профіль `editframe`), вам потрібен **FFmpeg** — безкоштовний інструмент для обробки відео та аудіо.
160
+
161
+ **Ubuntu:**
162
+
163
+ ```sh
164
+ sudo apt-get install -y ffmpeg
165
+ ffmpeg -version
166
+ ```
167
+
168
+ **Windows:**
169
+
170
+ 1. Відкрийте [ffmpeg.org/download.html](https://ffmpeg.org/download.html) у браузері.
171
+ 2. Завантажте збірку для Windows (шукайте «Windows builds» — збірки gyan.dev або BtbN — хороші варіанти).
172
+ 3. Розпакуйте завантажений `.zip` файл у папку, наприклад `C:\ffmpeg`.
173
+ 4. Додайте FFmpeg до системної змінної PATH:
174
+ - Відкрийте меню Пуск, знайдіть «Environment Variables» і натисніть «Edit the system environment variables».
175
+ - Натисніть **Environment Variables**.
176
+ - У розділі «System variables» (або «User variables») знайдіть **Path**, виберіть його та натисніть **Edit**.
177
+ - Натисніть **New** і введіть `C:\ffmpeg\bin` (або туди, куди ви розпакували FFmpeg, у підпапку `bin`).
178
+ - Натисніть **OK** у всіх трьох вікнах.
179
+ 5. Закрийте та знову відкрийте PowerShell, потім перевірте:
180
+
181
+ ```sh
182
+ ffmpeg -version
183
+ ```
184
+
185
+ Ви маєте побачити інформацію про версію, а не помилку.
186
+
187
+ ### Усунення проблем
188
+
189
+ - **«command not found» після встановлення Node.js** — Закрийте та знову відкрийте термінал (Ubuntu) або PowerShell (Windows). Системі потрібно перезавантажити список доступних команд.
190
+ - **«EACCES permission denied» в Ubuntu під час глобального встановлення Forge** — Виконайте `sudo pnpm add -g @warpgogol/forge`.
191
+ - **«corepack: command not found»** — Ваша версія Node.js занадто стара. Встановіть Node.js 22+ за кроками вище.
192
+ - **Windsurf не бачить `forge`** — Закрийте та знову відкрийте Windsurf після встановлення Forge. IDE потрібно перезапустити, щоб підхопити нові глобальні команди.
193
+
194
+ ---
195
+
196
+ ## Швидкий старт
197
+
198
+ ### Для креативних операторів — термінал не потрібен
199
+
200
+ Вам не потрібно знати, що таке термінал. Вам не потрібно вводити жодної команди. Якщо у вас є IDE зі штучним інтелектом — наприклад Windsurf або Cursor — Forge працює виключно через розмову.
201
+
202
+ #### Створення нового проєкту з нуля
203
+
204
+ 1. **Створіть порожню папку** на комп'ютері — де завгодно. Назвіть її як хочете назвати свій проєкт (малі літери та дефіси, наприклад `my-brand-video`).
205
+
206
+ 2. **Відкрийте цю папку в вашому IDE.** Папка порожня — це саме те, що треба.
207
+
208
+ 3. **Скажіть ШІ-агенту, що ви хочете створити.** Просто напишіть це в чаті своїми словами. Наприклад:
209
+
210
+ > Я хочу створити брендове відео для своєї кав'ярні. Воно має мати анімований логотип, коротке інтро та презентацію продукту.
211
+
212
+ Або:
213
+
214
+ > Я хочу зробити вебсайт для своєї фотостудії.
215
+
216
+ Або:
217
+
218
+ > Я хочу створити браузерну гру, де ловиш зірки, що падають.
219
+
220
+ Або:
221
+
222
+ > Я хочу створити TypeScript-бібліотеку для розрахунку астрологічних карт.
223
+
224
+ Це все. ШІ-агент зробить усе інше:
225
+ - Встановить Forge та всі необхідні інструменти
226
+ - Налаштує структуру проєкту залежно від того, що ви описали (відео, вебсайт, гра, бібліотека тощо)
227
+ - Налаштує мовні вподобання та параметри проєкту
228
+ - Запустить живий попередній перегляд, щоб ви бачили свою роботу (для вебсайтів, ігор та відео)
229
+ - Скаже вам URL для відкриття в браузері
230
+
231
+ 4. **Дивіться попередній перегляд.** Для вебсайтів, ігор та відео ШІ-агент дасть вам посилання localhost. Натисніть його — ваш проєкт уже запущений. Коли ви описуєте зміни, агент оновлює проєкт, а попередній перегляд оновлюється автоматично.
232
+
233
+ Для проєктів управління та бібліотек візуального попереднього перегляду немає — агент налаштує структуру проєкту та скаже, коли все готово.
234
+
235
+ 5. **Створюйте разом.** Далі ви просто розмовляєте. Хочете інший колір? Хочете додати сцену? Хочете змінити музику? Хочете додати нову функцію до бібліотеки? Просто скажіть. Агент виконає всю технічну роботу.
236
+
237
+ #### Перенесення наявного проєкту у Forge
238
+
239
+ Якщо ви вже маєте проєкт десь інше і хочете перенести його у Forge:
240
+
241
+ 1. **Створіть порожню папку** та відкрийте її в вашому IDE.
242
+
243
+ 2. **Скажіть ШІ-агенту:**
244
+
245
+ > Я хочу перенести свій наявний проєкт у Forge. Він знаходиться за шляхом /path/to/my/project.
246
+
247
+ Агент:
248
+ - Визначить, який це тип проєкту (вебсайт, відео, гра, бібліотека тощо)
249
+ - Перемістить усі ваші файли у новий проєкт Forge — включно з прихованими файлами на кшталт `.env`
250
+ - За бажанням перенесе вашу історію git
251
+ - Перевірить, чи все коректно збирається
252
+ - Запустить живий попередній перегляд (для візуальних типів проєктів)
253
+
254
+ #### Що робити, якщо щось пішло не так?
255
+
256
+ Просто скажіть ШІ-агенту. Він може перевірити стан проєкту, виправити проблеми та пояснити, що сталося — все простою мовою. Вам ніколи не потрібно відкривати термінал або вводити команди самостійно.
257
+
258
+ ---
259
+
260
+ ### Для розробників — CLI-команди
261
+
262
+ #### Створення нового проєкту
263
+
264
+ ```sh
265
+ # Створити новий проєкт (каркас + ініціалізація + навички + AGENTS.md однією командою)
266
+ forge create my-project
267
+
268
+ # З конкретним профілем стеку
269
+ forge create my-site --profile astro-typescript-turborepo
270
+ forge create my-game --profile phaser-turborepo
271
+ forge create my-video --profile editframe
272
+ forge create my-library --profile forge-shell
273
+
274
+ ```
275
+
276
+ Якщо Forge не встановлено глобально, використовуйте `pnpm dlx`:
277
+
278
+ ```sh
279
+ pnpm dlx @warpgogol/forge create my-project
280
+ ```
281
+
282
+ #### Перенесення наявного проєкту у Forge
283
+
284
+ CLI-команди для перенесення немає — це інтерактивний процес під керівництвом ШІ:
285
+
286
+ ```sh
287
+ # 1. Створіть новий порожній проєкт Forge
288
+ forge create my-project
289
+
290
+ # 2. Відкрийте проєкт у Windsurf (протестовано з Forge) або вашому IDE
291
+
292
+ # 3. Запустіть навичку /forge-bootstrap і оберіть режим "transplant"
293
+ # Навичка:
294
+ # - Запитає шлях до вашого наявного коду
295
+ # - Автоматично визначить стек (Astro, Phaser, Editframe тощо)
296
+ # - Перенесе всі файли (включно з .env та git-ігнорованими)
297
+ # - За бажанням перенесе історію git
298
+ # - Перевірить збірку
299
+ ```
300
+
301
+ #### Діагностика та перевірка
302
+
303
+ ```sh
304
+ # Перевірити стан проєкту
305
+ forge doctor
306
+
307
+ # Валідувати RFC
308
+ forge rfc.validate
309
+
310
+ # Список доступних навичок
311
+ forge skill.list
312
+ ```
313
+
314
+ ## Профілі стеку
315
+
316
+ Профіль стеку визначає каркас проєкту: структуру директорій, залежності, конфігурацію CI та перший робочий простір. Оберіть профіль прапорцем `--profile` під час створення проєкту.
317
+
318
+ | Профіль | Тип проєкту | Опис | Перший робочий простір | Призначення |
319
+ | --- | --- | --- | --- | --- |
320
+ | `forge-shell` | Управління / бібліотека | Мінімальний каркас Forge (за замовчуванням) | — | Проєкти лише з управлінням, бібліотеки, невеб-проєкти |
321
+ | `astro-typescript-turborepo` | Вебсайт | Astro + TypeScript + pnpm + Turborepo | `sites/my-site` | Вебсайти, вебзастосунки, контентні сайти |
322
+ | `phaser-turborepo` | Браузерна гра | Phaser + TypeScript + pnpm + Turborepo | `games/my-game` | Браузерні ігри, інтерактивні досвіди |
323
+ | `editframe` | Відео | Editframe React + Vite + TailwindCSS | `compositions/my-first-video` | Відеокомпозиції, брендові відео, motion-дизайн |
324
+
325
+ Профіль `editframe` також підтримує **HTML-шаблон** (замість React) для користувачів, які віддають перевагу веб-компонентам замість JSX. Оберіть між ними під час налаштування проєкту.
326
+
327
+ ```sh
328
+ # Список доступних профілів (після встановлення)
329
+ forge profile.validate
330
+ ```
331
+
332
+ Коли ви переносите наявний проєкт через режим `/forge-bootstrap` transplant, Forge автоматично визначає відповідний профіль, перевіряючи файли-маркери (`astro.config.*`, `phaser.config.*`, `editframe.config.*` тощо).
333
+
334
+ ## Процес оновлення
335
+
336
+ Коли публікується нова версія `@warpgogol/forge`, споживачі оновлюються адитивно:
337
+
338
+ ```sh
339
+ # 1. Встановити останню версію
340
+ pnpm add -g @warpgogol/forge@latest
341
+
342
+ # 2. Синхронізувати навички та стандартні прив'язки з встановленої версії
343
+ forge upgrade
344
+
345
+ # 3. Перевірити стан проєкту
346
+ forge doctor
347
+ ```
348
+
349
+ `forge upgrade` — адитивний: він ніколи не перезаписує прив'язки, встановлені оператором, ніколи не видаляє файли та є ідемпотентним. Він оновлює `forge.syncedVersion` у `forge.yaml`, щоб відстежувати останню синхронізовану версію. Використовуйте `--dry-run` для попереднього перегляду змін.
350
+
351
+ ## Що дає Forge
352
+
353
+ - **44 навички** (fo-pipeline, grilling, preferences, написання навичок, Editframe відеокомпозиція) — розгортаються у `.agents/skills/` командою `forge create`
354
+ - **RFC робочий процес** — створення, валідація, список, граф, архівування, acceptance-зондування, журнали рішень, DNA-трасування
355
+ - **ADR робочий процес** — легковісні архітектурні записи рішень
356
+ - **Вендоринг специфікацій** — вендоринг зовнішніх пакетів специфікацій як незмінних знімків з маніфестами цілісності
357
+ - **Угоди про найменування** — linting kebab-case
358
+ - **Linting робочих процесів** — валідація frontmatter та посилань у `.agents/workflows/`
359
+ - **Каркаси стеків** — створення нового pnpm + Turborepo монорепозиторію з профілю
360
+ - **Контракт прив'язок** — декодування специфічних для проєкту команд/шляхів із навичок через `forge.yaml`
361
+
362
+ ## Життєвий цикл
363
+
364
+ Типовий життєвий цикл проєкту Forge:
365
+
366
+ 1. **Створення** — `forge create` ініціалізує новий проєкт з forge.yaml, навичками та директоріями документації
367
+ 2. **IDE** — відкрийте проєкт у Windsurf (протестовано з Forge) або вашому IDE
368
+ 3. **Bootstrap** — запустіть `/forge-bootstrap` для інтерактивного налаштування проєкту. Навичка підтримує два режими:
369
+ - **Greenfield** — створення нового проєкту з нуля: оберіть стек, заповніть прив'язки, ініціалізуйте git
370
+ - **Transplant** — перенесення наявного коду у Forge: визначення стеку, міграція коду (включно з git-ігнорованими файлами на кшталт `.env`), за бажанням перенесення історії git, перевірка збірки
371
+ 4. **Оновлення** — коли публікується нова версія `@warpgogol/forge`, запустіть `forge upgrade` для адитивної синхронізації навичок та стандартних прив'язок
372
+
373
+ ## forge.yaml
374
+
375
+ Єдине джерело істини для конфігурації проєкту. Створюється командою `forge create`:
376
+
377
+ ```yaml
378
+ schema: forge/config@1
379
+ project:
380
+ name: my-project
381
+ stack: [typescript]
382
+ packageManager: pnpm
383
+ paths:
384
+ rfcsDir: docs/rfcs
385
+ adrsDir: docs/adrs
386
+ skillsDir: .agents/skills
387
+ bindings:
388
+ schema: forge/bindings@1
389
+ commands:
390
+ validateRfc: "forge rfc.validate {id} --json"
391
+ typecheck: "pnpm run build:check"
392
+ test: "pnpm test"
393
+ paths:
394
+ invariantsFile: docs/architecture-dna.md
395
+ terminology:
396
+ invariants: DNA
397
+ ```
398
+
399
+ ## Програмний API
400
+
401
+ ```ts
402
+ import {
403
+ forgeCoreModule,
404
+ forgeRfcModule,
405
+ loadForgeConfig,
406
+ resolveBinding,
407
+ FORGE_SKILLS,
408
+ } from "@warpgogol/forge";
409
+
410
+ // Завантажити конфігурацію
411
+ const config = loadForgeConfig(process.cwd());
412
+
413
+ // Розв'язати прив'язку
414
+ const cmd = resolveBinding(config, "commands.validateRfc", { id: "RFC-0001" });
415
+
416
+ // Зареєструвати модулі у вашому реєстрі
417
+ const registry = /* ваш ForgeModuleRegistry */;
418
+ await forgeCoreModule.register(registry);
419
+ await forgeRfcModule.register(registry);
420
+ ```
421
+
422
+ ## Архітектура
423
+
424
+ | Директорія | Призначення |
425
+ | --- | --- |
426
+ | `src/` | Портативне ядро — типи, конфігурація, реєстр навичок, валідатори, онбординг. Нуль імпортів `@warpgogol/*`. |
427
+ | `os/` | Реєстрації ForgeModule. `compass` та `werkstatt` динамічно імпортують `@warpgogol/site-kernel-*` (м'яка деградація в автономному режимі). |
428
+ | `bin/` | Точка входу CLI (команда `forge`). |
429
+ | `skills/` | 44 визначення навичок (36 fo + 5 спільних + 3 мета) з frontmatter SKILL.md. |
430
+ | `scripts/` | Перевірка гігієни публікації (`publish-check.mjs`), запускається `prepublishOnly`. |
431
+ | `profiles/` | Профілі стеків для `forge.scaffold`. |
432
+
433
+ ## Публікація в npm
434
+
435
+ Цей пакет публікується в реєстр npm як `@warpgogol/forge`. Нижче описано, як опублікувати нову версію.
436
+
437
+ ### Передумови
438
+
439
+ - Обліковий запис npm з правами публікації в організації `@warpgogol`.
440
+ - Встановлені Node.js та pnpm локально.
441
+
442
+ ### Створення токена доступу
443
+
444
+ 1. Увійдіть на [npmjs.com](https://www.npmjs.com/).
445
+ 2. Перейдіть до **Access Tokens** (аватар → Access Tokens).
446
+ 3. Натисніть **Generate New Token** → оберіть **Classic Token** → тип **Publish**.
447
+ 4. Скопіюйте згенерований токен — він показується лише один раз.
448
+
449
+ ### Публікація нової версії
450
+
451
+ Виконайте такі команди з директорії `packages/forge`:
452
+
453
+ ```sh
454
+ # 1. Автентифікація в npm (інтерактивно — запитає username, password, OTP)
455
+ npm login
456
+
457
+ # 2. Зберегти auth-токен для реєстру (використайте токен з попереднього кроку)
458
+ npm config set //registry.npmjs.org/:_authToken=<TOKEN>
459
+
460
+ # 3. Підняти patch-версію (оновлює package.json + створює git commit + tag)
461
+ npm version patch
462
+
463
+ # 4. Опублікувати пакет публічно
464
+ npm publish --access public
465
+ ```
466
+
467
+ Після публікації перевірте нову версію на [npmjs.com/package/@warpgogol/forge](https://www.npmjs.com/package/@warpgogol/forge).
468
+
469
+ ## Ліцензія
470
+
471
+ Apache-2.0
package/dist/bin/cli.js CHANGED
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@warpgogol/forge",
3
- "version": "0.17.0",
3
+ "version": "0.18.0",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -15,107 +15,107 @@
15
15
  "framework"
16
16
  ],
17
17
  "homepage": "https://warpgogol.com",
18
- "main": "./dist/src/index.js",
19
- "types": "./dist/src/index.d.ts",
18
+ "main": "./src/index.ts",
19
+ "types": "./src/index.ts",
20
20
  "bin": {
21
21
  "forge": "./bin/cli.js"
22
22
  },
23
23
  "exports": {
24
24
  ".": {
25
- "types": "./dist/src/index.d.ts",
26
- "default": "./dist/src/index.js"
25
+ "types": "./src/index.ts",
26
+ "default": "./src/index.ts"
27
27
  },
28
28
  "./types": {
29
- "types": "./dist/src/types.d.ts",
30
- "default": "./dist/src/types.js"
29
+ "types": "./src/types.ts",
30
+ "default": "./src/types.ts"
31
31
  },
32
32
  "./utils": {
33
- "types": "./dist/src/utils/index.d.ts",
34
- "default": "./dist/src/utils/index.js"
33
+ "types": "./src/utils/index.ts",
34
+ "default": "./src/utils/index.ts"
35
35
  },
36
36
  "./config": {
37
- "types": "./dist/src/config/forge-config.d.ts",
38
- "default": "./dist/src/config/forge-config.js"
37
+ "types": "./src/config/forge-config.ts",
38
+ "default": "./src/config/forge-config.ts"
39
39
  },
40
40
  "./os/core": {
41
- "types": "./dist/os/core/core.module.d.ts",
42
- "default": "./dist/os/core/core.module.js"
41
+ "types": "./os/core/core.module.ts",
42
+ "default": "./os/core/core.module.ts"
43
43
  },
44
44
  "./os/compass": {
45
- "types": "./dist/os/compass/index.d.ts",
46
- "default": "./dist/os/compass/index.js"
45
+ "types": "./os/compass/index.ts",
46
+ "default": "./os/compass/index.ts"
47
47
  },
48
48
  "./os/naming": {
49
- "types": "./dist/os/naming/index.d.ts",
50
- "default": "./dist/os/naming/index.js"
49
+ "types": "./os/naming/index.ts",
50
+ "default": "./os/naming/index.ts"
51
51
  },
52
52
  "./os/naming-module": {
53
- "types": "./dist/os/naming/naming.module.d.ts",
54
- "default": "./dist/os/naming/naming.module.js"
53
+ "types": "./os/naming/naming.module.ts",
54
+ "default": "./os/naming/naming.module.ts"
55
55
  },
56
56
  "./os/rfc": {
57
- "types": "./dist/os/rfc/index.d.ts",
58
- "default": "./dist/os/rfc/index.js"
57
+ "types": "./os/rfc/index.ts",
58
+ "default": "./os/rfc/index.ts"
59
59
  },
60
60
  "./os/rfc-module": {
61
- "types": "./dist/os/rfc/rfc.module.d.ts",
62
- "default": "./dist/os/rfc/rfc.module.js"
61
+ "types": "./os/rfc/rfc.module.ts",
62
+ "default": "./os/rfc/rfc.module.ts"
63
63
  },
64
64
  "./os/werkstatt": {
65
- "types": "./dist/os/werkstatt/index.d.ts",
66
- "default": "./dist/os/werkstatt/index.js"
65
+ "types": "./os/werkstatt/index.ts",
66
+ "default": "./os/werkstatt/index.ts"
67
67
  },
68
68
  "./os/workflow": {
69
- "types": "./dist/os/workflow/index.d.ts",
70
- "default": "./dist/os/workflow/index.js"
69
+ "types": "./os/workflow/index.ts",
70
+ "default": "./os/workflow/index.ts"
71
71
  },
72
72
  "./os/workflow-module": {
73
- "types": "./dist/os/workflow/workflow.module.d.ts",
74
- "default": "./dist/os/workflow/workflow.module.js"
73
+ "types": "./os/workflow/workflow.module.ts",
74
+ "default": "./os/workflow/workflow.module.ts"
75
75
  },
76
76
  "./os/spec-module": {
77
- "types": "./dist/os/spec/spec.module.d.ts",
78
- "default": "./dist/os/spec/spec.module.js"
77
+ "types": "./os/spec/spec.module.ts",
78
+ "default": "./os/spec/spec.module.ts"
79
79
  },
80
80
  "./os/adr": {
81
- "types": "./dist/os/adr/index.d.ts",
82
- "default": "./dist/os/adr/index.js"
81
+ "types": "./os/adr/index.ts",
82
+ "default": "./os/adr/index.ts"
83
83
  },
84
84
  "./os/adr-module": {
85
- "types": "./dist/os/adr/adr.module.d.ts",
86
- "default": "./dist/os/adr/adr.module.js"
85
+ "types": "./os/adr/adr.module.ts",
86
+ "default": "./os/adr/adr.module.ts"
87
87
  },
88
88
  "./os/plan": {
89
- "types": "./dist/os/plan/index.d.ts",
90
- "default": "./dist/os/plan/index.js"
89
+ "types": "./os/plan/index.ts",
90
+ "default": "./os/plan/index.ts"
91
91
  },
92
92
  "./os/plan-module": {
93
- "types": "./dist/os/plan/plan.module.d.ts",
94
- "default": "./dist/os/plan/plan.module.js"
93
+ "types": "./os/plan/plan.module.ts",
94
+ "default": "./os/plan/plan.module.ts"
95
95
  },
96
96
  "./os/audit": {
97
- "types": "./dist/os/audit/index.d.ts",
98
- "default": "./dist/os/audit/index.js"
97
+ "types": "./os/audit/index.ts",
98
+ "default": "./os/audit/index.ts"
99
99
  },
100
100
  "./os/audit-module": {
101
- "types": "./dist/os/audit/audit.module.d.ts",
102
- "default": "./dist/os/audit/audit.module.js"
101
+ "types": "./os/audit/audit.module.ts",
102
+ "default": "./os/audit/audit.module.ts"
103
103
  },
104
104
  "./os/session": {
105
- "types": "./dist/os/session/index.d.ts",
106
- "default": "./dist/os/session/index.js"
105
+ "types": "./os/session/index.ts",
106
+ "default": "./os/session/index.ts"
107
107
  },
108
108
  "./os/session-module": {
109
- "types": "./dist/os/session/session.module.d.ts",
110
- "default": "./dist/os/session/session.module.js"
109
+ "types": "./os/session/session.module.ts",
110
+ "default": "./os/session/session.module.ts"
111
111
  },
112
112
  "./os/mission": {
113
- "types": "./dist/os/mission/index.d.ts",
114
- "default": "./dist/os/mission/index.js"
113
+ "types": "./os/mission/index.ts",
114
+ "default": "./os/mission/index.ts"
115
115
  },
116
116
  "./os/mission-module": {
117
- "types": "./dist/os/mission/mission.module.d.ts",
118
- "default": "./dist/os/mission/mission.module.js"
117
+ "types": "./os/mission/mission.module.ts",
118
+ "default": "./os/mission/mission.module.ts"
119
119
  }
120
120
  },
121
121
  "files": [
@@ -127,8 +127,18 @@
127
127
  "os/rfc/rfc-0000-template.md",
128
128
  "AGENTS.md",
129
129
  "README.md",
130
+ "README.uk.md",
130
131
  "LICENSE"
131
132
  ],
133
+ "scripts": {
134
+ "build": "pnpm exec tsc -p tsconfig.json",
135
+ "build:check": "pnpm exec tsc -p tsconfig.json --noEmit",
136
+ "clean": "rm -rf dist",
137
+ "prepublishOnly": "pnpm run clean && pnpm run build && node scripts/publish-check.mjs && node scripts/strip-workspace-deps.mjs",
138
+ "postpublish": "git checkout -- ./package.json",
139
+ "test": "vitest run --passWithNoTests",
140
+ "test:watch": "vitest"
141
+ },
132
142
  "dependencies": {
133
143
  "@aws-sdk/client-s3": "^3.700.0",
134
144
  "trash": "^10.1.1",
@@ -145,13 +155,106 @@
145
155
  "node": ">=20.0.0"
146
156
  },
147
157
  "publishConfig": {
148
- "access": "public"
149
- },
150
- "scripts": {
151
- "build": "pnpm exec tsc -p tsconfig.json",
152
- "build:check": "pnpm exec tsc -p tsconfig.json --noEmit",
153
- "clean": "rm -rf dist",
154
- "test": "vitest run --passWithNoTests",
155
- "test:watch": "vitest"
158
+ "access": "public",
159
+ "main": "./dist/src/index.js",
160
+ "types": "./dist/src/index.d.ts",
161
+ "exports": {
162
+ ".": {
163
+ "types": "./dist/src/index.d.ts",
164
+ "default": "./dist/src/index.js"
165
+ },
166
+ "./types": {
167
+ "types": "./dist/src/types.d.ts",
168
+ "default": "./dist/src/types.js"
169
+ },
170
+ "./utils": {
171
+ "types": "./dist/src/utils/index.d.ts",
172
+ "default": "./dist/src/utils/index.js"
173
+ },
174
+ "./config": {
175
+ "types": "./dist/src/config/forge-config.d.ts",
176
+ "default": "./dist/src/config/forge-config.js"
177
+ },
178
+ "./os/core": {
179
+ "types": "./dist/os/core/core.module.d.ts",
180
+ "default": "./dist/os/core/core.module.js"
181
+ },
182
+ "./os/compass": {
183
+ "types": "./dist/os/compass/index.d.ts",
184
+ "default": "./dist/os/compass/index.js"
185
+ },
186
+ "./os/naming": {
187
+ "types": "./dist/os/naming/index.d.ts",
188
+ "default": "./dist/os/naming/index.js"
189
+ },
190
+ "./os/naming-module": {
191
+ "types": "./dist/os/naming/naming.module.d.ts",
192
+ "default": "./dist/os/naming/naming.module.js"
193
+ },
194
+ "./os/rfc": {
195
+ "types": "./dist/os/rfc/index.d.ts",
196
+ "default": "./dist/os/rfc/index.js"
197
+ },
198
+ "./os/rfc-module": {
199
+ "types": "./dist/os/rfc/rfc.module.d.ts",
200
+ "default": "./dist/os/rfc/rfc.module.js"
201
+ },
202
+ "./os/werkstatt": {
203
+ "types": "./dist/os/werkstatt/index.d.ts",
204
+ "default": "./dist/os/werkstatt/index.js"
205
+ },
206
+ "./os/workflow": {
207
+ "types": "./dist/os/workflow/index.d.ts",
208
+ "default": "./dist/os/workflow/index.js"
209
+ },
210
+ "./os/workflow-module": {
211
+ "types": "./dist/os/workflow/workflow.module.d.ts",
212
+ "default": "./dist/os/workflow/workflow.module.js"
213
+ },
214
+ "./os/spec-module": {
215
+ "types": "./dist/os/spec/spec.module.d.ts",
216
+ "default": "./dist/os/spec/spec.module.js"
217
+ },
218
+ "./os/adr": {
219
+ "types": "./dist/os/adr/index.d.ts",
220
+ "default": "./dist/os/adr/index.js"
221
+ },
222
+ "./os/adr-module": {
223
+ "types": "./dist/os/adr/adr.module.d.ts",
224
+ "default": "./dist/os/adr/adr.module.js"
225
+ },
226
+ "./os/plan": {
227
+ "types": "./dist/os/plan/index.d.ts",
228
+ "default": "./dist/os/plan/index.js"
229
+ },
230
+ "./os/plan-module": {
231
+ "types": "./dist/os/plan/plan.module.d.ts",
232
+ "default": "./dist/os/plan/plan.module.js"
233
+ },
234
+ "./os/audit": {
235
+ "types": "./dist/os/audit/index.d.ts",
236
+ "default": "./dist/os/audit/index.js"
237
+ },
238
+ "./os/audit-module": {
239
+ "types": "./dist/os/audit/audit.module.d.ts",
240
+ "default": "./dist/os/audit/audit.module.js"
241
+ },
242
+ "./os/session": {
243
+ "types": "./dist/os/session/index.d.ts",
244
+ "default": "./dist/os/session/index.js"
245
+ },
246
+ "./os/session-module": {
247
+ "types": "./dist/os/session/session.module.d.ts",
248
+ "default": "./dist/os/session/session.module.js"
249
+ },
250
+ "./os/mission": {
251
+ "types": "./dist/os/mission/index.d.ts",
252
+ "default": "./dist/os/mission/index.js"
253
+ },
254
+ "./os/mission-module": {
255
+ "types": "./dist/os/mission/mission.module.d.ts",
256
+ "default": "./dist/os/mission/mission.module.js"
257
+ }
258
+ }
156
259
  }
157
- }
260
+ }