Found while fixing #10881 (the phantom os codemod v2-to-v3 row and the stale projects/ tree node). That card's fence is explicit that this file's tree listing is not to become a full audit, so filing rather than sweeping in.
What's wrong
Beyond the tree-listing node #10881 already renames to environments/, packages/cli/README.md has three more places that describe an os projects command surface as if it currently exists:
README.md:75 — | `os environments create --org <id> --name <n>` | Provision a new environment (alias: `os projects create`) | — claims os projects create is a registered alias.README.md:98 — "...the legacy os projects bind <id> --artifact dist/objectstack.json path still binds an artifact directly into an environment without going through the package registry." — describes it as a still-working "legacy" path.README.md:278 (Typical Workflow) — os projects bind <id> --artifact dist/objectstack.json # 8. Bind to a Cloud Project — used directly, no caveat at all.
What's actually registered
packages/cli/src/commands/environments/ (list.ts, show.ts, create.ts, switch.ts, bind.ts) has no aliases static field anywhere — grepped all five files and packages/cli/package.json's oclif block, zero hits for aliases. oclif has no other mechanism that would make os projects create resolve. Probed against the built binary:
$ node packages/cli/bin/run.js projects create --help
› Error: Command projects:create not found. # exit 2
So all three of the above are false: there is no alias, and the "legacy path" framing at :98 implies a working fallback that isn't there either.
Suggested fix
:75 — drop the (alias: os projects create) parenthetical, or rephrase to something like "was os projects create before the v5.0 project → environment rename (ADR-0006, no aliases)".:98 — drop "legacy os projects bind ..." and give the real current invocation (os environments bind <id> --artifact dist/objectstack.json), or state plainly that the old name no longer works.:278 — same: os projects bind → os environments bind.
Docs-only, packages/cli/README.md, same file as #10881 but a different block (prose Command tables / Typical Workflow, not the Architecture tree listing) — filing separately rather than expanding #10881's fence.
Found while fixing #10881 (the phantom
os codemod v2-to-v3row and the staleprojects/tree node). That card's fence is explicit that this file's tree listing is not to become a full audit, so filing rather than sweeping in.What's wrong
Beyond the tree-listing node #10881 already renames to
environments/,packages/cli/README.mdhas three more places that describe anos projectscommand surface as if it currently exists:README.md:75—| `os environments create --org <id> --name <n>` | Provision a new environment (alias: `os projects create`) |— claimsos projects createis a registered alias.README.md:98— "...the legacyos projects bind <id> --artifact dist/objectstack.jsonpath still binds an artifact directly into an environment without going through the package registry." — describes it as a still-working "legacy" path.README.md:278(Typical Workflow) —os projects bind <id> --artifact dist/objectstack.json # 8. Bind to a Cloud Project— used directly, no caveat at all.What's actually registered
packages/cli/src/commands/environments/(list.ts,show.ts,create.ts,switch.ts,bind.ts) has noaliasesstatic field anywhere — grepped all five files andpackages/cli/package.json'soclifblock, zero hits foraliases. oclif has no other mechanism that would makeos projects createresolve. Probed against the built binary:So all three of the above are false: there is no alias, and the "legacy path" framing at
:98implies a working fallback that isn't there either.Suggested fix
:75— drop the(alias: os projects create)parenthetical, or rephrase to something like "wasos projects createbefore the v5.0 project → environment rename (ADR-0006, no aliases)".:98— drop "legacyos projects bind ..." and give the real current invocation (os environments bind <id> --artifact dist/objectstack.json), or state plainly that the old name no longer works.:278— same:os projects bind→os environments bind.Docs-only,
packages/cli/README.md, same file as #10881 but a different block (prose Command tables / Typical Workflow, not the Architecture tree listing) — filing separately rather than expanding #10881's fence.