workspai 0.65.0 → 0.67.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 (211) hide show
  1. package/README.md +28 -23
  2. package/contracts/agent-customization-pack.v1.json +4 -2
  3. package/contracts/analyze-last-run.v1.json +9 -1
  4. package/contracts/cli-runtime-command-inventory.v1.snapshot.json +117 -0
  5. package/contracts/extension-cli-compatibility.v1.json +6 -0
  6. package/contracts/published-contract-catalog.v1.json +30 -0
  7. package/contracts/runtime-command-surface.v1.json +100 -2
  8. package/contracts/workspace-activity-board.v1.json +114 -0
  9. package/contracts/workspace-activity-event.v1.json +132 -0
  10. package/contracts/workspace-activity-monitor-fleet.v1.json +18 -0
  11. package/contracts/workspace-activity-monitor-snapshot.v1.json +161 -0
  12. package/contracts/workspace-intelligence/agent-bootstrap-receipt.v1.json +17 -0
  13. package/contracts/workspace-intelligence/mcp-design.v1.json +49 -2
  14. package/contracts/workspace-intelligence/project-agent-entry.v1.json +3 -0
  15. package/contracts/workspace-intelligence/project-context-agent.v1.json +49 -7
  16. package/contracts/workspace-intelligence/project-knowledge-graph-reference.v1.json +51 -0
  17. package/contracts/workspace-intelligence/workspace-intelligence-benchmark.v1.json +196 -0
  18. package/contracts/workspace-intelligence/workspace-knowledge-graph.v1.json +97 -2
  19. package/contracts/workspace-intelligence/workspace-skills-index.v1.json +34 -0
  20. package/contracts/workspace-intelligence-architecture.v1.json +17 -0
  21. package/contracts/workspace-intelligence-chain.v1.json +17 -0
  22. package/dist/analyze-IC2KRVCG.js +1 -0
  23. package/dist/{artifact-remediation-plan-XIQNI35L.js → artifact-remediation-plan-GFFHC2ZU.js} +1 -1
  24. package/dist/autopilot-release-RECEZAZI.js +1 -0
  25. package/dist/capabilities-command-X4WZIJNR.js +1 -0
  26. package/dist/chunk-2LIVMG5C.js +2 -0
  27. package/dist/chunk-2M62CU3O.js +2 -0
  28. package/dist/chunk-2MTJWPQ4.js +1 -0
  29. package/dist/chunk-2MVIRJJR.js +1 -0
  30. package/dist/chunk-2RPFCBS4.js +1 -0
  31. package/dist/chunk-3O7LZPKA.js +4 -0
  32. package/dist/chunk-3OGPTLI2.js +1 -0
  33. package/dist/{chunk-6TBTMWNA.js → chunk-4RV4JVGR.js} +1 -1
  34. package/dist/{chunk-YYQEWAES.js → chunk-4WVOAX2V.js} +1 -1
  35. package/dist/{chunk-N4QQADXX.js → chunk-5EVDW7JM.js} +1 -1
  36. package/dist/{chunk-J3X56S7L.js → chunk-5ME4W4LN.js} +1 -1
  37. package/dist/chunk-5OA33JH2.js +2 -0
  38. package/dist/chunk-5TY74LLW.js +2 -0
  39. package/dist/chunk-6254CWUY.js +49 -0
  40. package/dist/{chunk-D5YJOQYK.js → chunk-6E2Y3XGT.js} +1 -1
  41. package/dist/chunk-ARUFY5W3.js +1 -0
  42. package/dist/chunk-B4IVVTMQ.js +2 -0
  43. package/dist/{chunk-HDNATYW7.js → chunk-BHFRP7TV.js} +1 -1
  44. package/dist/{chunk-KTN2ARZJ.js → chunk-BHM6RHTA.js} +3 -3
  45. package/dist/chunk-BRYJTW6S.js +2 -0
  46. package/dist/{chunk-HCFWT42C.js → chunk-BUYLM6QV.js} +1 -1
  47. package/dist/chunk-CPR2CMOY.js +1 -0
  48. package/dist/{chunk-XGE2FDI4.js → chunk-CZVT7T2X.js} +1 -1
  49. package/dist/chunk-EHCKITR4.js +2 -0
  50. package/dist/chunk-ENZPM52J.js +1 -0
  51. package/dist/chunk-FPDH3N3A.js +7 -0
  52. package/dist/{chunk-PXWKMPPI.js → chunk-FX5J6JCK.js} +1 -1
  53. package/dist/chunk-FY4X2VOE.js +39 -0
  54. package/dist/chunk-GIQ4SDRJ.js +1 -0
  55. package/dist/chunk-H77ZNH5O.js +1 -0
  56. package/dist/{chunk-2RL6RRT2.js → chunk-HQLBO23O.js} +50 -50
  57. package/dist/chunk-HYE5UHPV.js +2 -0
  58. package/dist/{chunk-D65FCQIO.js → chunk-IKUFNK46.js} +1 -1
  59. package/dist/{chunk-WRQWVSBJ.js → chunk-IQQMFRWM.js} +1 -1
  60. package/dist/chunk-JCGSIDMC.js +2 -0
  61. package/dist/chunk-KENOAC2Q.js +13 -0
  62. package/dist/chunk-KQ2TMI26.js +97 -0
  63. package/dist/chunk-L5Q2S5GY.js +3 -0
  64. package/dist/chunk-LPCZHKD5.js +1 -0
  65. package/dist/chunk-N4QFNOAI.js +1 -0
  66. package/dist/chunk-NMXGSVMD.js +1 -0
  67. package/dist/{chunk-GQSRNUCU.js → chunk-NVND4727.js} +3 -3
  68. package/dist/{chunk-W6FHVXNL.js → chunk-OCNPOYMA.js} +1 -1
  69. package/dist/chunk-PSYQ6IJA.js +12 -0
  70. package/dist/{chunk-VRGEPPUB.js → chunk-QMQBX3RV.js} +1 -1
  71. package/dist/{chunk-YUGKQ44M.js → chunk-SLFOUSRW.js} +1 -1
  72. package/dist/chunk-SRLWHOLF.js +1 -0
  73. package/dist/chunk-SVYY55IS.js +157 -0
  74. package/dist/chunk-SX6A656X.js +1 -0
  75. package/dist/{chunk-X6TNBARH.js → chunk-TABXSDTR.js} +2 -2
  76. package/dist/chunk-THIG2YQP.js +681 -0
  77. package/dist/chunk-TP7VKEUF.js +1 -0
  78. package/dist/chunk-U5ENEDJA.js +7 -0
  79. package/dist/chunk-UTV4DTNM.js +1 -0
  80. package/dist/chunk-VI4ZRAY6.js +1 -0
  81. package/dist/chunk-VQZ5PI5J.js +1 -0
  82. package/dist/chunk-VWBMDGPY.js +9 -0
  83. package/dist/chunk-XDPTAV2T.js +2 -0
  84. package/dist/chunk-XWKGZRHN.js +1 -0
  85. package/dist/chunk-Y35VLVF6.js +5 -0
  86. package/dist/{chunk-VYDURWN7.js → chunk-Y4Z6CEII.js} +1 -1
  87. package/dist/chunk-YYY2WXOH.js +1 -0
  88. package/dist/chunk-ZGHJIQXL.js +1 -0
  89. package/dist/chunk-ZI2E7P6O.js +4 -0
  90. package/dist/{create-ALT2ME6H.js → create-72ITVZXV.js} +1 -1
  91. package/dist/{demo-kit-QHIDCSBI.js → demo-kit-5UQH2OXC.js} +1 -1
  92. package/dist/{doctor-RW4R3O5C.js → doctor-CVYUESRQ.js} +1 -1
  93. package/dist/{dotnet-webapi-clean-AVHPJG7Y.js → dotnet-webapi-clean-YEHYIGOT.js} +1 -1
  94. package/dist/{goal-lifecycle-VYOKS6E6.js → goal-lifecycle-H55AGFCB.js} +1 -1
  95. package/dist/goal-pack-6OBZOPCD.js +1 -0
  96. package/dist/{gofiber-standard-47S2GYAO.js → gofiber-standard-C44IIQYH.js} +1 -1
  97. package/dist/{gogin-standard-EWB4XNOI.js → gogin-standard-X7VKACVR.js} +1 -1
  98. package/dist/index.d.ts +20 -2
  99. package/dist/index.js +177 -177
  100. package/dist/live-command-5VXPR43F.js +15 -0
  101. package/dist/{pipeline-U4N2DVD7.js → pipeline-SKYOXWHW.js} +1 -1
  102. package/dist/{project-agent-entry-YAQCHIMP.js → project-agent-entry-5IUBEREI.js} +1 -1
  103. package/dist/project-intelligence-lens-LQCN65P2.js +1 -0
  104. package/dist/{project-test-coverage-4S7MEQ6T.js → project-test-coverage-KD4LLFGV.js} +1 -1
  105. package/dist/{pythonRapidkitExec-VAW5XE4Z.js → pythonRapidkitExec-44ORGQ4R.js} +1 -1
  106. package/dist/{rust-axum-M5X4ZC4Z.js → rust-axum-JKZTZDRZ.js} +1 -1
  107. package/dist/{springboot-standard-Y5ADLZMQ.js → springboot-standard-PI4FLTAN.js} +1 -1
  108. package/dist/verified-goal-HN7G532B.js +1 -0
  109. package/dist/{workspace-HGUZWNAB.js → workspace-5W7FYGDQ.js} +1 -1
  110. package/dist/{workspace-agent-sync-GEN3KBAX.js → workspace-agent-sync-OZCDQORK.js} +1 -1
  111. package/dist/{workspace-archive-ZBCKJHXS.js → workspace-archive-NOSGRKRZ.js} +1 -1
  112. package/dist/{workspace-context-4WIWFW26.js → workspace-context-L65BR5L6.js} +1 -1
  113. package/dist/{workspace-contract-7DXK4GF5.js → workspace-contract-JYHNEJPV.js} +1 -1
  114. package/dist/workspace-explain-SUBK6FLO.js +1 -0
  115. package/dist/workspace-explain-contract-WMREJWHF.js +1 -0
  116. package/dist/{workspace-feedback-RQ4TGJW6.js → workspace-feedback-MWGCT5R2.js} +1 -1
  117. package/dist/{workspace-foundation-J3NNRMI3.js → workspace-foundation-VIB3PXNH.js} +1 -1
  118. package/dist/{workspace-graph-stream-PQI7OGCE.js → workspace-graph-stream-45JHE4MG.js} +1 -1
  119. package/dist/workspace-graph-token-efficiency-NPECU6Y5.js +1 -0
  120. package/dist/{workspace-history-SYCDK7FO.js → workspace-history-JKW3VJO3.js} +1 -1
  121. package/dist/{workspace-intelligence-6FS26JOQ.js → workspace-intelligence-3C47PK4L.js} +1 -1
  122. package/dist/workspace-intelligence-benchmark-SRDIHX3X.js +1 -0
  123. package/dist/workspace-intelligence-evaluation-OJIQS5SN.js +1 -0
  124. package/dist/{workspace-intelligence-runner-XYUPCSLN.js → workspace-intelligence-runner-OWN5ZI6W.js} +1 -1
  125. package/dist/{workspace-intelligence-runtime-registry-IW6J53LO.js → workspace-intelligence-runtime-registry-UKFB3BI7.js} +1 -1
  126. package/dist/workspace-knowledge-graph-AKG5NUU6.js +1 -0
  127. package/dist/{workspace-knowledge-graph-contract-L3CLAM2M.js → workspace-knowledge-graph-contract-X52KXBXJ.js} +1 -1
  128. package/dist/{workspace-knowledge-graph-query-FZXSPWGK.js → workspace-knowledge-graph-query-DXA4CROE.js} +1 -1
  129. package/dist/workspace-knowledge-graph-snapshot-SNI5K2RL.js +1 -0
  130. package/dist/{workspace-marker-7NHMDIRL.js → workspace-marker-XGAWZZDX.js} +1 -1
  131. package/dist/workspace-mcp-serve-PK226GMV.js +3 -0
  132. package/dist/workspace-model-R4ISKDB2.js +1 -0
  133. package/dist/{workspace-onboarding-X3PWRIIS.js → workspace-onboarding-Y5RPEFUD.js} +1 -1
  134. package/dist/{workspace-python-engine-state-J4QKW55K.js → workspace-python-engine-state-BE4A3BL5.js} +1 -1
  135. package/dist/{workspace-readme-G7TZ3V5T.js → workspace-readme-PL5V3UDH.js} +2 -2
  136. package/dist/{workspace-registry-summary-LJN4WHIZ.js → workspace-registry-summary-STGUGROG.js} +1 -1
  137. package/dist/workspace-repair-engine-FNLL5ZDK.js +3 -0
  138. package/dist/workspace-run-GFBFGUFM.js +1 -0
  139. package/dist/{workspace-verify-USRRIM2F.js → workspace-verify-AXVX3PF3.js} +1 -1
  140. package/dist/{workspace-watch-43YZPLF7.js → workspace-watch-RLBEJKXE.js} +1 -1
  141. package/docs/DEVELOPMENT.md +19 -0
  142. package/docs/README.md +19 -16
  143. package/docs/SETUP.md +10 -0
  144. package/docs/agent-entry.md +22 -7
  145. package/docs/ci-workflows.md +1 -1
  146. package/docs/commands-reference.md +58 -8
  147. package/docs/contracts/ARTIFACT_CATALOG.md +64 -44
  148. package/docs/contracts/COMMAND_OWNERSHIP_MATRIX.md +1 -0
  149. package/docs/contracts/NAMING_AND_COEXISTENCE.md +20 -18
  150. package/docs/contracts/README.md +7 -3
  151. package/docs/real-world-qualification.md +19 -3
  152. package/docs/workspace-intelligence-benchmark.md +82 -0
  153. package/docs/workspace-knowledge-graph.md +95 -27
  154. package/docs/workspace-live-activity.md +209 -0
  155. package/docs/workspace-operations.md +32 -9
  156. package/package.json +4 -2
  157. package/dist/analyze-5PDVWECJ.js +0 -1
  158. package/dist/autopilot-release-JVIJCTKX.js +0 -1
  159. package/dist/capabilities-command-LHM3XIS6.js +0 -1
  160. package/dist/chunk-2647BYBC.js +0 -1
  161. package/dist/chunk-27UR373Z.js +0 -1
  162. package/dist/chunk-2C5ZBVBI.js +0 -2
  163. package/dist/chunk-6JWNDWOA.js +0 -1
  164. package/dist/chunk-CCDGHPEJ.js +0 -2
  165. package/dist/chunk-DFG33SBR.js +0 -2
  166. package/dist/chunk-FY4IIAIF.js +0 -1
  167. package/dist/chunk-HEZZ72V4.js +0 -94
  168. package/dist/chunk-HN7P4T3B.js +0 -681
  169. package/dist/chunk-ILIBOMYL.js +0 -1
  170. package/dist/chunk-J7QYANXK.js +0 -8
  171. package/dist/chunk-JD3A5QM6.js +0 -2
  172. package/dist/chunk-JQLJBK5N.js +0 -1
  173. package/dist/chunk-KLSSPJTV.js +0 -1
  174. package/dist/chunk-L22EABIC.js +0 -7
  175. package/dist/chunk-LNXIMF3O.js +0 -1
  176. package/dist/chunk-MDTI3UEB.js +0 -1
  177. package/dist/chunk-MOSXTVPU.js +0 -1
  178. package/dist/chunk-MYJQGGIU.js +0 -5
  179. package/dist/chunk-NOV6723U.js +0 -1
  180. package/dist/chunk-NYEAMMUL.js +0 -1
  181. package/dist/chunk-NZ3WZYD5.js +0 -1
  182. package/dist/chunk-O5B2L3R2.js +0 -1
  183. package/dist/chunk-OWB5KWSS.js +0 -13
  184. package/dist/chunk-P5PSZQPB.js +0 -2
  185. package/dist/chunk-QCKWQFCD.js +0 -1
  186. package/dist/chunk-QI3HG6IG.js +0 -144
  187. package/dist/chunk-SWGSFLTC.js +0 -1
  188. package/dist/chunk-THIOE2PB.js +0 -2
  189. package/dist/chunk-U5FCQTVL.js +0 -4
  190. package/dist/chunk-UXEO5QCF.js +0 -33
  191. package/dist/chunk-VR6XMUF3.js +0 -2
  192. package/dist/chunk-VVJK5NFY.js +0 -2
  193. package/dist/chunk-VXKWWX7S.js +0 -8
  194. package/dist/chunk-W322YDHS.js +0 -49
  195. package/dist/chunk-WPRLXKWC.js +0 -8
  196. package/dist/chunk-Y5YAP4F3.js +0 -2
  197. package/dist/chunk-YN5X2FTP.js +0 -1
  198. package/dist/chunk-YOCN7GF4.js +0 -1
  199. package/dist/goal-pack-YWPI43QL.js +0 -1
  200. package/dist/project-intelligence-lens-MRQR2LQW.js +0 -1
  201. package/dist/verified-goal-WM34TTGE.js +0 -1
  202. package/dist/workspace-explain-TE2LGOAV.js +0 -1
  203. package/dist/workspace-explain-contract-V2IVSROX.js +0 -1
  204. package/dist/workspace-graph-token-efficiency-2I4X374C.js +0 -1
  205. package/dist/workspace-intelligence-evaluation-CQDKOYZZ.js +0 -1
  206. package/dist/workspace-knowledge-graph-SWCKDTPF.js +0 -1
  207. package/dist/workspace-knowledge-graph-snapshot-M572JRB4.js +0 -1
  208. package/dist/workspace-mcp-serve-IBMTFQDY.js +0 -3
  209. package/dist/workspace-model-ZL6WCICX.js +0 -1
  210. package/dist/workspace-repair-engine-NX7I632M.js +0 -3
  211. package/dist/workspace-run-6GT5OBQ5.js +0 -1
