chore: rename SDK facade to hivecast-sdk

This commit is contained in:
Ubuntu 2026-06-08 00:17:38 +00:00
parent f3fd4e109f
commit de5b25ae23
16 changed files with 40 additions and 40 deletions

View File

@ -1,6 +1,6 @@
# Matrix SDK # HiveCast SDK
Matrix SDK is the package-author layer for building Matrix actors, browser HiveCast SDK is the package-author layer for building Matrix actors, browser
surfaces, and broker-connected applications without depending on a managed surfaces, and broker-connected applications without depending on a managed
platform repo. platform repo.
@ -19,7 +19,7 @@ packed tarballs.
- Browser host integrations for Matrix web surfaces - Browser host integrations for Matrix web surfaces
- Package-author CLIs and project scaffolds - Package-author CLIs and project scaffolds
Matrix SDK is provider-neutral. It does not require a managed platform account, HiveCast SDK is provider-neutral. It does not require a managed platform account,
device-link ceremony, host-link implementation, managed host service, local device-link ceremony, host-link implementation, managed host service, local
platform install, Postgres database, or provider-owned broker authority. A platform install, Postgres database, or provider-owned broker authority. A
provider overlay can issue broker credentials and host runtimes on top of the provider overlay can issue broker credentials and host runtimes on top of the
@ -33,7 +33,7 @@ part of the package-author SDK proof.
| Package | Purpose | | Package | Purpose |
| --- | --- | | --- | --- |
| `@open-matrix/sdk` | Public umbrella facade for actor/package authors | | `@open-matrix/hivecast-sdk` | Public umbrella facade for actor/package authors |
| `@open-matrix/core` | Actor kernel, runtime, transports, serialization, browser actor base classes | | `@open-matrix/core` | Actor kernel, runtime, transports, serialization, browser actor base classes |
| `@open-matrix/cli` | Package-author `matrix` CLI | | `@open-matrix/cli` | Package-author `matrix` CLI |
| `@open-matrix/browser-kit` | Browser app shims, theme tokens, Vite helpers, shell components | | `@open-matrix/browser-kit` | Browser app shims, theme tokens, Vite helpers, shell components |
@ -51,14 +51,14 @@ import { MatrixActor } from '@open-matrix/core';
Use the umbrella package when you intentionally want the public SDK facade: Use the umbrella package when you intentionally want the public SDK facade:
```ts ```ts
import { MatrixActor } from '@open-matrix/sdk'; import { MatrixActor } from '@open-matrix/hivecast-sdk';
``` ```
## Quick Start ## Quick Start
```bash ```bash
git clone git@github.com:matrix-sdk/matrix-sdk.git git clone https://registry.hivecast.ai/open-matrix/hivecast-sdk.git
cd matrix-sdk cd hivecast-sdk
pnpm install --frozen-lockfile pnpm install --frozen-lockfile
pnpm prove pnpm prove
``` ```
@ -212,7 +212,7 @@ Done and proven:
- The SDK packages build independently from their original source monorepo. - The SDK packages build independently from their original source monorepo.
- Package identities use final `@open-matrix/*` names. - Package identities use final `@open-matrix/*` names.
- `@open-matrix/sdk` re-exports the public actor facade. - `@open-matrix/hivecast-sdk` re-exports the public actor facade.
- A fresh clone passes `pnpm install --frozen-lockfile && pnpm prove`. - A fresh clone passes `pnpm install --frozen-lockfile && pnpm prove`.
- A temporary external consumer can install packed SDK tarballs, compile, start - A temporary external consumer can install packed SDK tarballs, compile, start
a `MatrixActor`, and call it through Matrix runtime/transport. a `MatrixActor`, and call it through Matrix runtime/transport.
@ -232,7 +232,7 @@ must be added as an explicit release policy before any npm publication.
## Relationship To Provider Overlays ## Relationship To Provider Overlays
Matrix SDK is the provider-neutral actor SDK. HiveCast SDK is the provider-neutral actor SDK.
Provider overlays can provide account management, namespaces, API keys, broker Provider overlays can provide account management, namespaces, API keys, broker
credential issuance, runtime hosting, package distribution, and operator UI. credential issuance, runtime hosting, package distribution, and operator UI.

View File

@ -2,7 +2,7 @@
Date: 2026-06-07 Date: 2026-06-07
This repository is intended to be a standalone Matrix SDK repository. The SDK This repository is intended to be a standalone HiveCast SDK repository. The SDK
packages must be usable without the HiveCast application monorepo, without packages must be usable without the HiveCast application monorepo, without
Matrix-3 path assumptions, and without platform-only concepts such as Device Matrix-3 path assumptions, and without platform-only concepts such as Device
Link, Host Link, system-auth, or gateway internals. Link, Host Link, system-auth, or gateway internals.

