clawql-mcp 3.3.0
[3.3.0] - 2026-04-17
CI
-
Helm / Kustomize:
workflow-scriptsinstalls Helm v3.17.0 and runsmake lint-k8s-manifests(helm-lint+kustomize-local-lint). -
Docker publish (
.github/workflows/docker-publish.yml): daily at 06:00 UTC andworkflow_dispatch— buildsdocker/Dockerfile, pushes toghcr.io/danielsmithdevelopment/clawql-mcpwith tagslatest,nightly,sha-*, andnightly-YYYYMMDDon scheduled runs; GHA BuildKit cache enabled; multi-platformlinux/amd64+linux/arm64(Docker Desktop on Apple Silicon). -
Prettier autofix job on same-repo pull requests: when the Lint & format job fails, applies
npm run formatand pushes a single commitstyle: apply Prettier [prettier-autofix]if there are diffs. Loop guards: job runs only whenlintfailed; skips if the actor isgithub-actions[bot]; skips if[prettier-autofix]is already in HEAD; does not commit when Prettier makes no changes. Fork PRs are excluded (token cannot push to forks).
Changed
-
Helm chart
charts/clawql-mcp:enableCachedefaults totrue(setsCLAWQL_ENABLE_CACHE=1) so the in-processcachetool is registered unless--set enableCache=false. -
make local-k8s-mcp-delete: removesdeployment/clawql-mcp-httpandsvc/clawql-mcp-httpinclawqlso Helm can install after a priorkubectl apply/ Kustomize deploy;local-k8s-docker-desktop.shprints this hint whenhelm upgradefails. -
make local-k8s-up: defaults to Helm (charts/clawql-mcp/values-docker-desktop.yaml).CLAWQL_LOCAL_K8S_INSTALLER=kustomizeusesdocker/kustomize/overlays/local(no Helm).vault.hostPath(Helm) / JSON patch (Kustomize) mount~/.ClawQL.CLAWQL_LOCAL_K8S_BUILD_IMAGE=1buildsclawql-mcp:latestlocally. -
memory_recall: whenCLAWQL_MERKLE_ENABLED=1, JSON includesmerkleSnapshot; whenCLAWQL_CUCKOO_ENABLED=1and embeddings run, vector-ranked chunks are filtered by the Cuckoo membership filter withcuckooVectorChunksDropped(#81). -
Developer tooling: root
npm run format/format:checknow includes the docs site:npm run format --prefix website(Prettier onwebsite/mdx/ts/tsx)..prettierignoreno longer skips all ofwebsite/—only build artifacts (.next/,node_modules/, etc.). CI runsnpm ci --prefix websitebeforeformat:checkso site Prettier plugins resolve. -
Codegen:
pregenerate-graphqlandpregenerate-google-top50-graphqlusetsx(not Bun). Addednpm run graphql→tsx src/graphql-proxy.tsfor the standalone GraphQL proxy documented in the README. -
cachetool: storage is in-process only (no SQLite / noCLAWQL_CACHE_DB_PATH). Durable memory remainsmemory_ingest/memory_recall. -
cachetool: LRU eviction whenCLAWQL_CACHE_MAX_ENTRIESis reached (default 10_000);get/setmove keys to most-recently-used.
Added
- Helm chart
charts/clawql-mcp: deployclawql-mcp-httpwith configurable image (GHCR by default), Service (LoadBalancer / ClusterIP), optional Ingress,/vaultvia PVC orvault.hostPath, gRPC env toggles;values-docker-desktop.yamlformake local-k8s-up;make helm-lint. Docs:docs/helm.md; site:/helm. - Cuckoo filter + Merkle snapshot for hybrid
memory.db(#25, #37): enable withCLAWQL_CUCKOO_ENABLED=1andCLAWQL_MERKLE_ENABLED=1; modulessrc/cuckoo-filter.ts,src/merkle-tree.ts,src/memory-artifacts.ts; helperschunkIdMaybeInMemoryIndex,loadVaultMerkleSnapshotFromDb. Postgres migration 2 addsclawql_cuckoo_chunk_membershipandclawql_vault_merklewhen usingCLAWQL_VECTOR_DATABASE_URL. cacheMCP tool (#75): opt-in viaCLAWQL_ENABLE_CACHE; operationsset/get/delete/list/search; in-processMaponly (not persisted — usememory_ingest/memory_recallfor vault);CLAWQL_CACHE_MAX_VALUE_BYTESper value (default 1 MiB). Implementation:src/clawql-cache.ts.src/clawql-optional-flags.ts: Zod-validated optional feature flags (ENABLE_GRPC,CLAWQL_EXTERNAL_INGEST, plannedCLAWQL_ENABLE_*for cache/schedule/notify/vision);src/external-ingest.tsuses the shared parser forCLAWQL_EXTERNAL_INGEST. See #79.
Documentation
docs/helm.md: Helm install, values table, relationship to Kustomize.docs/benchmarks/archive/: short summaries + script links for archived workflow runs (formerly rootgcp-multi-test.md,multi-provider-test.md,TEST_RESULTS_2026-03-19.md, anddocs/JIRA_WORKFLOW_TOKEN_RESULTS_2026-03-19.md); benchmark stats JSONworkflowOutput.sourcenow points at the archive note.docs/cache-tool.md: canonicalcachevsmemory_*, LRU semantics, env vars, multi-replica; cross-links fromdocs/mcp-tools.md,docs/memory-obsidian.md,docs/cursor-vault-memory.md,docs/deploy-k8s.md; website routes/cacheand/tools(website/src/app/cache,website/src/app/tools) and nav/sitemap updated.docs/deploy-k8s.md: TLS/mTLS/mesh and observability notes for port 50051; gRPC tracking remains on #67.docs/mcp-tools.md: optional tool flags table + pointer toclawql-optional-flags.ts.