Migration from old packages
Five old @blacklake-systems/* artifacts now ship as a single blacklake package. The old packages still work (frozen on npm at their last versions) — no rush — but new code should target blacklake.
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.
Status of the old packages#
The five @blacklake-systems/* packages are frozen on npm at their last published versions — they keep working but won't get further releases. New work lands on blacklake. Nothing is being unpublished.
Stuck?#
If something doesn't have a clean translation here, the SDK reference and API reference are the most up-to-date sources.