devforge-capture-2026-07-13

0 of 0 complete

title: "DevForge & Plux Ecosystem Capture Walkthrough"
version: "2026-07-13.1"
status: "execution guide - devforge namespaces secured"


DevForge & Plux Ecosystem Capture Walkthrough

Read first: This runbook outlines the deployment steps used to capture the DevForge Turborepo to the @kaaterskillsawmill organization, and secure the namespaces for QBits, DCoop, and Plux.

1. DevForge Namespace Preparation

All internal DevForge workspace packages were successfully scoped to ensure they deploy under the correct organization.

2. Publish Workflow Setup

The OIDC-authenticated publish.yml was successfully injected into .github/workflows/publish.yml, mirroring the high-security posture established by the DevLuxe claim.

3. The Claim Execution Path

Generate NPM Token

Create a temporary GitHub secret to authenticate the publish workflow.

gh secret set NPM_TOKEN -R katterskillsawmill/devforge --env npm-publish

Dispatch the Publish Workflow

Execute the GitHub Action to claim the 5 newly-scoped packages.

gh workflow run publish.yml -R katterskillsawmill/devforge -f target=npm

Verify DevForge Claim

Test the global availability of the CLI package to ensure the namespaces are secure.

npx @kaaterskillsawmill/devforge-cli --help

4. Next Targets: Namespaces We Actually Own

Corrected 2026-07-15. This section previously planned to reserve @dcoop and @plux. Both belong to third parties and cannot be reserved:

Ship from the namespaces we own:

scope purpose
@ktrskl Core proprietary MANGOS and BigBrain orchestration (replaces the @dcoop plan)
@cooplux Flagship chat/research/coder agent — @cooplux/plux already exists (replaces the @plux plan)
@devluxe Public product line
@qbtz Scaffolds a Python venv with Qiskit and Pennylane (qbtz init)

Reminder: Do not attempt to claim the root openclaw namespace, as it belongs to external OSS maintainers. Any bridges should be scoped as @ktrskl/openclaw-bridge.

The rule this section learned the hard way: verify a namespace is free before planning to reserve it. GET https://registry.npmjs.org/-/org/<name>/package returns {"error":"Scope not found"} when the scope is available; anything else means somebody already holds it. The openclaw reminder above got this right — the same check was simply never applied to @dcoop or @plux.

Artifact Maintenance Checklist

📝 My notes

Auto-saves to this browser. Survives reloads. Click Export to download as .md.
Saved