Migrating from Neuralgentics v0.6.x to v0.7.0+¶
Why the Change¶
Neuralgentics v0.7.0 dropped the standalone TUI and transitioned to an OpenCode plugin. This change was driven by:
- Better integration: OpenCode provides a unified interface for agents, plugins, and tools.
- Reduced maintenance: No more platform-specific binaries (5-target build matrix).
- Enhanced functionality: Access to OpenCode's MCP broker, LSP, and formatter ecosystem.
- Simplified install: Single
npx @veedubin/neuralgentics --initcommand instead of curl-bash.
What Changed¶
| Feature | v0.6.x (Standalone TUI) | v0.7.0+ (OpenCode Plugin) |
|---|---|---|
| Install Method | curl -fsSL .../install.sh | bash | npx @veedubin/neuralgentics --init |
| Command | neuralgentics | opencode (OpenCode loads the plugin) |
| Backend | Downloaded binary | Container (neuralgentics-backend) |
| Sidecar | Systemd service or PID-file wrapper | Container (neuralgentics-sidecar) |
| Database | Podman container (neuralgentics-pg) | Container (neuralgentics-postgres) |
| Config | ~/.neuralgentics/.env | .opencode/opencode.json (deep-merged) |
| Memory | Go backend binary | Go backend container (same schema as memini-ai) |
Step-by-Step Migration¶
1. Remove the Old Install¶
# Remove the old install directory (default: ~/.neuralgentics)
rm -rf ~/.neuralgentics/
# If you installed to a custom path, remove that directory instead
# rm -rf /path/to/your/install
2. Bootstrap Your Project with the New Plugin¶
The --init command will: - Download the latest @veedubin/neuralgentics release tarball. - Back up your existing .opencode/ directory (if any). - Deep-merge the plugin's opencode.json with your existing config. - Offer to set up the container stack (PostgreSQL + sidecar + backend).
3. Start OpenCode¶
OpenCode will load the Neuralgentics plugin automatically.
Container Changes¶
The memory backend is now a 3-container stack (PostgreSQL + sidecar + backend) instead of a single downloaded binary. After running --init:
# Start the containers (if you chose to set them up)
docker compose -f ~/.neuralgentics/docker-compose.yml up -d
Key Differences:¶
- Port: The PostgreSQL container now runs on port 6000 (was 5434 in v0.6.x).
- Credentials: Default credentials are
neuralgentics:neuralgentics(same as v0.6.x, but now consistent with memini-ai). - SSL: SSL is enabled by default (self-signed cert generated during
--init). - Data Directory: Data is stored in a Docker volume, not on the host filesystem.
Config Changes¶
opencode.json: The plugin deep-merges its config with your existing.opencode/opencode.json. Your customizations (models, MCP servers, etc.) are preserved..env: The--initcommand respects your existing.envfile. If it's missing, it copiescompose.example.envand stops (lets you edit credentials before starting the containers).
Removed Features¶
- Standalone TUI binary: The
neuralgenticscommand no longer exists. Useopencodeinstead. - PyPI package: The
neuralgentics-clipackage on PyPI was a mistake and has been removed. - Curl-bash installer: The
scripts/install.shinstaller is deprecated. Usenpx @veedubin/neuralgentics --initinstead. - 5-platform build matrix: The plugin is platform-independent (single npm package).
Troubleshooting¶
Issue: OpenCode Doesn't Load the Plugin¶
- Ensure
@veedubin/neuralgenticsis listed in.opencode/opencode.jsonunder"plugins". - Run
npm install @veedubin/neuralgenticsif you installed manually.
Issue: Containers Won't Start¶
- Check if
neuralgentics-postgresis already running:docker ps --filter name=neuralgentics-postgres. - If the container exists but is stopped, start it:
docker start neuralgentics-postgres. - If the container doesn't exist, recreate it:
docker compose -f ~/.neuralgentics/docker-compose.yml up -d.
Issue: DB Connection Refused¶
- Ensure the container is running:
docker ps --filter name=neuralgentics-postgres. - Check the port:
docker port neuralgentics-postgres 5432should return0.0.0.0:6000. - Verify credentials in
.envordocker-compose.yml.
Issue: SSL Errors¶
- The backend defaults to
sslmode=require. If you see SSL errors, ensure: - The
neuralgentics-postgrescontainer was started with SSL enabled. - The self-signed cert is mounted correctly (check
docker-compose.yml).
Migrating from BGE-Large to BGE-M3 (v0.11.0+)¶
If you upgraded from a pre-v0.11.0 install, your existing memories were embedded with BGE-Large. The v0.11.0 default is BGE-M3, which produces different vectors. Re-embed your memories:
# After upgrading to v0.11.0
npx @veedubin/neuralgentics migrate-embeddings --from bge-large --to bge-m3
This takes ~2-5 minutes for ~80 memories. Old vectors are preserved in embedding_legacy columns for 30 days (or until you drop them).
If you want to keep using BGE-Large, pass --embed-model bge-large to the init CLI or set NEURALGENTICS_EMBED_MODEL=bge-large in .env. No migration needed.
What to Do If You're Stuck¶
Open an issue at: