workspai 0.49.0 → 0.50.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (240) hide show
  1. package/README.md +88 -28
  2. package/contracts/analyze-last-run.v1.json +2 -2
  3. package/contracts/artifact-remediation-plan.v1.json +3 -9
  4. package/contracts/autopilot-release.v1.json +2 -0
  5. package/contracts/bootstrap-compliance.v1.json +2 -1
  6. package/contracts/cli-log-event.v1.json +1 -1
  7. package/contracts/cli-runtime-command-inventory.v1.snapshot.json +80 -0
  8. package/contracts/compatibility-matrix.v1.json +2 -0
  9. package/contracts/create-planner-capabilities.v1.json +144 -32
  10. package/contracts/doctor-project-evidence.v1.json +191 -11
  11. package/contracts/doctor-project-scan.v2.json +2 -0
  12. package/contracts/doctor-remediation-plan.v1.json +2 -2
  13. package/contracts/doctor-remediation-plan.v2.json +2 -2
  14. package/contracts/doctor-workspace-cache.v2.json +2 -0
  15. package/contracts/doctor-workspace-evidence.v1.json +189 -10
  16. package/contracts/extension-cli-compatibility.v1.json +10 -1
  17. package/contracts/infra-plan.v1.json +2 -0
  18. package/contracts/ingestion-plan.v1.json +85 -0
  19. package/contracts/ingestion-result.v1.json +59 -0
  20. package/contracts/mirror-ops.v1.json +2 -1
  21. package/contracts/pipeline-last-run.v1.json +2 -2
  22. package/contracts/private-product-manifest.v1.json +2 -0
  23. package/contracts/product-factory-plan.v1.json +2 -0
  24. package/contracts/project-archive.v1.json +2 -0
  25. package/contracts/project-entry-capability.v1.json +2 -3
  26. package/contracts/project-test-coverage.v1.json +189 -0
  27. package/contracts/project-workspace-link.v1.json +66 -0
  28. package/contracts/project-workspace-resolution.v1.json +28 -0
  29. package/contracts/published-contract-catalog.v1.json +45 -0
  30. package/contracts/release-readiness.v1.json +2 -2
  31. package/contracts/runtime-command-surface.v1.json +1456 -139
  32. package/contracts/transparency-evidence.v1.json +2 -1
  33. package/contracts/workspace-archive-capabilities.v1.json +11 -5
  34. package/contracts/workspace-archive-manifest.v1.json +236 -0
  35. package/contracts/workspace-archive-operation-result.v1.json +236 -0
  36. package/contracts/workspace-contract.v1.json +1 -1
  37. package/contracts/workspace-intelligence/agent-action-outcome.v1.json +2 -2
  38. package/contracts/workspace-intelligence/agent-customization-pack-report.v1.json +1 -1
  39. package/contracts/workspace-intelligence/agent-hooks.v1.json +2 -0
  40. package/contracts/workspace-intelligence/agent-reports-index.v1.json +1 -1
  41. package/contracts/workspace-intelligence/blocker-resolution.v1.json +3 -9
  42. package/contracts/workspace-intelligence/doctor-fix-result.v1.json +2 -2
  43. package/contracts/workspace-intelligence/doctor-graph-diagnosis.v1.json +208 -0
  44. package/contracts/workspace-intelligence/fact-freshness.v1.json +2 -2
  45. package/contracts/workspace-intelligence/mcp-design.v1.json +2 -0
  46. package/contracts/workspace-intelligence/model-usage-event.v1.json +1 -1
  47. package/contracts/workspace-intelligence/project-context-agent.v1.json +360 -0
  48. package/contracts/workspace-intelligence/studio-blocker-handoff.v1.json +1 -1
  49. package/contracts/workspace-intelligence/workspace-context.v1.json +1 -1
  50. package/contracts/workspace-intelligence/workspace-contract-verify.v1.json +2 -2
  51. package/contracts/workspace-intelligence/workspace-dependency-graph.v1.json +1 -1
  52. package/contracts/workspace-intelligence/workspace-explain.v1.json +1 -1
  53. package/contracts/workspace-intelligence/workspace-graph-stream.v1.json +1 -1
  54. package/contracts/workspace-intelligence/workspace-graph-token-efficiency.v1.json +1 -1
  55. package/contracts/workspace-intelligence/workspace-impact.v1.json +1 -1
  56. package/contracts/workspace-intelligence/workspace-intelligence-evaluation-comparison.v1.json +1 -1
  57. package/contracts/workspace-intelligence/workspace-intelligence-evaluation.v1.json +1 -1
  58. package/contracts/workspace-intelligence/workspace-intelligence-history.v1.json +1 -1
  59. package/contracts/workspace-intelligence/workspace-intelligence-run.v1.json +2 -2
  60. package/contracts/workspace-intelligence/workspace-knowledge-graph-change-overlay.v1.json +1 -1
  61. package/contracts/workspace-intelligence/workspace-knowledge-graph.v1.json +48 -5
  62. package/contracts/workspace-intelligence/workspace-knowledge-search.v1.json +1 -1
  63. package/contracts/workspace-intelligence/workspace-model-diff.v1.json +1 -1
  64. package/contracts/workspace-intelligence/workspace-model-snapshot.v1.json +1 -1
  65. package/contracts/workspace-intelligence/workspace-model.v1.json +97 -5
  66. package/contracts/workspace-intelligence/workspace-operational-skill.v1.json +1 -1
  67. package/contracts/workspace-intelligence/workspace-skills-index.v1.json +1 -1
  68. package/contracts/workspace-intelligence/workspace-verify.v1.json +1 -1
  69. package/contracts/workspace-intelligence-architecture.v1.json +33 -7
  70. package/contracts/workspace-intelligence-chain.v1.json +1 -1
  71. package/contracts/workspace-list.v1.json +2 -0
  72. package/contracts/workspace-model-cache.v1.json +2 -0
  73. package/contracts/workspace-registry.v1.json +1 -1
  74. package/contracts/workspace-run-last.v1.json +1 -1
  75. package/contracts/workspace-share-bundle.v1.json +2 -1
  76. package/contracts/workspace-snapshot.v1.json +2 -0
  77. package/contracts/workspace-snapshot.v2.json +2 -0
  78. package/contracts/workspace-sync.v1.json +2 -0
  79. package/contracts/workspace-watch-event.v1.json +2 -0
  80. package/dist/analyze-ZFQWTCJQ.js +1 -0
  81. package/dist/{artifact-remediation-plan-SPOUHMK5.js → artifact-remediation-plan-ICN3KOFG.js} +1 -1
  82. package/dist/autopilot-release-VKXQ7BS7.js +1 -0
  83. package/dist/chunk-2AXEGYPL.js +1 -0
  84. package/dist/chunk-2D4UOYOJ.js +1 -0
  85. package/dist/chunk-2OIBHUVH.js +1 -0
  86. package/dist/chunk-3GRKUP5W.js +33 -0
  87. package/dist/{managed-agent-markers-AXUM75OE.js → chunk-3RBUSW7H.js} +1 -1
  88. package/dist/chunk-5EXZBCAZ.js +4 -0
  89. package/dist/chunk-6UTM5AJI.js +1 -0
  90. package/dist/chunk-AFIFZTOY.js +2 -0
  91. package/dist/{chunk-BMWFQXGW.js → chunk-AHLMIL2T.js} +1 -1
  92. package/dist/chunk-AL237TSJ.js +7 -0
  93. package/dist/chunk-AL2A7Q4X.js +86 -0
  94. package/dist/{chunk-VU7NZHPM.js → chunk-BHYTI3RH.js} +1 -1
  95. package/dist/{chunk-ESLPI3XZ.js → chunk-BQGBU2Y3.js} +1 -1
  96. package/dist/chunk-C35UXTDM.js +2 -0
  97. package/dist/chunk-C3FLCDRN.js +2 -0
  98. package/dist/chunk-CZC5P2MF.js +1 -0
  99. package/dist/{chunk-TIE2XMGH.js → chunk-DDQ3XK3H.js} +12 -12
  100. package/dist/{chunk-CRHYBQI3.js → chunk-DQ3PI7EP.js} +1 -1
  101. package/dist/chunk-EWZZUQBR.js +1 -0
  102. package/dist/{chunk-4KUIFXHM.js → chunk-GNQRYISX.js} +3 -3
  103. package/dist/chunk-I42F552T.js +2 -0
  104. package/dist/chunk-IDQKVJUF.js +2 -0
  105. package/dist/{chunk-3VFA7D5T.js → chunk-IND3TUVU.js} +1 -1
  106. package/dist/chunk-IPJ5URDF.js +1 -0
  107. package/dist/{chunk-EKZLUMCS.js → chunk-JFUD73OZ.js} +51 -51
  108. package/dist/chunk-KKAOTTYO.js +8 -0
  109. package/dist/chunk-KMLPHFLD.js +2 -0
  110. package/dist/{chunk-NHN4QXPP.js → chunk-KVSYBHUR.js} +1 -1
  111. package/dist/chunk-KXG6E5VK.js +1 -0
  112. package/dist/chunk-L2YK5RV2.js +1 -0
  113. package/dist/chunk-LAJM2SBP.js +15 -0
  114. package/dist/{chunk-K4X3DM7R.js → chunk-LZQUZGXB.js} +1 -1
  115. package/dist/chunk-MOSXTVPU.js +1 -0
  116. package/dist/chunk-MV7KF75Q.js +13 -0
  117. package/dist/chunk-MVLIONQD.js +1 -0
  118. package/dist/chunk-RJIYCDVC.js +1 -0
  119. package/dist/{chunk-BGPXQQNY.js → chunk-RTVRZFIJ.js} +1 -1
  120. package/dist/chunk-RVQLMTTI.js +2 -0
  121. package/dist/chunk-SHXJ2GDR.js +75 -0
  122. package/dist/{chunk-32OJDBIG.js → chunk-SS2VV3D5.js} +1 -1
  123. package/dist/chunk-TDTCMZK7.js +10 -0
  124. package/dist/chunk-UETZ7USY.js +36 -0
  125. package/dist/chunk-VKTUWUS6.js +1 -0
  126. package/dist/chunk-VRW6KXNK.js +6 -0
  127. package/dist/chunk-Y5YAP4F3.js +2 -0
  128. package/dist/chunk-YPKNQCLK.js +2 -0
  129. package/dist/{create-S64IWHAP.js → create-I23DC7SN.js} +1 -1
  130. package/dist/{demo-kit-DZ7TPG7K.js → demo-kit-KHH63TNA.js} +2 -2
  131. package/dist/{doctor-4NNUDNGZ.js → doctor-DOOMYLIH.js} +1 -1
  132. package/dist/{dotnet-webapi-clean-A6MVDYXX.js → dotnet-webapi-clean-VXEF4SHM.js} +5 -5
  133. package/dist/{gofiber-standard-I5YPQG5V.js → gofiber-standard-AQGSC7ON.js} +3 -3
  134. package/dist/{gogin-standard-VY2L4QT5.js → gogin-standard-7DU3OCBX.js} +3 -3
  135. package/dist/index.d.ts +38 -6
  136. package/dist/index.js +267 -355
  137. package/dist/managed-agent-markers-COE5DJ3W.js +1 -0
  138. package/dist/pipeline-U77HSINC.js +5 -0
  139. package/dist/platform-capabilities-PR6YL4KC.js +1 -0
  140. package/dist/project-intelligence-lens-BKKVPCLC.js +1 -0
  141. package/dist/project-test-coverage-4TEHZJFC.js +1 -0
  142. package/dist/{pythonRapidkitExec-CVCIK225.js → pythonRapidkitExec-YR7P5LWG.js} +1 -1
  143. package/dist/rust-axum-4HXDICIB.js +140 -0
  144. package/dist/{springboot-standard-55XKCBIZ.js → springboot-standard-EK6GYN5T.js} +7 -7
  145. package/dist/workspace-ZEYUVR26.js +1 -0
  146. package/dist/{workspace-agent-sync-662QHXGF.js → workspace-agent-sync-DKYJLUDP.js} +1 -1
  147. package/dist/workspace-archive-4JNT4S7N.js +1 -0
  148. package/dist/{workspace-context-23YYCUCP.js → workspace-context-IHUFMZT3.js} +1 -1
  149. package/dist/workspace-contract-PVLGPBBV.js +1 -0
  150. package/dist/workspace-explain-64HNKAHO.js +1 -0
  151. package/dist/workspace-explain-contract-H7O26QJU.js +1 -0
  152. package/dist/{workspace-feedback-SUVH2LUJ.js → workspace-feedback-RATRXFUC.js} +1 -1
  153. package/dist/{workspace-foundation-WPLD7OEO.js → workspace-foundation-D33LJLGT.js} +1 -1
  154. package/dist/workspace-graph-stream-THNG2T7R.js +1 -0
  155. package/dist/{workspace-history-BANOJRQ2.js → workspace-history-EWFPT74O.js} +1 -1
  156. package/dist/workspace-intelligence-MCNSWWDV.js +1 -0
  157. package/dist/{workspace-intelligence-evaluation-IPH7M3WV.js → workspace-intelligence-evaluation-7CABG5Y6.js} +1 -1
  158. package/dist/workspace-intelligence-runner-TG2VLHNZ.js +1 -0
  159. package/dist/workspace-intelligence-runtime-registry-ZZ3GRAL2.js +1 -0
  160. package/dist/{workspace-knowledge-graph-ARDC6HHG.js → workspace-knowledge-graph-2EYR7N56.js} +1 -1
  161. package/dist/{workspace-marker-SMBC3Z2Q.js → workspace-marker-7NHMDIRL.js} +1 -1
  162. package/dist/workspace-mcp-serve-FLAVKWYW.js +3 -0
  163. package/dist/workspace-model-FMFYLHE4.js +1 -0
  164. package/dist/workspace-model-hash-ZXYPIGCW.js +1 -0
  165. package/dist/workspace-onboarding-MYROZDI2.js +1 -0
  166. package/dist/{workspace-python-engine-state-2MLKJYQG.js → workspace-python-engine-state-J4QKW55K.js} +1 -1
  167. package/dist/{workspace-registry-summary-ORDK7A36.js → workspace-registry-summary-6VXIAQLX.js} +1 -1
  168. package/dist/workspace-run-2ZI5UMJ2.js +1 -0
  169. package/dist/{workspace-verify-EBVL7FWT.js → workspace-verify-FKYI65UQ.js} +1 -1
  170. package/dist/workspace-watch-RP5KMVP2.js +1 -0
  171. package/docs/GLOSSARY.md +17 -16
  172. package/docs/OPEN_SOURCE_USER_SCENARIOS.md +8 -3
  173. package/docs/README.md +6 -3
  174. package/docs/README_CONTENT_CONTRACT.md +18 -9
  175. package/docs/commands-reference.md +39 -8
  176. package/docs/contracts/ARTIFACT_CATALOG.md +65 -26
  177. package/docs/contracts/COMMAND_OWNERSHIP_MATRIX.md +2 -0
  178. package/docs/contracts/RUNTIME_SUPPORT_MATRIX.md +3 -3
  179. package/docs/contracts/rapidkit-cli-contracts.json +2 -2
  180. package/docs/create-planner-capabilities.md +36 -5
  181. package/docs/creating-workspaces-and-projects.md +59 -3
  182. package/docs/doctor-command.md +118 -11
  183. package/docs/from-code-to-shared-understanding.md +4 -1
  184. package/docs/graph-benchmark-methodology.md +2 -2
  185. package/docs/workspace-intelligence-evaluation.md +5 -0
  186. package/docs/workspace-knowledge-graph.md +102 -7
  187. package/docs/workspace-operations.md +146 -10
  188. package/package.json +2 -2
  189. package/scripts/enterprise-package-smoke.mjs +13 -1
  190. package/dist/analyze-EEEU3MIF.js +0 -1
  191. package/dist/autopilot-release-R4XRTWEM.js +0 -1
  192. package/dist/chunk-22DT744Z.js +0 -1
  193. package/dist/chunk-37CVKXBD.js +0 -1
  194. package/dist/chunk-3NU32T4A.js +0 -2
  195. package/dist/chunk-3ZK2GU7C.js +0 -1
  196. package/dist/chunk-4HDYADHT.js +0 -13
  197. package/dist/chunk-52PBRX7F.js +0 -1
  198. package/dist/chunk-54EP5CEV.js +0 -8
  199. package/dist/chunk-5XATWNME.js +0 -1
  200. package/dist/chunk-7YHK5NM3.js +0 -2
  201. package/dist/chunk-AFL3ACCR.js +0 -2
  202. package/dist/chunk-BFLJ2R4D.js +0 -80
  203. package/dist/chunk-E2KJ5QWY.js +0 -4
  204. package/dist/chunk-EYJ2CQSK.js +0 -1
  205. package/dist/chunk-FTY7GGXJ.js +0 -33
  206. package/dist/chunk-FXQJX34Z.js +0 -1
  207. package/dist/chunk-GSWPGELT.js +0 -2
  208. package/dist/chunk-GZTYAEWX.js +0 -1
  209. package/dist/chunk-HDXNIN4N.js +0 -1
  210. package/dist/chunk-HZDXO65G.js +0 -36
  211. package/dist/chunk-J5ENLXDF.js +0 -1
  212. package/dist/chunk-KB44JP4M.js +0 -2
  213. package/dist/chunk-LHOZXC2M.js +0 -2
  214. package/dist/chunk-MER6ZBN2.js +0 -13
  215. package/dist/chunk-NAJCUQ4X.js +0 -2
  216. package/dist/chunk-OA537ZQ5.js +0 -1
  217. package/dist/chunk-OW42TZFB.js +0 -1
  218. package/dist/chunk-P3D5YQB2.js +0 -1
  219. package/dist/chunk-PHXQR6PX.js +0 -2
  220. package/dist/chunk-PRTR2DQ2.js +0 -1
  221. package/dist/chunk-RHQW3DTP.js +0 -1
  222. package/dist/chunk-T4YR4RAI.js +0 -2
  223. package/dist/chunk-Y45WZR5N.js +0 -5
  224. package/dist/chunk-YJZOMRAS.js +0 -1
  225. package/dist/pipeline-LHTPE3DR.js +0 -5
  226. package/dist/platform-capabilities-2B4QMZXE.js +0 -1
  227. package/dist/workspace-PJPRBUMQ.js +0 -1
  228. package/dist/workspace-archive-P76EDIUG.js +0 -10
  229. package/dist/workspace-contract-TU2I7GC2.js +0 -1
  230. package/dist/workspace-dependency-graph-BP4EXYQ5.js +0 -1
  231. package/dist/workspace-explain-MWUEN643.js +0 -1
  232. package/dist/workspace-explain-contract-ZPI3JXJU.js +0 -1
  233. package/dist/workspace-graph-stream-KAGGQPJT.js +0 -1
  234. package/dist/workspace-intelligence-MFJE7W67.js +0 -1
  235. package/dist/workspace-intelligence-runner-OTYTHV6B.js +0 -1
  236. package/dist/workspace-mcp-serve-EZR6O76D.js +0 -3
  237. package/dist/workspace-model-7OU2M3LE.js +0 -1
  238. package/dist/workspace-model-hash-MHXK5MEI.js +0 -1
  239. package/dist/workspace-run-QND2SIYA.js +0 -1
  240. package/dist/workspace-watch-7HWGA5TF.js +0 -1
package/README.md CHANGED
@@ -81,19 +81,27 @@ npx workspai adopt .
81
81
  ```
82
82
 
83
83
  `adopt` registers the project without moving or copying it. When run outside a
84
- workspace, it creates or reuses the minimal default workspace and prints the
85
- exact `Next shell step`.
84
+ workspace, it creates or reuses the minimal default workspace and binds the
85
+ project to it.
86
86
 
87
- ### 3. Continue from the workspace root
87
+ ### 3. Continue from the project
88
88
 
89
- Without the VS Code extension, copy the printed `Next shell step` and continue
90
- in that workspace terminal:
89
+ The project is now a first-class entry point into its Workspai workspace. Stay
90
+ in the project directory and run:
91
91
 
92
92
  ```bash
93
- cd ~/.workspai/workspaces/workspai
93
+ npx workspai project workspace status --json
94
94
  npx workspai workspace intelligence run --for-agent generic --strict --json
95
95
  ```
96
96
 
97
+ Workspai resolves the canonical workspace through a validated machine-local
98
+ link. That link is gitignored; portable project grounding and bounded agent
99
+ context are written under the project's `.workspai/` directory. The project
100
+ lens carries bounded topology, related projects, API/deployment/test surfaces,
101
+ current blockers, proof paths, and model/graph freshness without copying the
102
+ full workspace graph. You only need `--workspace <path>` when resolving an
103
+ ambiguous or moved binding.
104
+
97
105
  `generic` creates vendor-neutral context. Use `codex`, `claude`, `cursor`, or
98
106
  `orca` when you want context shaped for that agent. Agent Sync also writes the
99
107
  shared files used by GitHub Copilot, VS Code, and `AGENTS.md` consumers without
@@ -117,6 +125,16 @@ The run saves its results so people and tools can inspect and reuse them:
117
125
  AGENTS.md
118
126
  ```
