Skip to content

chore: rename MemorySidecar to mindD - #65

Merged
mkorbi merged 1 commit into
mainfrom
chore/rename-to-mindd
Aug 22, 2026
Merged

chore: rename MemorySidecar to mindD#65
mkorbi merged 1 commit into
mainfrom
chore/rename-to-mindd

Conversation

@mkorbi

@mkorbi mkorbi commented Aug 22, 2026

Copy link
Copy Markdown
Member

Renames the project from MemorySidecar to mindD, aligning it with its siblings (vibeD, hiveD, routeD).

Naming follows the sibling convention: mindD in prose, mindd in identifiers. hiveD's README already refers to "mindD" as its memory layer, so the name was pre-planned.

Name mapping

Layer Before After
Go module memsidecar github.com/vibed-project/mindD
proto package memsidecar.<block>.v1 mindd.<block>.v1
proto/gen dirs proto/memsidecar, gen/memsidecar proto/mindd, gen/mindd
daemon cmd/memsidecar cmd/mindd
CLI memctl mindctl
wire header x-memsidecar-capability x-mindd-capability
env prefix MEMSIDECAR_* MINDD_*
npm @memsidecar/client @mindd/client
PyPI memsidecar mindd
Python class MemSidecar MindD
Helm chart / image deploy/helm/memsidecar deploy/helm/mindd

251 files changed, +3967/-3967 — insertions exactly equal deletions, as expected for a pure rename.

Compatibility

The gRPC package rename is wire-breaking. This is the free moment to do it:

  • There are no git tags in the repo, so the tag-triggered SDK release workflows (python-sdk-v*, typescript-sdk-v*) have never fired — nothing is published to npm or PyPI.
  • No external consumers.
  • The capability header changed in lockstep across the server, both SDKs and mindctl, so there is no mixed-version window within the repo.

Two traps worth calling out

  • Protobuf stubs were regenerated, not text-substituted. The .pb.go raw descriptors embed length-prefixed package strings (e.g. Z*github.com/..., where * is byte 0x2a = 42). A sed sweep corrupts the prefix. All three stub sets (Go, Python, TypeScript) were regenerated with buf; the prefix is now correctly Z3 (51 chars) for the new path.
  • Markdown code fences can nest inside blockquotes (> ```bash). The prose-branding pass initially rewrote pip install memsidecar into a broken pip install mindD; the fence detector was fixed to honour the > prefix before applying. Identifiers inside code spans and fences are untouched.

Verification

All run against the renamed tree:

  • buf lint clean
  • go build ./..., go vet ./... clean
  • go test -race ./... — all pass
  • golangci-lint run0 issues
  • tsc --noEmit clean; 10/10 TypeScript tests pass
  • from mindd import MindD imports
  • helm lint + helm template OK
  • docker compose config valid
  • Docusaurus build succeeds with no broken-link warnings (note: onBrokenLinks is warn, so links are reported but not gated)
  • Live end-to-end round-trip: server boots on configs/example.yamlmindctl token issuekv put / kv get returned world-from-mindd

Follow-ups (not in this PR)

  • Rename the GitHub repo vibed-project/MemorySidecarmindD. The remote was deliberately left on the old URL, which keeps working (GitHub redirects old→new after a rename).
  • hiveD has 25 stale references — docs, MEMSIDECAR_* in deploy/compose/docker-compose.yaml, and ADR-0004's memsidecar/gen/... import paths. No Go code dependency; separate repo.
  • The docs site url: is now https://mindd.dev — worth confirming that domain is controlled.
  • The encryption-at-rest work has been re-applied on top of this rename (stacked branch, applies with zero conflicts, tests pass) and can follow as its own PR.

🤖 Generated with Claude Code

Aligns the project with its sibling naming convention (vibeD, hiveD,
routeD): a short word plus a capital D, branded camel-D in prose and
lowercase in identifiers.

Identity changes:
  - Go module   memsidecar          -> github.com/vibed-project/mindD
  - proto pkg   memsidecar.<b>.v1   -> mindd.<b>.v1
  - dirs        proto|gen/memsidecar -> proto|gen/mindd
  - daemon      cmd/memsidecar      -> cmd/mindd
  - CLI         memctl              -> mindctl
  - wire header x-memsidecar-capability -> x-mindd-capability
  - env prefix  MEMSIDECAR_         -> MINDD_
  - npm         @memsidecar/client  -> @mindd/client
  - PyPI        memsidecar          -> mindd
  - py class    MemSidecar          -> MindD
  - helm chart  deploy/helm/mindd, image mindd

The gRPC package rename is wire-breaking, but no git tags exist so the
tag-triggered SDK release workflows never fired -- nothing is published
to npm or PyPI and there are no external consumers.

Protobuf stubs (Go, Python, TypeScript) were regenerated rather than
text-substituted; the embedded descriptors carry length-prefixed package
strings that a sed pass corrupts.

Verified: buf lint, go build/vet, go test -race (all pass), golangci-lint
(0 issues), tsc --noEmit + 10/10 TS tests, python import, helm lint +
template, docker compose config, docusaurus build, and a live end-to-end
round-trip (server boot -> mindctl token issue -> kv put/get).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@mkorbi
mkorbi merged commit 9fbb66a into main Aug 22, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant