rapidkit 0.37.0 → 0.38.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 +166 -147
- package/contracts/create-planner-capabilities.v1.json +251 -0
- package/contracts/runtime-command-surface.v1.json +52 -0
- package/dist/autopilot-release-SBPGNGAB.js +1 -0
- package/dist/chunk-2ED6SPXP.js +1 -0
- package/dist/chunk-3R7UJAX5.js +1 -0
- package/dist/{chunk-RUUDLAKJ.js → chunk-5NBYSXOZ.js} +1 -1
- package/dist/chunk-7XW2I6MP.js +13 -0
- package/dist/{chunk-U6QUN6V2.js → chunk-ABPDGFVD.js} +1 -1
- package/dist/chunk-IW3KLQXE.js +2 -0
- package/dist/{chunk-7VSYTOOG.js → chunk-NKNMGWAZ.js} +1 -1
- package/dist/{chunk-IOIWVHRO.js → chunk-TVIOAZ6E.js} +13 -13
- package/dist/chunk-XESEBTPE.js +1 -0
- package/dist/{create-HN5HOGQ4.js → create-Y3XJOKL5.js} +1 -1
- package/dist/index.js +150 -144
- package/dist/{pipeline-BOU4KETN.js → pipeline-C4UCLETO.js} +1 -1
- package/dist/{workspace-2AL5C3QZ.js → workspace-WBKFXH4Z.js} +1 -1
- package/dist/{workspace-agent-sync-V2H6NTGD.js → workspace-agent-sync-3FFFJYKF.js} +1 -1
- package/dist/{workspace-context-KCKNV5VQ.js → workspace-context-V4UGIHSC.js} +1 -1
- package/dist/{workspace-foundation-L6ZBGMVE.js → workspace-foundation-T45HAWKL.js} +1 -1
- package/dist/{workspace-intelligence-3TWXJQ7Y.js → workspace-intelligence-MGL3Z25K.js} +1 -1
- package/dist/{workspace-model-NQVZN5W4.js → workspace-model-IKMGY2BX.js} +1 -1
- package/dist/workspace-run-HOR56FON.js +1 -0
- package/dist/workspace-verify-A3J6D7T2.js +1 -0
- package/docs/AI_DYNAMIC_INTEGRATION.md +440 -0
- package/docs/AI_EXAMPLES.md +419 -0
- package/docs/AI_FEATURES.md +460 -0
- package/docs/AI_QUICKSTART.md +245 -0
- package/docs/DEVELOPMENT.md +88 -0
- package/docs/From Code to Shared Understanding.png +0 -0
- package/docs/OPEN_SOURCE_USER_SCENARIOS.md +170 -0
- package/docs/OPTIMIZATION_GUIDE.md +504 -0
- package/docs/PACKAGE_MANAGER_POLICY.md +25 -0
- package/docs/README.md +121 -0
- package/docs/SECURITY.md +63 -0
- package/docs/SETUP.md +107 -0
- package/docs/UTILITIES.md +221 -0
- package/docs/WORKSPACE_MARKER_SPEC.md +276 -0
- package/docs/ci-workflows.md +56 -0
- package/docs/commands-reference.md +136 -0
- package/docs/config-file-guide.md +295 -0
- package/docs/contracts/ARTIFACT_CATALOG.md +111 -0
- package/docs/contracts/COMMAND_OWNERSHIP_MATRIX.md +138 -0
- package/docs/contracts/README.md +71 -0
- package/docs/contracts/RUNTIME_ACCEPTANCE_MATRIX.md +98 -0
- package/docs/contracts/RUNTIME_SUPPORT_MATRIX.md +74 -0
- package/docs/contracts/rapidkit-cli-contracts.json +239 -0
- package/docs/create-planner-capabilities.md +81 -0
- package/docs/doctor-command.md +263 -0
- package/docs/examples/ci-agent-grounding.yml +62 -0
- package/docs/from-code-to-shared-understanding.md +46 -0
- package/docs/governance-policy.enterprise.example.json +40 -0
- package/docs/mirror-config.enterprise.example.json +60 -0
- package/docs/policies.workspace.example.yml +23 -0
- package/docs/workspace-operations.md +160 -0
- package/docs/workspace-run.md +80 -0
- package/package.json +3 -2
- package/dist/autopilot-release-AUXP2ZIF.js +0 -1
- package/dist/chunk-C7OVQQXT.js +0 -1
- package/dist/chunk-EJGKBFV4.js +0 -2
- package/dist/chunk-UXKB4KGZ.js +0 -13
- package/dist/chunk-YJ24EV3P.js +0 -1
- package/dist/workspace-run-DEXI52KO.js +0 -1
- package/dist/workspace-verify-HBCQNNGU.js +0 -1
- /package/dist/{chunk-D23L2GFT.js → chunk-6E5TBB2C.js} +0 -0
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# RapidKit CLI Contracts
|
|
2
|
+
|
|
3
|
+
Contract documentation for JSON payloads, support matrices, and cross-repo parity.
|
|
4
|
+
|
|
5
|
+
## Monorepo workflow
|
|
6
|
+
|
|
7
|
+
Canonical JSON lives in **`../contracts/`** (npm package root, published in the tarball).
|
|
8
|
+
|
|
9
|
+
| Script | Purpose |
|
|
10
|
+
| ----------------------------------- | ------------------------------------------------------------------------------------------- |
|
|
11
|
+
| `npm run generate:contracts` | Regenerate runtime surface, create planner, import-stack parity, module-layout, infra-stack |
|
|
12
|
+
| `npm run check:generated-contracts` | Verify committed JSON matches generators |
|
|
13
|
+
| `npm run sync:parity-snapshot` | Copy canonical → vscode `contracts/` mirror |
|
|
14
|
+
| `npm run check:parity-snapshot` | Verify mirrors match canonical |
|
|
15
|
+
| `npm run validate:contracts` | Generate check + mirror check + contract tests |
|
|
16
|
+
|
|
17
|
+
Workflow: change code → `npm run generate:contracts` → `npm run sync:parity-snapshot` → commit npm + vscode `contracts/`.
|
|
18
|
+
|
|
19
|
+
## Documents in this folder
|
|
20
|
+
|
|
21
|
+
| File | Purpose |
|
|
22
|
+
| -------------------------------------------------------------- | ----------------------------------------------------------- |
|
|
23
|
+
| [ARTIFACT_CATALOG.md](./ARTIFACT_CATALOG.md) | On-disk artifact paths, schema versions, and consumer rules |
|
|
24
|
+
| [COMMAND_OWNERSHIP_MATRIX.md](./COMMAND_OWNERSHIP_MATRIX.md) | Which commands the npm wrapper owns vs Python Core |
|
|
25
|
+
| [RUNTIME_SUPPORT_MATRIX.md](./RUNTIME_SUPPORT_MATRIX.md) | Scaffold, import, lifecycle, and module support tiers |
|
|
26
|
+
| [RUNTIME_ACCEPTANCE_MATRIX.md](./RUNTIME_ACCEPTANCE_MATRIX.md) | Runtime acceptance matrix expectations |
|
|
27
|
+
| [rapidkit-cli-contracts.json](./rapidkit-cli-contracts.json) | Core CLI JSON schema fragments |
|
|
28
|
+
|
|
29
|
+
## Workspace intelligence schemas
|
|
30
|
+
|
|
31
|
+
Published under `../contracts/` (not duplicated in this folder):
|
|
32
|
+
|
|
33
|
+
- `workspace-registry.v1.json` — canonical project registry summary (see [ARTIFACT_CATALOG.md](./ARTIFACT_CATALOG.md))
|
|
34
|
+
- `release-readiness.v1.json` — release readiness gate evidence
|
|
35
|
+
- `workspace-run-last.v1.json` — multi-stage workspace run evidence
|
|
36
|
+
- `doctor-workspace-evidence.v1.json` / `doctor-project-evidence.v1.json` — doctor evidence
|
|
37
|
+
- `analyze-last-run.v1.json` — analyze evidence
|
|
38
|
+
- `pipeline-last-run.v1.json` — governance pipeline orchestration
|
|
39
|
+
- `create-planner-capabilities.v1.json` — native-create, external-create-adopt, and adopt-only capability lanes
|
|
40
|
+
|
|
41
|
+
Workspace intelligence (`../contracts/workspace-intelligence/`):
|
|
42
|
+
|
|
43
|
+
- `workspace-model.v1.json`
|
|
44
|
+
- `workspace-context.v1.json`
|
|
45
|
+
- `workspace-model-snapshot.v1.json`
|
|
46
|
+
- `workspace-model-diff.v1.json`
|
|
47
|
+
- `workspace-impact.v1.json`
|
|
48
|
+
- `workspace-verify.v1.json`
|
|
49
|
+
|
|
50
|
+
CLI commands: see [commands-reference.md](../commands-reference.md) and [../README.md](../README.md#workspace-intelligence).
|
|
51
|
+
|
|
52
|
+
## Core CLI JSON payloads
|
|
53
|
+
|
|
54
|
+
`rapidkit-cli-contracts.json` describes:
|
|
55
|
+
|
|
56
|
+
- `VersionResponse` — `rapidkit version --json`
|
|
57
|
+
- `CommandsResponse` — `rapidkit commands --json`
|
|
58
|
+
- `ProjectDetectResponse` — `rapidkit project detect --json`
|
|
59
|
+
- `ModulesListResponseV1` — `rapidkit modules list --json-schema 1`
|
|
60
|
+
|
|
61
|
+
## Versioning
|
|
62
|
+
|
|
63
|
+
- Payloads include `schema_version` where applicable.
|
|
64
|
+
- Backward-compatible changes keep the same schema version.
|
|
65
|
+
- Breaking changes require a schema bump and updated tests in `src/__tests__/contracts/`.
|
|
66
|
+
|
|
67
|
+
## See also
|
|
68
|
+
|
|
69
|
+
- [Documentation index](../README.md)
|
|
70
|
+
- [commands-reference.md](../commands-reference.md)
|
|
71
|
+
- [workspace-operations.md](../workspace-operations.md)
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# RapidKit Runtime Acceptance Matrix
|
|
2
|
+
|
|
3
|
+
Last updated: 2026-06-05
|
|
4
|
+
|
|
5
|
+
This document defines the executable acceptance gate for RapidKit npm workspace
|
|
6
|
+
and project orchestration. It complements
|
|
7
|
+
[RUNTIME_SUPPORT_MATRIX.md](RUNTIME_SUPPORT_MATRIX.md): the support matrix says
|
|
8
|
+
what RapidKit promises; this acceptance matrix verifies the promise with a real
|
|
9
|
+
workspace.
|
|
10
|
+
|
|
11
|
+
## Command
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npm run test:runtime-matrix
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
For a stricter prepared-machine run where Go, Java, .NET, Python, and Node
|
|
18
|
+
toolchains are expected to be installed:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npm run test:runtime-matrix:full
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
The script can also be invoked directly:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
node scripts/runtime-acceptance-matrix.mjs --report ./runtime-acceptance-report.json
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Modes
|
|
31
|
+
|
|
32
|
+
| Mode | Purpose | External runtime requirement |
|
|
33
|
+
| -------- | ----------------------------------------------------------------------- | ---------------------------- |
|
|
34
|
+
| default | Scaffold, import, contract, doctor, archive, and actionable diagnostics | no |
|
|
35
|
+
| `--full` | Everything in default plus lifecycle commands must pass | yes |
|
|
36
|
+
|
|
37
|
+
Default mode is intentionally network-safe. It creates a minimal workspace,
|
|
38
|
+
uses `--skip-install` for scaffolded projects, and accepts missing-runtime
|
|
39
|
+
lifecycle failures only when the CLI prints actionable diagnostics such as
|
|
40
|
+
`Reason`, `Command`, and `Hint`.
|
|
41
|
+
|
|
42
|
+
## Coverage
|
|
43
|
+
|
|
44
|
+
The matrix verifies:
|
|
45
|
+
|
|
46
|
+
- npm-owned global entrypoints: `--version` and `-v`.
|
|
47
|
+
- global command ownership contract via `commands --json`, plus core-owned
|
|
48
|
+
catalog commands in default/full modes: `version`, `commands`, `list`,
|
|
49
|
+
`info`, `frameworks`, `modules`, and `license`.
|
|
50
|
+
- `create workspace` with a Python-free minimal profile.
|
|
51
|
+
- `create project` for npm-backed Go Fiber, Go Gin, Spring Boot, and ASP.NET
|
|
52
|
+
Core Clean Web API kits.
|
|
53
|
+
- `create project` for core-backed FastAPI and NestJS kits through the current
|
|
54
|
+
bridge/fallback path.
|
|
55
|
+
- `import` for observed runtime projects without first-class kits, including
|
|
56
|
+
Laravel/PHP, Rails/Ruby, Axum/Rust, and generic unknown backends.
|
|
57
|
+
- `workspace sync`, `workspace policy show/set`.
|
|
58
|
+
- Snapshot safety flows: create/list/inspect/restore dry-run.
|
|
59
|
+
- Project safety flows: archive list, archive dry-run, and delete dry-run.
|
|
60
|
+
- `workspace contract init/inspect/verify/graph`.
|
|
61
|
+
- `doctor workspace` and `doctor project`.
|
|
62
|
+
- `project commands --json` capability reporting for every generated/imported
|
|
63
|
+
project.
|
|
64
|
+
- Project lifecycle `init`, `help`, `test`, `build`, `lint`, and `format` in
|
|
65
|
+
default and full modes, with missing runtime/tooling reported as actionable
|
|
66
|
+
setup diagnostics in default mode.
|
|
67
|
+
- `workspace run init/test/build`, including default-mode actionable setup
|
|
68
|
+
failures and full-mode hard pass requirements.
|
|
69
|
+
- Rejection of unsupported fleet stages such as `workspace run dev`.
|
|
70
|
+
- Portable archive export, inspect, strict verify, doctor, and hydrate preview.
|
|
71
|
+
|
|
72
|
+
## Report Contract
|
|
73
|
+
|
|
74
|
+
Each run writes a JSON report with:
|
|
75
|
+
|
|
76
|
+
- `kind: rapidkit.runtime.acceptance.matrix`
|
|
77
|
+
- runtime preflight availability
|
|
78
|
+
- per-scenario command, cwd, exit code, duration, status, and output tails
|
|
79
|
+
- final summary and exit code
|
|
80
|
+
|
|
81
|
+
By default, reports are written under the system temp report directory and are
|
|
82
|
+
not deleted with the temporary workspace. Use `--report <file>` when you need a
|
|
83
|
+
stable release-evidence path inside the repository or an artifact directory.
|
|
84
|
+
|
|
85
|
+
## Release Rule
|
|
86
|
+
|
|
87
|
+
This gate is intentionally **manual/local-only for now**. Do not add it to
|
|
88
|
+
regular GitHub Actions until it has a dedicated scheduled/manual workflow with
|
|
89
|
+
runtime caches and explicit cost controls.
|
|
90
|
+
|
|
91
|
+
For npm releases:
|
|
92
|
+
|
|
93
|
+
1. Run `npm run test:runtime-matrix` locally before publishing a release
|
|
94
|
+
candidate.
|
|
95
|
+
2. Run `npm run test:runtime-matrix:full` on at least one prepared release
|
|
96
|
+
machine with Go, Java, .NET, Python, and Node installed.
|
|
97
|
+
3. Any newly added first-class or extended runtime must add at least one matrix
|
|
98
|
+
scenario before release.
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# RapidKit Runtime Support Matrix
|
|
2
|
+
|
|
3
|
+
Last updated: 2026-06-15
|
|
4
|
+
|
|
5
|
+
This document defines the public support contract for RapidKit npm workspace projects.
|
|
6
|
+
It separates three concerns:
|
|
7
|
+
|
|
8
|
+
- **First-class**: curated RapidKit kit/framework with scaffold/import/govern/lifecycle support. Module mutation still follows the runtime row below.
|
|
9
|
+
- **Extended**: scaffold/import/govern/lifecycle or import/govern workflows are supported, but Core module mutation is disabled unless explicitly added later.
|
|
10
|
+
- **Observed**: import/govern/contract visibility is supported; lifecycle commands may require manual project scripts or future adapters.
|
|
11
|
+
|
|
12
|
+
## Runtime Tiers
|
|
13
|
+
|
|
14
|
+
| Runtime | Tier | Scaffold | Import | Lifecycle Commands | Module Commands | Doctor |
|
|
15
|
+
| ------------------- | ----------- | -------: | -----: | ------------------------------------------------- | --------------: | --------- |
|
|
16
|
+
| Python | first-class | yes | yes | init, dev, start, build, test, lint, format, help | yes | full |
|
|
17
|
+
| Node.js | extended | yes | yes | init, dev, start, build, test, lint, format, help | yes | full |
|
|
18
|
+
| Go | extended | yes | yes | init, dev, start, build, test, lint, format, help | no | readiness |
|
|
19
|
+
| Java / Spring Boot | extended | yes | yes | init, dev, start, build, test, lint, format, help | no | readiness |
|
|
20
|
+
| .NET / ASP.NET Core | extended | yes | yes | init, dev, start, build, test, lint, format, help | no | readiness |
|
|
21
|
+
| PHP | observed | no | yes | help | no | observed |
|
|
22
|
+
| Ruby | observed | no | yes | help | no | observed |
|
|
23
|
+
| Rust | observed | no | yes | help | no | observed |
|
|
24
|
+
| Elixir | observed | no | yes | help | no | observed |
|
|
25
|
+
| Clojure | observed | no | yes | help | no | observed |
|
|
26
|
+
| Scala | observed | no | yes | help | no | observed |
|
|
27
|
+
| Kotlin | observed | no | yes | help | no | observed |
|
|
28
|
+
| Deno | observed | no | yes | help | no | observed |
|
|
29
|
+
| Bun | observed | no | yes | help | no | observed |
|
|
30
|
+
| Unknown | observed | no | yes | help | no | observed |
|
|
31
|
+
|
|
32
|
+
## Framework Tiers
|
|
33
|
+
|
|
34
|
+
> **Runtime vs framework:** Python **runtime** stays first-class (Core-backed modules). Node.js **runtime** is extended; **NestJS** is the first-class Node framework. Frontend stacks (Next.js, Remix, Vite variants, Nuxt, Angular, Astro, SvelteKit) are extended frameworks on the Node runtime.
|
|
35
|
+
|
|
36
|
+
| Tier | Frameworks |
|
|
37
|
+
| ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
38
|
+
| first-class | FastAPI, NestJS |
|
|
39
|
+
| extended | Go/Fiber, Go/Gin, Spring Boot, ASP.NET Core, Django, Flask, Express, Fastify, Koa, Echo, Laravel, Symfony, Rails, Sinatra, Actix, Axum, Rocket, Phoenix, Next.js, Remix, React, Vue, Svelte, Solid, Nuxt, Angular, Astro, SvelteKit |
|
|
40
|
+
| observed | Python, Node.js, Go, Java, PHP, Ruby, Rust, Elixir, Unknown/generic projects |
|
|
41
|
+
|
|
42
|
+
## Import Policy
|
|
43
|
+
|
|
44
|
+
Imported projects are **observed and governed by default**:
|
|
45
|
+
|
|
46
|
+
- RapidKit writes `.rapidkit/project.json` so workspace contract, graph, doctor, and sharing flows can discover the project.
|
|
47
|
+
- RapidKit writes `.rapidkit/import.json` and `.rapidkit/import-readiness.json` for auditability.
|
|
48
|
+
- Secrets and dependency/build caches are not copied during local-folder import.
|
|
49
|
+
- `module_support` defaults to `false` for imported projects unless existing RapidKit metadata explicitly opts in.
|
|
50
|
+
|
|
51
|
+
This keeps imports safe for arbitrary repositories while still enabling workspace-level visibility and lifecycle support where adapters exist.
|
|
52
|
+
|
|
53
|
+
## Executable Acceptance Gate
|
|
54
|
+
|
|
55
|
+
The runtime support contract is validated by
|
|
56
|
+
[RUNTIME_ACCEPTANCE_MATRIX.md](RUNTIME_ACCEPTANCE_MATRIX.md).
|
|
57
|
+
|
|
58
|
+
Run the default, network-safe gate locally before release:
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
npm run test:runtime-matrix
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Run the full lifecycle gate on a prepared machine with Go, Java, .NET, Python,
|
|
65
|
+
and Node installed:
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
npm run test:runtime-matrix:full
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
This gate is not wired into regular GitHub Actions yet because it creates real
|
|
72
|
+
workspaces and projects across multiple runtimes. Keep it manual/local until a
|
|
73
|
+
dedicated scheduled or manually dispatched workflow has runtime caches and cost
|
|
74
|
+
controls.
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://getrapidkit.com/schemas/rapidkit-cli-contracts.json",
|
|
4
|
+
"title": "RapidKit Core CLI Contracts",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"definitions": {
|
|
7
|
+
"VersionResponse": {
|
|
8
|
+
"type": "object",
|
|
9
|
+
"required": [
|
|
10
|
+
"schema_version",
|
|
11
|
+
"version"
|
|
12
|
+
],
|
|
13
|
+
"properties": {
|
|
14
|
+
"schema_version": {
|
|
15
|
+
"const": 1
|
|
16
|
+
},
|
|
17
|
+
"version": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"minLength": 1
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
"additionalProperties": true
|
|
23
|
+
},
|
|
24
|
+
"CommandsResponse": {
|
|
25
|
+
"type": "object",
|
|
26
|
+
"required": [
|
|
27
|
+
"schema_version",
|
|
28
|
+
"commands"
|
|
29
|
+
],
|
|
30
|
+
"properties": {
|
|
31
|
+
"schema_version": {
|
|
32
|
+
"const": 1
|
|
33
|
+
},
|
|
34
|
+
"commands": {
|
|
35
|
+
"type": "array",
|
|
36
|
+
"items": {
|
|
37
|
+
"type": "string",
|
|
38
|
+
"minLength": 1
|
|
39
|
+
},
|
|
40
|
+
"minItems": 1
|
|
41
|
+
},
|
|
42
|
+
"descriptions": {
|
|
43
|
+
"type": "object",
|
|
44
|
+
"additionalProperties": {
|
|
45
|
+
"type": "string"
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
"additionalProperties": true
|
|
50
|
+
},
|
|
51
|
+
"ProjectDetectResponse": {
|
|
52
|
+
"type": "object",
|
|
53
|
+
"required": [
|
|
54
|
+
"schema_version",
|
|
55
|
+
"input",
|
|
56
|
+
"confidence",
|
|
57
|
+
"isRapidkitProject",
|
|
58
|
+
"projectRoot",
|
|
59
|
+
"engine",
|
|
60
|
+
"markers"
|
|
61
|
+
],
|
|
62
|
+
"properties": {
|
|
63
|
+
"schema_version": {
|
|
64
|
+
"const": 1
|
|
65
|
+
},
|
|
66
|
+
"input": {
|
|
67
|
+
"type": "string"
|
|
68
|
+
},
|
|
69
|
+
"confidence": {
|
|
70
|
+
"enum": [
|
|
71
|
+
"strong",
|
|
72
|
+
"weak",
|
|
73
|
+
"none"
|
|
74
|
+
]
|
|
75
|
+
},
|
|
76
|
+
"isRapidkitProject": {
|
|
77
|
+
"type": "boolean"
|
|
78
|
+
},
|
|
79
|
+
"projectRoot": {
|
|
80
|
+
"type": [
|
|
81
|
+
"string",
|
|
82
|
+
"null"
|
|
83
|
+
]
|
|
84
|
+
},
|
|
85
|
+
"engine": {
|
|
86
|
+
"type": "string"
|
|
87
|
+
},
|
|
88
|
+
"markers": {
|
|
89
|
+
"type": "object"
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
"additionalProperties": true
|
|
93
|
+
},
|
|
94
|
+
"ModulesListResponseV1": {
|
|
95
|
+
"type": "object",
|
|
96
|
+
"required": [
|
|
97
|
+
"schema_version",
|
|
98
|
+
"generated_at",
|
|
99
|
+
"filters",
|
|
100
|
+
"stats",
|
|
101
|
+
"modules"
|
|
102
|
+
],
|
|
103
|
+
"properties": {
|
|
104
|
+
"schema_version": {
|
|
105
|
+
"const": 1
|
|
106
|
+
},
|
|
107
|
+
"generated_at": {
|
|
108
|
+
"type": "string",
|
|
109
|
+
"format": "date-time"
|
|
110
|
+
},
|
|
111
|
+
"etag": {
|
|
112
|
+
"type": "string",
|
|
113
|
+
"minLength": 1
|
|
114
|
+
},
|
|
115
|
+
"filters": {
|
|
116
|
+
"type": "object",
|
|
117
|
+
"properties": {
|
|
118
|
+
"category": {
|
|
119
|
+
"type": [
|
|
120
|
+
"string",
|
|
121
|
+
"null"
|
|
122
|
+
]
|
|
123
|
+
},
|
|
124
|
+
"tag": {
|
|
125
|
+
"type": [
|
|
126
|
+
"string",
|
|
127
|
+
"null"
|
|
128
|
+
]
|
|
129
|
+
},
|
|
130
|
+
"detailed": {
|
|
131
|
+
"type": "boolean"
|
|
132
|
+
}
|
|
133
|
+
},
|
|
134
|
+
"additionalProperties": true
|
|
135
|
+
},
|
|
136
|
+
"stats": {
|
|
137
|
+
"type": "object",
|
|
138
|
+
"required": [
|
|
139
|
+
"total",
|
|
140
|
+
"returned",
|
|
141
|
+
"invalid"
|
|
142
|
+
],
|
|
143
|
+
"properties": {
|
|
144
|
+
"total": {
|
|
145
|
+
"type": "integer",
|
|
146
|
+
"minimum": 0
|
|
147
|
+
},
|
|
148
|
+
"returned": {
|
|
149
|
+
"type": "integer",
|
|
150
|
+
"minimum": 0
|
|
151
|
+
},
|
|
152
|
+
"invalid": {
|
|
153
|
+
"type": "integer",
|
|
154
|
+
"minimum": 0
|
|
155
|
+
}
|
|
156
|
+
},
|
|
157
|
+
"additionalProperties": true
|
|
158
|
+
},
|
|
159
|
+
"modules": {
|
|
160
|
+
"type": "array",
|
|
161
|
+
"items": {
|
|
162
|
+
"type": "object",
|
|
163
|
+
"required": [
|
|
164
|
+
"name",
|
|
165
|
+
"version",
|
|
166
|
+
"category",
|
|
167
|
+
"status",
|
|
168
|
+
"slug"
|
|
169
|
+
],
|
|
170
|
+
"properties": {
|
|
171
|
+
"name": {
|
|
172
|
+
"type": "string"
|
|
173
|
+
},
|
|
174
|
+
"display_name": {
|
|
175
|
+
"type": "string"
|
|
176
|
+
},
|
|
177
|
+
"version": {
|
|
178
|
+
"type": "string"
|
|
179
|
+
},
|
|
180
|
+
"category": {
|
|
181
|
+
"type": "string"
|
|
182
|
+
},
|
|
183
|
+
"status": {
|
|
184
|
+
"type": "string"
|
|
185
|
+
},
|
|
186
|
+
"description": {
|
|
187
|
+
"type": "string"
|
|
188
|
+
},
|
|
189
|
+
"tags": {
|
|
190
|
+
"type": "array",
|
|
191
|
+
"items": {
|
|
192
|
+
"type": "string"
|
|
193
|
+
}
|
|
194
|
+
},
|
|
195
|
+
"slug": {
|
|
196
|
+
"type": "string"
|
|
197
|
+
}
|
|
198
|
+
},
|
|
199
|
+
"additionalProperties": true
|
|
200
|
+
}
|
|
201
|
+
},
|
|
202
|
+
"invalid_modules": {
|
|
203
|
+
"type": "array",
|
|
204
|
+
"items": {
|
|
205
|
+
"type": "object",
|
|
206
|
+
"required": [
|
|
207
|
+
"slug"
|
|
208
|
+
],
|
|
209
|
+
"properties": {
|
|
210
|
+
"slug": {
|
|
211
|
+
"type": "string"
|
|
212
|
+
},
|
|
213
|
+
"messages": {
|
|
214
|
+
"type": "array",
|
|
215
|
+
"items": {
|
|
216
|
+
"type": "string"
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
},
|
|
220
|
+
"additionalProperties": true
|
|
221
|
+
}
|
|
222
|
+
},
|
|
223
|
+
"warnings": {
|
|
224
|
+
"type": "array",
|
|
225
|
+
"items": {
|
|
226
|
+
"type": "string"
|
|
227
|
+
}
|
|
228
|
+
},
|
|
229
|
+
"errors": {
|
|
230
|
+
"type": "array",
|
|
231
|
+
"items": {
|
|
232
|
+
"type": "string"
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
},
|
|
236
|
+
"additionalProperties": true
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# Create Planner Capabilities
|
|
2
|
+
|
|
3
|
+
RapidKit is a Workspace Intelligence platform, not a blind scaffold wrapper.
|
|
4
|
+
The create planner separates project creation into three lanes so developers,
|
|
5
|
+
CI, and AI agents share the same expectations.
|
|
6
|
+
|
|
7
|
+
## Lanes
|
|
8
|
+
|
|
9
|
+
| Lane | Status | Meaning |
|
|
10
|
+
| ----------------------- | --------- | --------------------------------------------------------------------------------------------------- |
|
|
11
|
+
| `native-create` | Available | RapidKit owns the scaffold contract, marker, registry, doctor, bootstrap, and workspace model path. |
|
|
12
|
+
| `external-create-adopt` | Planned | A stable ecosystem generator exists, but RapidKit does not yet own the full post-create contract. |
|
|
13
|
+
| `adopt-only` | Available | The project enters Workspace Intelligence through import/adopt, not native create. |
|
|
14
|
+
|
|
15
|
+
## Native create
|
|
16
|
+
|
|
17
|
+
Native create is reserved for kits with deterministic RapidKit contracts:
|
|
18
|
+
|
|
19
|
+
- FastAPI
|
|
20
|
+
- NestJS
|
|
21
|
+
- Go Fiber and Go Gin
|
|
22
|
+
- Spring Boot
|
|
23
|
+
- ASP.NET Core Web API
|
|
24
|
+
- Frontend kits (`frontend.nextjs`, `frontend.vite-react`, `frontend.angular`, and related frontend generators)
|
|
25
|
+
|
|
26
|
+
These kits can be exposed through `rapidkit create project` because RapidKit can
|
|
27
|
+
create the project and immediately produce the expected `.rapidkit` metadata,
|
|
28
|
+
workspace registry entries, doctor evidence, and workspace model data.
|
|
29
|
+
|
|
30
|
+
## External create, then adopt
|
|
31
|
+
|
|
32
|
+
Some ecosystems have stable external commands but are not RapidKit-native create
|
|
33
|
+
targets yet:
|
|
34
|
+
|
|
35
|
+
- WordPress site: `wp core download`, `wp config create`, `wp db create`, `wp core install`
|
|
36
|
+
- WordPress block/plugin: `npx @wordpress/create-block@latest <slug>`
|
|
37
|
+
- Laravel: `composer create-project laravel/laravel <name>`
|
|
38
|
+
- Symfony: `composer create-project symfony/skeleton <name>`
|
|
39
|
+
- Rails: `rails new <name>`
|
|
40
|
+
|
|
41
|
+
These are `external-create-adopt` candidates, not active native kits. Until the
|
|
42
|
+
post-create contract is implemented end to end, RapidKit should guide users to
|
|
43
|
+
create externally and then adopt/import the project.
|
|
44
|
+
|
|
45
|
+
## Adopt only
|
|
46
|
+
|
|
47
|
+
If a project already exists, or if the requested runtime has no RapidKit-owned
|
|
48
|
+
create contract, the correct lane is `adopt-only`.
|
|
49
|
+
|
|
50
|
+
Adoption still gives the project Workspace Intelligence:
|
|
51
|
+
|
|
52
|
+
- framework and runtime detection
|
|
53
|
+
- workspace registry membership
|
|
54
|
+
- doctor and analyze evidence
|
|
55
|
+
- workspace model and context generation
|
|
56
|
+
- governance, Advisor, Studio, and agent grounding
|
|
57
|
+
|
|
58
|
+
## Product rule
|
|
59
|
+
|
|
60
|
+
Do not convert an unsupported or ambiguous stack request into a different native
|
|
61
|
+
kit. For example, a PHP, WordPress, Laravel, Symfony, or Rails request must not
|
|
62
|
+
be translated into FastAPI, NestJS, Go, Java, .NET, or a frontend kit.
|
|
63
|
+
|
|
64
|
+
If native create is unavailable, the planner should explain the supported lane
|
|
65
|
+
and guide the user to `adopt-only` or a future `external-create-adopt` flow.
|
|
66
|
+
|
|
67
|
+
## CLI guard
|
|
68
|
+
|
|
69
|
+
`rapidkit create project <kit> <name>` must check the capability lane before
|
|
70
|
+
running any native generator or delegating to the Core engine.
|
|
71
|
+
|
|
72
|
+
If the request resolves to `external-create-adopt` or an explicit `adopt-only`
|
|
73
|
+
runtime, the CLI must stop early and explain:
|
|
74
|
+
|
|
75
|
+
- native create is not available yet for the requested stack
|
|
76
|
+
- whether the future lane is `external-create-adopt` or current `adopt-only`
|
|
77
|
+
- which external generator commands are relevant, when known
|
|
78
|
+
- how to run `npx rapidkit adopt <project-path>` after the project exists
|
|
79
|
+
|
|
80
|
+
This keeps AI surfaces, CI, and developer terminals aligned: unsupported stacks
|
|
81
|
+
are never silently rewritten into unrelated native kits.
|