From dc56e4c74147d0596b999bed53ced7a07f8718c9 Mon Sep 17 00:00:00 2001 From: Anthony Ettinger Date: Sun, 9 Aug 2026 18:30:28 +0000 Subject: [PATCH] Point install docs at @logicsrc/opencontext; record the npm name collision The unscoped `opencontext` name is already published on npm by an unrelated third party (federicodeponte/opencontext, 2.0.0), so `npx opencontext` would install a stranger's package. Docs now use `npx @logicsrc/opencontext`; the bin stays named `opencontext` so the command reads as the PRD specifies once installed. Recorded in PRD 0003 as a blocker to resolve before any publication, along with the fact that no @logicsrc spec package has ever been published, so there is no existing release path to slot into. Co-Authored-By: Claude Opus 5 (1M context) --- README.md | 6 +++--- docs/opencontext.md | 6 +++--- docs/opencontext/cli.md | 8 ++++---- docs/opencontext/faq.md | 2 +- docs/opencontext/integration.md | 6 +++--- examples/opencontext/README.md | 6 +++--- prd/0003-add-logicsrc-opencontext-spec.md | 14 ++++++++++++++ 7 files changed, 31 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index 5e4ceb0..75e0012 100644 --- a/README.md +++ b/README.md @@ -116,9 +116,9 @@ replaceable workers without losing institutional state. > An agent should be replaceable without losing organizational knowledge. ```bash -npx opencontext init my-context -npx opencontext validate --strict -npx opencontext resolve --role support --task "customer asked for a refund" --explain +npx @logicsrc/opencontext init my-context +npx @logicsrc/opencontext validate --strict +npx @logicsrc/opencontext resolve --role support --task "customer asked for a refund" --explain ``` ```txt diff --git a/docs/opencontext.md b/docs/opencontext.md index 322336c..0ff3fd9 100644 --- a/docs/opencontext.md +++ b/docs/opencontext.md @@ -37,7 +37,7 @@ Everything in OpenContext is one of five things. Five minutes, no account, no network, no model key. ```bash -npx opencontext init my-context +npx @logicsrc/opencontext init my-context cd my-context opencontext validate --strict @@ -343,8 +343,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - run: npx opencontext validate --strict - - run: npx opencontext doctor --strict + - run: npx @logicsrc/opencontext validate --strict + - run: npx @logicsrc/opencontext doctor --strict ``` Exit codes are stable: `0` ok, `1` invalid, `2` usage, `3` not found. diff --git a/docs/opencontext/cli.md b/docs/opencontext/cli.md index 9fc588b..3a6c0fa 100644 --- a/docs/opencontext/cli.md +++ b/docs/opencontext/cli.md @@ -1,7 +1,7 @@ # CLI reference ```bash -npx opencontext # standalone +npx @logicsrc/opencontext # standalone logicsrc context # inside the LogicSRC CLI ``` @@ -245,9 +245,9 @@ opencontext version # the supported specification version ## CI ```yaml -- run: npx opencontext validate --strict -- run: npx opencontext doctor --strict -- run: npx opencontext bundle --role support --output bundle.json +- run: npx @logicsrc/opencontext validate --strict +- run: npx @logicsrc/opencontext doctor --strict +- run: npx @logicsrc/opencontext bundle --role support --output bundle.json ``` Common gates: diff --git a/docs/opencontext/faq.md b/docs/opencontext/faq.md index 1ae125f..0908867 100644 --- a/docs/opencontext/faq.md +++ b/docs/opencontext/faq.md @@ -129,7 +129,7 @@ No. OpenContext is independently usable, and the specification does not depend o ### Where do I start? ```bash -npx opencontext init my-context +npx @logicsrc/opencontext init my-context ``` Then read [`examples/opencontext/minimal`](../../examples/opencontext/minimal), and when you have two roles that need different things, read [`multi-agent-company`](../../examples/opencontext/multi-agent-company). diff --git a/docs/opencontext/integration.md b/docs/opencontext/integration.md index 3dabae6..ac94782 100644 --- a/docs/opencontext/integration.md +++ b/docs/opencontext/integration.md @@ -108,9 +108,9 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - run: npx opencontext validate --strict - - run: npx opencontext doctor --strict - - run: npx opencontext bundle --role support --output bundle.json + - run: npx @logicsrc/opencontext validate --strict + - run: npx @logicsrc/opencontext doctor --strict + - run: npx @logicsrc/opencontext bundle --role support --output bundle.json - uses: actions/upload-artifact@v4 with: name: context-bundle diff --git a/examples/opencontext/README.md b/examples/opencontext/README.md index f8a1485..5baaa10 100644 --- a/examples/opencontext/README.md +++ b/examples/opencontext/README.md @@ -15,9 +15,9 @@ Five working [OpenContext](../../docs/opencontext.md) repositories. Every one is ```bash cd minimal -npx opencontext validate --strict -npx opencontext doctor -npx opencontext resolve --role everyone --format markdown +npx @logicsrc/opencontext validate --strict +npx @logicsrc/opencontext doctor +npx @logicsrc/opencontext resolve --role everyone --format markdown ``` Or from anywhere, since discovery searches upward: diff --git a/prd/0003-add-logicsrc-opencontext-spec.md b/prd/0003-add-logicsrc-opencontext-spec.md index ea01021..09dc50b 100644 --- a/prd/0003-add-logicsrc-opencontext-spec.md +++ b/prd/0003-add-logicsrc-opencontext-spec.md @@ -183,6 +183,20 @@ that quietly diverged would become a second contract. - **Digest churn.** A resolver bug fix that changes what is selected changes bundle digests, which a consumer might read as tampering. Mitigated by calling such fixes out explicitly in the changelog. +- **Blocker: the `opencontext` npm name is taken.** This PRD proposes + `opencontext` as the package name and `npx opencontext` as the install path. + That name is already published by an unrelated third party + (`federicodeponte/opencontext`, currently 2.0.0, "AI-powered company context + analysis from your terminal") — and being adjacent in subject matter makes the + confusion worse, not better. Documentation therefore ships pointing at + `npx @logicsrc/opencontext`, and the `bin` is still named `opencontext` so the + command reads as specified once installed. Resolving this needs a decision + before any publication: request a transfer, pick a different unscoped name, or + commit to the scoped package permanently. +- **No publication pipeline exists yet.** Neither `@logicsrc/openprd` nor + `@logicsrc/openontology` has ever been published to npm, so OpenContext is not + slotting into an established release path — one has to be built. Until then + the only distribution is this repository. - **Open question.** Should interior wildcards (`customers.*.churn-risk`) remain single-segment only, or should a future minor version add a bounded multi- segment form? Single-segment is shipped in v1 because the alternative silently