package/README.md CHANGED
@@ -22,24 +22,24 @@ Two commands. Your project gains a bounded, evidence-backed system view:
22
22
 
23
23
  ### Before vs After
24
24
 
25
- | Before Workspai | After Workspai |
26
- | --- | --- |
27
- | Agent scans thousands of files for context | Agent starts from bounded entry and context artifacts |
28
- | No dependency map between services | Searchable graph with source-level proof |
29
- | Broken test blocks release, no one knows why | Doctor localizes the blocker and next target |
30
- | Every AI session starts from scratch | Sessions resume from durable evidence |
25
+ | Before Workspai | After Workspai |
26
+ | -------------------------------------------- | ----------------------------------------------------- |
27
+ | Agent scans thousands of files for context | Agent starts from bounded entry and context artifacts |
28
+ | No dependency map between services | Searchable graph with source-level proof |
29
+ | Broken test blocks release, no one knows why | Doctor localizes the blocker and next target |
30
+ | Every AI session starts from scratch | Sessions resume from durable evidence |
31
31
 
32
32
  Here is what you get:
33
33
 
34
- | What it produces | Why it matters |
35
- | --- | --- |
36
- | **Workspace Model** | A canonical inventory of registered projects, detected runtimes, frameworks, and proven dependencies |
37
- | **Knowledge Graph** | Searchable relationships between projects, backed by source-level proof |
38
- | **Health & Readiness** | Doctor checks, verification gates, and release posture based on evidence, not guesses |
39
- | **Agent Context** | Bounded, focused instructions so AI tools read what they need, not the entire repo |
40
- | **Agent Rules** | Ready-to-use grounding for Cursor, Copilot, Claude, Codex, Gemini, and more |
41
- | **Agent Skills** | Runtime-, polyglot-, test-, and delivery-aware operational playbooks, with portable `SKILL.md` projections where the host supports Agent Skills |
42
- | **MCP Server** | Versioned read-oriented tools for querying evidence, graph, blockers, and context live |
34
+ | What it produces | Why it matters |
35
+ | ---------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
36
+ | **Workspace Model** | A canonical inventory of registered projects, detected runtimes, frameworks, and proven dependencies |
37
+ | **Knowledge Graph** | Searchable relationships between projects, backed by source-level proof |
38
+ | **Health & Readiness** | Doctor checks, verification gates, and release posture based on evidence, not guesses |
39
+ | **Agent Context** | Bounded, focused instructions so AI tools read what they need, not the entire repo |
40
+ | **Agent Rules** | Ready-to-use grounding for Cursor, Copilot, Claude, Codex, Gemini, and more |
41
+ | **Agent Skills** | Runtime-, polyglot-, test-, and delivery-aware operational playbooks, with portable `SKILL.md` projections where the host supports Agent Skills |
42
+ | **MCP Server** | Versioned read-oriented tools for querying evidence, graph, blockers, and context live |
43
43
 
