Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [20.11, 22]
node-version: [22.19, 24]
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,12 @@ each entry calls out what a host has to update.

### Changed

- **Breaking: Node.js 22.19 or newer is required (was 20.11).** Node 20 has
been end of life since April 2026, and newer dependencies such as `undici`
8 need Node 22.19. Every package's `engines.node` is `>=22.19`, and CI runs
on Node 22.19 and 24. A host on an older Node upgrades Node; nothing else
changes.

- **Claude Code's in-process subagent is no longer refused.** `Task` leaves
the `--disallowedTools` list of `CLAUDE_CODE_MCP_HARNESS`. A subagent runs in
the same process under the same identity and MCP configuration, so its calls
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ opening a public issue.

Requirements:

- Node.js 20.11 or newer (22.5 or newer to run the reference host example);
- Node.js 22.19 or newer;
- pnpm 9.15.

```bash
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,14 +67,14 @@ The longer argument, with a worked request, is in
npm install @aicoo/sharedos
```

Node.js 20.11 or newer; the packages are ESM-only. The
Node.js 22.19 or newer; the packages are ESM-only. The
[quickstart](docs/quickstart.md) is two working programs, the kernel embedded in
your process and the same kernel over HTTP, written against the published
packages.

### Build from Source

Requirements: Node.js 20.11 or newer and pnpm 9.15.
Requirements: Node.js 22.19 or newer and pnpm 9.15.

```bash
git clone https://github.com/systemind-team/SharedOS.git
Expand All @@ -92,7 +92,7 @@ integration writes those before anything runs. The
[reference host](examples/reference-host/README.md) is a working one: a
filesystem `files` provider covering all twelve actions, SQLite stores for
bounded uses, revocation, namespace settings and audit, and a driver over a live
model. It needs Node.js 22.5 or newer for `node:sqlite`.
model.

## How a turn runs

Expand Down
2 changes: 1 addition & 1 deletion docs/integrations/pact.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ Transport differences cannot alter grants or inject hidden authority.

Each tick must include an explicit target-agent execution grant in its isolated
world. PACT must also upgrade its runtime from Node 18 to the SharedOS minimum
of Node 20.11 before integration.
of Node 22.19 before integration.

## Failure handling

Expand Down
7 changes: 3 additions & 4 deletions docs/quickstart.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ in this page requires a clone of this repository.
npm install @aicoo/sharedos
```

Node.js 20.11 or newer. The packages are ESM-only. Every SharedOS package is a
Node.js 22.19 or newer. The packages are ESM-only. Every SharedOS package is a
`1.0.0` preview, so pin an exact version if you need reproducibility.

## What you have to bring
Expand All @@ -25,8 +25,7 @@ three things, and only the first is required to see anything work:

The examples below use an in-memory provider so they run immediately.
[`examples/reference-host`](https://github.com/systemind-team/SharedOS/tree/main/examples/reference-host)
is the same shape backed by a real filesystem and SQLite; it needs Node.js 22.5
or newer for `node:sqlite`, where the packages themselves need 20.11.
is the same shape backed by a real filesystem and SQLite.

## Embedded: authorize one file read

Expand Down Expand Up @@ -322,7 +321,7 @@ const handler = createSharedOSHandler({
mounts anywhere the Fetch API is available:

```ts
// Node 20+, Bun, Deno
// Node 22.19+, Bun, Deno
Deno.serve(handler);
// Next.js app router: app/api/sharedos/[...path]/route.ts
export const GET = handler;
Expand Down
2 changes: 1 addition & 1 deletion docs/release-readiness.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,5 +66,5 @@ vulnerability-reporting contact.
- A dependency-ordered, `next`-tagged release script with package lint, dry-run,
registry collision checks, canonical-content recovery, and a tag-triggered
trusted-publishing workflow.
- Apache-2.0 public prerelease metadata, Node 20/22 CI, type checks, tests,
- Apache-2.0 public prerelease metadata, Node 22/24 CI, type checks, tests,
build, and executable sender-to-receiver quickstart.
2 changes: 1 addition & 1 deletion examples/network-studio/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@
"start": "node server.mjs"
},
"engines": {
"node": ">=20.11"
"node": ">=22.19"
}
}
3 changes: 2 additions & 1 deletion examples/reference-host/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ pnpm example:reference-host

Set `ANTHROPIC_API_KEY` to drive the same turn with a live model instead of the
scripted driver; `ANTHROPIC_BASE_URL` overrides the endpoint. The example needs
Node.js 22.5 or newer, because the stores use `node:sqlite`.
Node.js 22.19 or newer, as SharedOS does; its stores use the built-in
`node:sqlite`.

## What it implements

Expand Down
2 changes: 1 addition & 1 deletion examples/reference-host/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,6 @@
"@aicoo/sharedos-runtime": "workspace:*"
},
"engines": {
"node": ">=22.5"
"node": ">=22.19"
}
}
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"type": "module",
"packageManager": "pnpm@9.15.0",
"engines": {
"node": ">=20.11"
"node": ">=22.19"
},
"scripts": {
"build": "node scripts/clean-generated.mjs && tsc -b --force && node scripts/check-generated.mjs",
Expand Down
2 changes: 1 addition & 1 deletion packages/adapters/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
"registry": "https://registry.npmjs.org"
},
"engines": {
"node": ">=20.11"
"node": ">=22.19"
},
"files": [
"dist/**/*.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/client/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"registry": "https://registry.npmjs.org"
},
"engines": {
"node": ">=20.11"
"node": ">=22.19"
},
"files": [
"dist/**/*.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/conformance/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"registry": "https://registry.npmjs.org"
},
"engines": {
"node": ">=20.11"
"node": ">=22.19"
},
"files": [
"dist/**/*.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/contracts/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"registry": "https://registry.npmjs.org"
},
"engines": {
"node": ">=20.11"
"node": ">=22.19"
},
"files": [
"dist/**/*.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"registry": "https://registry.npmjs.org"
},
"engines": {
"node": ">=20.11"
"node": ">=22.19"
},
"files": [
"dist/**/*.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/http/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"registry": "https://registry.npmjs.org"
},
"engines": {
"node": ">=20.11"
"node": ">=22.19"
},
"files": [
"dist/**/*.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/mcp/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"registry": "https://registry.npmjs.org"
},
"engines": {
"node": ">=20.11"
"node": ">=22.19"
},
"files": [
"dist/**/*.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/os/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"registry": "https://registry.npmjs.org"
},
"engines": {
"node": ">=20.11"
"node": ">=22.19"
},
"files": [
"dist/**/*.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/precedent/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"registry": "https://registry.npmjs.org"
},
"engines": {
"node": ">=20.11"
"node": ">=22.19"
},
"files": [
"dist/**/*.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/runtime/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"registry": "https://registry.npmjs.org"
},
"engines": {
"node": ">=20.11"
"node": ">=22.19"
},
"files": [
"dist/**/*.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/sdk/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"directory": "packages/sdk"
},
"engines": {
"node": ">=20.11"
"node": ">=22.19"
},
"files": [
"dist/**/*.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/testkit/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"registry": "https://registry.npmjs.org"
},
"engines": {
"node": ">=20.11"
"node": ">=22.19"
},
"files": [
"dist/**/*.js",
Expand Down
Loading