rapidkit 0.34.0 → 0.35.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 +137 -706
- package/contracts/backend-import-stack-parity.snapshot.json +36 -36
- package/contracts/infra-stack.v1.json +190 -47
- package/contracts/module-layout.v1.json +12 -3
- package/contracts/module-support.v1.json +20 -0
- package/contracts/runtime-command-surface.v1.json +139 -22
- package/contracts/workspace-intelligence/workspace-context.v1.json +59 -0
- package/contracts/workspace-intelligence/workspace-impact.v1.json +84 -0
- package/contracts/workspace-intelligence/workspace-model-diff.v1.json +105 -0
- package/contracts/workspace-intelligence/workspace-model-snapshot.v1.json +36 -0
- package/contracts/workspace-intelligence/workspace-model.v1.json +50 -0
- package/contracts/workspace-intelligence/workspace-verify.v1.json +111 -0
- package/dist/analyze-IIPDLLM2.js +1 -0
- package/dist/autopilot-release-EO7GQS4P.js +1 -0
- package/dist/chunk-5LLGW5TP.js +9 -0
- package/dist/{chunk-2PGMJSO5.js → chunk-752X3YI3.js} +84 -84
- package/dist/chunk-A5FBGRJA.js +1 -0
- package/dist/chunk-B7NCBH5B.js +2 -0
- package/dist/chunk-DKVWFHZO.js +4 -0
- package/dist/{chunk-3TBSWOTY.js → chunk-FNL34DKD.js} +13 -13
- package/dist/chunk-HHJAANUC.js +1 -0
- package/dist/chunk-KDUAZXEQ.js +3 -0
- package/dist/chunk-KMUWWZRT.js +1 -0
- package/dist/chunk-MCLLP6MW.js +2 -0
- package/dist/chunk-OCGZNSOE.js +1 -0
- package/dist/{chunk-RGXFDBYB.js → chunk-R4RPUW7I.js} +1 -1
- package/dist/chunk-TC2PSHT6.js +50 -0
- package/dist/chunk-UZW5QFRW.js +5 -0
- package/dist/chunk-VPNHGQIV.js +1 -0
- package/dist/chunk-YBS2HGO3.js +2 -0
- package/dist/chunk-YJ24EV3P.js +1 -0
- package/dist/create-LUXJGSNL.js +1 -0
- package/dist/{doctor-3SBEO7XU.js → doctor-DG3TBPZN.js} +1 -1
- package/dist/imported-projects-registry-ZOCHFWMK.js +1 -0
- package/dist/index.d.ts +29 -2
- package/dist/index.js +135 -129
- package/dist/module-layout-NZ43RSC5.js +1 -0
- package/dist/{pipeline-VUQ6AXKF.js → pipeline-7OTUIB6D.js} +1 -1
- package/dist/{workspace-AG2MQFTY.js → workspace-ZXWYIZOR.js} +1 -1
- package/dist/workspace-context-YFQQROOZ.js +2 -0
- package/dist/{workspace-contract-Z5VYUF3T.js → workspace-contract-A6QP7FPA.js} +1 -1
- package/dist/{workspace-foundation-G74V6K4U.js → workspace-foundation-TYLH5SAU.js} +1 -1
- package/dist/workspace-intelligence-NXIO55GJ.js +1 -0
- package/dist/workspace-model-OO4WOBJS.js +1 -0
- package/dist/workspace-run-AZ63D75J.js +1 -0
- package/dist/workspace-verify-K56NI3AI.js +1 -0
- package/package.json +14 -4
- package/dist/analyze-SVYRQNLO.js +0 -1
- package/dist/autopilot-release-LBKCP73F.js +0 -1
- package/dist/chunk-4E6ZGX6V.js +0 -1
- package/dist/chunk-ILY6QARY.js +0 -9
- package/dist/chunk-JIECGCLV.js +0 -4
- package/dist/chunk-KXTXQODI.js +0 -5
- package/dist/chunk-QCZGNOTH.js +0 -2
- package/dist/chunk-QUNCXYYK.js +0 -1
- package/dist/chunk-SAIWD6VM.js +0 -3
- package/dist/chunk-Y3UKTEZO.js +0 -2
- package/dist/chunk-YV7IQDBM.js +0 -50
- package/dist/create-BO2I3ESU.js +0 -1
- package/dist/module-layout-J56LHEGH.js +0 -1
- package/dist/workspace-run-EDM3SUPA.js +0 -1
package/README.md
CHANGED
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
# RapidKit NPM CLI
|
|
2
2
|
|
|
3
|
-
>
|
|
3
|
+
> Workspace-first open-source platform that gives teams, tools, and AI agents a shared understanding of software systems.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
**50+ RapidKit Core modules** are available through the CLI for supported module-capable runtimes, with FastAPI and NestJS as first-class module installation targets. Spring Boot, Go, and ASP.NET Core kits run as npm-level generators.
|
|
7
|
-
Built for clean architecture, minimal boilerplate, and fast deployment.
|
|
8
|
-
|
|
9
|
-
> **💡 Recommended:** Install the [Workspai VS Code extension](https://marketplace.visualstudio.com/items?itemName=rapidkit.rapidkit-vscode) for AI-assisted project creation, workspace exploration, and context-aware coding — all backed by this CLI.
|
|
5
|
+
RapidKit turns scattered projects into a governed workspace that CI, Workspai, and AI agents can understand.
|
|
10
6
|
|
|
11
7
|
[](https://www.npmjs.com/package/rapidkit)
|
|
12
8
|
[](https://www.npmjs.com/package/rapidkit)
|
|
@@ -14,784 +10,219 @@ Built for clean architecture, minimal boilerplate, and fast deployment.
|
|
|
14
10
|
[](https://github.com/rapidkitlabs/rapidkit-npm/stargazers)
|
|
15
11
|
[](https://www.getrapidkit.com)
|
|
16
12
|
|
|
17
|
-
The
|
|
13
|
+
For the visual experience, install the [Workspai VS Code extension](https://marketplace.visualstudio.com/items?itemName=rapidkit.rapidkit-vscode). The extension calls this CLI for discovery, commands, evidence, and AI context — install `rapidkit@latest` globally or link locally for scaffold/adopt flows.
|
|
18
14
|
|
|
19
|
-
|
|
20
|
-
- Multi-runtime support across Python, Node.js, Java, Go, and .NET
|
|
21
|
-
- Policy enforcement with `warn` / `strict` modes
|
|
22
|
-
- Cache and mirror lifecycle commands for stable environments
|
|
23
|
-
- Contract-driven workspace infra sidecar (`infra plan|up|down|status`) for local Postgres, Redis, mail, and related dev dependencies
|
|
15
|
+
## Table of contents
|
|
24
16
|
|
|
25
|
-
|
|
17
|
+
- [Start here](#start-here)
|
|
18
|
+
- [Mental model](#mental-model)
|
|
19
|
+
- [Workspace intelligence](#workspace-intelligence)
|
|
20
|
+
- [Requirements & install](#requirements)
|
|
21
|
+
- [Quickstarts](#quickstarts)
|
|
22
|
+
- [CI & evidence](#ci--evidence)
|
|
23
|
+
- [Workspai ecosystem](#workspai-ecosystem)
|
|
24
|
+
- [VS Code extension](#vs-code-extension)
|
|
25
|
+
- [Documentation](#documentation)
|
|
26
|
+
- [Development](#development)
|
|
27
|
+
- [Troubleshooting](#troubleshooting)
|
|
28
|
+
- [License](#license)
|
|
26
29
|
|
|
27
|
-
|
|
30
|
+
## Start here
|
|
28
31
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
| If you have... | Use | What you get |
|
|
33
|
+
| --- | --- | --- |
|
|
34
|
+
| An existing project to keep in place | [`adopt`](docs/workspace-operations.md#import-and-adoption) | Links project, detects stack, writes metadata |
|
|
35
|
+
| A folder or repo to copy into a workspace | [`import`](docs/workspace-operations.md#import-and-adoption) | Copy/clone with rollback-safe sync |
|
|
36
|
+
| A new project from a kit | `create workspace` + `create project` / `create frontend` | Scaffold + governance evidence |
|
|
37
|
+
| CI or release gates | `pipeline --json --strict` | Full governance loop in one command |
|
|
38
|
+
| Agent-ready context | `workspace model` + `workspace context` | Canonical facts and context packs |
|
|
34
39
|
|
|
35
|
-
|
|
40
|
+
### Adopt in place
|
|
36
41
|
|
|
37
|
-
|
|
42
|
+
```bash
|
|
43
|
+
npx rapidkit adopt /path/to/project --workspace /path/to/workspace --json
|
|
44
|
+
npx rapidkit adopt --json # from inside the project folder
|
|
45
|
+
```
|
|
38
46
|
|
|
39
|
-
|
|
47
|
+
### Workspace layout
|
|
40
48
|
|
|
41
49
|
```text
|
|
42
|
-
|
|
50
|
+
~/.rapidkit/workspaces.json
|
|
51
|
+
~/rapidkit/workspaces/
|
|
52
|
+
workspai/ # managed default (import/adopt fallback)
|
|
53
|
+
my-workspace/ # user-created workspaces
|
|
43
54
|
```
|
|
44
55
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
```bash
|
|
48
|
-
npx rapidkit pipeline --json --strict
|
|
49
|
-
```
|
|
56
|
+
New workspaces go under `~/rapidkit/workspaces/<name>`. Legacy `~/Workspai/rapidkits/*` paths remain registered. Use `--output <parent-dir>` for a custom parent.
|
|
50
57
|
|
|
51
|
-
|
|
58
|
+
### Two-layer model
|
|
52
59
|
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
npx rapidkit doctor workspace --json --ci
|
|
57
|
-
npx rapidkit analyze --json --strict
|
|
58
|
-
npx rapidkit readiness --json --strict
|
|
59
|
-
npx rapidkit autopilot release --mode audit --json
|
|
60
|
+
```text
|
|
61
|
+
First-class engine kits → FastAPI and NestJS (modules + deep generation)
|
|
62
|
+
Workspace intelligence → frontend apps, Go, Spring, .NET, adopted/imported repos
|
|
60
63
|
```
|
|
61
64
|
|
|
62
|
-
|
|
65
|
+
## Mental model
|
|
63
66
|
|
|
64
|
-
|
|
65
|
-
| ---------- | ----------- |
|
|
66
|
-
| Pipeline | `.rapidkit/reports/pipeline-last-run.json` |
|
|
67
|
-
| Doctor | `.rapidkit/reports/doctor-last-run.json` |
|
|
68
|
-
| Analyze | `.rapidkit/reports/analyze-last-run.json` |
|
|
69
|
-
| Readiness | `.rapidkit/reports/release-readiness-last-run.json` |
|
|
70
|
-
| Autopilot | `.rapidkit/reports/autopilot-release-last-run.json` |
|
|
71
|
-
| Contract verify (CLI fallback) | `.rapidkit/reports/workspace-contract-verify-last-run.json` |
|
|
67
|
+
RapidKit treats the **workspace** as the operating boundary: policy, registry, evidence, contracts, and release readiness. Projects can live inside the workspace or be **adopted** from outside.
|
|
72
68
|
|
|
73
|
-
|
|
69
|
+
```text
|
|
70
|
+
workspace/
|
|
71
|
+
.rapidkit/workspace.json
|
|
72
|
+
.rapidkit/reports/
|
|
73
|
+
services/api/
|
|
74
74
|
|
|
75
|
-
|
|
75
|
+
external-project/
|
|
76
|
+
.rapidkit/project.json
|
|
77
|
+
.rapidkit/adopt.json
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Every tool gets the same answers: what projects exist, what stack they use, which commands are safe, what evidence exists, and what context agents should receive.
|
|
76
81
|
|
|
77
|
-
|
|
82
|
+
## Workspace intelligence
|
|
78
83
|
|
|
79
|
-
|
|
84
|
+
| Command | Purpose |
|
|
85
|
+
| --- | --- |
|
|
86
|
+
| `workspace model --json` | Canonical workspace model |
|
|
87
|
+
| `workspace context --for-agent --json` | Agent-ready context pack |
|
|
88
|
+
| `workspace snapshot --json` | Persist model snapshot |
|
|
89
|
+
| `workspace diff --from <file\|git[:ref]> --json` | Diff against snapshot or git |
|
|
90
|
+
| `workspace impact --from <file> --json` | Blast-radius evidence |
|
|
91
|
+
| `workspace verify [--strict] --json` | Impact verification gate |
|
|
80
92
|
|
|
81
|
-
|
|
82
|
-
| ----------------- | ----------------------------------------------------------------------------------- | ---------------------------------------------------------- |
|
|
83
|
-
| CLI | [rapidkitlabs/rapidkit-npm](https://github.com/rapidkitlabs/rapidkit-npm) | Official RapidKit npm CLI |
|
|
84
|
-
| VS Code Extension | [rapidkitlabs/rapidkit-vscode](https://github.com/rapidkitlabs/rapidkit-vscode) | **Workspai** — visual explorer + AI features (recommended) |
|
|
85
|
-
| Core Engine | [rapidkitlabs/rapidkit-core](https://github.com/rapidkitlabs/rapidkit-core) | Official RapidKit Core |
|
|
86
|
-
| Examples | [rapidkitlabs/rapidkit-examples](https://github.com/rapidkitlabs/rapidkit-examples) | Example workspaces and starter references |
|
|
93
|
+
JSON schemas: `contracts/workspace-intelligence/`. Details: [commands-reference.md](docs/commands-reference.md).
|
|
87
94
|
|
|
88
95
|
## Requirements
|
|
89
96
|
|
|
90
97
|
- Node.js `>= 20.19.6`
|
|
91
98
|
- Python `>= 3.10` (for Python/Core workflows)
|
|
92
|
-
- Java 21
|
|
93
|
-
- Go (optional, for Go projects)
|
|
94
|
-
- .NET SDK 8+ (optional, for ASP.NET Core projects)
|
|
99
|
+
- Java 21+, Go, .NET SDK 8+ (optional, per stack)
|
|
95
100
|
|
|
96
101
|
## Install
|
|
97
102
|
|
|
98
|
-
Install the RapidKit CLI npm package (`rapidkit`) globally:
|
|
99
|
-
|
|
100
103
|
```bash
|
|
101
104
|
npm install -g rapidkit
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
Or run directly with `npx`:
|
|
105
|
-
|
|
106
|
-
```bash
|
|
105
|
+
# or
|
|
107
106
|
npx rapidkit --help
|
|
108
107
|
```
|
|
109
108
|
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
## 60-Second Quickstart
|
|
113
|
-
|
|
114
|
-
```bash
|
|
115
|
-
npx rapidkit my-workspace
|
|
116
|
-
cd my-workspace
|
|
117
|
-
npx rapidkit create project
|
|
118
|
-
cd <project-name>
|
|
119
|
-
npx rapidkit init && npx rapidkit dev
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
If you prefer explicit commands instead of shortcut mode:
|
|
123
|
-
|
|
124
|
-
```bash
|
|
125
|
-
npx rapidkit create workspace my-workspace --yes --profile polyglot
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
## Quick Start (Recommended)
|
|
109
|
+
## Quickstarts
|
|
129
110
|
|
|
130
|
-
###
|
|
111
|
+
### I already have a project
|
|
131
112
|
|
|
132
113
|
```bash
|
|
133
|
-
npx rapidkit
|
|
134
|
-
|
|
114
|
+
npx rapidkit adopt /path/to/project --workspace /path/to/workspace
|
|
115
|
+
npx rapidkit import ../orders-api --workspace ./platform
|
|
116
|
+
npx rapidkit workspace model --json
|
|
117
|
+
npx rapidkit doctor workspace --json
|
|
135
118
|
```
|
|
136
119
|
|
|
137
|
-
|
|
120
|
+
### I want a new project
|
|
138
121
|
|
|
139
122
|
```bash
|
|
140
|
-
npx rapidkit
|
|
123
|
+
npx rapidkit create workspace platform --yes --profile polyglot
|
|
124
|
+
cd platform && npx rapidkit bootstrap --profile polyglot
|
|
125
|
+
npx rapidkit create project # interactive kit picker
|
|
126
|
+
npx rapidkit create frontend nextjs my-web --yes
|
|
127
|
+
cd <project-name> && npx rapidkit init && npx rapidkit dev
|
|
141
128
|
```
|
|
142
129
|
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
### 2) Bootstrap and setup runtimes
|
|
130
|
+
Backend kits: `fastapi.standard`, `nestjs.standard`, `springboot.standard`, `gofiber.standard`, `dotnet.webapi.clean`, and more.
|
|
146
131
|
|
|
147
|
-
|
|
148
|
-
npx rapidkit bootstrap --profile polyglot
|
|
149
|
-
npx rapidkit setup python
|
|
150
|
-
npx rapidkit setup node --warm-deps
|
|
151
|
-
npx rapidkit setup java --warm-deps
|
|
152
|
-
npx rapidkit setup go --warm-deps
|
|
153
|
-
npx rapidkit setup dotnet --warm-deps
|
|
154
|
-
```
|
|
132
|
+
Frontend: `create frontend nextjs|remix|vite-react|angular|astro|…` or `create project frontend.nextjs <name>`.
|
|
155
133
|
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
```bash
|
|
159
|
-
npx rapidkit create project # Interactive kit picker
|
|
160
|
-
npx rapidkit create project fastapi.standard my-api --yes --skip-install
|
|
161
|
-
npx rapidkit create project fastapi.ddd my-api --yes --skip-install
|
|
162
|
-
npx rapidkit create project nestjs.standard my-nest --yes --skip-install
|
|
163
|
-
npx rapidkit create project springboot.standard my-spring --yes --skip-install
|
|
164
|
-
npx rapidkit create project gofiber.standard my-fiber --yes --skip-install
|
|
165
|
-
npx rapidkit create project gogin.standard my-gin --yes --skip-install
|
|
166
|
-
npx rapidkit create project dotnet.webapi.clean my-dotnet --yes --skip-install
|
|
167
|
-
```
|
|
168
|
-
|
|
169
|
-
## Core Commands
|
|
170
|
-
|
|
171
|
-
### Workspace lifecycle
|
|
172
|
-
|
|
173
|
-
```bash
|
|
174
|
-
npx rapidkit create # Prompts: workspace | project
|
|
175
|
-
npx rapidkit create workspace <name> [--profile <profile>] [--author <name>] [--yes]
|
|
176
|
-
npx rapidkit bootstrap [--profile <profile>] [--json] [--compliance-only]
|
|
177
|
-
npx rapidkit setup <python|node|go|java|dotnet> [--warm-deps]
|
|
178
|
-
npx rapidkit pipeline [--json] [--strict] [--skip-verify] [--skip-analyze] [--skip-autopilot] [--autopilot-mode <audit|safe-fix|enforce>]
|
|
179
|
-
npx rapidkit analyze [--workspace <path>] [--json] [--strict] [--output <file>]
|
|
180
|
-
npx rapidkit readiness [--json] [--strict] [--skip-verify]
|
|
181
|
-
npx rapidkit autopilot release [--mode <audit|safe-fix|enforce>] [--json] [--output <file>] [--since <ref>] [--parallel] [--max-workers <n>]
|
|
182
|
-
```
|
|
134
|
+
Shortcut: `npx rapidkit platform` (interactive workspace wizard).
|
|
183
135
|
|
|
184
|
-
|
|
136
|
+
### I want CI or release gates
|
|
185
137
|
|
|
186
138
|
```bash
|
|
187
139
|
npx rapidkit pipeline --json --strict
|
|
188
|
-
# or the release gate alone:
|
|
189
|
-
npx rapidkit autopilot release --mode enforce --json --output .rapidkit/reports/autopilot-release.json
|
|
190
140
|
```
|
|
191
141
|
|
|
192
|
-
|
|
142
|
+
Stages individually: `workspace sync`, `doctor workspace --ci`, `analyze --strict`, `readiness --strict`, `autopilot release`.
|
|
193
143
|
|
|
194
|
-
|
|
195
|
-
npx rapidkit workspace sync [--json]
|
|
196
|
-
npx rapidkit workspace policy show
|
|
197
|
-
npx rapidkit workspace policy set <key> <value>
|
|
198
|
-
npx rapidkit doctor
|
|
199
|
-
npx rapidkit doctor workspace [--json] [--strict] [--ci] [--fix] [--plan] [--apply]
|
|
200
|
-
npx rapidkit doctor project [--json] [--strict] [--ci] [--fix] [--plan] [--apply]
|
|
201
|
-
npx rapidkit workspace list # Display all workspaces created on this system
|
|
202
|
-
npx rapidkit workspace foundation ensure [--force] [--json]
|
|
203
|
-
npx rapidkit workspace share [--output <file>] [--include-paths] [--no-doctor]
|
|
204
|
-
npx rapidkit workspace contract init [--force] [--json]
|
|
205
|
-
npx rapidkit workspace contract inspect [--json]
|
|
206
|
-
npx rapidkit workspace contract verify [--strict] [--json]
|
|
207
|
-
npx rapidkit workspace contract graph [--json]
|
|
208
|
-
npx rapidkit workspace export --output team-workspace.rapidkit-archive.zip
|
|
209
|
-
npx rapidkit workspace archive inspect team-workspace.rapidkit-archive.zip [--json]
|
|
210
|
-
npx rapidkit workspace archive verify team-workspace.rapidkit-archive.zip [--strict] [--json]
|
|
211
|
-
npx rapidkit workspace archive doctor team-workspace.rapidkit-archive.zip [--strict] [--json]
|
|
212
|
-
npx rapidkit workspace hydrate team-workspace.rapidkit-archive.zip --output ./team-workspace
|
|
213
|
-
npx rapidkit import <path|git-url> [--workspace <path>] [--name <project-name>] [--git] [--json]
|
|
214
|
-
npx rapidkit snapshot create [name] [--include-projects] [--reason <text>] [--json]
|
|
215
|
-
npx rapidkit snapshot list [--json]
|
|
216
|
-
npx rapidkit snapshot inspect <name> [--json]
|
|
217
|
-
npx rapidkit snapshot restore <name> [--dry-run] [--force] [--json]
|
|
218
|
-
npx rapidkit project archive <name> [--reason <text>] [--dry-run] [--json]
|
|
219
|
-
npx rapidkit project archives [--json]
|
|
220
|
-
npx rapidkit project restore <archive> [--name <project-name>] [--force] [--dry-run] [--json]
|
|
221
|
-
npx rapidkit project delete <name> [--permanent --confirm <name>] [--dry-run] [--json]
|
|
222
|
-
npx rapidkit workspace init # Full-init alias (same behavior as root init/workspace run init at workspace root)
|
|
223
|
-
npx rapidkit workspace run <init|test|build|start> [--affected] [--blast-radius] [--since <ref>] [--parallel] [--max-workers <n>] [--strict] [--json]
|
|
224
|
-
npx rapidkit infra plan [--workspace <path>] [--json] [--dry-run] [--verbose]
|
|
225
|
-
npx rapidkit infra up [--workspace <path>] [--no-plan] [--build]
|
|
226
|
-
npx rapidkit infra down [--workspace <path>] [--volumes]
|
|
227
|
-
npx rapidkit infra status [--workspace <path>] [--json] [--strict]
|
|
228
|
-
```
|
|
229
|
-
|
|
230
|
-
### Project import into workspace
|
|
231
|
-
|
|
232
|
-
Use `import` to bring an existing backend project (local folder or git repository) into a RapidKit workspace.
|
|
233
|
-
|
|
234
|
-
```bash
|
|
235
|
-
# Local folder import
|
|
236
|
-
npx rapidkit import ../orders-api
|
|
237
|
-
|
|
238
|
-
# Git import
|
|
239
|
-
npx rapidkit import https://github.com/acme/orders-api.git --git
|
|
240
|
-
|
|
241
|
-
# Explicit workspace and custom target name
|
|
242
|
-
npx rapidkit import ../orders-api --workspace ./my-workspace --name orders-api
|
|
243
|
-
|
|
244
|
-
# Machine-readable output
|
|
245
|
-
npx rapidkit import ../orders-api --json
|
|
246
|
-
```
|
|
144
|
+
## CI & evidence
|
|
247
145
|
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
JSON output (`--json`) includes:
|
|
256
|
-
|
|
257
|
-
- `workspacePath`
|
|
258
|
-
- `workspaceResolution` (`explicit` | `nearest` | `default-auto`)
|
|
259
|
-
- `defaultWorkspaceCreated`
|
|
260
|
-
- `suggestedCdCommand`
|
|
261
|
-
- `importedProject` (`name`, `path`, `stack`, `runtime`, `framework`, `supportTier`, `moduleSupport`, `confidence`, `source`)
|
|
262
|
-
|
|
263
|
-
Imported projects also receive `.rapidkit/import-readiness.json`, which records framework detection,
|
|
264
|
-
runtime command support, and module mutation policy. Existing projects from Laravel, Rails, Rust,
|
|
265
|
-
Elixir, Kotlin, Deno, Bun, and other ecosystems are importable/governed even when RapidKit does not
|
|
266
|
-
yet ship a first-class scaffold for that stack.
|
|
267
|
-
|
|
268
|
-
### Workspace snapshots and safe project operations
|
|
269
|
-
|
|
270
|
-
Use `snapshot` before migrations, mass imports, dependency upgrades, or release preparation.
|
|
271
|
-
By default snapshots preserve workspace metadata only (`.rapidkit`, workspace marker, and config files).
|
|
272
|
-
Use `--include-projects` when you need a full recoverable copy of project source files too.
|
|
273
|
-
|
|
274
|
-
```bash
|
|
275
|
-
npx rapidkit snapshot create before-upgrade --reason "before dependency upgrade"
|
|
276
|
-
npx rapidkit snapshot list
|
|
277
|
-
npx rapidkit snapshot inspect before-upgrade
|
|
278
|
-
npx rapidkit snapshot restore before-upgrade --dry-run
|
|
279
|
-
npx rapidkit snapshot restore before-upgrade --force
|
|
280
|
-
```
|
|
146
|
+
| Stage | Report |
|
|
147
|
+
| --- | --- |
|
|
148
|
+
| Pipeline | `.rapidkit/reports/pipeline-last-run.json` |
|
|
149
|
+
| Doctor | `.rapidkit/reports/doctor-last-run.json` |
|
|
150
|
+
| Analyze | `.rapidkit/reports/analyze-last-run.json` |
|
|
151
|
+
| Readiness | `.rapidkit/reports/release-readiness-last-run.json` |
|
|
152
|
+
| Autopilot | `.rapidkit/reports/autopilot-release-last-run.json` |
|
|
281
153
|
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
```bash
|
|
285
|
-
npx rapidkit project archive orders-api --reason "replaced by orders-v2"
|
|
286
|
-
npx rapidkit project archives
|
|
287
|
-
npx rapidkit project restore orders-api
|
|
288
|
-
npx rapidkit project delete orders-api
|
|
289
|
-
npx rapidkit project delete orders-api --permanent --confirm orders-api
|
|
290
|
-
```
|
|
291
|
-
|
|
292
|
-
Lifecycle safety rules:
|
|
293
|
-
|
|
294
|
-
- `project delete` archives by default; permanent removal requires `--permanent --confirm <exact-project-name>`.
|
|
295
|
-
- `snapshot restore` requires `--force` unless it is a dry-run.
|
|
296
|
-
- Restore, archive, and permanent delete create a pre-operation metadata snapshot automatically.
|
|
297
|
-
- Archive manifests are stored beside archived projects under `.rapidkit/archive/projects`.
|
|
298
|
-
- Lifecycle operations append JSONL audit records to `.rapidkit/audit/events.jsonl`.
|
|
299
|
-
- Workspace policy can require reasons, require safety snapshots, or block permanent delete via `.rapidkit/policies.yml`.
|
|
300
|
-
|
|
301
|
-
### Workspace collaboration bundle
|
|
302
|
-
|
|
303
|
-
Use `workspace share` to export a portable JSON snapshot for team handoff,
|
|
304
|
-
debugging, and cross-machine diagnostics.
|
|
305
|
-
|
|
306
|
-
```bash
|
|
307
|
-
npx rapidkit workspace share
|
|
308
|
-
# default output: .rapidkit/reports/share-bundle.json
|
|
309
|
-
|
|
310
|
-
npx rapidkit workspace share --output ./team-share.json
|
|
311
|
-
npx rapidkit workspace share --include-paths
|
|
312
|
-
npx rapidkit workspace share --no-doctor
|
|
313
|
-
```
|
|
314
|
-
|
|
315
|
-
Bundle content includes:
|
|
316
|
-
|
|
317
|
-
- Workspace metadata (`name`, `profile`, RapidKit version)
|
|
318
|
-
- Discovered RapidKit projects (`relative_path`, runtime, kit)
|
|
319
|
-
- Workspace and project report file index
|
|
320
|
-
- Latest doctor evidence per project (unless `--no-doctor` is used)
|
|
321
|
-
|
|
322
|
-
`--include-paths` is intended for internal teams only because it includes absolute filesystem paths.
|
|
323
|
-
|
|
324
|
-
### Workspace contract registry
|
|
325
|
-
|
|
326
|
-
Use `workspace contract` when multiple projects in one workspace need a shared source of truth for
|
|
327
|
-
services, ports, APIs, events, owners, dependencies, and required environment variables.
|
|
328
|
-
|
|
329
|
-
```bash
|
|
330
|
-
npx rapidkit workspace contract init
|
|
331
|
-
npx rapidkit workspace contract inspect
|
|
332
|
-
npx rapidkit workspace contract verify --strict
|
|
333
|
-
npx rapidkit workspace contract graph
|
|
334
|
-
```
|
|
335
|
-
|
|
336
|
-
The contract is written to `.rapidkit/workspace.contract.json`. It starts from discovered RapidKit
|
|
337
|
-
projects and gives teams a stable place to declare cross-project service contracts. Verification
|
|
338
|
-
checks schema validity, duplicate project slugs, invalid or colliding ports, and dependencies that
|
|
339
|
-
point to unknown projects.
|
|
340
|
-
|
|
341
|
-
RapidKit keeps this contract alive during normal workspace work:
|
|
342
|
-
|
|
343
|
-
- `create project` syncs the contract after successful project creation inside a workspace.
|
|
344
|
-
- `workspace sync` reconciles discovered projects into the contract without overwriting manually declared APIs, events, owners, dependencies, env vars, or custom ports.
|
|
345
|
-
- New projects receive a framework-aware default HTTP port when possible, and the next free port is selected if the default is already claimed.
|
|
346
|
-
- `workspace share` includes the contract snapshot so teammates can inspect service topology before reproducing or importing the workspace.
|
|
347
|
-
- `workspace contract graph` renders the service/dependency/event topology for humans or returns a JSON graph for tools and UI surfaces.
|
|
348
|
-
|
|
349
|
-
### Portable workspace archives
|
|
350
|
-
|
|
351
|
-
Use `workspace export` when you need to send a full workspace to a teammate or move it to another machine.
|
|
352
|
-
Export excludes dependency folders, build output, git history, logs, `.env` files, and private keys by default.
|
|
353
|
-
|
|
354
|
-
```bash
|
|
355
|
-
npx rapidkit workspace export --output team-workspace.rapidkit-archive.zip
|
|
356
|
-
npx rapidkit workspace archive inspect team-workspace.rapidkit-archive.zip
|
|
357
|
-
npx rapidkit workspace archive verify team-workspace.rapidkit-archive.zip --strict
|
|
358
|
-
npx rapidkit workspace archive doctor team-workspace.rapidkit-archive.zip
|
|
359
|
-
npx rapidkit workspace hydrate team-workspace.rapidkit-archive.zip --output ./team-workspace
|
|
360
|
-
|
|
361
|
-
# Preview a hydrate without writing files
|
|
362
|
-
npx rapidkit workspace hydrate team-workspace.rapidkit-archive.zip --output ./team-workspace --dry-run
|
|
363
|
-
```
|
|
364
|
-
|
|
365
|
-
Archives include a RapidKit/Workspai manifest with file sizes and SHA-256 checksums. `workspace hydrate`
|
|
366
|
-
verifies the archive before writing files. Use `workspace archive verify --strict` as a handoff or CI gate,
|
|
367
|
-
and `workspace archive doctor` when you want human-readable readiness/security guidance before a teammate
|
|
368
|
-
imports the workspace. Use `--include-env` only for trusted internal handoffs when you intentionally need
|
|
369
|
-
environment files inside the archive.
|
|
370
|
-
|
|
371
|
-
### Workspace infrastructure (sidecar)
|
|
372
|
-
|
|
373
|
-
Use `infra` when a workspace needs local dev dependencies (PostgreSQL, Redis, Mailpit, MinIO, and
|
|
374
|
-
related services) without replacing the workspace's own `docker-compose.yml`.
|
|
375
|
-
|
|
376
|
-
Discovery is contract-first and runtime-agnostic:
|
|
377
|
-
|
|
378
|
-
- Installed Core module slugs from each project's `registry.json`
|
|
379
|
-
- Infra-related variables from each project's `.env.example`
|
|
380
|
-
- Optional env declarations from `.rapidkit/workspace.contract.json`
|
|
381
|
-
- Manual overrides in `.rapidkit/infra/overrides.json`
|
|
382
|
-
|
|
383
|
-
```bash
|
|
384
|
-
cd my-workspace
|
|
385
|
-
npx rapidkit infra plan
|
|
386
|
-
npx rapidkit infra up
|
|
387
|
-
npx rapidkit infra status --strict
|
|
388
|
-
npx rapidkit infra down
|
|
389
|
-
```
|
|
390
|
-
|
|
391
|
-
Artifacts are written beside the workspace (sidecar strategy):
|
|
392
|
-
|
|
393
|
-
- `.rapidkit/infra/docker-compose.yml` — generated Docker Compose stack
|
|
394
|
-
- `.rapidkit/reports/infra-plan.json` — machine-readable plan and discovery evidence
|
|
395
|
-
- `.rapidkit/infra/.env.example` — connection env preview for local `.env` files
|
|
396
|
-
|
|
397
|
-
`infra up` refreshes the plan by default. Use `--no-plan` to start from the last saved plan only.
|
|
398
|
-
Connection defaults prefer project `.env.example` values (for example `RAPIDKIT_DB_POSTGRES_URL`).
|
|
399
|
-
|
|
400
|
-
This command family is wrapper-owned, does not mutate Core modules, and works for polyglot workspaces
|
|
401
|
-
(FastAPI, NestJS, Go, Spring Boot, .NET, and imported projects) as long as projects expose
|
|
402
|
-
`.rapidkit/project.json` and env/override signals.
|
|
403
|
-
|
|
404
|
-
### Command ownership
|
|
405
|
-
|
|
406
|
-
RapidKit keeps the wrapper boundary explicit so users know which layer owns each action.
|
|
407
|
-
|
|
408
|
-
| Command family | Owner | Notes |
|
|
409
|
-
| -------------------------------------------------- | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
|
|
410
|
-
| `create workspace`, `workspace`, `cache`, `mirror`, `infra` | RapidKit wrapper | Platform-level orchestration |
|
|
411
|
-
| `init` | Wrapper orchestrated | Project init in project dirs; full-init alias at workspace root |
|
|
412
|
-
| `dev`, `test`, `build`, `start` | Runtime aware | Delegates to the active project/runtime when available |
|
|
413
|
-
| `readiness` | Wrapper release gate | Env + doctor + analyze + verify + dependency gates (`--json`, `--strict`, `--skip-verify`) |
|
|
414
|
-
| `pipeline` | Wrapper orchestrator | End-to-end governance loop: sync → doctor → analyze → readiness → autopilot; writes `pipeline-last-run.json` |
|
|
415
|
-
| `autopilot release` | Wrapper orchestrator | Runs doctor/analyze/readiness/remediation/workspace-run gates and emits release verdict evidence |
|
|
416
|
-
| `import` | Workspace ingestion | Imports local folders or git backends with rollback-safe sync behavior |
|
|
417
|
-
| `snapshot` | Workspace recovery | Creates/list/restores metadata or full workspace snapshots with destructive-operation guards |
|
|
418
|
-
| `project archive/restore/delete` | Project lifecycle | Archives by default, restores archived projects, requires exact confirmation for permanent delete, and creates safety snapshots |
|
|
419
|
-
| `doctor` | Wrapper system check | Checks host prerequisites by default |
|
|
420
|
-
| `doctor workspace` | Workspace health | Full workspace scan with project-level details, CI exit codes (`--strict`, `--ci`), and fixes |
|
|
421
|
-
| `doctor project` | Project health | Current project (or nearest parent) diagnostics with project evidence and scoped fixes |
|
|
422
|
-
| `workspace run` | Workspace orchestrator | Stage execution across discovered projects with optional affected-only, blast-radius expansion, and policy-gated pre-checks |
|
|
423
|
-
| `infra` | Workspace sidecar | Contract-driven local infra discovery, compose generation, and Docker lifecycle (`plan`, `up`, `down`, `status`) |
|
|
424
|
-
|
|
425
|
-
Use `npx rapidkit doctor` for a quick host pre-flight, `npx rapidkit doctor project` for a service-level check, and `npx rapidkit doctor workspace` for the full workspace picture.
|
|
426
|
-
Use `npx rapidkit pipeline --json --strict` to run the full governance loop and gate CI on a single exit code.
|
|
427
|
-
Use `npx rapidkit analyze --json` to generate CI-friendly workspace health evidence and save it under `.rapidkit/reports/`.
|
|
428
|
-
Use `npx rapidkit doctor workspace --ci` for CI-friendly exit codes (1 = errors, 2 = warnings).
|
|
429
|
-
Use `npx rapidkit doctor workspace --plan` or `npx rapidkit doctor project --plan` to preview remediation safely.
|
|
430
|
-
Use `npx rapidkit doctor workspace --apply` or `npx rapidkit doctor project --apply` for non-interactive remediation runs.
|
|
431
|
-
Use `npx rapidkit readiness` when you need machine-readable release evidence or strict CI gating.
|
|
432
|
-
Use `npx rapidkit readiness --skip-verify` when verify is handled by extension/CI separately.
|
|
433
|
-
Use `npx rapidkit autopilot release` to run an end-to-end pre-merge release gate in one command.
|
|
434
|
-
|
|
435
|
-
### Doctor workspace CI exit codes
|
|
436
|
-
|
|
437
|
-
- `npx rapidkit doctor workspace --strict` exits `1` when health score reports errors **or** warnings.
|
|
438
|
-
- `npx rapidkit doctor workspace --ci` exits `1` on errors and `2` on warnings only (errors take precedence).
|
|
439
|
-
- Without `--strict` or `--ci`, doctor reports findings but exits `0` (backward compatible).
|
|
440
|
-
|
|
441
|
-
### Doctor workspace fix behavior
|
|
442
|
-
|
|
443
|
-
- `npx rapidkit doctor workspace` reuses cached project scans when valid and refreshes evidence under `.rapidkit/reports/doctor-last-run.json`.
|
|
444
|
-
- `npx rapidkit doctor workspace --fix` runs interactive remediation (confirmation prompt).
|
|
445
|
-
- `npx rapidkit doctor workspace --plan` prints remediation plan only (no mutations).
|
|
446
|
-
- `npx rapidkit doctor workspace --apply` applies remediation plan non-interactively.
|
|
447
|
-
- Advisory warnings (for example, detected vulnerabilities or optional env metadata gaps) are reported in workspace health, but they do not automatically become shell fix commands.
|
|
448
|
-
- It is valid to see `No fixes needed` after `--fix`/`--apply` when only advisory warnings are present.
|
|
449
|
-
- URL-based fixes are recorded as manual guidance (for example, install pages) and are not executed as shell commands.
|
|
450
|
-
- Go project fixes that require `go mod tidy` are skipped when the Go toolchain is not available, with a clear install-and-rerun hint.
|
|
451
|
-
- `--plan` cannot be combined with `--fix` or `--apply`.
|
|
452
|
-
|
|
453
|
-
### Doctor workspace JSON fields (AI/automation)
|
|
454
|
-
|
|
455
|
-
`npx rapidkit doctor workspace --json` includes project-level runtime/profile metadata used by extension and AI tooling:
|
|
456
|
-
|
|
457
|
-
- `framework`
|
|
458
|
-
- `frameworkKey`
|
|
459
|
-
- `importStack`
|
|
460
|
-
- `runtimeFamily`
|
|
461
|
-
- `projectKind`
|
|
462
|
-
- `supportTier`
|
|
463
|
-
- `frameworkConfidence`
|
|
464
|
-
|
|
465
|
-
### Doctor project behavior
|
|
466
|
-
|
|
467
|
-
- `npx rapidkit doctor project` resolves the current project or the nearest parent project when run from nested directories.
|
|
468
|
-
- Project mode supports RapidKit and non-RapidKit backend projects (generic runtime diagnostics still run when `.rapidkit` is missing).
|
|
469
|
-
- JSON evidence is written to `.rapidkit/reports/doctor-project-last-run.json` (workspace-level when available).
|
|
470
|
-
- `--fix` in project mode applies only project-scoped actionable fixes, with the same safe/guarded handling used by doctor fix flows.
|
|
471
|
-
- `--plan` in project mode prints remediation plan only (no mutations).
|
|
472
|
-
- `--apply` in project mode applies project-scoped remediation non-interactively.
|
|
473
|
-
- `--plan` cannot be combined with `--fix` or `--apply`.
|
|
474
|
-
- Project diagnostics include built-in probes (configuration surface, migration surface, runtime health surface) and optional custom probe/adapter contracts.
|
|
475
|
-
|
|
476
|
-
### Doctor project JSON fields (AI/automation)
|
|
477
|
-
|
|
478
|
-
`npx rapidkit doctor project --json` includes project-scoped evidence fields for extension and automation consumers:
|
|
479
|
-
|
|
480
|
-
- `scope` (`project`)
|
|
481
|
-
- `contract` (doctor evidence contract + scoring policy version)
|
|
482
|
-
- `project` (framework/runtime metadata, canonical `frameworkKey` and `importStack`, issues, fix commands, probes)
|
|
483
|
-
- `summary.scopeProvenance`
|
|
484
|
-
- `driftDelta`
|
|
485
|
-
- `scoreBreakdown`
|
|
486
|
-
|
|
487
|
-
### Doctor evidence schema compatibility
|
|
488
|
-
|
|
489
|
-
Doctor persisted evidence now carries explicit schema tags:
|
|
490
|
-
|
|
491
|
-
- Workspace evidence: `schemaVersion = doctor-workspace-evidence-v1`, `evidenceType = workspace`
|
|
492
|
-
- Project evidence: `schemaVersion = doctor-project-evidence-v1`, `evidenceType = project`
|
|
493
|
-
- Workspace scan cache: `schemaVersion = doctor-workspace-cache-v1`
|
|
494
|
-
|
|
495
|
-
Compatibility policy for automation consumers:
|
|
496
|
-
|
|
497
|
-
- Legacy doctor evidence without `schemaVersion` is still accepted.
|
|
498
|
-
- Unknown or incompatible doctor evidence schema versions are treated as invalid evidence (safe fallback, no crash).
|
|
499
|
-
- `readiness` and `workspace share` use the same compatibility validation path, so behavior is consistent across CLI surfaces.
|
|
500
|
-
|
|
501
|
-
### Project lifecycle
|
|
502
|
-
|
|
503
|
-
```bash
|
|
504
|
-
npx rapidkit create project <kit> <name> [--yes] [--skip-install]
|
|
505
|
-
npx rapidkit project commands [--json]
|
|
506
|
-
npx rapidkit commands --scope project [--json]
|
|
507
|
-
npx rapidkit init
|
|
508
|
-
npx rapidkit dev
|
|
509
|
-
npx rapidkit test
|
|
510
|
-
npx rapidkit build
|
|
511
|
-
npx rapidkit start
|
|
512
|
-
```
|
|
513
|
-
|
|
514
|
-
`project commands` shows the effective command contract for the current project. Core-backed
|
|
515
|
-
FastAPI/NestJS projects can use module commands such as `add` and `modules`. npm-backed Go, Spring
|
|
516
|
-
Boot, and ASP.NET Core projects use runtime lifecycle commands and workspace governance while Core
|
|
517
|
-
module mutation remains disabled. Imported observed projects are safe to inspect, share, and govern;
|
|
518
|
-
they expose help-level lifecycle support until a runtime adapter or project-local command mapping is
|
|
519
|
-
available.
|
|
520
|
-
|
|
521
|
-
### Operations
|
|
154
|
+
Common workspace commands:
|
|
522
155
|
|
|
523
156
|
```bash
|
|
157
|
+
npx rapidkit doctor workspace
|
|
158
|
+
npx rapidkit setup <python|node|go|java|dotnet> [--warm-deps]
|
|
159
|
+
npx rapidkit workspace list
|
|
524
160
|
npx rapidkit cache <status|clear|prune|repair>
|
|
525
161
|
npx rapidkit mirror <status|sync|verify|rotate>
|
|
526
|
-
npx rapidkit infra <plan|up|down|status>
|
|
527
|
-
```
|
|
528
|
-
|
|
529
|
-
See [Workspace infrastructure (sidecar)](#workspace-infrastructure-sidecar) for discovery rules and generated artifacts.
|
|
530
|
-
|
|
531
|
-
## Profiles
|
|
532
|
-
|
|
533
|
-
- `minimal` — baseline workspace scaffolding
|
|
534
|
-
- `java-only` — Java-focused workspace
|
|
535
|
-
- `python-only` — Python-focused workspace
|
|
536
|
-
- `node-only` — Node.js-focused workspace
|
|
537
|
-
- `go-only` — Go-focused workspace
|
|
538
|
-
- `polyglot` — Python + Node.js + Go + Java
|
|
539
|
-
- `enterprise` — polyglot + governance-oriented checks
|
|
540
|
-
|
|
541
|
-
## Policy Modes
|
|
542
|
-
|
|
543
|
-
`mode` in `.rapidkit/policies.yml` controls enforcement:
|
|
544
|
-
|
|
545
|
-
- `warn` (default): report violations, continue
|
|
546
|
-
- `strict`: block incompatible operations
|
|
547
|
-
|
|
548
|
-
## Workspace Policy Management
|
|
549
|
-
|
|
550
|
-
Manage `.rapidkit/policies.yml` via CLI (recommended, avoids manual YAML edits):
|
|
551
|
-
|
|
552
|
-
```bash
|
|
553
|
-
npx rapidkit workspace policy show
|
|
554
|
-
npx rapidkit workspace policy set mode strict
|
|
555
|
-
npx rapidkit workspace policy set dependency_sharing_mode shared-runtime-caches
|
|
556
|
-
npx rapidkit workspace policy set rules.enforce_toolchain_lock true
|
|
557
|
-
```
|
|
558
|
-
|
|
559
|
-
Supported keys:
|
|
560
|
-
|
|
561
|
-
- `mode`
|
|
562
|
-
- `dependency_sharing_mode`
|
|
563
|
-
- `rules.enforce_workspace_marker`
|
|
564
|
-
- `rules.enforce_toolchain_lock`
|
|
565
|
-
- `rules.disallow_untrusted_tool_sources`
|
|
566
|
-
- `rules.enforce_compatibility_matrix`
|
|
567
|
-
- `rules.require_mirror_lock_for_offline`
|
|
568
|
-
|
|
569
|
-
## Setup and Warm Dependencies
|
|
570
|
-
|
|
571
|
-
`setup <runtime>` validates toolchain and updates `.rapidkit/toolchain.lock`.
|
|
572
|
-
|
|
573
|
-
`--warm-deps` adds optional dependency warm-up:
|
|
574
|
-
|
|
575
|
-
- Node: lock/dependency warm-up in Node project directories
|
|
576
|
-
- Go: module warm-up in Go project directories
|
|
577
|
-
- Python: accepted, currently reports node/go scope
|
|
578
|
-
|
|
579
|
-
Warm-deps behavior is non-fatal by design and reports explicit outcome (`completed` / `failed` / `skipped`).
|
|
580
|
-
|
|
581
|
-
## VS Code Extension (Recommended)
|
|
582
|
-
|
|
583
|
-
For the best RapidKit experience, use the **Workspai VS Code extension** — it wraps this CLI with a
|
|
584
|
-
visual workspace explorer, AI-powered project creation, and context-aware coding assistance.
|
|
585
|
-
|
|
586
|
-
### Why use the extension?
|
|
587
|
-
|
|
588
|
-
| Feature | CLI | Extension |
|
|
589
|
-
| -------------------------------------- | --- | ---------------- |
|
|
590
|
-
| Create workspace / project | ✅ | ✅ Visual wizard |
|
|
591
|
-
| AI Create — describe → scaffold | ❌ | ✅ |
|
|
592
|
-
| Project Assistant (context-aware Q&A) | ❌ | ✅ |
|
|
593
|
-
| Workspace tree explorer | ❌ | ✅ |
|
|
594
|
-
| Module catalog browser | ❌ | ✅ |
|
|
595
|
-
| One-click `rapidkit init / dev / test` | ❌ | ✅ |
|
|
596
|
-
| Inline AI on every workspace item | ❌ | ✅ |
|
|
597
|
-
|
|
598
|
-
### Install
|
|
599
|
-
|
|
600
|
-
Search **Workspai** in the VS Code Extensions marketplace, or:
|
|
601
|
-
|
|
602
|
-
```bash
|
|
603
|
-
ext install rapidkit.rapidkit-vscode
|
|
604
162
|
```
|
|
605
163
|
|
|
606
|
-
|
|
607
|
-
> You do **not** need to install the CLI separately when using the extension.
|
|
608
|
-
|
|
609
|
-
- Extension repository: https://github.com/rapidkitlabs/rapidkit-vscode
|
|
164
|
+
Full syntax: [docs/commands-reference.md](docs/commands-reference.md). CI workflows: [docs/ci-workflows.md](docs/ci-workflows.md) — includes `.github/workflows/ci.yml`, `.github/workflows/workspace-e2e-matrix.yml`, `.github/workflows/windows-bridge-e2e.yml`, `.github/workflows/e2e-smoke.yml`, `.github/workflows/security.yml`.
|
|
610
165
|
|
|
611
|
-
##
|
|
166
|
+
## Workspai ecosystem
|
|
612
167
|
|
|
613
|
-
|
|
168
|
+
| Component | Repository | Role |
|
|
169
|
+
| --- | --- | --- |
|
|
170
|
+
| CLI | [rapidkit-npm](https://github.com/rapidkitlabs/rapidkit-npm) | Commands, governance, adoption, CI evidence |
|
|
171
|
+
| VS Code | [rapidkit-vscode](https://github.com/rapidkitlabs/rapidkit-vscode) | Workspai dashboard, sidebar, AI studio |
|
|
172
|
+
| Core | [rapidkit-core](https://github.com/rapidkitlabs/rapidkit-core) | Python engine, modules, doctor |
|
|
173
|
+
| Examples | [rapidkit-examples](https://github.com/rapidkitlabs/rapidkit-examples) | Starter workspaces |
|
|
614
174
|
|
|
615
|
-
|
|
616
|
-
- Build/lint/typecheck/tests/coverage matrix
|
|
617
|
-
- General quality and contract gates
|
|
618
|
-
- `.github/workflows/workspace-e2e-matrix.yml`
|
|
619
|
-
- Cross-OS workspace lifecycle smoke
|
|
620
|
-
- Setup (`--warm-deps`) + cache/mirror ops
|
|
621
|
-
- Chaos/non-fatal warm-deps behavior (Ubuntu job)
|
|
622
|
-
- `.github/workflows/windows-bridge-e2e.yml`
|
|
623
|
-
- Native Windows bridge/lifecycle checks
|
|
624
|
-
- `.github/workflows/e2e-smoke.yml`
|
|
625
|
-
- Focused bridge regression smoke (fast, narrow scope)
|
|
626
|
-
- `.github/workflows/security.yml`
|
|
627
|
-
- Security scanning and policy checks
|
|
175
|
+
## VS Code extension
|
|
628
176
|
|
|
629
|
-
|
|
177
|
+
Search **Workspai** in the marketplace or `ext install rapidkit.rapidkit-vscode`.
|
|
630
178
|
|
|
631
|
-
|
|
179
|
+
| Feature | CLI | Extension |
|
|
180
|
+
| --- | --- | --- |
|
|
181
|
+
| Create / adopt / import | Yes | Guided wizards |
|
|
182
|
+
| Workspace model / context | Yes | Dashboard + AI scope |
|
|
183
|
+
| Enterprise evidence loop | Partial | Full dashboard |
|
|
184
|
+
| Module catalog (FastAPI/NestJS) | Limited | Browser UI |
|
|
632
185
|
|
|
633
|
-
|
|
634
|
-
- Setup details: [docs/SETUP.md](docs/SETUP.md)
|
|
635
|
-
- Doctor command: [docs/doctor-command.md](docs/doctor-command.md)
|
|
636
|
-
- Workspace marker spec: [docs/WORKSPACE_MARKER_SPEC.md](docs/WORKSPACE_MARKER_SPEC.md)
|
|
637
|
-
- Config file guide: [docs/config-file-guide.md](docs/config-file-guide.md)
|
|
638
|
-
- Package manager policy: [docs/PACKAGE_MANAGER_POLICY.md](docs/PACKAGE_MANAGER_POLICY.md)
|
|
639
|
-
- Security: [docs/SECURITY.md](docs/SECURITY.md)
|
|
640
|
-
- Development: [docs/DEVELOPMENT.md](docs/DEVELOPMENT.md)
|
|
186
|
+
The extension invokes this npm CLI. For the latest `adopt` and `create frontend` features, install matching CLI version: `npm install -g rapidkit@latest` or `npm link` from this repo ([Development](#development)).
|
|
641
187
|
|
|
642
|
-
##
|
|
643
|
-
|
|
644
|
-
`workspace run` is an enterprise-grade orchestrator for executing CI-safe stages (init, test, build, start) across polyglot monorepos. It supports 20+ frameworks across 9 runtimes with professional-grade features.
|
|
645
|
-
|
|
646
|
-
### Quick Start
|
|
647
|
-
|
|
648
|
-
```bash
|
|
649
|
-
# Test all discovered projects in parallel
|
|
650
|
-
npx rapidkit workspace run test --parallel
|
|
188
|
+
## Documentation
|
|
651
189
|
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
### Supported Runtimes & Frameworks
|
|
667
|
-
|
|
668
|
-
| Runtime | Frameworks | Status |
|
|
669
|
-
| ---------- | ------------------------------ | -------- |
|
|
670
|
-
| **Node** | NestJS, Express, Next.js, Nuxt | Built-in |
|
|
671
|
-
| **Go** | Fiber, Gin, Echo, Chi | Built-in |
|
|
672
|
-
| **Java** | Spring Boot, Quarkus, Gradle | Built-in |
|
|
673
|
-
| **Python** | FastAPI, Django, Flask, Poetry | Built-in |
|
|
674
|
-
| **PHP** | Laravel, Symfony, Slim | Observed |
|
|
675
|
-
| **Rust** | Actix, Axum, Rocket, Tokio | Observed |
|
|
676
|
-
| **.NET** | ASP.NET Core, Entity Framework | Built-in |
|
|
677
|
-
| **Elixir** | Phoenix, Umbrella Projects | Observed |
|
|
678
|
-
| **Ruby** | Rails, Sinatra, RSpec | Observed |
|
|
679
|
-
|
|
680
|
-
For the public scaffold/import/lifecycle/module support contract, see
|
|
681
|
-
[docs/contracts/RUNTIME_SUPPORT_MATRIX.md](docs/contracts/RUNTIME_SUPPORT_MATRIX.md).
|
|
682
|
-
|
|
683
|
-
### Enterprise Features
|
|
684
|
-
|
|
685
|
-
1. **Command Overrides** — Customize stage commands per project via `.rapidkit/context.json`
|
|
686
|
-
2. **Multi-Framework Projects** — Support full-stack apps (e.g., Laravel + Vue in same directory)
|
|
687
|
-
3. **Error Diagnostics** — Categorize errors (setup vs test failure vs runtime) for better CI feedback
|
|
688
|
-
4. **Preflight Validation** — Validate command availability before execution
|
|
689
|
-
5. **Health Checks** — Verify services are ready (port listening, HTTP health, log grep)
|
|
690
|
-
6. **Custom Stages** — Define project-specific stages (lint, docs, bench, etc.)
|
|
691
|
-
7. **Stage Dependencies** — Define execution order and prerequisites
|
|
692
|
-
8. **Environment Variants** — dev/staging/prod command variants
|
|
693
|
-
9. **Caching** — Skip re-runs of completed stages
|
|
694
|
-
10. **Composite Steps** — Multi-step build logic
|
|
695
|
-
|
|
696
|
-
For deeper enterprise deployment and governance details, see:
|
|
697
|
-
|
|
698
|
-
- [docs/README.md](docs/README.md)
|
|
699
|
-
- [docs/DEVELOPMENT.md](docs/DEVELOPMENT.md)
|
|
700
|
-
- [docs/SECURITY.md](docs/SECURITY.md)
|
|
701
|
-
|
|
702
|
-
### Configuration Example
|
|
703
|
-
|
|
704
|
-
```json
|
|
705
|
-
{
|
|
706
|
-
".rapidkit/context.json": {
|
|
707
|
-
"runtime": "php",
|
|
708
|
-
"framework": "Laravel",
|
|
709
|
-
"commands": {
|
|
710
|
-
"test": "php artisan test --parallel=4",
|
|
711
|
-
"build": "php artisan config:cache && php artisan route:cache",
|
|
712
|
-
"lint": "php bin/phpstan analyse --level=8"
|
|
713
|
-
},
|
|
714
|
-
"environment": "dev"
|
|
715
|
-
}
|
|
716
|
-
}
|
|
717
|
-
```
|
|
718
|
-
|
|
719
|
-
### Output & Reporting
|
|
720
|
-
|
|
721
|
-
```bash
|
|
722
|
-
# JSON report for CI integration
|
|
723
|
-
npx rapidkit workspace run test --json > test-results.json
|
|
724
|
-
|
|
725
|
-
cat test-results.json | jq '.projects[] | {path, status, errorCategory}'
|
|
726
|
-
# Output:
|
|
727
|
-
# {
|
|
728
|
-
# "path": "services/api",
|
|
729
|
-
# "status": "failed",
|
|
730
|
-
# "errorCategory": "setup" # setup | test-failure | runtime | dependency | timeout
|
|
731
|
-
# }
|
|
732
|
-
```
|
|
733
|
-
|
|
734
|
-
## Command Semantics
|
|
735
|
-
|
|
736
|
-
RapidKit has two workspace-level execution surfaces, and three equivalent full-init aliases at workspace root:
|
|
737
|
-
|
|
738
|
-
| Command | Intent | Scope |
|
|
739
|
-
| ------------------------------------------------------------------ | --------------------------------------------------------------------------------- | ----------------------------------------- |
|
|
740
|
-
| `init` (at workspace root), `workspace init`, `workspace run init` | Mirrored full-init orchestration (workspace-profile deps + selected project init) | Workspace root + discovered project fleet |
|
|
741
|
-
| `workspace run <test\|build\|start>` | Fleet stage execution — run a CI-safe stage across discovered projects | Selected project fleet |
|
|
742
|
-
| `init`, `test`, `build`, `start`, `dev` (inside project directory) | Project primitive — run one stage in the current project only | Single project |
|
|
743
|
-
|
|
744
|
-
**Key design rule:** at workspace root, these are equivalent aliases: `npx rapidkit init`, `npx rapidkit workspace init`, `npx rapidkit workspace run init`.
|
|
745
|
-
Inside a project directory, `npx rapidkit init` remains a project-scoped primitive.
|
|
746
|
-
|
|
747
|
-
`dev` is intentionally excluded from `workspace run` — it is a long-running local process, not a CI batch stage.
|
|
748
|
-
|
|
749
|
-
Detailed enterprise semantic specs and governance evidence contracts are intentionally excluded from OSS docs.
|
|
190
|
+
| Doc | Description |
|
|
191
|
+
| --- | --- |
|
|
192
|
+
| [docs/README.md](docs/README.md) | Documentation index |
|
|
193
|
+
| [docs/commands-reference.md](docs/commands-reference.md) | Full command syntax |
|
|
194
|
+
| [docs/workspace-operations.md](docs/workspace-operations.md) | Import, adopt, snapshots, archives, infra |
|
|
195
|
+
| [docs/workspace-run.md](docs/workspace-run.md) | Polyglot fleet orchestration |
|
|
196
|
+
| [docs/doctor-command.md](docs/doctor-command.md) | Doctor scopes, CI exit codes, JSON evidence |
|
|
197
|
+
| [docs/OPEN_SOURCE_USER_SCENARIOS.md](docs/OPEN_SOURCE_USER_SCENARIOS.md) | Role-based workflows |
|
|
198
|
+
| [docs/SETUP.md](docs/SETUP.md) | Maintainer setup |
|
|
199
|
+
| [docs/SECURITY.md](docs/SECURITY.md) | Security policy |
|
|
200
|
+
| [docs/config-file-guide.md](docs/config-file-guide.md) | User configuration |
|
|
201
|
+
| [docs/README.md](docs/README.md) | Full documentation index |
|
|
202
|
+
| [CHANGELOG.md](CHANGELOG.md) | Version history |
|
|
750
203
|
|
|
751
204
|
## Development
|
|
752
205
|
|
|
753
206
|
```bash
|
|
754
|
-
npm ci
|
|
755
|
-
npm run
|
|
756
|
-
npm run test
|
|
757
|
-
npm run lint
|
|
758
|
-
npm run typecheck
|
|
207
|
+
npm ci && npm run build && npm run test
|
|
208
|
+
npm run install:local # link CLI globally for manual testing
|
|
759
209
|
```
|
|
760
210
|
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
```bash
|
|
764
|
-
npm run install:local
|
|
765
|
-
npx rapidkit --version
|
|
766
|
-
```
|
|
211
|
+
Contributors: [docs/DEVELOPMENT.md](docs/DEVELOPMENT.md), [docs/ci-workflows.md](docs/ci-workflows.md).
|
|
767
212
|
|
|
768
|
-
|
|
769
|
-
> artifact before `npm pack` / `npm publish`. This keeps packaging deterministic and avoids
|
|
770
|
-
> registry or `npx` downloads during release.
|
|
771
|
-
>
|
|
772
|
-
> If you need to refresh the local test embeddings manually, run:
|
|
773
|
-
>
|
|
774
|
-
> ```bash
|
|
775
|
-
> npm run generate-embeddings
|
|
776
|
-
> ```
|
|
213
|
+
`npm run prepack` validates embeddings and CLI surfaces before `npm pack` / `npm publish`.
|
|
777
214
|
|
|
778
215
|
## Troubleshooting
|
|
779
216
|
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
|
783
|
-
|
|
|
784
|
-
|
|
|
785
|
-
| `
|
|
786
|
-
|
|
|
787
|
-
|
|
|
788
|
-
|
|
|
789
|
-
| doctor output seems stale | Check report timestamp in `.rapidkit/reports/` | Re-run `npx rapidkit doctor workspace` or `npx rapidkit doctor project` |
|
|
790
|
-
| affected run scope seems wrong | Verify git ref | Use `--since <ref>` explicitly |
|
|
791
|
-
|
|
792
|
-
- If setup output looks stale, run `npx rapidkit setup <runtime>` again to refresh `.rapidkit/toolchain.lock`.
|
|
793
|
-
- If dependency warm-up is skipped, verify you are inside the corresponding project directory (`package.json` for Node, `go.mod` for Go).
|
|
794
|
-
- For strict-mode blocks, inspect `.rapidkit/policies.yml` and workspace profile in `.rapidkit/workspace.json`.
|
|
217
|
+
| Problem | Quick check | Fix |
|
|
218
|
+
| --- | --- | --- |
|
|
219
|
+
| `python3` not found | `python3 --version` | Install Python 3.10+ |
|
|
220
|
+
| `setup --warm-deps` skipped | Project markers in cwd | Run from target project directory |
|
|
221
|
+
| Strict policy blocks command | `.rapidkit/policies.yml` | `workspace policy set …` |
|
|
222
|
+
| `npm audit fix --force` downgrades tsup | `package.json` | Do not use `--force`; keep `tsup@^8.5.1` |
|
|
223
|
+
| Security audit fails on esbuild | `npm audit --audit-level=moderate` | Keep `esbuild` override in `package.json` |
|
|
224
|
+
| Doctor output stale | Report timestamps | Re-run `doctor workspace` or `doctor project` |
|
|
225
|
+
| Affected run scope wrong | Git ref | Use `--since <ref>` explicitly |
|
|
795
226
|
|
|
796
227
|
## License
|
|
797
228
|
|