119
127
 
128
+ Each registered project also receives:
129
+
130
+ ```text
131
+ .workspai/
132
+ ├── workspace-link.local.json # machine-local, gitignored
133
+ ├── PROJECT-GROUNDING.md # portable entry guide
134
+ └── reports/project-context-agent.json
135
+ AGENTS.md # existing content preserved
136
+ ```
137
+
120
138
  For automation details, including exit codes and blocked results, see the
121
139
  [Unified runner guide](docs/workspace-intelligence-runner.md). A blocked result
122
140
  is useful evidence, not a crashed command.
@@ -135,6 +153,27 @@ cd ~/.workspai/workspaces/my-workspace
135
153
  npx workspai create project nextjs web --yes
136
154
  ```
137
155
 
156
+ The project picker is organized by **Backend**, **Frontend**, **Desktop**, and
157
+ **Extension**. In addition to the existing web and service starters, Workspai
158
+ can create Axum, Tauri, Electron, VS Code extension, and Laravel projects:
159
+
160
+ ```bash
161
+ npx workspai create project rust.axum api
162
+ npx workspai create project desktop.tauri desktop-app
163
+ npx workspai create project desktop.electron admin-console
164
+ npx workspai create project extension.vscode editor-tools
165
+ npx workspai create project php.laravel web-api
166
+ ```
167
+
168
+ Axum is a deterministic Workspai-owned baseline. Tauri, Electron, VS Code, and
169
+ Laravel use their ecosystem generator, after which Workspai writes canonical
170
+ project metadata and joins the project to the same Model, Doctor, Graph, and
171
+ agent-context pipeline. All available official generators request their latest
172
+ stable channel, enforce Node engine compatibility, check required local
173
+ toolchains, and record that policy in project evidence. Frontend remains a
174
+ first-class project category rather than being folded into a generic Node
175
+ project.
176
+
138
177
  From the `my-workspace` terminal, create a project, use `adopt` to link one in
139
178
  place, or use `import` to copy or clone one into the workspace. See
140
179
  [Creating Workspaces and Projects](docs/creating-workspaces-and-projects.md)
@@ -151,18 +190,16 @@ Workspai is the deterministic layer between source code and its consumers:
151
190
  ```text
