workspai 0.48.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.
- package/README.md +151 -75
- package/contracts/analyze-last-run.v1.json +2 -2
- package/contracts/artifact-remediation-plan.v1.json +3 -9
- package/contracts/autopilot-release.v1.json +2 -0
- package/contracts/bootstrap-compliance.v1.json +2 -1
- package/contracts/cli-log-event.v1.json +1 -1
- package/contracts/cli-runtime-command-inventory.v1.snapshot.json +84 -0
- package/contracts/compatibility-matrix.v1.json +2 -0
- package/contracts/create-planner-capabilities.v1.json +144 -32
- package/contracts/doctor-project-evidence.v1.json +191 -11
- package/contracts/doctor-project-scan.v2.json +2 -0
- package/contracts/doctor-remediation-plan.v1.json +2 -2
- package/contracts/doctor-remediation-plan.v2.json +2 -2
- package/contracts/doctor-workspace-cache.v2.json +2 -0
- package/contracts/doctor-workspace-evidence.v1.json +189 -10
- package/contracts/extension-cli-compatibility.v1.json +11 -1
- package/contracts/infra-plan.v1.json +2 -0
- package/contracts/ingestion-plan.v1.json +85 -0
- package/contracts/ingestion-result.v1.json +59 -0
- package/contracts/mirror-ops.v1.json +2 -1
- package/contracts/pipeline-last-run.v1.json +2 -2
- package/contracts/private-product-manifest.v1.json +2 -0
- package/contracts/product-factory-plan.v1.json +2 -0
- package/contracts/project-archive.v1.json +2 -0
- package/contracts/project-entry-capability.v1.json +2 -3
- package/contracts/project-test-coverage.v1.json +189 -0
- package/contracts/project-workspace-link.v1.json +66 -0
- package/contracts/project-workspace-resolution.v1.json +28 -0
- package/contracts/published-contract-catalog.v1.json +50 -0
- package/contracts/release-readiness.v1.json +2 -2
- package/contracts/runtime-command-surface.v1.json +1456 -123
- package/contracts/transparency-evidence.v1.json +2 -1
- package/contracts/workspace-archive-capabilities.v1.json +11 -5
- package/contracts/workspace-archive-manifest.v1.json +236 -0
- package/contracts/workspace-archive-operation-result.v1.json +236 -0
- package/contracts/workspace-contract.v1.json +1 -1
- package/contracts/workspace-intelligence/agent-action-outcome.v1.json +2 -2
- package/contracts/workspace-intelligence/agent-customization-pack-report.v1.json +1 -1
- package/contracts/workspace-intelligence/agent-hooks.v1.json +2 -0
- package/contracts/workspace-intelligence/agent-reports-index.v1.json +1 -1
- package/contracts/workspace-intelligence/blocker-resolution.v1.json +3 -9
- package/contracts/workspace-intelligence/doctor-fix-result.v1.json +2 -2
- package/contracts/workspace-intelligence/doctor-graph-diagnosis.v1.json +208 -0
- package/contracts/workspace-intelligence/fact-freshness.v1.json +2 -2
- package/contracts/workspace-intelligence/mcp-design.v1.json +2 -0
- package/contracts/workspace-intelligence/model-usage-event.v1.json +1 -1
- package/contracts/workspace-intelligence/project-context-agent.v1.json +360 -0
- package/contracts/workspace-intelligence/studio-blocker-handoff.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-context.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-contract-verify.v1.json +2 -2
- package/contracts/workspace-intelligence/workspace-dependency-graph.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-explain.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-graph-stream.v1.json +262 -0
- package/contracts/workspace-intelligence/workspace-graph-token-efficiency.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-impact.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-intelligence-evaluation-comparison.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-intelligence-evaluation.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-intelligence-history.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-intelligence-run.v1.json +2 -2
- package/contracts/workspace-intelligence/workspace-knowledge-graph-change-overlay.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-knowledge-graph.v1.json +48 -5
- package/contracts/workspace-intelligence/workspace-knowledge-search.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-model-diff.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-model-snapshot.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-model.v1.json +97 -5
- package/contracts/workspace-intelligence/workspace-operational-skill.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-skills-index.v1.json +1 -1
- package/contracts/workspace-intelligence/workspace-verify.v1.json +1 -1
- package/contracts/workspace-intelligence-architecture.v1.json +33 -7
- package/contracts/workspace-intelligence-chain.v1.json +1 -1
- package/contracts/workspace-list.v1.json +2 -0
- package/contracts/workspace-model-cache.v1.json +2 -0
- package/contracts/workspace-registry.v1.json +1 -1
- package/contracts/workspace-run-last.v1.json +1 -1
- package/contracts/workspace-share-bundle.v1.json +2 -1
- package/contracts/workspace-snapshot.v1.json +2 -0
- package/contracts/workspace-snapshot.v2.json +2 -0
- package/contracts/workspace-sync.v1.json +2 -0
- package/contracts/workspace-watch-event.v1.json +2 -0
- package/dist/analyze-ZFQWTCJQ.js +1 -0
- package/dist/{artifact-remediation-plan-SPOUHMK5.js → artifact-remediation-plan-ICN3KOFG.js} +1 -1
- package/dist/autopilot-release-VKXQ7BS7.js +1 -0
- package/dist/chunk-2AXEGYPL.js +1 -0
- package/dist/chunk-2D4UOYOJ.js +1 -0
- package/dist/chunk-2OIBHUVH.js +1 -0
- package/dist/chunk-3GRKUP5W.js +33 -0
- package/dist/{managed-agent-markers-AXUM75OE.js → chunk-3RBUSW7H.js} +1 -1
- package/dist/chunk-5EXZBCAZ.js +4 -0
- package/dist/chunk-6UTM5AJI.js +1 -0
- package/dist/chunk-AFIFZTOY.js +2 -0
- package/dist/{chunk-BMWFQXGW.js → chunk-AHLMIL2T.js} +1 -1
- package/dist/chunk-AL237TSJ.js +7 -0
- package/dist/chunk-AL2A7Q4X.js +86 -0
- package/dist/{chunk-VU7NZHPM.js → chunk-BHYTI3RH.js} +1 -1
- package/dist/{chunk-ESLPI3XZ.js → chunk-BQGBU2Y3.js} +1 -1
- package/dist/chunk-C35UXTDM.js +2 -0
- package/dist/chunk-C3FLCDRN.js +2 -0
- package/dist/chunk-CZC5P2MF.js +1 -0
- package/dist/{chunk-Y5UJLPS4.js → chunk-DDQ3XK3H.js} +13 -13
- package/dist/{chunk-CRHYBQI3.js → chunk-DQ3PI7EP.js} +1 -1
- package/dist/chunk-EWZZUQBR.js +1 -0
- package/dist/{chunk-4KUIFXHM.js → chunk-GNQRYISX.js} +3 -3
- package/dist/chunk-I42F552T.js +2 -0
- package/dist/chunk-IDQKVJUF.js +2 -0
- package/dist/{chunk-3VFA7D5T.js → chunk-IND3TUVU.js} +1 -1
- package/dist/chunk-IPJ5URDF.js +1 -0
- package/dist/{chunk-I46XEIPL.js → chunk-JFUD73OZ.js} +52 -52
- package/dist/chunk-KKAOTTYO.js +8 -0
- package/dist/chunk-KMLPHFLD.js +2 -0
- package/dist/{chunk-NHN4QXPP.js → chunk-KVSYBHUR.js} +1 -1
- package/dist/chunk-KXG6E5VK.js +1 -0
- package/dist/chunk-L2YK5RV2.js +1 -0
- package/dist/chunk-LAJM2SBP.js +15 -0
- package/dist/{chunk-5S3DJQEP.js → chunk-LZQUZGXB.js} +1 -1
- package/dist/chunk-MOSXTVPU.js +1 -0
- package/dist/chunk-MV7KF75Q.js +13 -0
- package/dist/chunk-MVLIONQD.js +1 -0
- package/dist/chunk-RJIYCDVC.js +1 -0
- package/dist/{chunk-BGPXQQNY.js → chunk-RTVRZFIJ.js} +1 -1
- package/dist/chunk-RVQLMTTI.js +2 -0
- package/dist/chunk-SHXJ2GDR.js +75 -0
- package/dist/{chunk-32OJDBIG.js → chunk-SS2VV3D5.js} +1 -1
- package/dist/chunk-TDTCMZK7.js +10 -0
- package/dist/chunk-UETZ7USY.js +36 -0
- package/dist/chunk-VKTUWUS6.js +1 -0
- package/dist/chunk-VRW6KXNK.js +6 -0
- package/dist/chunk-Y5YAP4F3.js +2 -0
- package/dist/chunk-YPKNQCLK.js +2 -0
- package/dist/{create-DBQNAMKP.js → create-I23DC7SN.js} +1 -1
- package/dist/{demo-kit-DZ7TPG7K.js → demo-kit-KHH63TNA.js} +2 -2
- package/dist/{doctor-4NNUDNGZ.js → doctor-DOOMYLIH.js} +1 -1
- package/dist/{dotnet-webapi-clean-A6MVDYXX.js → dotnet-webapi-clean-VXEF4SHM.js} +5 -5
- package/dist/{gofiber-standard-I5YPQG5V.js → gofiber-standard-AQGSC7ON.js} +3 -3
- package/dist/{gogin-standard-VY2L4QT5.js → gogin-standard-7DU3OCBX.js} +3 -3
- package/dist/index.d.ts +41 -6
- package/dist/index.js +268 -356
- package/dist/managed-agent-markers-COE5DJ3W.js +1 -0
- package/dist/pipeline-U77HSINC.js +5 -0
- package/dist/platform-capabilities-PR6YL4KC.js +1 -0
- package/dist/project-intelligence-lens-BKKVPCLC.js +1 -0
- package/dist/project-test-coverage-4TEHZJFC.js +1 -0
- package/dist/{pythonRapidkitExec-CVCIK225.js → pythonRapidkitExec-YR7P5LWG.js} +1 -1
- package/dist/rust-axum-4HXDICIB.js +140 -0
- package/dist/{springboot-standard-55XKCBIZ.js → springboot-standard-EK6GYN5T.js} +7 -7
- package/dist/workspace-ZEYUVR26.js +1 -0
- package/dist/{workspace-agent-sync-662QHXGF.js → workspace-agent-sync-DKYJLUDP.js} +1 -1
- package/dist/workspace-archive-4JNT4S7N.js +1 -0
- package/dist/{workspace-context-23YYCUCP.js → workspace-context-IHUFMZT3.js} +1 -1
- package/dist/workspace-contract-PVLGPBBV.js +1 -0
- package/dist/workspace-explain-64HNKAHO.js +1 -0
- package/dist/workspace-explain-contract-H7O26QJU.js +1 -0
- package/dist/{workspace-feedback-SUVH2LUJ.js → workspace-feedback-RATRXFUC.js} +1 -1
- package/dist/{workspace-foundation-WXJ6I7ES.js → workspace-foundation-D33LJLGT.js} +1 -1
- package/dist/workspace-graph-stream-THNG2T7R.js +1 -0
- package/dist/{workspace-history-BANOJRQ2.js → workspace-history-EWFPT74O.js} +1 -1
- package/dist/workspace-intelligence-MCNSWWDV.js +1 -0
- package/dist/{workspace-intelligence-evaluation-IPH7M3WV.js → workspace-intelligence-evaluation-7CABG5Y6.js} +1 -1
- package/dist/workspace-intelligence-runner-TG2VLHNZ.js +1 -0
- package/dist/workspace-intelligence-runtime-registry-ZZ3GRAL2.js +1 -0
- package/dist/{workspace-knowledge-graph-ARDC6HHG.js → workspace-knowledge-graph-2EYR7N56.js} +1 -1
- package/dist/{workspace-marker-SMBC3Z2Q.js → workspace-marker-7NHMDIRL.js} +1 -1
- package/dist/workspace-mcp-serve-FLAVKWYW.js +3 -0
- package/dist/workspace-model-FMFYLHE4.js +1 -0
- package/dist/workspace-model-hash-ZXYPIGCW.js +1 -0
- package/dist/workspace-onboarding-MYROZDI2.js +1 -0
- package/dist/{workspace-python-engine-state-2MLKJYQG.js → workspace-python-engine-state-J4QKW55K.js} +1 -1
- package/dist/{workspace-registry-summary-ORDK7A36.js → workspace-registry-summary-6VXIAQLX.js} +1 -1
- package/dist/workspace-run-2ZI5UMJ2.js +1 -0
- package/dist/{workspace-verify-EBVL7FWT.js → workspace-verify-FKYI65UQ.js} +1 -1
- package/dist/workspace-watch-RP5KMVP2.js +1 -0
- package/docs/GLOSSARY.md +17 -16
- package/docs/OPEN_SOURCE_USER_SCENARIOS.md +18 -10
- package/docs/README.md +49 -14
- package/docs/README_CONTENT_CONTRACT.md +19 -10
- package/docs/ci-workflows.md +3 -3
- package/docs/commands-reference.md +41 -10
- package/docs/contracts/ARTIFACT_CATALOG.md +72 -27
- package/docs/contracts/COMMAND_OWNERSHIP_MATRIX.md +2 -0
- package/docs/contracts/RUNTIME_SUPPORT_MATRIX.md +3 -3
- package/docs/contracts/rapidkit-cli-contracts.json +2 -2
- package/docs/create-planner-capabilities.md +36 -5
- package/docs/creating-workspaces-and-projects.md +75 -15
- package/docs/doctor-command.md +148 -39
- package/docs/examples/ci-agent-grounding.yml +1 -1
- package/docs/from-code-to-shared-understanding.md +6 -3
- package/docs/graph-benchmark-methodology.md +2 -2
- package/docs/workspace-intelligence-evaluation.md +13 -6
- package/docs/workspace-intelligence-runner.md +17 -6
- package/docs/workspace-knowledge-graph.md +102 -7
- package/docs/workspace-operations.md +154 -10
- package/package.json +10 -5
- package/scripts/enterprise-package-smoke.mjs +13 -1
- package/templates/kits/fastapi-ddd/README.md.j2 +1 -1
- package/dist/analyze-EEEU3MIF.js +0 -1
- package/dist/autopilot-release-XGVXPOZI.js +0 -1
- package/dist/chunk-22DT744Z.js +0 -1
- package/dist/chunk-37CVKXBD.js +0 -1
- package/dist/chunk-3NU32T4A.js +0 -2
- package/dist/chunk-3ZK2GU7C.js +0 -1
- package/dist/chunk-4HDYADHT.js +0 -13
- package/dist/chunk-52PBRX7F.js +0 -1
- package/dist/chunk-54EP5CEV.js +0 -8
- package/dist/chunk-5XATWNME.js +0 -1
- package/dist/chunk-7YHK5NM3.js +0 -2
- package/dist/chunk-AFL3ACCR.js +0 -2
- package/dist/chunk-BFLJ2R4D.js +0 -80
- package/dist/chunk-EYJ2CQSK.js +0 -1
- package/dist/chunk-FTY7GGXJ.js +0 -33
- package/dist/chunk-FXQJX34Z.js +0 -1
- package/dist/chunk-GSWPGELT.js +0 -2
- package/dist/chunk-GZTYAEWX.js +0 -1
- package/dist/chunk-HDXNIN4N.js +0 -1
- package/dist/chunk-HZDXO65G.js +0 -36
- package/dist/chunk-J5ENLXDF.js +0 -1
- package/dist/chunk-KB44JP4M.js +0 -2
- package/dist/chunk-LHOZXC2M.js +0 -2
- package/dist/chunk-MER6ZBN2.js +0 -13
- package/dist/chunk-NAJCUQ4X.js +0 -2
- package/dist/chunk-OA537ZQ5.js +0 -1
- package/dist/chunk-OW42TZFB.js +0 -1
- package/dist/chunk-P3D5YQB2.js +0 -1
- package/dist/chunk-PHXQR6PX.js +0 -2
- package/dist/chunk-PRTR2DQ2.js +0 -1
- package/dist/chunk-QNONOO4F.js +0 -4
- package/dist/chunk-RHQW3DTP.js +0 -1
- package/dist/chunk-T4YR4RAI.js +0 -2
- package/dist/chunk-Y45WZR5N.js +0 -5
- package/dist/chunk-YJZOMRAS.js +0 -1
- package/dist/pipeline-TQM43A3K.js +0 -5
- package/dist/platform-capabilities-2B4QMZXE.js +0 -1
- package/dist/workspace-NCWRINEF.js +0 -1
- package/dist/workspace-archive-P76EDIUG.js +0 -10
- package/dist/workspace-contract-TU2I7GC2.js +0 -1
- package/dist/workspace-dependency-graph-BP4EXYQ5.js +0 -1
- package/dist/workspace-explain-MWUEN643.js +0 -1
- package/dist/workspace-explain-contract-ZPI3JXJU.js +0 -1
- package/dist/workspace-intelligence-MFJE7W67.js +0 -1
- package/dist/workspace-intelligence-runner-THYLHHMF.js +0 -1
- package/dist/workspace-mcp-serve-EZR6O76D.js +0 -3
- package/dist/workspace-model-7OU2M3LE.js +0 -1
- package/dist/workspace-model-hash-MHXK5MEI.js +0 -1
- package/dist/workspace-run-RLIYSOTN.js +0 -1
- package/dist/workspace-watch-3BPGLFLB.js +0 -1
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
# Workspai Practical User Scenarios (Open Source Edition)
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
This guide shows complete, copyable ways to use Workspai on real projects:
|
|
4
|
+
connect existing code, create new applications, prepare AI context, check
|
|
5
|
+
changes, and use the same results in CI.
|
|
4
6
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
Command syntax: [commands-reference.md](./commands-reference.md). Import and
|
|
8
|
+
adopt behavior: [workspace-operations.md](./workspace-operations.md). All
|
|
9
|
+
scenarios use the same
|
|
10
|
+
[Workspace Intelligence runner](./workspace-intelligence-runner.md), so the
|
|
11
|
+
system map, checks, and saved reports stay consistent.
|
|
9
12
|
|
|
10
13
|
## Scenario 0 — Existing project (adopt or import)
|
|
11
14
|
|
|
@@ -14,10 +17,10 @@ Goal: connect code you already have without reshuffling repositories.
|
|
|
14
17
|
### Adopt in place (keep source where it is)
|
|
15
18
|
|
|
16
19
|
```bash
|
|
17
|
-
npx workspai adopt /path/to/existing-app --workspace /path/to/workspace --json
|
|
18
|
-
cd /path/to/workspace
|
|
19
|
-
npx workspai workspace intelligence run --for-agent codex --strict --json
|
|
20
20
|
cd /path/to/existing-app
|
|
21
|
+
npx workspai adopt . --workspace /path/to/workspace --json
|
|
22
|
+
npx workspai project workspace status --json
|
|
23
|
+
npx workspai workspace intelligence run --for-agent generic --strict --json
|
|
21
24
|
npx workspai doctor project --json
|
|
22
25
|
```
|
|
23
26
|
|
|
@@ -78,7 +81,7 @@ release or agent input:
|
|
|
78
81
|
|
|
79
82
|
```bash
|
|
80
83
|
cd ..
|
|
81
|
-
npx workspai workspace intelligence run --for-agent
|
|
84
|
+
npx workspai workspace intelligence run --for-agent generic --strict --json
|
|
82
85
|
```
|
|
83
86
|
|
|
84
87
|
The canonical durable outputs are `.workspai/reports/workspace-model.json`,
|
|
@@ -88,6 +91,11 @@ The canonical durable outputs are `.workspai/reports/workspace-model.json`,
|
|
|
88
91
|
Use `npx workspai pipeline --json --strict` separately as the broader governance
|
|
89
92
|
and release gate.
|
|
90
93
|
|
|
94
|
+
The model is the canonical workspace boundary. The Knowledge Graph is generated
|
|
95
|
+
from that model-owned inventory, structurally hash-bound to it, and enriched
|
|
96
|
+
with provider facts and proofs. Consumers must not treat the graph as a second
|
|
97
|
+
source of truth.
|
|
98
|
+
|
|
91
99
|
Success check: the application starts locally, project Doctor reports the
|
|
92
100
|
expected runtime, and the unified run report contains all 11 ordered stages.
|
|
93
101
|
|
|
@@ -197,7 +205,7 @@ loading every source file or the complete graph into a model prompt.
|
|
|
197
205
|
|
|
198
206
|
```bash
|
|
199
207
|
cd my-workspace
|
|
200
|
-
npx workspai workspace intelligence run --for-agent
|
|
208
|
+
npx workspai workspace intelligence run --for-agent generic --strict --json
|
|
201
209
|
npx workspai workspace graph search "authentication endpoint" --limit 12 --json
|
|
202
210
|
npx workspai workspace graph benchmark "authentication endpoint" --limit 12 --json
|
|
203
211
|
npx workspai workspace mcp serve
|
package/docs/README.md
CHANGED
|
@@ -1,29 +1,64 @@
|
|
|
1
1
|
# Workspai NPM — Documentation Index
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Workspai helps people and tools understand the same software system. Use these
|
|
4
|
+
guides to connect existing projects, create new ones, map their relationships,
|
|
5
|
+
check changes, prepare AI context, and automate release checks.
|
|
4
6
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
7
|
+
Start with the [main README](../README.md) for the product overview, or use the
|
|
8
|
+
quickstart below. `workspai` is the main package and command; `wspai` is only a
|
|
9
|
+
shorter optional name.
|
|
8
10
|
|
|
9
|
-
##
|
|
11
|
+
## Quickstart: connect an existing project
|
|
12
|
+
|
|
13
|
+
Connect an existing project without moving it, then create one saved,
|
|
14
|
+
checkable view for developers, CI, IDEs, MCP clients, and AI agents:
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
cd /absolute/path/to/project
|
|
18
|
+
npx workspai adopt .
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
`adopt` keeps the project in place and creates or reuses the minimal default
|
|
22
|
+
workspace. Continue from the same project terminal:
|
|
10
23
|
|
|
11
24
|
```bash
|
|
12
|
-
npx workspai
|
|
13
|
-
|
|
14
|
-
npx workspai workspace intelligence run --for-agent codex --strict --json
|
|
25
|
+
npx workspai project workspace status --json
|
|
26
|
+
npx workspai workspace intelligence run --for-agent generic --strict --json
|
|
15
27
|
```
|
|
16
28
|
|
|
17
|
-
The
|
|
29
|
+
The first command proves which canonical workspace owns the project. Workspai
|
|
30
|
+
uses a gitignored machine-local binding and portable project grounding, so
|
|
31
|
+
workspace commands and compatible agents do not need a manual `cd`.
|
|
32
|
+
|
|
33
|
+
Use `generic` for a vendor-neutral context pack, or select `codex`, `claude`,
|
|
34
|
+
`cursor`, or `orca`. Agent Sync also publishes shared files for GitHub Copilot,
|
|
35
|
+
VS Code, and `AGENTS.md` consumers.
|
|
36
|
+
|
|
37
|
+
Use the release pipeline when you need the broader release workflow:
|
|
18
38
|
|
|
19
39
|
```bash
|
|
20
40
|
npx workspai pipeline --json --strict
|
|
21
41
|
```
|
|
22
42
|
|
|
23
|
-
Adoption keeps source in place. The
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
43
|
+
Adoption keeps source in place. The command maps the system and its
|
|
44
|
+
connections, checks what changes may affect, runs health and release checks,
|
|
45
|
+
and prepares focused AI context under `.workspai/`. When the workspace is not
|
|
46
|
+
ready, the report shows the reason and points to the files or reports behind
|
|
47
|
+
it. Automation details and supported AI tools are documented in the
|
|
48
|
+
[Unified runner](./workspace-intelligence-runner.md). See the
|
|
49
|
+
[Artifact Catalog](./contracts/ARTIFACT_CATALOG.md) for exact paths, writers,
|
|
50
|
+
schemas, and consumers.
|
|
51
|
+
|
|
52
|
+
To start with a new workspace instead:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
npx workspai create workspace my-workspace --profile minimal --yes
|
|
56
|
+
cd ~/.workspai/workspaces/my-workspace
|
|
57
|
+
npx workspai create project nextjs web --yes
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
From the workspace terminal, create a project, use `adopt` to link one in place,
|
|
61
|
+
or use `import` to copy or clone one into the workspace.
|
|
27
62
|
|
|
28
63
|
## Table of contents
|
|
29
64
|
|
|
@@ -83,7 +118,7 @@ with [AI Quickstart](./AI_QUICKSTART.md) only when that is your goal.
|
|
|
83
118
|
- Create a workspace or project: [creating-workspaces-and-projects.md](./creating-workspaces-and-projects.md)
|
|
84
119
|
- Adopt an existing repo: [workspace-operations.md#import-and-adoption](./workspace-operations.md#import-and-adoption)
|
|
85
120
|
- Scaffold a frontend app: [commands-reference.md](./commands-reference.md) (`create project nextjs <name>`)
|
|
86
|
-
- Canonical intelligence gate: `workspace intelligence run --for-agent
|
|
121
|
+
- Canonical intelligence gate: `workspace intelligence run --for-agent generic --strict --json`
|
|
87
122
|
- Broader CI release gate: [commands-reference.md](./commands-reference.md) (`pipeline`, `readiness`)
|
|
88
123
|
- Targeted model/context inspection — schemas in [contracts/workspace-intelligence/](../contracts/workspace-intelligence/)
|
|
89
124
|
|
|
@@ -58,14 +58,22 @@ as one undifferentiated command wall.
|
|
|
58
58
|
## Architectural statements that must remain true
|
|
59
59
|
|
|
60
60
|
- The **Workspace Model is the canonical source of truth**.
|
|
61
|
-
- The Knowledge Graph is a **derived,
|
|
62
|
-
governed workspace knowledge.
|
|
61
|
+
- The Knowledge Graph is a **derived, structurally bound representation** of
|
|
62
|
+
governed workspace knowledge. Its source kind and source artifact are fixed
|
|
63
|
+
to the canonical Workspace Model contract.
|
|
63
64
|
- Providers emit facts and proofs; they do not independently own the canonical
|
|
64
65
|
graph.
|
|
66
|
+
- Graph enrichment must not mutate the authorizing model during the same run.
|
|
67
|
+
- The canonical project inventory must reconcile discovered, imported,
|
|
68
|
+
adopted, and contract-declared projects. A missing contract-declared path is
|
|
69
|
+
a validation warning, not a silently deleted project.
|
|
70
|
+
- Persisted current-state consumers must reject a graph whose structural model
|
|
71
|
+
hash, workspace identity, or project topology no longer matches the current
|
|
72
|
+
model.
|
|
65
73
|
- Missing relationships mean **not proven**, not independent.
|
|
66
74
|
- The graph is broader than a code graph, but it is not the entire product.
|
|
67
75
|
- The canonical runner is
|
|
68
|
-
`npx workspai workspace intelligence run --for-agent
|
|
76
|
+
`npx workspai workspace intelligence run --for-agent generic --strict --json`.
|
|
69
77
|
- `pipeline` is a broader governance/release orchestrator and must not be taught
|
|
70
78
|
as a replacement for the intelligence chain.
|
|
71
79
|
- The integrated CLI already exposes current capabilities. Future standalone
|
|
@@ -74,13 +82,14 @@ as one undifferentiated command wall.
|
|
|
74
82
|
|
|
75
83
|
Normative machine sources:
|
|
76
84
|
|
|
77
|
-
| Statement | Source of truth
|
|
78
|
-
| ------------------------------ |
|
|
79
|
-
| Ordered intelligence chain | `contracts/workspace-intelligence-chain.v1.json`
|
|
80
|
-
| Runtime commands and flags | `contracts/runtime-command-surface.v1.json`
|
|
81
|
-
| Published schemas and paths | `contracts/published-contract-catalog.v1.json`
|
|
82
|
-
| Architecture boundaries | `contracts/workspace-intelligence-architecture.v1.json`
|
|
83
|
-
|
|
|
85
|
+
| Statement | Source of truth |
|
|
86
|
+
| ------------------------------ | -------------------------------------------------------------------- |
|
|
87
|
+
| Ordered intelligence chain | `contracts/workspace-intelligence-chain.v1.json` |
|
|
88
|
+
| Runtime commands and flags | `contracts/runtime-command-surface.v1.json` |
|
|
89
|
+
| Published schemas and paths | `contracts/published-contract-catalog.v1.json` |
|
|
90
|
+
| Architecture boundaries | `contracts/workspace-intelligence-architecture.v1.json` |
|
|
91
|
+
| Model → Graph source binding | `contracts/workspace-intelligence/workspace-knowledge-graph.v1.json` |
|
|
92
|
+
| Artifact writers and consumers | `docs/contracts/ARTIFACT_CATALOG.md` |
|
|
84
93
|
|
|
85
94
|
Markdown summarizes these contracts; it does not redefine them.
|
|
86
95
|
|
package/docs/ci-workflows.md
CHANGED
|
@@ -12,9 +12,9 @@ Map of GitHub Actions workflows in this repository. Use this when editing CI to
|
|
|
12
12
|
| E2E smoke | `.github/workflows/e2e-smoke.yml` | Focused bridge regression smoke |
|
|
13
13
|
| Frontend generator smoke | `.github/workflows/frontend-generator-smoke.yml` | Official frontend generator drift gate |
|
|
14
14
|
| Security | `.github/workflows/security.yml` | Security scanning and policy checks |
|
|
15
|
-
| Manual npm release | `.github/workflows/release-npm-manual.yml` | Maintainer-only release gate and publish workflow
|
|
15
|
+
| Manual npm release | `.github/workflows/release-npm-manual.yml` | Maintainer-only release gate and publish workflow |
|
|
16
16
|
| Contributor onboarding | `.github/workflows/contributor-onboarding.yml` | Accepted-contributor onboarding automation |
|
|
17
|
-
| Welcome | `.github/workflows/welcome.yml` | First-issue and first-contribution messages
|
|
17
|
+
| Welcome | `.github/workflows/welcome.yml` | First-issue and first-contribution messages |
|
|
18
18
|
|
|
19
19
|
The release workflow requires `Frontend Generator Smoke` for the exact release
|
|
20
20
|
SHA. Maintainers must dispatch that workflow against the intended release ref
|
|
@@ -29,7 +29,7 @@ For Workspai **consumer workspaces** (not this CLI repo), use the copy-paste tem
|
|
|
29
29
|
Minimal job:
|
|
30
30
|
|
|
31
31
|
```yaml
|
|
32
|
-
- run: npx workspai workspace intelligence run --for-agent
|
|
32
|
+
- run: npx workspai workspace intelligence run --for-agent generic --strict --json
|
|
33
33
|
- run: npx workspai pipeline --json --strict --no-agent-sync
|
|
34
34
|
- run: node ./node_modules/workspai/scripts/check-agent-customization-drift.mjs --workspace .
|
|
35
35
|
```
|
|
@@ -8,7 +8,7 @@ Complete CLI syntax for the Workspai CLI. For behavior and workflows, see [works
|
|
|
8
8
|
npx workspai create # Prompts: workspace | project
|
|
9
9
|
npx workspai create workspace <name> [--profile <profile>] [--yes] [--here|--output <parent-dir>] [--skip-python-engine] [--skip-git] [--dry-run] [--install-method <poetry|venv|pipx>]
|
|
10
10
|
npx workspai bootstrap [--profile <profile>] [--ci] [--json] [--compliance-only]
|
|
11
|
-
npx workspai setup <python|node|go|java|dotnet> [--warm-deps]
|
|
11
|
+
npx workspai setup <python|node|go|java|dotnet|rust|php> [--warm-deps]
|
|
12
12
|
npx workspai pipeline [--json] [--strict] [--skip-verify] [--skip-analyze] [--skip-autopilot] [--autopilot-mode <audit|safe-fix|enforce>] [--agent-sync|--no-agent-sync]
|
|
13
13
|
npx workspai analyze [--workspace <path>] [--json] [--strict] [--output <file>]
|
|
14
14
|
npx workspai readiness [--workspace <path>] [--json] [--strict] [--skip-verify]
|
|
@@ -18,7 +18,7 @@ npx workspai autopilot release [--mode <audit|safe-fix|enforce>] [--json] [--out
|
|
|
18
18
|
Recommended CI:
|
|
19
19
|
|
|
20
20
|
```bash
|
|
21
|
-
npx workspai workspace intelligence run --for-agent
|
|
21
|
+
npx workspai workspace intelligence run --for-agent generic --strict --json
|
|
22
22
|
```
|
|
23
23
|
|
|
24
24
|
Run the broader governance and release orchestrators as separate gates; they
|
|
@@ -49,6 +49,7 @@ npx workspai workspace policy set <key> <value>
|
|
|
49
49
|
npx workspai doctor
|
|
50
50
|
npx workspai doctor workspace [--json] [--strict] [--ci] [--fix] [--plan] [--apply]
|
|
51
51
|
npx workspai doctor project [--json] [--strict] [--ci] [--fix] [--plan] [--apply]
|
|
52
|
+
npx workspai project coverage [--project <path>] [--target <0-100>] [--run] [--strict] [--json]
|
|
52
53
|
npx workspai workspace list
|
|
53
54
|
npx workspai workspace foundation ensure [--force] [--json]
|
|
54
55
|
npx workspai workspace share [--output <file>] [--include-paths] [--no-doctor]
|
|
@@ -59,7 +60,7 @@ npx workspai workspace contract graph [--json]
|
|
|
59
60
|
npx workspai workspace intelligence run [--workspace <path>] [--for-agent <agent>] [--strict] [--json]
|
|
60
61
|
npx workspai workspace model [--workspace <path>] [--json] [--write] [--strict] [--cache] [--incremental] [--include-paths] [--include-evidence] [--scan-depth <count>]
|
|
61
62
|
npx workspai workspace context --for-agent [codex|claude|cursor|orca] [--workspace <path>] [--json] [--write] [--agent-sync|--no-agent-sync] [--target <targets>] [--preset minimal|enterprise] [--include-evidence] [--scan-depth <count>]
|
|
62
|
-
npx workspai workspace agent-sync [--workspace <path>] [--write] [--refresh-context] [--strict] [--json] [--preset minimal|enterprise] [--target all|vscode|agents,copilot,cursor,claude,codex,orca] [--experimental-hooks] [--hydrate-prompts]
|
|
63
|
+
npx workspai workspace agent-sync [--workspace <path>] [--write] [--refresh-context] [--strict] [--json] [--preset minimal|enterprise] [--target all|vscode|agents,copilot,cursor,claude,codex,orca] [--project-grounding managed|local|off] [--experimental-hooks] [--hydrate-prompts]
|
|
63
64
|
npx workspai workspace remediation-plan [--json] [--write] [--ci] [--include-paths]
|
|
64
65
|
npx workspai workspace snapshot [--workspace <path>] [--json] [--include-paths] [--include-evidence] [--scan-depth <count>]
|
|
65
66
|
npx workspai workspace diff --from <snapshot-or-report|git[:ref]> [--workspace <path>] [--json] [--include-paths] [--include-evidence] [--scan-depth <count>] [--strict]
|
|
@@ -67,7 +68,7 @@ npx workspai workspace impact --from <workspace-diff-report> [--workspace <path>
|
|
|
67
68
|
npx workspai workspace verify [--from-impact <file>] [--workspace <path>] [--scope project:<name>] [--strict] [--json] [--include-paths] [--include-evidence] [--scan-depth <count>]
|
|
68
69
|
npx workspai workspace graph [emit|explain|search|benchmark|entities|evidence|path|overlay|dot|mermaid|jsonld|graphml|gexf] [key] [value] [--from <graph.json>] [--output <file>] [--limit <1..100>] [--workspace <path>] [--scope project:<name>] [--json] [--include-paths] [--include-evidence] [--scan-depth <count>]
|
|
69
70
|
npx workspai workspace eval [init <task> [strategy]|record|status|report|compare --from <report>] [--workspace <path>] [--output <file>] [--json]
|
|
70
|
-
npx workspai workspace watch [--workspace <path>] [--json] [--once] [--scan-depth <count>]
|
|
71
|
+
npx workspai workspace watch [--workspace <path>] [--json] [--graph-stream] [--once] [--scan-depth <count>]
|
|
71
72
|
npx workspai workspace explain|why <target> [--workspace <path>] [--json] [--write]
|
|
72
73
|
npx workspai workspace trace --from <workspace-diff-report> [--workspace <path>] [--json] [--write]
|
|
73
74
|
printf '%s\n' '{"actionId":"fix-api","summary":"API tests passed","outcome":"ok"}' | npx workspai workspace feedback record [--workspace <path>] --json
|
|
@@ -77,8 +78,10 @@ npx workspai workspace archive inspect team-workspace.workspai-archive.zip [--ma
|
|
|
77
78
|
npx workspai workspace archive verify team-workspace.workspai-archive.zip [--max-download-size <size>] [--max-expanded-size <size>] [--download-timeout-ms <ms>] [--allow-private-network] [--strict] [--json]
|
|
78
79
|
npx workspai workspace archive doctor team-workspace.workspai-archive.zip [--max-download-size <size>] [--max-expanded-size <size>] [--download-timeout-ms <ms>] [--allow-private-network] [--strict] [--json]
|
|
79
80
|
npx workspai workspace hydrate team-workspace.workspai-archive.zip --output ./team-workspace [--max-download-size <size>] [--max-expanded-size <size>] [--download-timeout-ms <ms>] [--allow-private-network]
|
|
80
|
-
npx workspai import
|
|
81
|
-
npx workspai
|
|
81
|
+
npx workspai workspace import team-workspace.workspai-archive.zip --output ./team-workspace [--project-grounding managed|local|off] [--dry-run] [--strict] [--json]
|
|
82
|
+
npx workspai workspace connect [directory] [--project-grounding managed|local|off] [--dry-run] [--json]
|
|
83
|
+
npx workspai import <path|git-url> [--workspace <path>] [--name <project-name>] [--git] [--enable-modules] [--project-grounding managed|local|off] [--json]
|
|
84
|
+
npx workspai adopt [path] [--workspace <path>] [--name <project-name>] [--enable-modules] [--project-grounding managed|local|off] [--dry-run] [--json]
|
|
82
85
|
npx workspai snapshot create [name] [--include-projects] [--reason <text>] [--json]
|
|
83
86
|
npx workspai snapshot list [--json]
|
|
84
87
|
npx workspai snapshot inspect <name> [--json]
|
|
@@ -87,6 +90,7 @@ npx workspai project archive <name> [--reason <text>] [--dry-run] [--json]
|
|
|
87
90
|
npx workspai project archives [--json]
|
|
88
91
|
npx workspai project restore <archive> [--name <project-name>] [--force] [--dry-run] [--json]
|
|
89
92
|
npx workspai project delete <name> [--permanent --confirm <name>] [--dry-run] [--json]
|
|
93
|
+
npx workspai project workspace [status|relink] [--workspace <path>] [--project <path>] [--json]
|
|
90
94
|
npx workspai workspace init
|
|
91
95
|
npx workspai workspace run <init|test|build|start> [--affected] [--blast-radius] [--since <ref>] [--parallel] [--max-workers <n>] [--strict] [--json]
|
|
92
96
|
npx workspai infra plan [--workspace <path>] [--json] [--dry-run] [--verbose]
|
|
@@ -95,6 +99,17 @@ npx workspai infra down [--workspace <path>] [--volumes]
|
|
|
95
99
|
npx workspai infra status [--workspace <path>] [--json] [--strict]
|
|
96
100
|
```
|
|
97
101
|
|
|
102
|
+
Every workspace action has action-scoped help generated from the same contract
|
|
103
|
+
that governs its accepted flags. For example:
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
npx workspai workspace impact --help
|
|
107
|
+
npx workspai workspace graph search --help
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
This avoids guessing whether an option such as `--write`, `--from`, or
|
|
111
|
+
`--output` belongs to a particular action.
|
|
112
|
+
|
|
98
113
|
The contract graph includes its backward-compatible service projection, the
|
|
99
114
|
canonical `workspace-dependency-graph.v1` project topology, and the portable
|
|
100
115
|
`workspace-knowledge-graph.v1` evidence graph. The knowledge projection covers
|
|
@@ -138,6 +153,12 @@ per immutable graph object and invalidated automatically when a new graph is
|
|
|
138
153
|
built. `dot` and `mermaid` intentionally remain project-topology renderers and
|
|
139
154
|
emit raw text for direct piping.
|
|
140
155
|
|
|
156
|
+
Every integrated `workspace graph` Knowledge Graph is derived from the
|
|
157
|
+
canonical Workspace Model. Its contract fixes the source artifact to
|
|
158
|
+
`.workspai/reports/workspace-model.json` and binds the graph to the model's
|
|
159
|
+
stable structural SHA-256. Graph providers enrich that model-owned inventory;
|
|
160
|
+
they never write facts back into the authorizing model during the same run.
|
|
161
|
+
|
|
141
162
|
`workspace graph search <query> --limit <n> --json` returns bounded entities,
|
|
142
163
|
one-hop relations, related entity summaries, and portable proofs instead of the
|
|
143
164
|
complete graph. `workspace graph benchmark <query> --limit <n> --json` compares
|
|
@@ -190,9 +211,11 @@ Workspace profile compatibility is enforced consistently across `create project`
|
|
|
190
211
|
`import`, `adopt`, and `bootstrap` compliance. In default `warn` policy mode,
|
|
191
212
|
cross-runtime additions are allowed with a recommendation such as
|
|
192
213
|
`npx workspai bootstrap --profile polyglot`; in `strict` mode, mismatches are
|
|
193
|
-
blocked before the project is registered.
|
|
194
|
-
|
|
195
|
-
|
|
214
|
+
blocked before the project is registered. Rust is an extended runtime with
|
|
215
|
+
Axum/Tauri scaffolding and Cargo lifecycle support. PHP is extended through
|
|
216
|
+
Laravel and Composer lifecycle support. Observed runtimes such as C and C++ are
|
|
217
|
+
still counted in the workspace runtime mix even when Workspai does not own a
|
|
218
|
+
native scaffold for them.
|
|
196
219
|
|
|
197
220
|
Core module/template commands are intentionally narrower than runtime detection.
|
|
198
221
|
RapidKit Core modules are guaranteed only for RapidKit Core module-enabled kits:
|
|
@@ -223,6 +246,10 @@ Examples:
|
|
|
223
246
|
```bash
|
|
224
247
|
npx workspai create project fastapi.standard my-api --yes
|
|
225
248
|
npx workspai create project nextjs my-web --yes
|
|
249
|
+
npx workspai create project rust.axum my-rust-api --yes
|
|
250
|
+
npx workspai create project desktop.tauri my-desktop-app --yes
|
|
251
|
+
npx workspai create project extension.vscode my-extension --yes
|
|
252
|
+
npx workspai create project php.laravel my-laravel-api --yes
|
|
226
253
|
```
|
|
227
254
|
|
|
228
255
|
Generator-specific options include `--port`, Spring Boot
|
|
@@ -232,7 +259,11 @@ and .NET `--dotnet-version`/`--target-framework`/`--nullable`. Use
|
|
|
232
259
|
|
|
233
260
|
`create frontend <id> <name>` is still accepted and routes to the same generators.
|
|
234
261
|
|
|
235
|
-
`project commands` shows the effective command contract for the current project.
|
|
262
|
+
`project commands` shows the effective command contract for the current project.
|
|
263
|
+
Core-backed FastAPI/NestJS projects can use module commands such as `add` and
|
|
264
|
+
`modules`. Frontend, desktop, extension, Go, Spring Boot, .NET, Rust, PHP, and
|
|
265
|
+
adopted/imported projects use runtime lifecycle commands and workspace
|
|
266
|
+
governance while Core module mutation remains disabled.
|
|
236
267
|
|
|
237
268
|
## Operations
|
|
238
269
|
|
|
@@ -20,6 +20,28 @@ The canonical `.workspai-workspace` marker must remain trackable. Generated
|
|
|
20
20
|
workspace `.gitignore` files exclude legacy/local engine state but do not
|
|
21
21
|
exclude the canonical marker.
|
|
22
22
|
|
|
23
|
+
## Project entry and grounding
|
|
24
|
+
|
|
25
|
+
These paths are relative to each registered project root, not the workspace
|
|
26
|
+
root:
|
|
27
|
+
|
|
28
|
+
| Artifact | Writer | Schema / format | Portability and reader purpose |
|
|
29
|
+
| --- | --- | --- | --- |
|
|
30
|
+
| `.workspai/workspace-link.local.json` | `adopt`, `import`, project creation, `workspace sync`, `project workspace relink` | `project-workspace-link.v1` | Machine-local absolute binding; always gitignored and never an agent evidence payload |
|
|
31
|
+
| `.workspai/reports/project-context-agent.json` | Project lens reconciliation and `workspace agent-sync --write` | `project-context-agent.v1` | Portable bounded model/graph/proof projection for project-local agents |
|
|
32
|
+
| `.workspai/PROJECT-GROUNDING.md` | Project lens reconciliation | Markdown | Portable human/agent entry guide with path-free workspace references |
|
|
33
|
+
| `AGENTS.md` managed section | Project lens reconciliation in `managed` mode | Managed Markdown block | Preserves user content and routes compatible agents to project/workspace evidence |
|
|
34
|
+
|
|
35
|
+
The project link is validated against the canonical workspace contract and a
|
|
36
|
+
SHA-256 binding over workspace identity, project identity, portable relative
|
|
37
|
+
path, machine paths, and relationship. Project context generation rejects
|
|
38
|
+
absolute paths before writing. `managed`, `local`, and `off` grounding modes
|
|
39
|
+
control portable project surfaces and converge by removing stale managed
|
|
40
|
+
sections and ignore rules during transitions; they never make the
|
|
41
|
+
machine-local link publishable. The context is bounded but not count-only: it
|
|
42
|
+
includes topology, API/deployment/test surfaces, blockers, portable proofs,
|
|
43
|
+
and model/graph freshness for the selected project.
|
|
44
|
+
|
|
23
45
|
## Naming conventions
|
|
24
46
|
|
|
25
47
|
| Pattern | Meaning | Examples |
|
|
@@ -30,18 +52,19 @@ exclude the canonical marker.
|
|
|
30
52
|
|
|
31
53
|
## Governance evidence loop
|
|
32
54
|
|
|
33
|
-
| Command | Primary artifact | Schema version
|
|
34
|
-
| ------------------------------------ | ----------------------------------------------------------- |
|
|
35
|
-
| `doctor workspace` | `.workspai/reports/doctor-last-run.json` | `doctor-workspace-evidence-v1`
|
|
36
|
-
| `doctor project` | `.workspai/reports/doctor-project-last-run.json` | `doctor-project-evidence-v1`
|
|
37
|
-
| `
|
|
38
|
-
| `doctor * --
|
|
39
|
-
| `
|
|
40
|
-
| `
|
|
41
|
-
| `
|
|
42
|
-
| `
|
|
43
|
-
| `
|
|
44
|
-
|
|
|
55
|
+
| Command | Primary artifact | Schema version | JSON Schema |
|
|
56
|
+
| ------------------------------------ | ----------------------------------------------------------- | ----------------------------------- | ------------------------------------------------------------ |
|
|
57
|
+
| `doctor workspace` | `.workspai/reports/doctor-last-run.json` | `doctor-workspace-evidence-v1` | `contracts/doctor-workspace-evidence.v1.json` |
|
|
58
|
+
| `doctor project` | `.workspai/reports/doctor-project-last-run.json` | `doctor-project-evidence-v1` | `contracts/doctor-project-evidence.v1.json` |
|
|
59
|
+
| `project coverage` | `.workspai/reports/project-test-coverage-last-run.json` | `workspai.project-test-coverage.v1` | `contracts/project-test-coverage.v1.json` |
|
|
60
|
+
| `doctor * --plan` | `.workspai/reports/doctor-remediation-plan-last-run.json` | `doctor-remediation-plan-v2` | `contracts/doctor-remediation-plan.v2.json` |
|
|
61
|
+
| `doctor * --fix/--apply` | `.workspai/reports/doctor-fix-result-last-run.json` | `rapidkit-doctor-fix-result-v1` | `contracts/workspace-intelligence/doctor-fix-result.v1.json` |
|
|
62
|
+
| `workspace remediation-plan --write` | `.workspai/reports/artifact-remediation-plan-last-run.json` | `artifact-remediation-plan-v1` | `contracts/artifact-remediation-plan.v1.json` |
|
|
63
|
+
| `analyze` | `.workspai/reports/analyze-last-run.json` | `rapidkit-analyze-v1` | `contracts/analyze-last-run.v1.json` |
|
|
64
|
+
| `readiness` | `.workspai/reports/release-readiness-last-run.json` | `release-readiness-v1` | `contracts/release-readiness.v1.json` |
|
|
65
|
+
| `pipeline` | `.workspai/reports/pipeline-last-run.json` | `rapidkit-pipeline-v1` | `contracts/pipeline-last-run.v1.json` |
|
|
66
|
+
| `autopilot release` | `.workspai/reports/autopilot-release-last-run.json` | `autopilot-release-v1` | `contracts/autopilot-release.v1.json` |
|
|
67
|
+
| | `.workspai/reports/autopilot-release.json` | (alias, same payload) | `contracts/autopilot-release.v1.json` |
|
|
45
68
|
|
|
46
69
|
Side/cache (not gates): `.workspai/reports/doctor-workspace-cache.json` (`doctor-workspace-cache-v2`).
|
|
47
70
|
|
|
@@ -64,11 +87,13 @@ this plan before inventing per-card repair logic. The plan carries ordered actio
|
|
|
64
87
|
operations where deterministic, refresh/verify commands, risk, approval state, and rollback
|
|
65
88
|
strategy.
|
|
66
89
|
|
|
67
|
-
When `doctor project` runs inside a workspace, the
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
90
|
+
When `doctor project` runs inside a workspace, the project-local report is written beside the
|
|
91
|
+
project and the workspace receives both a latest alias and a collision-safe project copy under
|
|
92
|
+
`.workspai/reports/projects/<project-slug>--<identity-hash>/`. Coverage evidence follows the same
|
|
93
|
+
three-location rule. The hash is derived from workspace-relative identity, so projects with the
|
|
94
|
+
same folder name cannot overwrite each other. Remediation plans and fix results are also mirrored
|
|
95
|
+
into the scoped project. Studio, CI, and project-local tools can therefore use the same evidence
|
|
96
|
+
without guessing which project produced a latest alias.
|
|
72
97
|
|
|
73
98
|
## Workspace intelligence
|
|
74
99
|
|
|
@@ -108,10 +133,14 @@ status/exit coherence, hard-failure skip propagation, and the aggregate verdict.
|
|
|
108
133
|
See [Unified Workspace Intelligence Runner](../workspace-intelligence-runner.md)
|
|
109
134
|
for the normative user and integration semantics.
|
|
110
135
|
|
|
111
|
-
`workspace-model.json` and `workspace-knowledge-graph.json` are published
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
136
|
+
`workspace-model.json` and `workspace-knowledge-graph.json` are published under
|
|
137
|
+
one workspace lock as a rollback-capable artifact transaction. Individual file
|
|
138
|
+
replacement is atomic, and a partial set failure restores both preimages. The
|
|
139
|
+
model is canonical; the graph is derived and cannot mutate it during the run.
|
|
140
|
+
The graph contract fixes `source.kind` to `workspace-model`,
|
|
141
|
+
`source.artifact` to `.workspai/reports/workspace-model.json`, and `source.hash`
|
|
142
|
+
to the model's stable structural SHA-256. Current-state consumers must reject a
|
|
143
|
+
graph whose binding does not match the current model.
|
|
115
144
|
|
|
116
145
|
`workspace graph jsonld|graphml|gexf --output <path>` creates explicit interchange
|
|
117
146
|
projections from that bound graph. These files are portable exports, not competing
|
|
@@ -150,11 +179,13 @@ sources: package manifests (`package.json` deps, `pyproject.toml` path deps, `go
|
|
|
150
179
|
replace → `package-dep`), cross-boundary JS/TS source imports (`code-import`), the
|
|
151
180
|
workspace contract (`dependsOn` → `service-dependsOn`, matched `publishes`/`consumes`
|
|
152
181
|
→ `event-pub-sub`, env↔port references → `shared-resource`), and an optional manual
|
|
153
|
-
override file. Node/edge ordering and `hashDependencyGraph` are stable, so the
|
|
154
|
-
embedded as
|
|
155
|
-
`buildWorkspaceModel` run
|
|
156
|
-
structural
|
|
157
|
-
|
|
182
|
+
override file. Node/edge ordering and `hashDependencyGraph` are stable, so the compact
|
|
183
|
+
topology is embedded as the canonical `workspace-model.v1.projectTopology` field on every
|
|
184
|
+
`buildWorkspaceModel` run. `hashWorkspaceModel` normalizes
|
|
185
|
+
`projectTopology.generatedAt`, so the structural topology participates in the model hash
|
|
186
|
+
without causing timestamp drift. During the v1 migration window the CLI also emits the
|
|
187
|
+
deprecated `graph` compatibility alias. Consumers must read `projectTopology`; when both
|
|
188
|
+
fields exist, validation requires them to be structurally identical.
|
|
158
189
|
|
|
159
190
|
**Manual overrides.** `.workspai/workspace-graph.overrides.json` (`{ "edges": [{ "from",
|
|
160
191
|
"to", "kind", "evidence" }] }`) declares authoritative edges that win over inference for
|
|
@@ -191,6 +222,12 @@ on each settled change, driven by graph-aware incremental rebuilds. Events carry
|
|
|
191
222
|
removed projects, graph edge deltas, structural `modelHash`, and `mode`/`durationMs`. Canonical
|
|
192
223
|
source: `src/workspace-watch.ts`.
|
|
193
224
|
|
|
225
|
+
Use `workspace watch --graph-stream --json` for the transport-neutral
|
|
226
|
+
`workspace-graph-stream.v1` feed consumed by IDEs. The first line is an
|
|
227
|
+
authoritative snapshot; subsequent lines are hash-linked, revisioned deltas.
|
|
228
|
+
Consumers must request a new snapshot after any revision, identity, generation,
|
|
229
|
+
schema, validation, or hash-continuity failure.
|
|
230
|
+
|
|
194
231
|
**Health/impact history.** Each `workspace verify` run appends a compact record to
|
|
195
232
|
`.workspai/reports/workspace-intelligence-history.json` (`workspace-intelligence-history.v1`),
|
|
196
233
|
a ring buffer capped at the 50 most-recent entries (verdict, risk, freshness, gate, counts).
|
|
@@ -239,6 +276,14 @@ reused and the dependency graph re-infers only edges incident to changed project
|
|
|
239
276
|
changes or project renames, and rescans code-imports fully when the node set changes. Reported
|
|
240
277
|
modes: `full` / `incremental` / `unchanged`.
|
|
241
278
|
|
|
279
|
+
The model command adds a non-structural `build` object to its JSON output and,
|
|
280
|
+
when `--write` is used, to the persisted model result. `mode`, `outcome`, and
|
|
281
|
+
`engineStatus` tell IDE/CI consumers
|
|
282
|
+
whether the result was rebuilt, partially reused, or fully reused. This
|
|
283
|
+
provenance is deliberately excluded from the canonical workspace-model hash,
|
|
284
|
+
so switching between full, cached, and incremental execution cannot make the
|
|
285
|
+
paired knowledge graph appear stale.
|
|
286
|
+
|
|
242
287
|
### Freshness metadata (`rapidkit-freshness-metadata-v1`)
|
|
243
288
|
|
|
244
289
|
Intelligence reports carry a shared freshness envelope so any consumer (CLI
|
|
@@ -356,7 +401,7 @@ canonical file. Legacy files remain readable during the compatibility window.
|
|
|
356
401
|
## Consumer rules
|
|
357
402
|
|
|
358
403
|
1. **Project count:** read `workspace-registry.v1.json` (or run `workspace registry status --json`).
|
|
359
|
-
2. **Workspace Intelligence chain:** run `workspace intelligence run --for-agent
|
|
404
|
+
2. **Workspace Intelligence chain:** run `workspace intelligence run --for-agent generic --strict --json` to preserve Model → Diff → Impact → Doctor + Contract Verify + Analyze → Readiness → Verify → Context → Agent Sync → Explain. `pipeline` is the broader governance/release orchestrator and `autopilot` is a separate release surface; neither redefines the canonical chain. Use `pipeline-last-run.json` only for the pipeline orchestration summary.
|
|
360
405
|
3. **Do not** use `workspace.json.projects` (removed in schema 1.0).
|
|
361
406
|
4. Prefer `schemaVersion` constants in each artifact; legacy `v1` on readiness is accepted when reading old reports.
|
|
362
407
|
5. **Agent retrieval:** start with `AGENTS.md` and `.workspai/reports/INDEX.json`, then use `workspace graph search <query> --limit <n> --json` or MCP `searchWorkspaceGraph` for question-sized facts. Follow returned proof paths to source evidence. Read the full context, model, or graph only when the bounded result is insufficient.
|
|
@@ -58,10 +58,12 @@ These nested Commander commands are implemented and orchestrated by Workspai CLI
|
|
|
58
58
|
- `product manifest create`
|
|
59
59
|
- `product plan`
|
|
60
60
|
- `project commands`
|
|
61
|
+
- `project coverage`
|
|
61
62
|
- `project archives`
|
|
62
63
|
- `project archive`
|
|
63
64
|
- `project restore`
|
|
64
65
|
- `project delete`
|
|
66
|
+
- `project workspace`
|
|
65
67
|
- `snapshot create`
|
|
66
68
|
- `snapshot inspect`
|
|
67
69
|
- `snapshot list`
|
|
@@ -18,9 +18,9 @@ It separates three concerns:
|
|
|
18
18
|
| Go | extended | yes | yes | init, dev, start, build, test, lint, format, help | no | readiness |
|
|
19
19
|
| Java / Spring Boot | extended | yes | yes | init, dev, start, build, test, lint, format, help | no | readiness |
|
|
20
20
|
| .NET / ASP.NET Core | extended | yes | yes | init, dev, start, build, test, lint, format, help | no | readiness |
|
|
21
|
-
| PHP |
|
|
21
|
+
| PHP | extended | yes | yes | init, dev, start, build, test, lint, format, help | no | readiness |
|
|
22
22
|
| Ruby | observed | no | yes | help | no | observed |
|
|
23
|
-
| Rust |
|
|
23
|
+
| Rust | extended | yes | yes | init, dev, start, build, test, lint, format, help | no | readiness |
|
|
24
24
|
| Elixir | observed | no | yes | help | no | observed |
|
|
25
25
|
| Clojure | observed | no | yes | help | no | observed |
|
|
26
26
|
| Scala | observed | no | yes | help | no | observed |
|
|
@@ -40,7 +40,7 @@ It separates three concerns:
|
|
|
40
40
|
| Tier | Frameworks |
|
|
41
41
|
| ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
42
42
|
| first-class | FastAPI, NestJS |
|
|
43
|
-
| 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 |
|
|
43
|
+
| 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, Tauri, Electron, VS Code Extension |
|
|
44
44
|
| observed | Python, Node.js, Go, Java, PHP, Ruby, Rust, Elixir, Unknown/generic projects |
|
|
45
45
|
|
|
46
46
|
## Import Policy
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://
|
|
4
|
-
"title": "RapidKit Core
|
|
3
|
+
"$id": "https://workspai.dev/schemas/rapidkit-cli-contracts.json",
|
|
4
|
+
"title": "Workspai CLI Contracts (RapidKit Core Compatibility)",
|
|
5
5
|
"type": "object",
|
|
6
6
|
"definitions": {
|
|
7
7
|
"VersionResponse": {
|