This document covers source setup and repository maintenance tasks. For user installation, use Install.
- Node.js
>= 22 pnpm- OpenClaw CLI for end-to-end plugin testing
- a published or locally built
libravdbddaemon for integration tests
Go is only required when building the daemon from a local daemon checkout or regenerating Go gRPC stubs.
pnpm install
pnpm checkpnpm check runs TypeScript validation and unit tests:
tsc --noEmit
tsc -p tsconfig.tests.json && node --test .ts-build/test/unit/*.test.jsPrepare .daemon-bin/libravdbd for local plugin testing:
bash scripts/build-daemon.shSupported inputs:
- installed daemon on
PATH, such asbrew install libravdbd LIBRAVDBD_BINARY_PATH=/path/to/libravdbdLIBRAVDBD_SOURCE_DIR=/path/to/libravdbdto build from a local daemon repo
For daemon-internal Go development and release work, use the separate
libravdbd repository.
pnpm check
npm run test:integrationBenchmark and tuning commands are documented in Performance and tuning.
The plugin imports generated IPC envelope and RPC payload classes from
src/generated/libravdb/ipc/v1/rpc_pb.js.
Those generated files are checked in and copied into dist/generated/ during
npm run build:
npm run buildDo not replace those imports with the older external
@xdarkicex/libravdb-contracts path. The current package resolves generated
types from this repository.
The repo also contains api/proto/intelligence_kernel/v1/kernel.proto and a
small Makefile target for Go gRPC stub generation:
make protoThat target assumes Homebrew-style locations for go, protoc, and the Go
plugins. Adjust the Makefile locally if your toolchain lives elsewhere.
The npm package contains:
README.mdHOOK.mdindex.jscli-metadata.jsopenclaw.plugin.jsonpackage.jsondocs/dist/
The package is connect-only. It does not compile Go code, download models, or manage the daemon process during plugin installation.
The repository uses three CI workflows in .github/workflows/:
| Workflow | Trigger | Purpose |
|---|---|---|
auto-release.yml |
Merged PR with release:* label |
Bumps version (patch/minor/major), updates package.json and openclaw.plugin.json, creates git tag |
github-release.yml |
New v* tag |
Creates a GitHub release |
publish.yml (publish-npm) |
New v* tag or manual dispatch |
Compiles, verifies versions match, publishes to npm |
To publish: merge a PR with a release:patch, release:minor, or release:major
label. The workflow auto-bumps, tags, and publishes.
scripts/auto-install.sh automates daemon + plugin installation. Run it when
setting up a machine that needs the full stack quickly.