This file provides guidance to coding agents (e.g. Claude Code, claude.ai/code) when working with code in this repository.
Go module go.bytebuilders.dev/client — the Go SDK for the ByteBuilders (b3) cloud platform API. Library only; consumed by ACE-side controllers, internal admin tools, and integration tests.
Note: the GitHub repo is bytebuilders/client-go, but the Go module path is go.bytebuilders.dev/client (no -go). Use the module path in imports.
- Top-level Go files:
client.go(Clientconstructor + HTTP plumbing),auth.go(auth helpers),cluster.go(cluster API),ace_license.go(license endpoints), plus matching_test.gofiles for each. api/— generated request/response types for the b3 API.examples/— usage samples.hack/— codegen / linting helpers.doc.go— package documentation.
This is a library: no binaries, no Docker images.
make ci— full CI pipeline.make fmt,make lint,make unit-tests/make test— standard.make verify— codegen + module-tidy verification.make add-license/make check-license— manage license headers.
Run a single Go test:
go test . -run TestName -v
- Module path is
go.bytebuilders.dev/client(vanity URL, notclient-go); imports must use that. - License: see
LICENSE. Sign off commits (git commit -s); contributions follow the DCO (DCO). - Every exported symbol is API — don't break downstream consumers (
b3, ACE controllers) without coordinating. Clientmethods follow the resource-noun + verb pattern; new resource families go in their own top-level file (cluster.go,auth.go, …) plus matching types underapi/.- The README badges point at
byte.builders— the consumer-facing product brand stays even if internal names drift.