From banyandb-bydbql
Upgrades Go/Node.js vendor dependencies, syncs tool versions in version.mk, and removes stale binaries. Use for dependency upgrades or vendor updates.
How this skill is triggered — by the user, by Claude, or both
Slash command
/banyandb-bydbql:vendor-updateThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Run the vendor-update Make target across all projects:
Run the vendor-update Make target across all projects:
make vendor-update
This runs go get -u ./... and go mod tidy -compat=1.25 in each project directory (ui, banyand, bydbctl, mcp, fodc/agent, fodc/proxy, pkg, test).
After the vendor upgrade completes, run make license-dep to update any license-related files that may have changed due to new or updated dependencies:
make license-dep
This ensures license headers and dependency license files stay in sync with the upgraded vendors.
After upgrading, compare go.mod dependency versions against scripts/build/version.mk to find any tools whose library version was bumped and may need their tool version updated.
Read scripts/build/version.mk and go.mod in parallel. For each tool version variable, check if the corresponding library in go.mod was upgraded:
| version.mk variable | Binary | go.mod package |
|---|---|---|
BUF_VERSION | bin/buf | github.com/bufbuild/buf (if present) |
PROTOC_GEN_GO_VERSION | bin/protoc-gen-go | google.golang.org/protobuf |
PROTOC_GEN_GO_GRPC_VERSION | bin/protoc-gen-go-grpc | google.golang.org/grpc |
PROTOC_GEN_DOC_VERSION | bin/protoc-gen-doc | github.com/pseudomuto/protoc-gen-doc (if present) |
GRPC_GATEWAY_VERSION | bin/protoc-gen-grpc-gateway | github.com/grpc-ecosystem/grpc-gateway/v2 |
PROTOC_GEN_VALIDATE_VERSION | bin/protoc-gen-validate | github.com/envoyproxy/protoc-gen-validate |
GOLANGCI_LINT_VERSION | bin/golangci-lint | (no go.mod entry — only in version.mk) |
REVIVE_VERSION | bin/revive | (no go.mod entry — only in version.mk) |
LICENSE_EYE_VERSION | bin/license-eye | (no go.mod entry — only in version.mk) |
MOCKGEN_VERSION | bin/mockgen | go.uber.org/mock |
GINKGO_VERSION | bin/ginkgo | github.com/onsi/ginkgo/v2 |
GOVULNCHECK_VERSION | bin/govulncheck | golang.org/x/vuln |
BPF2GO_VERSION | (used in bpf2go.mk) | github.com/cilium/ebpf |
Only update version.mk if the library version in go.mod has changed and the tool version should follow. Many tools (golangci-lint, revive, license-eye) are not in go.mod — their versions only change when explicitly updated in version.mk, not from make vendor-update.
If a tool version should be bumped (library changed and tool version needs to match), update scripts/build/version.mk using the Edit tool. Keep the format exactly — e.g., PROTOC_GEN_GO_VERSION := v1.36.11.
When version.mk is updated, remove the corresponding old binary from bin/:
rm bin/<binary-name>
This ensures the next build/install of that tool fetches the correct new version.
npx claudepluginhub apache/skywalking-banyandb --plugin banyandb-bydbqlAudits and updates Go module dependencies using go toolchain and govulncheck, with semver-aware patching and vulnerability checks.
Coordinates safe dependency upgrades across multiple package managers (npm, pip, cargo, maven, gradle), handling lockfiles, version conflicts, vulnerability patches, and migration risk.
Manages Go dependencies: go.mod, upgrades, vulnerability scanning, conflict resolution, and Dependabot/Renovate setup. Use when adding, removing, or auditing Go packages.