152
191
  Code · packages · APIs · infrastructure · docs · CI · policies
153
192
  │
154
- deterministic providers
155
- │
156
- facts + proofs
193
+ registration · detection · contract reconciliation
157
194
  │
158
195
  Canonical Workspace Model
159
- │ │
160
- │ └── Evidence-backed Knowledge Graph
161
- │ │
162
- └──────────┬──────────────┘
163
- │
196
+ │
197
+ bounded providers · facts · proofs
198
+ │
199
+ Evidence-backed Knowledge Graph
200
+ │
164
201
  diff · impact · verify · context · explain
165
- │
202
+ │
166
203
  Developers · CI · IDEs · MCP · AI agents
167
204
  ```
168
205
 
@@ -171,6 +208,7 @@ Code · packages · APIs · infrastructure · docs · CI · policies
171
208
  | **Model** | What projects, runtimes, frameworks, commands, policies, contracts, and dependencies exist? |
172
209
  | **Snapshot and diff** | What changed between two known workspace states? |
173
210
  | **Impact** | Which projects and transitive dependents are affected? |
211
+ | **Doctor** | Which runtime check failed, what graph evidence is related, and what should verify the fix? |
174
212
  | **Evidence** | What do health, analysis, contracts, and readiness reports prove? |
175
213
  | **Verify** | Is the affected workspace ready, blocked, stale, or missing evidence? |
176
214
  | **Context** | What should developers, IDEs, and AI agents know before acting? |
@@ -285,6 +323,8 @@ reruns.
285
323
  | What you need | Command |
286
324
  | ------------------------------------ | ----------------------------------------------------------------------------- |
287
325
  | Run affected project tests | `npx workspai workspace run test --affected --blast-radius --json` |
326
+ | Measure one project's test coverage | `npx workspai project coverage --run --target 80 --strict --json` |
327
+ | Diagnose one project | `npx workspai doctor project --json` |
288
328
  | Run the release/governance gate | `npx workspai pipeline --json --strict` |
289
329
  | Run the canonical intelligence chain | `npx workspai workspace intelligence run --for-agent generic --strict --json` |
290
330
 
@@ -296,7 +336,7 @@ Other useful operational commands:
296
336
 
297
337
  ```bash
