Install PostgreSQL Command-line tools on Windows

EnterpriseDB (the official provider of Windows binaries) offers standalone ZIP files containing everything you need. This requires no installation wizard and leaves your Windows Registry clean.

1.Download the Binaries:Takes 1 min.

Go to the EnterpriseDB Windows Binaries Download Page. Choose your preferred PostgreSQL version and click the download link next to Windows x86-64.

2.Extract the Folder:Takes 1 min.

Extract the downloaded ZIP file. Inside, you will see a pgsql folder. Move this folder somewhere permanent, like C:\pgsql. Your CLI tools sit right inside C:\pgsql\bin.

3.Add to System PATH:Takes 2 min.

To run tools like psql from any command prompt, add it to your environment variables:

  1. Search for “Environment Variables” in the Windows Start menu.

  2. Click Environment Variables… at the bottom.

  3. Under System variables, select Path and click Edit….

  4. Click New and paste your bin path: C:\pgsql\bin.

  5. Click OK on all windows to save.

4.Verify Installation:Takes 30 seconds.

Open a completely new Command Prompt (cmd) or PowerShell terminal and verify it works by typing:

psql --version
pg_dump --version

 

Install codebase-memory-mcp

One-line install (macOS / Linux):

curl -fsSL https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/main/install.sh | bash

With graph visualization UI:

curl -fsSL https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/main/install.sh | bash -s -- --ui

Windows (PowerShell):

# 1. Download the installer
Invoke-WebRequest -Uri https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/main/install.ps1 -OutFile install.ps1

# 2. (Optional but recommended) Inspect the script
notepad install.ps1

# 3. Run it
.\install.ps1

Options: --ui (graph visualization), --skip-config (binary only, no agent setup), --dir=<path> (custom location).

Restart your coding agent. Say “Index this project” — done.

Graph Visualization UI

If you downloaded the ui variant:

codebase-memory-mcp --ui=true --port=9749

Open http://localhost:9749 in your browser. The UI runs as a background thread alongside the MCP server — it’s available whenever your agent is connected.

Auto-Index

Enable automatic indexing on MCP session start:

codebase-memory-mcp config set auto_index true

When enabled, new projects are indexed automatically on first connection. Previously-indexed projects are registered with the background watcher for ongoing git-based change detection. Configurable file limit: config set auto_index_limit 50000.

Keeping Up to Date

codebase-memory-mcp update

The MCP server also checks for updates on startup and notifies on the first tool call if a newer release is available.

Uninstall

codebase-memory-mcp uninstall

Removes all agent configs, skills, hooks, and instructions. Does not remove the binary or SQLite databases.

Cross-Compile Rust Application for Linux, Windows, and Android Termux on EndeavourOS

sudo pacman -S rustup
rustup default stable
# 🐧 Linux (Already default, but ensuring native architecture toolchain)
rustup target add x86_64-unknown-linux-gnu

# 🪟 Windows (Using GNU/MinGW ABI for easy cross-compiling from Linux)
rustup target add x86_64-pc-windows-gnu

# 🤖 Android / Termux (armv8 / 64-bit ARM)
rustup target add aarch64-linux-android

# 🤖 Android / Termux (armv7 / 32-bit ARM)
rustup target add armv7-linux-androideabi

rustup target add x86_64-unknown-linux-musl
rustup target add wasm32-unknown-unknown

Install System Cross-Linkers

sudo pacman -S mingw-w64-gcc
yay -S android-ndk

Configure Cargo Linkers

Cargo needs to know which linker to pull when you pass a --target flag. Create or edit your global Cargo configuration file at ~/.cargo/config.toml (or create one locally inside your project folder) and add the following mapping:

# ==================== 🪟 WINDOWS TARGET ====================
[target.x86_64-pc-windows-gnu]
linker = "x86_64-w64-mingw32-gcc"
ar = "x86_64-w64-mingw32-ar"

# ==================== 🤖 ANDROID ARMV8 (64-bit ARM) ====================
# This matches: aarch64-linux-android35-clang
[target.aarch64-linux-android]
linker = "/opt/android-ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android35-clang"

# ==================== 🤖 ANDROID ARMV7 (32-bit ARM) ====================
# This matches: armv7a-linux-androideabi35-clang
[target.armv7-linux-androideabi]
linker = "/opt/android-ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi35-clang"

⚠️ Important NDK Note: Double-check the path inside /opt/android-ndk/toolchains/llvm/prebuilt/linux-x86_64/bin/. Depending on the NDK version installed, the API version number suffix at the end of the compiler name (e.g., android34-clang) might vary (like android31-clang). Change it to match what is present in your folder.

Fix the Critical Android Linker Issue

Rust cross-compilation for Android has a historic quirk: even when you specify the custom clang compiler executable above as your linker, Cargo’s internal driver often tries to pass arguments to it using standard GNU tools (strip, ar) rather than the LLVM tools inside the NDK.

To prevent compilation failures when building complex dependency crates, you must let your terminal environment know where the NDK binaries live. Add these exports to your shell script or run them right before building:

export ANDROID_NDK_HOME="/opt/android-ndk"
export PATH="$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin:$PATH"

