Skip to content
BLACKLAKE
Migration from old packages▾ docs nav

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#

OldNew
@blacklake-systems/surface-cliblacklake (bin: blacklake) — npx blacklake serve
@blacklake-systems/surface-sdkblacklakeimport { govern } from 'blacklake'
@blacklake-systems/depth-cliblacklake (bin: blacklake) — npx blacklake run workflow.ts
@blacklake-systems/depth-sdkblacklakeimport { 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.