298
338
  npx workspai doctor workspace
299
- npx workspai setup <python|node|go|java|dotnet> [--warm-deps]
339
+ npx workspai setup <python|node|go|java|dotnet|rust|php> [--warm-deps]
300
340
  npx workspai workspace list
301
341
  npx workspai cache <status|clear|prune|repair>
302
342
  npx workspai mirror <status|sync|verify|rotate>
@@ -328,6 +368,12 @@ developers, CI, IDEs, and agents reason over the same blast radius.
328
368
 
329
369
  ### Ground AI tools
330
370
 
371
+ Workspai creates the initial model, graph, context, `AGENTS.md`, report index,
372
+ skills, and supported agent/IDE files with the workspace. It refreshes them
373
+ after successful project creation, adoption, import, or workspace connection.
374
+ Run Agent Sync directly only when you want an explicit refresh or different
375
+ targets/preset:
376
+
331
377
  ```bash
332
378
  npx workspai workspace agent-sync \
333
379
  --write \
@@ -346,6 +392,15 @@ and reproducible token-efficiency methodology, see the
346
392
  [Workspace Knowledge Graph guide](docs/workspace-knowledge-graph.md) and
347
393
  [Graph Benchmark Methodology](docs/graph-benchmark-methodology.md).
348
394
 
395
+ The integrated CLI has one canonical direction: **Workspace Model → Knowledge
396
+ Graph**. The model owns the workspace boundary and compact project topology;
397
+ bounded providers enrich that inventory into proof-backed cross-domain
398
+ relationships without writing back into the model. Both artifacts are published
399
+ under one lock with rollback, and the graph contract fixes its source to
400
+ `.workspai/reports/workspace-model.json` plus the model's stable structural
401
+ SHA-256. Doctor, Context, MCP, and graph streaming reject a mismatched persisted
402
+ graph.
403
+
349
404
  ## Outputs and Consumers
350
405
 
351
406
  Workspai separates human output, machine output, and durable cross-tool state:
@@ -399,18 +454,23 @@ tools without changing the source of truth:
399
454
 
400
455
  All onboarding routes feed the same Workspace Intelligence model.
401
456
 
402
- | Route | Use it when | Example |
403
- | ---------------- | ------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
404
- | Adopt | Existing source should stay in place | `npx workspai adopt /path/to/project --json` |
405
- | Import local | Existing source should be copied into a workspace | `npx workspai import ../orders-api --workspace /path/to/workspace --json` |
406
- | Import Git | A repository should be cloned into a workspace | `npx workspai import https://github.com/acme/orders-api.git --git --workspace /path/to/workspace --json` |
407
- | Create workspace | You need a new governed boundary | `npx workspai create workspace my-workspace --profile polyglot --yes` |
408
- | Create project | You need a supported new scaffold | `npx workspai create project nextjs web --yes` |
409
- | Interactive | You want Workspai to guide the choice | `npx workspai create` |
410
-
411
- Adopt never moves or copies source. Create can use a Workspai-managed kit or an
412
- available official ecosystem generator. Unsupported native create requests are
413
- directed toward official tooling followed by adoption.
457
+ | Route | Use it when | Example |
458
+ | ----------------- | ------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
459
+ | Adopt | Existing source should stay in place | `npx workspai adopt /path/to/project --json` |
460
+ | Import local | Existing source should be copied into a workspace | `npx workspai import ../orders-api --workspace /path/to/workspace --json` |
461
+ | Import Git | A repository should be cloned into a workspace | `npx workspai import https://github.com/acme/orders-api.git --git --workspace /path/to/workspace --json` |
462
+ | Connect workspace | An existing workspace should stay in place | `npx workspai workspace connect /path/to/workspace --json` |
463
+ | Import workspace | A portable workspace archive should become active | `npx workspai workspace import team.workspai-archive.zip --output ./team --json` |
464
+ | Create workspace | You need a new governed boundary | `npx workspai create workspace my-workspace --profile polyglot --yes` |
465
+ | Create project | You need a supported new scaffold | `npx workspai create project nextjs web --yes` |
466
+ | Interactive | You want Workspai to guide the choice | `npx workspai create` |
467
+
468
+ Adopt and workspace connect never move or copy source. Project import copies or
469
+ clones; workspace import verifies and materializes a portable archive before
470
+ registration. `workspace hydrate` only extracts an archive and intentionally
471
+ does not register it. Create can use a Workspai-managed kit or an available
472
+ official ecosystem generator. Unsupported native create requests are directed
473
+ toward official tooling followed by adoption.
414
474
 
