Migration from old packages
The five old npm artifacts have collapsed into a single blacklake package on npm. Old packages remain published as deprecated thin re-exports for two minor versions; new work should target blacklake directly.
What changed#
| Old | New |
|---|---|
@blacklake-systems/surface-cli | blacklake (bin: blacklake) — npx blacklake serve |
@blacklake-systems/surface-sdk | blacklake — import { govern } from 'blacklake' |
@blacklake-systems/depth-cli | blacklake (bin: blacklake) — npx blacklake run workflow.ts |
@blacklake-systems/depth-sdk | blacklake — import { workflow, step } from 'blacklake' |
blx (standalone) | blacklake (bin: blx) — same blx git push semantics |
One npm i blacklake gives you the SDK, the CLI, the durable-workflow runtime, and the blx alias.
Search-and-replace examples#
package.json#
{
"dependencies": {
- "@blacklake-systems/surface-sdk": "^0.3.0",
- "@blacklake-systems/depth-sdk": "^0.2.0"
+ "blacklake": "^1.0.0"
},
"devDependencies": {
- "@blacklake-systems/surface-cli": "^0.2.15",
- "@blacklake-systems/depth-cli": "^0.1.0"
+ "blacklake": "^1.0.0"
}
}
TypeScript imports#
-import { BlackLake } from '@blacklake-systems/surface-sdk';
-
-const bl = new BlackLake({ apiKey: process.env.BLACKLAKE_API_KEY });
-const decision = await bl.govern({ ... });
+import { govern } from 'blacklake';
+
+const decision = await govern({
+ apiKey: process.env.BLACKLAKE_API_KEY,
+ ...
+});
-import { workflow, step } from '@blacklake-systems/depth-sdk';
+import { workflow, step } from 'blacklake';
CLI invocations#
-npx @blacklake-systems/surface-cli
+npx blacklake serve
-npx @blacklake-systems/depth-cli run workflow.ts
+npx blacklake run workflow.ts
-blx git push # standalone install
+blx git push # alias inside blacklake
Shell scripts / CI#
-npm i -g @blacklake-systems/surface-cli
+npm i -g blacklake
MCP client config (~/.blacklake/mcp-config.json)#
No change — the MCP config format is unchanged. Only the package that reads it has been renamed.
Deprecation timeline#
- Now: Five old artifacts are published as deprecated thin re-exports. They forward to the unified
blacklakepackage internally and emit a deprecation warning on import. - Two minor versions: Old artifacts continue to function. CI and existing installs keep working.
- After: Old artifacts are unpublished from public install paths. The unified
blacklakepackage is the only supported install.
If you are pinning versions in lockfiles, the safest move is to migrate before the second deprecated minor ships.
Stuck?#
The old package READMEs all carry a deprecation banner pointing back here. If something does not have a clean translation in this doc, the SDK reference and CLI reference are the most up-to-date sources.