Files
pi_mcps/mcp/bigmind/install_proc.sh
Patrick Plate 155d56e8e8 chore: reorganize into polyglot monorepo (workshop)
- Move bigmind/ -> mcp/bigmind/
- Move webscraper/ -> mcp/webscraper/
- Move mss-failsafe/ -> java/mss-failsafe/
- Move Wellmann-Shop/ -> java/wellmann-shop/ (normalize to kebab-case)
- Add .roo/ IDE config files to tracking
- Add plans/REPO_STRATEGY.md (monorepo strategy document)
- Expand .gitignore: Java/Maven, Node/TS, coverage, uv.lock
- Rewrite README.md as navigation index
- Update .roo/mcp.json webscraper path to mcp/webscraper/
2026-04-04 08:51:15 +02:00

99 lines
4.0 KiB
Bash
Executable File

#!/bin/bash
# Installation procedure for mcp-adp-bigmind
# No external API token required — all data is stored locally.
# This script is called by the main install.sh script.
# Parameter: $1 = comma-separated list of IDEs (e.g., "VS Code,IntelliJ")
set -e
SELECTED_IDES="$1"
BASEDIR=$(cd "$(dirname "$0")" && pwd)
MCP_NAME="ADP BigMind"
# ── Validate Python and uv ────────────────────────────────────────────────────
source "$(dirname "$BASEDIR")/helper_scripts/shared_uv_setup.sh"
# ── Install Python dependencies ───────────────────────────────────────────────
if [ ! -d "$BASEDIR/.venv" ]; then
echo "Installing dependencies for $MCP_NAME..." >&2
cd "$BASEDIR"
uv sync >&2
fi
# ── Create the memory DB directory ───────────────────────────────────────────
BIGMIND_DIR="$HOME/.mcp/bigmind"
mkdir -p "$BIGMIND_DIR"
echo "INFO: BigMind DB directory: $BIGMIND_DIR/memory.db" >&2
# ── Write GitHub Copilot instructions (Layer 4) ───────────────────────────────
DEFAULT_WORKSPACE="$(dirname "$BASEDIR")"
echo "" >&2
echo "────────────────────────────────────────────────────────────" >&2
echo "BigMind — GitHub Copilot Instructions Setup" >&2
echo "────────────────────────────────────────────────────────────" >&2
echo "BigMind works best when Copilot is told to use memory tools" >&2
echo "at the start and end of every conversation." >&2
echo "" >&2
echo "Enter your workspace root path where .github/copilot-instructions.md" >&2
echo "should be written (press Enter to use: $DEFAULT_WORKSPACE):" >&2
read -r WORKSPACE_PATH
WORKSPACE_PATH="${WORKSPACE_PATH:-$DEFAULT_WORKSPACE}"
COPILOT_DIR="$WORKSPACE_PATH/.github"
COPILOT_FILE="$COPILOT_DIR/copilot-instructions.md"
BIGMIND_BLOCK="
## BigMind Persistent Memory
You have access to a BigMind persistent memory MCP server.
Rules (mandatory):
- ALWAYS call memory_start_session() as the very first action of every conversation.
- ALWAYS call memory_end_session() as the very last action before closing a conversation.
- Call memory_flag_important() whenever a significant decision, code change, or new
preference is mentioned — do not wait to be asked.
- If asked \"do you remember…\", call memory_search_chunks() or
memory_get_session_detail() before answering from your own knowledge.
"
mkdir -p "$COPILOT_DIR"
if [ -f "$COPILOT_FILE" ]; then
if grep -q "BigMind Persistent Memory" "$COPILOT_FILE" 2>/dev/null; then
echo "INFO: BigMind instructions already present in $COPILOT_FILE — skipping." >&2
else
printf '%s' "$BIGMIND_BLOCK" >> "$COPILOT_FILE"
echo "INFO: BigMind instructions appended to $COPILOT_FILE" >&2
fi
else
printf '# Copilot Instructions\n%s' "$BIGMIND_BLOCK" > "$COPILOT_FILE"
echo "INFO: Created $COPILOT_FILE with BigMind instructions" >&2
fi
echo "" >&2
echo "✅ Copilot instructions written to: $COPILOT_FILE" >&2
echo "────────────────────────────────────────────────────────────" >&2
# ── Output MCP config snippet ─────────────────────────────────────────────────
echo "MCP_NAME=$MCP_NAME"
echo "MCP_SNIPPET="
cat <<EOF
{
"command": "uv",
"args": [
"--directory",
"$BASEDIR",
"run",
"src/server.py"
],
"env": {
"BIGMIND_USER": "$USER"
}
}
EOF
exit 0