415
475
  Detailed onboarding behavior:
416
476
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://getrapidkit.com/schemas/analyze-last-run.v1.json",
4
- "title": "RapidKit Analyze Last Run Evidence",
3
+ "$id": "https://workspai.dev/schemas/analyze-last-run.v1.json",
4
+ "title": "Workspai Analyze Last Run Evidence",
5
5
  "type": "object",
6
6
  "required": [
7
7
  "schemaVersion",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://rapidkit.dev/contracts/artifact-remediation-plan.v1.json",
4
- "title": "RapidKit Artifact Remediation Plan",
3
+ "$id": "https://workspai.dev/contracts/artifact-remediation-plan.v1.json",
4
+ "title": "Workspai Artifact Remediation Plan",
5
5
  "type": "object",
6
6
  "additionalProperties": false,
7
7
  "required": ["schemaVersion", "generatedAt", "workspace", "source", "summary", "actions"],
@@ -35,13 +35,7 @@
35
35
  "summary": {
36
36
  "type": "object",
37
37
  "additionalProperties": false,
38
- "required": [
39
- "artifactsScanned",
40
- "cardsCovered",
41
- "totalActions",
42
- "executableActions",
43
- "risk"
44
- ],
38
+ "required": ["artifactsScanned", "cardsCovered", "totalActions", "executableActions", "risk"],
45
39
  "properties": {
46
40
  "artifactsScanned": { "type": "integer", "minimum": 0 },
47
41
  "cardsCovered": { "type": "integer", "minimum": 0 },
@@ -1,5 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://workspai.dev/schemas/autopilot-release.v1.json",
4
+ "title": "Workspai Autopilot Release Evidence",
3
5
  "type": "object",
4
6
  "required": [
5
7
  "schemaVersion",
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://getrapidkit.com/schemas/bootstrap-compliance.v1.json",
3
+ "$id": "https://workspai.dev/schemas/bootstrap-compliance.v1.json",
4
+ "title": "Workspai Bootstrap Compliance Evidence",
4
5
  "type": "object",
5
6
  "required": ["schemaVersion", "command", "timestamp", "result", "checks"],
6
7
  "properties": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://getrapidkit.com/schemas/cli-log-event.v1.json",
3
+ "$id": "https://workspai.dev/schemas/cli-log-event.v1.json",
4
4
  "title": "Workspai CLI Log Event",
5
5
  "description": "NDJSON stream events emitted on stderr when RAPIDKIT_LOG_FORMAT=json or --log-format json",
6
6
  "type": "object",
@@ -31,6 +31,10 @@
31
31
  "flags": "--enable-modules",
32
32
  "attributeName": "enableModules"
33
33
  },
34
+ {
35
+ "flags": "--project-grounding <mode>",
36
+ "attributeName": "projectGrounding"
37
+ },
34
38
  {
35
39
  "flags": "--dry-run",
36
40
  "attributeName": "dryRun"
@@ -432,6 +436,10 @@
432
436
  "flags": "--enable-modules",
433
437
  "attributeName": "enableModules"
434
438
  },
439
+ {
440
+ "flags": "--project-grounding <mode>",
441
+ "attributeName": "projectGrounding"
442
+ },
435
443
  {
436
444
  "flags": "--git",
437
445
  "attributeName": "git"
@@ -836,6 +844,41 @@
836
844
  }
837
845
  ]
838
846
  },
847
+ {
848
+ "path": [
849
+ "project",
850
+ "coverage"
851
+ ],
852
+ "command": "coverage",
853
+ "parent": "project",
854
+ "registrationKind": "commander",
855
+ "aliases": [],
856
+ "description": "Inspect or run runtime-native test coverage and publish normalized project evidence",
857
+ "hidden": false,
858
+ "arguments": [],
859
+ "options": [
860
+ {
861
+ "flags": "--project <path>",
862
+ "attributeName": "project"
863
+ },
864
+ {
865
+ "flags": "--target <percent>",
866
+ "attributeName": "target"
867
+ },
868
+ {
869
+ "flags": "--run",
870
+ "attributeName": "run"
871
+ },
872
+ {
873
+ "flags": "--strict",
874
+ "attributeName": "strict"
875
+ },
876
+ {
877
+ "flags": "--json",
878
+ "attributeName": "json"
879
+ }
880
+ ]
881
+ },
839
882
  {
840
883
  "path": [
841
884
  "project",
@@ -926,6 +969,39 @@
926
969
  }
927
970
  ]
928
971
  },