If you are using the Fish Shell, run these lines instead to set them up:

set -gx ANDROID_NDK_HOME /opt/android-ndk
set -gx PATH $ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin $PATH

Building the App

# 🐧 Build for Linux
cargo build --release

# 🪟 Build for Windows (Generates a .exe in target/x86_64-pc-windows-gnu/release/)
cargo build --target x86_64-pc-windows-gnu --release

# 🤖 Build for Termux 64-bit (armv8)
cargo build --target aarch64-linux-android --release

# 🤖 Build for Termux 32-bit (armv7)
cargo build --target armv7-linux-androideabi --release

 

Disable Windows Wi-Fi Auto-Disconnect on Poor Networks

Using Registry Editor (regedit) – for all Windows Editions

  1. Press Windows + R, type regedit, and press Enter to open the Registry Editor.

  2. Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\NetworkConnectivityStatusIndicator. If the NetworkConnectivityStatusIndicator key does not exist, right-click on the Windows key, select New > Key, and name it exactly that.

  3. In the right pane, right-click and select New > DWORD (32-bit) Value.

  4. Create the following two values and set their data to 1:

    • NoActiveProbe

    • DisablePassivePolling

  5. Restart your computer for the changes to take effect.

Disable WLAN AutoConfig

This method uses a command to forcefully stop the auto-configuration feature.

  1. Search for “Command Prompt”, right-click it, and select Run as administrator.

  2. To disable the automatic configuration, run: netsh wlan set autoconfig enable=no interface="Wi-Fi".

  3. To re-enable it later, simply change no to yes in the same command.

Modify the hosts File

This method is complex and not recommended for the average user as it involves running a local web server to “trick” Windows into thinking the NCSI tests are passing.

  1. Edit the hosts file (C:\Windows\System32\drivers\etc\hosts) and add these lines: 127.0.0.1 www.msftconnecttest.com and 127.0.0.1 www.msftncsi.com.

  2. Run a local web server (like XAMPP) that responds to these requests.

Share your PC’s Internet to the Ubuntu Server through SSH

Best case: your PC can SSH into the Ubuntu server

Run this on your PC:

ssh -N -R 127.0.0.1:1080 ubuntu_user@UBUNTU_SERVER_IP

This creates a SOCKS proxy on the Ubuntu server at:

127.0.0.1:1080

Traffic from the Ubuntu server will go through SSH and exit from your PC’s internet connection.

On the Ubuntu server, test it:

curl --proxy socks5h://127.0.0.1:1080 https://ifconfig.me

Other case: Ubuntu server can SSH into your PC

Then run this on the Ubuntu server:

ssh -N -D 127.0.0.1:1080 pc_user@PC_IP
curl --proxy socks5h://127.0.0.1:1080 https://ifconfig.me

More reliable option: use an HTTP proxy through SSH

Run an HTTP proxy on your Windows PC

For example, if you already use one of these apps:

App Common HTTP / mixed proxy port
v2rayN 10809 or similar
Clash Verge / Clash for Windows 7890
NekoRay / NekoBox usually configurable

Use the app’s HTTP or mixed proxy port.

ssh -N -R 127.0.0.1:1080:127.0.0.1:7890 ubuntu_user@UBUNTU_SERVER_IP

 

Disable SmartScreen via Group Policy in Windows 11

Open the Local Group Policy Editor: Press Windows + R, type gpedit.msc into the Run dialog, and click “OK”.

Navigate to the Policy: Go to the following path in the left panel:
Computer Configuration → Administrative Templates → Windows Components → File Explorer
(Note: In some Windows 11 versions, this may be named “Windows Explorer” instead.)

Open the Policy Setting: In the right panel, double-click “Configure Windows Defender SmartScreen”.

Disable SmartScreen: In the window that opens, select the Disabled option and click Apply and then OK to save the changes.

Force Administrator Global Elevation via Registry in Windows

If you want every single .exe you launch to attempt to run with your full Admin token by default, you can tweak the registry.

Press Win + R, type regedit, and hit Enter.

Navigate to:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

Look for the value EnableLUA.

Double-click it and change the Value Data to 0.

Restart your computer.

Install Rust GNU toolchain on Windows

Install MSYS2

  • Download & Install: Download the installer from the official MSYS2 website and run it. Using the default installation path (e.g., C:\msys64) is highly recommended

pacman -Syu
pacman -S --needed base-devel mingw-w64-x86_64-toolchain

Set Up and Configure Rust

rustup target add x86_64-pc-windows-gnu
rustup toolchain install stable-x86_64-pc-windows-gnu
rustup set default-host x86_64-pc-windows-gnu

Create (or edit) a file at %USERPROFILE%\.cargo\config.toml. Add these lines to explicitly tell Cargo which linker and archiver to use; replace C:\msys64 with your actual MSYS2 path if different

[target.x86_64-pc-windows-gnu]
linker = "C:\\msys64\\mingw64\\bin\\gcc.exe"
ar = "C:\\msys64\\mingw64\\bin\\ar.exe"

 

Install Chocolatey on Windows

Set-ExecutionPolicy Bypass
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))