All contracts

Platform contracts / Capability contract

Project Entry Capability V1

Defines the versioned project entry capability v1 boundary used by Workspai and its consumers.

Schema version
workspai-project-entry-capability-v1
Contract path
contracts/project-entry-capability.v1.json
Publication
json-schema
Defined fields
37
Artifact bindings
0

Why this contract exists

Architecture role

Defines a versioned interoperability boundary used by Workspai and contract-aware consumers.

Consumption boundary

  • Workspai CLI
  • Contract-aware integrations

Related commands

Commands are linked only when the runtime contract identifies a direct production relationship. Supporting contracts may be consumed without having a single producer command.

This is a supporting, capability, cache, compatibility, or consumer contract. It has no single direct producer command in the canonical Workspace Intelligence execution registry.

Produced artifacts

These durable files are emitted by registered commands and validated against this contract.

No canonical file artifact is registered for this contract. It may describe capabilities, embedded data, runtime exchange, or supporting state instead of a standalone report.

Field reference

Every declared schema property or published capability path is listed here. Required means the contract declares or publishes that field at the shown boundary.

Field pathTypeRequiredMeaningConstraints
boundariesobjectYesPublished boundaries capability data.
boundaries.allowedClaimsarrayYesPublished allowedclaims capability data.
boundaries.allowedClaims[]stringYesPublished allowedclaims[] capability data.
boundaries.forbiddenClaimsarrayYesPublished forbiddenclaims capability data.
boundaries.forbiddenClaims[]stringYesPublished forbiddenclaims[] capability data.
entryRoutesarrayYesPublished entryroutes capability data.
entryRoutes[]objectYesPublished entryroutes[] capability data.
entryRoutes[].commandsarrayYesPublished commands capability data.
entryRoutes[].commands[]stringYesPublished commands[] capability data.
entryRoutes[].idstringYesPublished id capability data.
entryRoutes[].purposestringYesPublished purpose capability data.
entryRoutes[].statusstringYesPublished status capability data.
namestringYesPublished name capability data.
plainLanguageRulestringYesPublished plainlanguagerule capability data.
runtimeSignalsobjectYesPublished runtimesignals capability data.
runtimeSignals.examplesarrayYesPublished examples capability data.
runtimeSignals.examples[]stringYesPublished examples[] capability data.
runtimeSignals.purposestringYesPublished purpose capability data.
runtimeSignals.rulestringYesPublished rule capability data.
schemaVersionstringYesPublished schemaversion capability data.
supportDepthsarrayYesPublished supportdepths capability data.
supportDepths[]objectYesPublished supportdepths[] capability data.
supportDepths[].examplesarrayYesPublished examples capability data.
supportDepths[].examples[]stringYesPublished examples[] capability data.
supportDepths[].idstringYesPublished id capability data.
supportDepths[].labelstringYesPublished label capability data.
supportDepths[].meaningstringYesPublished meaning capability data.
universalExistingProjectEntryobjectYesPublished universalexistingprojectentry capability data.
universalExistingProjectEntry.appliesToarrayYesPublished appliesto capability data.
universalExistingProjectEntry.appliesTo[]stringYesPublished appliesto[] capability data.
universalExistingProjectEntry.doesNotRequirearrayYesPublished doesnotrequire capability data.
universalExistingProjectEntry.doesNotRequire[]stringYesPublished doesnotrequire[] capability data.
universalExistingProjectEntry.minimumConditionsarrayYesPublished minimumconditions capability data.
universalExistingProjectEntry.minimumConditions[]stringYesPublished minimumconditions[] capability data.
universalExistingProjectEntry.resultarrayYesPublished result capability data.
universalExistingProjectEntry.result[]stringYesPublished result[] capability data.
universalExistingProjectEntry.statusstringYesPublished status capability data.

Canonical machine-readable definition

The raw synchronized contract remains authoritative. The educational sections above are projections of this definition.

Show raw JSON
{
  "schemaVersion": "workspai-project-entry-capability-v1",
  "name": "Project Entry Capability",
  "plainLanguageRule": "Any readable project can enter Workspace Intelligence through adopt/import. Runtime-specific detection improves understanding depth; it is not the permission gate.",
  "entryRoutes": [
    {
      "id": "create",
      "status": "available",
      "purpose": "Start a new project only through native kits or available official generator paths listed in the create planner contract.",
      "commands": [
        "create workspace",
        "create project"
      ]
    },
    {
      "id": "adopt",
      "status": "available",
      "purpose": "Register an existing local project in place without moving or rewriting its source.",
      "commands": [
        "adopt"
      ]
    },
    {
      "id": "import",
      "status": "available",
      "purpose": "Attach an existing project, repository folder, or imported path to a workspace inventory.",
      "commands": [
        "import",
        "workspace import"
      ]
    }
  ],
  "universalExistingProjectEntry": {
    "status": "available",
    "appliesTo": [
      "any readable repository",
      "any readable local project folder",
      "monorepos and multi-project workspaces",
      "known runtimes, unknown runtimes, and mixed stacks"
    ],
    "minimumConditions": [
      "The path is readable by the CLI.",
      "The workspace can write Workspai metadata or record an external adopted path.",
      "The project can be represented with at least a name, path, and entry record."
    ],
    "doesNotRequire": [
      "native scaffold support",
      "official generator support",
      "module command support",
      "a known runtime detector",
      "moving source files into the workspace"
    ],
    "result": [
      "project registry membership",
      "workspace model participation",
      "workspace context participation",
      "governance and evidence participation according to available facts"
    ]
  },
  "supportDepths": [
    {
      "id": "registered",
      "label": "Registered",
      "meaning": "The project is known to the workspace and can participate in inventory, context, and governance.",
      "examples": [
        "unknown runtime",
        "custom stack",
        "legacy service"
      ]
    },
    {
      "id": "detected",
      "label": "Detected",
      "meaning": "The CLI recognizes runtime or framework signals and can label the project with higher confidence.",
      "examples": [
        "node package.json",
        "python pyproject.toml",
        "php composer.json"
      ]
    },
    {
      "id": "operational",
      "label": "Operational",
      "meaning": "The CLI can infer or use lifecycle commands, health checks, or workspace run stages.",
      "examples": [
        "test script",
        "build script",
        "doctor evidence"
      ]
    },
    {
      "id": "deep",
      "label": "Deep",
      "meaning": "The project has stack-specific module, doctor, or scaffold support beyond generic Workspace Intelligence.",
      "examples": [
        "FastAPI module support",
        "NestJS module support",
        "native Workspai kit"
      ]
    }
  ],
  "runtimeSignals": {
    "purpose": "Help the planner and model recognize common existing-project requests and improve labels.",
    "examples": [
      "php",
      "ruby",
      "rust",
      "elixir",
      "clojure",
      "scala",
      "kotlin"
    ],
    "rule": "Runtime signals are examples for detection and messaging, not a closed allowlist for adopt/import."
  },
  "boundaries": {
    "allowedClaims": [
      "Any readable project can enter Workspace Intelligence through adopt/import when it can be registered.",
      "Known runtime and framework detectors improve confidence and depth, but unknown projects can still be registered.",
      "Create support is limited to native kits and available official generator paths in the create planner contract."
    ],
    "forbiddenClaims": [
      "Do not say adopt/import supports only the listed runtime signals.",
      "Do not say every imported project receives deep runtime-specific module support.",
      "Do not say Workspai can natively scaffold every language or framework."
    ]
  }
}