972
+ {
973
+ "path": [
974
+ "project",
975
+ "workspace"
976
+ ],
977
+ "command": "workspace",
978
+ "parent": "project",
979
+ "registrationKind": "commander",
980
+ "aliases": [],
981
+ "description": "Show or repair the canonical workspace binding for the current Workspai project",
982
+ "hidden": false,
983
+ "arguments": [
984
+ {
985
+ "name": "action",
986
+ "required": false,
987
+ "variadic": false
988
+ }
989
+ ],
990
+ "options": [
991
+ {
992
+ "flags": "--workspace <path>",
993
+ "attributeName": "workspace"
994
+ },
995
+ {
996
+ "flags": "--project <path>",
997
+ "attributeName": "project"
998
+ },
999
+ {
1000
+ "flags": "--json",
1001
+ "attributeName": "json"
1002
+ }
1003
+ ]
1004
+ },
929
1005
  {
930
1006
  "path": [
931
1007
  "readiness"
@@ -1240,6 +1316,10 @@
1240
1316
  "flags": "--preset <preset>",
1241
1317
  "attributeName": "preset"
1242
1318
  },
1319
+ {
1320
+ "flags": "--project-grounding <mode>",
1321
+ "attributeName": "projectGrounding"
1322
+ },
1243
1323
  {
1244
1324
  "flags": "--refresh-context",
1245
1325
  "attributeName": "refreshContext"
@@ -1,5 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://workspai.dev/schemas/compatibility-matrix.v1.json",
4
+ "title": "Workspai Compatibility Matrix",
3
5
  "type": "object",
4
6
  "required": [
5
7
  "schemaVersion",