44
44
  `generic` is the safe default when you do not yet know which agent will use the
45
45
  project: Workspai builds one portable context and prepares discovery adapters
@@ -64,10 +64,13 @@ your-workspace/ # canonical system boundary
64
64
  ├── AGENTS.md · CLAUDE.md · GEMINI.md · QWEN.md
65
65
  ├── .cursor/ · .claude/ · .github/ · .agents/ # host-native projections
66
66
  ├── nova-api/
67
+ │ ├── .agents/skills/workspai-*/SKILL.md # portable project Skill wrappers
67
68
  │ └── .workspai/
68
69
  │ ├── agent-entry.v1.json # canonical project entry
69
70
  │ ├── workspace-link.local.json # machine-local binding
70
- │ └── reports/project-context-agent.json
71
+ │ └── reports/
72
+ │ ├── project-context-agent.json
73
+ │ └── project-knowledge-graph-reference.json
71
74
  └── summit-web/ # same project-level boundary
72
75
  ```
73
76
 
@@ -179,13 +182,13 @@ a machine-readable decision and can use `--scope` and `--runtime`.
179
182
  Everything shown in the [output tree above](#what-the-output-looks-like) is
180
183
  generated in one run. The key files for each audience:
181
184
 
182
- | Audience | What to read |
183
- | --- | --- |
184
- | **AI agent** | `agent-entry.v1.json` (project) → `workspace-context-agent.json` (workspace) |
185
- | **Developer** | Terminal summary, or `workspace-explain-last-run.json` for diagnosis |
186
- | **CI / automation** | `workspace-verify-last-run.json` (exit code 0 = pass, 2 = blocked) |
187
- | **MCP client** | `workspace mcp serve` (versioned read-oriented tools over JSON-RPC) |
188
- | **IDE extension** | Same artifacts + watch events |
185
+ | Audience | What to read |
186
+ | ------------------- | ---------------------------------------------------------------------------- |
187
+ | **AI agent** | `agent-entry.v1.json` (project) → `workspace-context-agent.json` (workspace) |
188
+ | **Developer** | Terminal summary, or `workspace-explain-last-run.json` for diagnosis |
189
+ | **CI / automation** | `workspace-verify-last-run.json` (exit code 0 = pass, 2 = blocked) |
190
+ | **MCP client** | `workspace mcp serve` (versioned read-oriented tools over JSON-RPC) |
191
+ | **IDE extension** | Same artifacts + watch events |
189
192
 
190
193
  An agent can prove that it entered through governed evidence before scanning
191
194
  the repository:
@@ -270,6 +273,8 @@ explicitly unproven.
270
273
  | Check the current project | `npx workspai doctor project` |
271
274
  | Check the whole workspace | `npx workspai doctor workspace` |
272
275
  | Refresh Model and Graph | `npx workspai workspace model --write --json` |
276
+ | Watch command activity as a portable board | `npx workspai live --once --json --projection board` |
277
+ | Benchmark bounded agent retrieval | `npx workspai workspace graph benchmark-suite agent-core.v1 --write --json` |
273
278
  | Ask a focused architecture question | `npx workspai workspace graph search "authentication service" --limit 12 --json` |
274
279
  | Verify current evidence | `npx workspai workspace verify --strict --json` |
275
280
  | Inspect a governed repair before execution | `npx workspai workspace repair capabilities --json` |
@@ -52,9 +52,10 @@
52
52
  ]
53
53
  },
54
54
  "agents": {
55
- "meaning": "Generate portable AGENTS.md grounding for any agent.",
55
+ "meaning": "Generate portable AGENTS.md grounding and .agents/skills projections.",
56
56
  "outputFamilies": [
57
- "portable"
57
+ "portable",
58
+ "skills"
58
59
  ]
59
60
  },
60
61
  "copilot": {
@@ -281,6 +282,7 @@
281
282
  ".workspai/skills/"
282
283
  ],
283
284
  "l2PrefixedMirrorRoots": [
285
+ ".agents/",
284
286
  ".github/",
285
287
  ".cursor/",
286
288
  ".claude/",
@@ -26,8 +26,16 @@
26
26
  "profile": { "type": ["string", "null"] },
27
27
  "summary": {
28
28
  "type": "object",
29
- "required": ["score", "verdict", "projectCount", "runtimeCount", "findings"],
29
+ "required": [
30
+ "score",
31
+ "verdict",
32
+ "projectCount",
33
+ "runtimeCount",
34
+ "findings"
35
+ ],
30
36
  "properties": {
37
+ "statusScope": { "const": "source-structure" },
38
+ "releaseReadiness": { "const": "not-evaluated" },
31
39
  "score": { "type": "number" },
32
40
  "verdict": {
33
41
  "enum": ["ready", "needs-attention", "blocked"]
@@ -727,6 +727,102 @@
727
727
  }
728
728
  ]
729
729
  },
730
+ {
731
+ "path": [
732
+ "live"
733
+ ],
734
+ "command": "live",
735
+ "parent": null,
736
+ "registrationKind": "commander",
737
+ "aliases": [],
738
+ "description": "Open a live cross-terminal execution graph for Workspai activity",
739
+ "hidden": false,
740
+ "arguments": [
741
+ {
742
+ "name": "target",
743
+ "required": false,
744
+ "variadic": false
745
+ }
746
+ ],
747
+ "options": [
748
+ {
749
+ "flags": "--global",
750
+ "attributeName": "global"
751
+ },
752
+ {
753
+ "flags": "--run <runId>",
754
+ "attributeName": "run"
755
+ },
756
+ {
757
+ "flags": "--once",
758
+ "attributeName": "once"
759
+ },
760
+ {
761
+ "flags": "--json",
762
+ "attributeName": "json"
763
+ },
764
+ {
765
+ "flags": "--projection <projection>",
766
+ "attributeName": "projection"
767
+ },
768
+ {
769
+ "flags": "--refresh-ms <milliseconds>",
770
+ "attributeName": "refreshMs"
771
+ },
772
+ {
773
+ "flags": "--max-runs <count>",
774
+ "attributeName": "maxRuns"
775
+ },
776
+ {
777
+ "flags": "--max-scopes <count>",
778
+ "attributeName": "maxScopes"
779
+ },
780
+ {
781
+ "flags": "--classic",
782
+ "attributeName": "classic"
783
+ },
784
+ {
785
+ "flags": "--no-color",
786
+ "attributeName": "color"
787
+ },
788
+ {
789
+ "flags": "--no-motion",
790
+ "attributeName": "motion"
791
+ },
792
+ {
793
+ "flags": "--ascii",
794
+ "attributeName": "ascii"
795
+ },
796
+ {
797
+ "flags": "--accessible",
798
+ "attributeName": "accessible"
799
+ },
800
+ {
801
+ "flags": "--capture <file>",
802
+ "attributeName": "capture"
803
+ },
804
+ {
805
+ "flags": "--capture-preset <preset>",
806
+ "attributeName": "capturePreset"
807
+ },
808
+ {
809
+ "flags": "--capture-theme <theme>",
810
+ "attributeName": "captureTheme"
811
+ },
812
+ {
813
+ "flags": "--no-capture-redact",
814
+ "attributeName": "captureRedact"
815
+ },
816
+ {
817
+ "flags": "--replay <runId>",
818
+ "attributeName": "replay"
819
+ },
820
+ {
821
+ "flags": "--replay-speed <multiplier>",
822
+ "attributeName": "replaySpeed"
823
+ }
824
+ ]
825
+ },
730
826
  {
731
827
  "path": [
732
828
  "mirror"
@@ -1469,6 +1565,22 @@
1469
1565
  "flags": "--scan-depth <count>",
1470
1566
  "attributeName": "scanDepth"
1471
1567
  },
1568
+ {
1569
+ "flags": "--graph-inventory-limit <count>",
1570
+ "attributeName": "graphInventoryLimit"
1571
+ },
1572
+ {
1573
+ "flags": "--graph-semantic-budget <count>",
1574
+ "attributeName": "graphSemanticBudget"
1575
+ },
1576
+ {
1577
+ "flags": "--graph-deep-budget <count>",
1578
+ "attributeName": "graphDeepBudget"
1579
+ },
1580
+ {
1581
+ "flags": "--graph-source-budget <count>",
1582
+ "attributeName": "graphSourceBudget"
1583
+ },
1472
1584
  {
1473
1585
  "flags": "--limit <count>",
1474
1586
  "attributeName": "limit"
@@ -1597,6 +1709,10 @@
1597
1709
  "flags": "--parallel",
1598
1710
  "attributeName": "parallel"
1599
1711
  },
1712
+ {
1713
+ "flags": "--plan",
1714
+ "attributeName": "plan"
1715
+ },
1600
1716
  {
1601
1717
  "flags": "--runtime <runtime>",
1602
1718
  "attributeName": "runtime"
@@ -1707,6 +1823,7 @@
1707
1823
  "goal",
1708
1824
  "import",
1709
1825
  "infra",
1826
+ "live",
1710
1827
  "mirror",
1711
1828
  "pipeline",
1712
1829
  "product",
@@ -18,6 +18,7 @@
18
18
  "projectWorkspaceLink": "project-workspace-link.v1",
19
19
  "projectWorkspaceResolution": "project-workspace-resolution.v1",
20
20
  "projectContextAgent": "project-context-agent.v1",
21
+ "projectKnowledgeGraphReference": "project-knowledge-graph-reference.v1",
21
22
  "projectAgentEntry": "workspai.agent-entry.v1",
22
23
  "agentBootstrapReceipt": "workspai.agent-bootstrap-receipt.v1",
23
24
  "doctorProjectEvidence": "doctor-project-evidence-v1",
@@ -63,6 +64,10 @@
63
64
  "repairTransaction": "workspai.workspace-repair-transaction.v1"
64
65
  },
65
66
  "cliLogEvent": "cli-log-event-v1",
67
+ "workspaceActivityEvent": "workspace-activity-event.v1",
68
+ "workspaceActivityMonitorSnapshot": "workspace-activity-monitor-snapshot.v1",
69
+ "workspaceActivityMonitorFleet": "workspace-activity-monitor-fleet.v1",
70
+ "workspaceActivityBoard": "workspace-activity-board.v1",
66
71
  "freshnessMetadata": "rapidkit-freshness-metadata-v1",
67
72
  "factFreshness": "rapidkit-fact-freshness-v1",
68
73
  "blockerResolution": "rapidkit-blocker-resolution-v1",
@@ -76,6 +81,7 @@
76
81
  "workspaceKnowledgeGraphChangeOverlay": "workspace-knowledge-graph-change-overlay.v1",
77
82
  "workspaceKnowledgeSearch": "workspace-knowledge-search.v1",
78
83
  "workspaceGraphTokenEfficiency": "workspace-graph-token-efficiency.v1",
84
+ "workspaceIntelligenceBenchmark": "workspace-intelligence-benchmark.v1",
79
85
  "modelUsageEvent": "model-usage-event.v1",
80
86
  "workspaceIntelligenceEvaluation": "workspace-intelligence-evaluation.v1",
81
87
  "workspaceIntelligenceEvaluationComparison": "workspace-intelligence-evaluation-comparison.v1",
@@ -76,6 +76,11 @@
76
76
  "contractPath": "contracts/workspace-intelligence/project-context-agent.v1.json",
77
77
  "publication": "json-schema"
78
78
  },
79
+ "projectKnowledgeGraphReference": {
80
+ "schemaVersion": "project-knowledge-graph-reference.v1",
81
+ "contractPath": "contracts/workspace-intelligence/project-knowledge-graph-reference.v1.json",
82
+ "publication": "json-schema"
83
+ },
79
84
  "projectAgentEntry": {
80
85
  "schemaVersion": "workspai.agent-entry.v1",
81
86
  "contractPath": "contracts/workspace-intelligence/project-agent-entry.v1.json",
@@ -321,6 +326,26 @@
321
326
  "contractPath": "contracts/cli-log-event.v1.json",
322
327
  "publication": "json-schema"
323
328
  },
329
+ "workspaceActivityEvent": {
330
+ "schemaVersion": "workspace-activity-event.v1",
331
+ "contractPath": "contracts/workspace-activity-event.v1.json",
332
+ "publication": "json-schema"
333
+ },
334
+ "workspaceActivityMonitorSnapshot": {
335
+ "schemaVersion": "workspace-activity-monitor-snapshot.v1",
336
+ "contractPath": "contracts/workspace-activity-monitor-snapshot.v1.json",
337
+ "publication": "capability-contract"
338
+ },
339
+ "workspaceActivityMonitorFleet": {
340
+ "schemaVersion": "workspace-activity-monitor-fleet.v1",
341
+ "contractPath": "contracts/workspace-activity-monitor-fleet.v1.json",
342
+ "publication": "json-schema"
343
+ },
344
+ "workspaceActivityBoard": {
345
+ "schemaVersion": "workspace-activity-board.v1",
346
+ "contractPath": "contracts/workspace-activity-board.v1.json",
347
+ "publication": "json-schema"
348
+ },
324
349
  "freshnessMetadata": {
325
350
  "schemaVersion": "rapidkit-freshness-metadata-v1",
326
351
  "contractPath": null,
@@ -386,6 +411,11 @@
386
411
  "contractPath": "contracts/workspace-intelligence/workspace-graph-token-efficiency.v1.json",
387
412
  "publication": "json-schema"
388
413
  },
414
+ "workspaceIntelligenceBenchmark": {
415
+ "schemaVersion": "workspace-intelligence-benchmark.v1",
416
+ "contractPath": "contracts/workspace-intelligence/workspace-intelligence-benchmark.v1.json",
417
+ "publication": "json-schema"
418
+ },
389
419
  "modelUsageEvent": {
390
420
  "schemaVersion": "model-usage-event.v1",
391
421
  "contractPath": "contracts/workspace-intelligence/model-usage-event.v1.json",
@@ -51,6 +51,7 @@
51
51
  "goal",
52
52
  "agent",
53
53
  "snapshot",
54
+ "live",
54
55
  "bootstrap",
55
56
  "setup",
56
57
  "cache",
@@ -557,6 +558,32 @@
557
558
  "list"
558
559
  ]
559
560
  },
561
+ {
562
+ "invocation": "live",
563
+ "summary": "Render the versioned cross-terminal execution graph for Workspai runs in the current project or workspace.",
564
+ "canonicalArgv": [
565
+ "live",
566
+ "--once",
567
+ "--json",
568
+ "--projection",
569
+ "board"
570
+ ],
571
+ "output": {
572
+ "defaultFormat": "human-or-json",
573
+ "modes": [
574
+ {
575
+ "selector": "--once --json --projection monitor",
576
+ "format": "json",
577
+ "mediaType": "application/json"
578
+ },
579
+ {
580
+ "selector": "--once --json --projection board",
581
+ "format": "json",
582
+ "mediaType": "application/json"
583
+ }
584
+ ]
585
+ }
586
+ },
560
587
  {
561
588
  "invocation": "merge",
562
589
  "summary": "Combine supported governed configuration or project state through the owning runtime operation.",
@@ -1169,6 +1196,11 @@
1169
1196
  "format": "json",
1170
1197
  "mediaType": "application/json"
1171
1198
  },
1199
+ {
1200
+ "selector": "benchmark-suite agent-core.v1 --write --json",
1201
+ "format": "json",
1202
+ "mediaType": "application/json"
1203
+ },
1172
1204
  {
1173
1205
  "selector": "emit --json",
1174
1206
  "format": "json",
@@ -1227,6 +1259,16 @@
1227
1259
  ]
1228
1260
  }
1229
1261
  },
1262
+ {
1263
+ "invocation": "workspace graph benchmark-suite --write",
1264
+ "summary": "Run the fixed multi-scenario retrieval suite, preserve estimate-versus-measurement provenance, and publish the benchmark artifact.",
1265
+ "canonicalArgv": [
1266
+ "workspace",
1267
+ "graph",
1268
+ "benchmark-suite",
1269
+ "--write"
1270
+ ]
1271
+ },
1230
1272
  {
1231
1273
  "invocation": "workspace hydrate",
1232
1274
  "summary": "Restore or materialize workspace state from a portable representation.",
@@ -1901,6 +1943,32 @@
1901
1943
  ]
1902
1944
  ]
1903
1945
  },
1946
+ {
1947
+ "artifactPath": ".workspai/reports/project-knowledge-graph-reference.json",
1948
+ "schemaVersion": "project-knowledge-graph-reference.v1",
1949
+ "contractPath": "contracts/workspace-intelligence/project-knowledge-graph-reference.v1.json",
1950
+ "producerCommands": [
1951
+ [
1952
+ "adopt"
1953
+ ],
1954
+ [
1955
+ "import"
1956
+ ],
1957
+ [
1958
+ "workspace",
1959
+ "model"
1960
+ ],
1961
+ [
1962
+ "workspace",
1963
+ "sync"
1964
+ ],
1965
+ [
1966
+ "workspace",
1967
+ "intelligence",
1968
+ "run"
1969
+ ]
1970
+ ]
1971
+ },
1904
1972
  {
1905
1973
  "artifactPath": ".workspai/agent-entry.v1.json",
1906
1974
  "schemaVersion": "workspai.agent-entry.v1",
@@ -2185,6 +2253,19 @@
2185
2253
  ]
2186
2254
  ]
2187
2255
  },
2256
+ {
2257
+ "artifactPath": ".workspai/reports/workspace-intelligence-benchmark-last-run.json",
2258
+ "schemaVersion": "workspace-intelligence-benchmark.v1",
2259
+ "contractPath": "contracts/workspace-intelligence/workspace-intelligence-benchmark.v1.json",
2260
+ "producerCommands": [
2261
+ [
2262
+ "workspace",
2263
+ "graph",
2264
+ "benchmark-suite",
2265
+ "--write"
2266
+ ]
2267
+ ]
2268
+ },
2188
2269
  {
2189
2270
  "artifactPath": ".workspai/reports/rapidkit-mcp-design.json",
2190
2271
  "schemaVersion": "workspai-mcp-design.v1",
@@ -2717,6 +2798,10 @@
2717
2798
  {
2718
2799
  "flag": "--scope",
2719
2800
  "description": "Limit the operation to a bounded scope such as project:<name>."
2801
+ },
2802
+ {
2803
+ "flag": "--write",
2804
+ "description": "Persist the command artifact under .workspai/reports."
2720
2805
  }
2721
2806
  ],
2722
2807
  "subactions": [
@@ -2728,6 +2813,7 @@
2728
2813
  "path",
2729
2814
  "overlay",
2730
2815
  "benchmark",
2816
+ "benchmark-suite",
2731
2817
  "dot",
2732
2818
  "mermaid",
2733
2819
  "jsonld",
@@ -2738,6 +2824,7 @@
2738
2824
  "examples": [
2739
2825
  "workspai workspace graph search \"authentication endpoint\" --kind endpoint --limit 12 --json",
2740
2826
  "workspai workspace graph evidence \"GET /users\" --json",
2827
+ "workspai workspace graph benchmark-suite agent-core.v1 --write --json",
2741
2828
  "workspai workspace graph mermaid"
2742
2829
  ]
2743
2830
  },
@@ -3213,8 +3300,8 @@
3213
3300
  },
3214
3301
  {
3215
3302
  "id": "contract",
3216
- "usage": "workspai workspace contract [init|inspect|verify|graph] [--strict] [--json]",
3217
- "summary": "Create, inspect, verify, or project the workspace contract.",
3303
+ "usage": "workspai workspace contract [init|inspect|sync|verify|graph] [--strict] [--json]",
3304
+ "summary": "Create, inspect, synchronize, verify, or project the workspace contract.",
3218
3305
  "options": [
3219
3306
  {
3220
3307
  "flag": "--workspace",
@@ -3240,11 +3327,13 @@
3240
3327
  "subactions": [
3241
3328
  "init",
3242
3329
  "inspect",
3330
+ "sync",
3243
3331
  "verify",
3244
3332
  "graph"
3245
3333
  ],
3246
3334
  "artifact": ".workspai/workspace.contract.json",
3247
3335
  "examples": [
3336
+ "workspai workspace contract sync --strict --json",
3248
3337
  "workspai workspace contract verify --strict --json",
3249
3338
  "workspai workspace contract graph --json"
3250
3339
  ]
@@ -3496,6 +3585,14 @@
3496
3585
  "flag": "--scope",
3497
3586
  "description": "Limit the operation to a bounded scope such as project:<name>."
3498
3587
  },
3588
+ {
3589
+ "flag": "--plan",
3590
+ "description": "Resolve lifecycle commands without executing project code."
3591
+ },
3592
+ {
3593
+ "flag": "--runtime",
3594
+ "description": "Limit lifecycle planning or execution to one detected runtime family."
3595
+ },
3499
3596
  {
3500
3597
  "flag": "--affected",
3501
3598
  "description": "Run only projects affected by the selected Git change."
@@ -3542,6 +3639,7 @@
3542
3639
  ],
3543
3640
  "artifact": ".workspai/reports/workspace-run-last.json",
3544
3641
  "examples": [
3642
+ "workspai workspace run test --scope project:api --plan --runtime ruby --json",
3545
3643
  "workspai workspace run test --affected --blast-radius --strict",
3546
3644
  "workspai workspace run build --parallel --max-workers 4 --json"
3547
3645
  ]
@@ -0,0 +1,114 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://workspai.dev/contracts/workspace-activity-board.v1.json",
4
+ "title": "Workspai Renderer-Neutral Activity Board",
5
+ "description": "A bounded renderer-neutral projection for IDE, web, terminal, SVG and capture consumers. It preserves observed run data without becoming verification evidence.",
6
+ "type": "object",
7
+ "required": [
8
+ "schemaVersion",
9
+ "scopeLabel",
10
+ "generatedAt",
11
+ "activeRunCount",
12
+ "healthyRunCount",
13
+ "warningRunCount",
14
+ "failedRunCount",
15
+ "runs",
16
+ "diagnostics",
17
+ "global",
18
+ "scopeCount"
19
+ ],
20
+ "properties": {
21
+ "schemaVersion": { "const": "workspace-activity-board.v1" },
22
+ "scopeLabel": { "type": "string", "minLength": 1 },
23
+ "generatedAt": { "type": "string", "format": "date-time" },
24
+ "activeRunCount": { "type": "integer", "minimum": 0 },
25
+ "healthyRunCount": { "type": "integer", "minimum": 0 },
26
+ "warningRunCount": { "type": "integer", "minimum": 0 },
27
+ "failedRunCount": { "type": "integer", "minimum": 0 },
28
+ "selectedRunId": { "type": "string", "minLength": 1 },
29
+ "runs": { "type": "array", "items": { "$ref": "#/$defs/boardRun" } },
30
+ "diagnostics": { "type": "array", "items": { "type": "string" } },
31
+ "global": { "type": "boolean" },
32
+ "scopeCount": { "type": "integer", "minimum": 0 }
33
+ },
34
+ "additionalProperties": false,
35
+ "$defs": {
36
+ "boardRun": {
37
+ "type": "object",
38
+ "required": [
39
+ "run",
40
+ "commandLabel",
41
+ "active",
42
+ "nodes",
43
+ "edges",
44
+ "activeBlockCount",
45
+ "warningCount",
46
+ "scope",
47
+ "locationLabel"
48
+ ],
49
+ "properties": {
50
+ "run": { "$ref": "workspace-activity-monitor-snapshot.v1.json#/$defs/run" },
51
+ "commandLabel": { "type": "string", "minLength": 1 },
52
+ "active": { "type": "boolean" },
53
+ "nodes": {
54
+ "type": "array",
55
+ "items": {
56
+ "type": "object",
57
+ "required": ["id", "label", "status", "order", "updatedAt", "attempts", "root"],
58
+ "properties": {
59
+ "id": { "type": "string", "minLength": 1 },
60
+ "label": { "type": "string", "minLength": 1 },
61
+ "status": { "$ref": "workspace-activity-monitor-snapshot.v1.json#/$defs/status" },
62
+ "order": { "type": "number" },
63
+ "parentId": { "type": "string", "minLength": 1 },
64
+ "progress": { "$ref": "workspace-activity-monitor-snapshot.v1.json#/$defs/progress" },
65
+ "durationMs": { "type": "number", "minimum": 0 },
66
+ "layoutHint": { "enum": ["source", "process", "gate", "sink"] },
67
+ "group": { "type": "string", "minLength": 1 },
68
+ "updatedAt": { "type": "string", "format": "date-time" },
69
+ "attempt": { "type": "integer", "minimum": 1 },
70
+ "attempts": {
71
+ "type": "array",
72
+ "items": { "$ref": "workspace-activity-monitor-snapshot.v1.json#/$defs/attempt" }
73
+ },
74
+ "root": { "type": "boolean" }
75
+ },
76
+ "additionalProperties": false
77
+ }
78
+ },
79
+ "edges": {
80
+ "type": "array",
81
+ "items": {
82
+ "type": "object",
83
+ "required": [
84
+ "id",
85
+ "fromBlockId",
86
+ "toBlockId",
87
+ "kind",
88
+ "status",
89
+ "order",
90
+ "updatedAt",
91
+ "inferred"
92
+ ],
93
+ "properties": {
94
+ "id": { "type": "string", "minLength": 1 },
95
+ "fromBlockId": { "type": "string", "minLength": 1 },
96
+ "toBlockId": { "type": "string", "minLength": 1 },
97
+ "kind": { "enum": ["sequence", "parallel", "gate", "handoff"] },
98
+ "status": { "$ref": "workspace-activity-monitor-snapshot.v1.json#/$defs/status" },
99
+ "order": { "type": "number" },
100
+ "updatedAt": { "type": "string", "format": "date-time" },
101
+ "inferred": { "type": "boolean" }
102
+ },
103
+ "additionalProperties": false
104
+ }
105
+ },
106
+ "activeBlockCount": { "type": "integer", "minimum": 0 },
107
+ "warningCount": { "type": "integer", "minimum": 0 },
108
+ "scope": { "$ref": "workspace-activity-monitor-snapshot.v1.json#/$defs/scope" },
109
+ "locationLabel": { "type": "string", "minLength": 1 }
110
+ },
111
+ "additionalProperties": false
112
+ }
113
+ }
114
+ }