View File

@ -82,7 +82,7 @@ if (checkOnly) {
const demoHome = process.env.MATRIX_DEMO_HOME const demoHome = process.env.MATRIX_DEMO_HOME
? resolve(process.env.MATRIX_DEMO_HOME) ? resolve(process.env.MATRIX_DEMO_HOME)
: mkdtempSync(join(tmpdir(), 'matrix-sdk-hivecast-login.')); : mkdtempSync(join(tmpdir(), 'hivecast-sdk-login.'));
const keep = process.env.MATRIX_DEMO_KEEP === '1' || Boolean(process.env.MATRIX_DEMO_HOME); const keep = process.env.MATRIX_DEMO_KEEP === '1' || Boolean(process.env.MATRIX_DEMO_HOME);
try { try {

View File

@ -1,5 +1,5 @@
{ {
"name": "matrix-sdk-example-standalone-greeter", "name": "hivecast-sdk-example-standalone-greeter",
"version": "0.0.0", "version": "0.0.0",
"runtime": { "runtime": {
"language": "typescript", "language": "typescript",

View File

@ -1,5 +1,5 @@
{ {
"name": "matrix-sdk-example-standalone-greeter", "name": "hivecast-sdk-example-standalone-greeter",
"version": "0.0.0", "version": "0.0.0",
"private": true, "private": true,
"type": "module", "type": "module",

View File

@ -74,7 +74,7 @@ let runner;
try { try {
run('pnpm', ['run', 'build']); run('pnpm', ['run', 'build']);
run('pnpm', ['--filter', 'matrix-sdk-example-standalone-greeter', 'run', 'build']); run('pnpm', ['--filter', 'hivecast-sdk-example-standalone-greeter', 'run', 'build']);
runner = spawn(process.execPath, [ runner = spawn(process.execPath, [
matrixCli, 'run', demoDir, matrixCli, 'run', demoDir,

View File

@ -1,5 +1,5 @@
{ {
"name": "matrix-sdk-workspace", "name": "hivecast-sdk-workspace",
"version": "0.0.0", "version": "0.0.0",
"private": true, "private": true,
"type": "module", "type": "module",

View File

@ -1,6 +1,6 @@
# @open-matrix/cli # @open-matrix/cli
Package-author CLI for the Matrix SDK layer. Package-author CLI for the HiveCast SDK layer.
This package owns the SDK/package-author `matrix` binary. It does not depend on This package owns the SDK/package-author `matrix` binary. It does not depend on
provider overlay packages, managed host packages, platform system actors, provider overlay packages, managed host packages, platform system actors,

View File

@ -6,7 +6,7 @@ import test from 'node:test';
import { main } from '../cli.js'; import { main } from '../cli.js';
test('init, add actor, and configure write package-local SDK state', async () => { test('init, add actor, and configure write package-local SDK state', async () => {
const root = await mkdtemp(join(tmpdir(), 'matrix-sdk-cli-test.')); const root = await mkdtemp(join(tmpdir(), 'hivecast-sdk-cli-test.'));
await main(['init', root, '--name', 'demo-package']); await main(['init', root, '--name', 'demo-package']);
await main(['add', 'actor', 'greeter', '--dir', root, '--mount', 'demo.greeter']); await main(['add', 'actor', 'greeter', '--dir', root, '--mount', 'demo.greeter']);
@ -57,15 +57,15 @@ test('init, add actor, and configure write package-local SDK state', async () =>
}); });
test('up delegates a host-runnable package to an explicit managed host command', async () => { test('up delegates a host-runnable package to an explicit managed host command', async () => {
const root = await mkdtemp(join(tmpdir(), 'matrix-sdk-cli-up-test.')); const root = await mkdtemp(join(tmpdir(), 'hivecast-sdk-cli-up-test.'));
const fakeRuntimeHost = join(root, 'fake-runtime-host.mjs'); const testRuntimeHost = join(root, 'test-runtime-host.mjs');
const calledPath = join(root, 'runtime-host-called.json'); const calledPath = join(root, 'runtime-host-called.json');
await main(['init', root, '--name', 'demo-package']); await main(['init', root, '--name', 'demo-package']);
await main(['add', 'actor', 'greeter', '--dir', root, '--mount', 'demo.greeter']); await main(['add', 'actor', 'greeter', '--dir', root, '--mount', 'demo.greeter']);
await mkdir(join(root, 'dist'), { recursive: true }); await mkdir(join(root, 'dist'), { recursive: true });
await writeFile(join(root, 'dist', 'index.js'), 'export function createStandaloneGreeterActor() {}\n', 'utf8'); await writeFile(join(root, 'dist', 'index.js'), 'export function createStandaloneGreeterActor() {}\n', 'utf8');
await writeFile(fakeRuntimeHost, ` await writeFile(testRuntimeHost, `
import { writeFileSync } from 'node:fs'; import { writeFileSync } from 'node:fs';
writeFileSync(${JSON.stringify(calledPath)}, JSON.stringify({ writeFileSync(${JSON.stringify(calledPath)}, JSON.stringify({
argv: process.argv.slice(2), argv: process.argv.slice(2),
@ -79,7 +79,7 @@ writeFileSync(${JSON.stringify(calledPath)}, JSON.stringify({
'--key', 'test-key', '--key', 'test-key',
'--cloud', 'https://example.invalid', '--cloud', 'https://example.invalid',
'--space', 'demo-space', '--space', 'demo-space',
'--runtime-host-bin', fakeRuntimeHost, '--runtime-host-bin', testRuntimeHost,
'--runtime-host-routing', 'workspace-source', '--runtime-host-routing', 'workspace-source',
]); ]);
await main(['up', '--dir', root, '--json']); await main(['up', '--dir', root, '--json']);
@ -91,7 +91,7 @@ writeFileSync(${JSON.stringify(calledPath)}, JSON.stringify({
}); });
test('add actor preserves explicit Actor class suffix', async () => { test('add actor preserves explicit Actor class suffix', async () => {
const root = await mkdtemp(join(tmpdir(), 'matrix-sdk-cli-actor-suffix-test.')); const root = await mkdtemp(join(tmpdir(), 'hivecast-sdk-cli-actor-suffix-test.'));
await main(['init', root, '--name', 'demo-package']); await main(['init', root, '--name', 'demo-package']);
await main(['add', 'actor', 'GreeterActor', '--dir', root, '--mount', 'demo.greeter']); await main(['add', 'actor', 'GreeterActor', '--dir', root, '--mount', 'demo.greeter']);

View File

@ -7,7 +7,7 @@
"license": "MIT", "license": "MIT",
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/matrix-sdk/matrix-sdk.git", "url": "https://registry.hivecast.ai/open-matrix/hivecast-sdk.git",
"directory": "packages/core" "directory": "packages/core"
}, },
"keywords": [ "keywords": [

View File

@ -1,6 +1,6 @@
# @open-matrix/sdk Contract # @open-matrix/hivecast-sdk Contract
`@open-matrix/sdk` is a package-author facade over the public SDK package set. `@open-matrix/hivecast-sdk` is a package-author facade over the public SDK package set.
It may export from the Node-safe root: It may export from the Node-safe root:

View File

@ -1,6 +1,6 @@
# @open-matrix/sdk # @open-matrix/hivecast-sdk
Public Matrix actor SDK facade for package authors. Public HiveCast actor SDK facade for package authors.
Prefer narrow package imports when a package only needs one layer: Prefer narrow package imports when a package only needs one layer:
@ -12,5 +12,5 @@ Use this umbrella package when a package intentionally needs the combined actor,
browser host, contracts, federation, and Omega kernel facade. browser host, contracts, federation, and Omega kernel facade.
Import browser app build utilities directly from `@open-matrix/browser-kit` so Import browser app build utilities directly from `@open-matrix/browser-kit` so
headless actor packages can import `@open-matrix/sdk` without loading headless actor packages can import `@open-matrix/hivecast-sdk` without loading
browser-only custom element code. browser-only custom element code.

View File

@ -1,7 +1,7 @@
{ {
"name": "@open-matrix/sdk", "name": "@open-matrix/hivecast-sdk",
"version": "0.1.0", "version": "0.1.0",
"description": "Public Matrix actor SDK facade for package authors.", "description": "Public HiveCast actor SDK facade for package authors.",
"type": "module", "type": "module",
"private": true, "private": true,
"main": "./dist/index.js", "main": "./dist/index.js",

View File

@ -31,7 +31,7 @@ for (const pkg of packages) {
'open-matrix-browser-kit-0.1.0.tgz', 'open-matrix-browser-kit-0.1.0.tgz',
'open-matrix-cli-0.1.0.tgz', 'open-matrix-cli-0.1.0.tgz',
'open-matrix-core-0.1.0.tgz', 'open-matrix-core-0.1.0.tgz',
'open-matrix-sdk-0.1.0.tgz', 'open-matrix-hivecast-sdk-0.1.0.tgz',
]; ];
for (const tarball of tarballs) { for (const tarball of tarballs) {
rmSync(join(pkgRoot, tarball), { force: true }); rmSync(join(pkgRoot, tarball), { force: true });

View File

@ -16,7 +16,7 @@ const packages = [
'@open-matrix/core', '@open-matrix/core',
'@open-matrix/browser-host', '@open-matrix/browser-host',
'@open-matrix/browser-kit', '@open-matrix/browser-kit',
'@open-matrix/sdk', '@open-matrix/hivecast-sdk',
'@open-matrix/cli', '@open-matrix/cli',
]; ];
@ -70,7 +70,7 @@ async function assertNoSymlinkToHarness(dir) {
} }
async function main() { async function main() {
const proofRoot = await mkdtemp(path.join(tmpdir(), 'matrix-sdk-consumer-proof.')); const proofRoot = await mkdtemp(path.join(tmpdir(), 'hivecast-sdk-consumer-proof.'));
const tarballDir = path.join(proofRoot, 'tarballs'); const tarballDir = path.join(proofRoot, 'tarballs');
const consumerDir = path.join(proofRoot, 'consumer'); const consumerDir = path.join(proofRoot, 'consumer');
let keep = process.env.MATRIX_SDK_KEEP_CONSUMER_PROOF === '1'; let keep = process.env.MATRIX_SDK_KEEP_CONSUMER_PROOF === '1';
@ -94,7 +94,7 @@ async function main() {
); );
await writeFile(path.join(consumerDir, 'package.json'), JSON.stringify({ await writeFile(path.join(consumerDir, 'package.json'), JSON.stringify({
name: 'matrix-sdk-external-consumer-proof', name: 'hivecast-sdk-external-consumer-proof',
version: '0.0.0', version: '0.0.0',
private: true, private: true,
type: 'module', type: 'module',
@ -144,7 +144,7 @@ import {
MatrixRuntime, MatrixRuntime,
TopicRouter, TopicRouter,
} from '@open-matrix/core'; } from '@open-matrix/core';
import { MatrixActor as SdkMatrixActor } from '@open-matrix/sdk'; import { MatrixActor as SdkMatrixActor } from '@open-matrix/hivecast-sdk';
class EchoActor extends MatrixActor { class EchoActor extends MatrixActor {
static accepts = { static accepts = {

View File

@ -18,7 +18,7 @@ const packages = [
'@open-matrix/core', '@open-matrix/core',
'@open-matrix/browser-host', '@open-matrix/browser-host',
'@open-matrix/browser-kit', '@open-matrix/browser-kit',
'@open-matrix/sdk', '@open-matrix/hivecast-sdk',
'@open-matrix/cli', '@open-matrix/cli',
]; ];
@ -157,7 +157,7 @@ async function createProofWorkspace(proofRoot) {
copied: false, copied: false,
}; };
} }
const copiedWorkspace = path.join(proofRoot, 'matrix-sdk-workspace'); const copiedWorkspace = path.join(proofRoot, 'hivecast-sdk-workspace');
await cp(sourceWorkspaceDir, copiedWorkspace, { await cp(sourceWorkspaceDir, copiedWorkspace, {
recursive: true, recursive: true,
dereference: false, dereference: false,
@ -219,7 +219,7 @@ async function stopChild(child) {
} }
async function main() { async function main() {
const proofRoot = await mkdtemp(path.join(tmpdir(), 'matrix-sdk-cli-uat.')); const proofRoot = await mkdtemp(path.join(tmpdir(), 'hivecast-sdk-cli-uat.'));
const proofWorkspace = await createProofWorkspace(proofRoot); const proofWorkspace = await createProofWorkspace(proofRoot);
workspaceDir = proofWorkspace.workspaceDir; workspaceDir = proofWorkspace.workspaceDir;
const tarballDir = path.join(proofRoot, 'tarballs'); const tarballDir = path.join(proofRoot, 'tarballs');
@ -271,7 +271,7 @@ async function main() {
); );
await writeFile(path.join(toolingDir, 'package.json'), JSON.stringify({ await writeFile(path.join(toolingDir, 'package.json'), JSON.stringify({
name: 'matrix-sdk-cli-uat-tooling', name: 'hivecast-sdk-cli-uat-tooling',
version: '0.0.0', version: '0.0.0',
private: true, private: true,
type: 'module', type: 'module',
@ -424,7 +424,7 @@ async function main() {
run('pnpm', ['pack', '--pack-destination', packageTarballDir], { cwd: authorDir, stdio: 'pipe' }); run('pnpm', ['pack', '--pack-destination', packageTarballDir], { cwd: authorDir, stdio: 'pipe' });
const authorPackageTarball = await findOnlyTarball(packageTarballDir, 'generated author package'); const authorPackageTarball = await findOnlyTarball(packageTarballDir, 'generated author package');
await writeFile(path.join(packageConsumerDir, 'package.json'), JSON.stringify({ await writeFile(path.join(packageConsumerDir, 'package.json'), JSON.stringify({
name: 'matrix-sdk-package-manager-consumer', name: 'hivecast-sdk-package-manager-consumer',
version: '0.0.0', version: '0.0.0',
private: true, private: true,
type: 'module', type: 'module',