-
Notifications
You must be signed in to change notification settings - Fork 8
Development and Contributing
Justin Pacella edited this page Mar 28, 2026
·
2 revisions
KelvinClaw is structured so contributors can work safely on isolated modules without collapsing boundaries between core contracts, tools, agents, and workflows.
apps/kelvin-hostapps/kelvin-gatewayapps/kelvin-registrycrates/kelvin-corecrates/kelvin-braincrates/kelvin-sdkcrates/kelvin-wasmcrates/kelvin-memory-*scripts/docs/examples/
- keep crates self-contained
- route plugin loading through the SDK, not direct root coupling
- keep network access host-mediated and allowlist-based
- validate configuration and fail closed on missing or invalid values
- keep files and functions small enough to reason about
- isolate side effects from pure logic where practical
Runtime contributors:
scripts/quickstart.sh --mode local
scripts/test-sdk.sh
cargo test --workspace --testsGateway work:
cargo test -p kelvin-gatewayPlugin authoring:
scripts/kelvin-plugin.sh new --id acme.echo --name "Acme Echo" --runtime wasm_tool_v1
scripts/kelvin-plugin.sh test --manifest ./plugin-acme.echo/plugin.json
scripts/kelvin-plugin.sh pack --manifest ./plugin-acme.echo/plugin.jsonDocs and operator surface work should keep the repository docs, runbooks, and wiki in sync.
Priorities are:
- security
- stability
- reliability
- simplicity
- maintainability
Changes should be small, reviewable, and explicit about new trust assumptions or compatibility impact.
Run the relevant focused tests first, then the broader validation lanes needed for the scope of the change. For release-grade confidence, use the full suite from Testing and Validation.