#!/bin/bash
# Composio wrapper for read-only /root (deployed at /root/.hermes/bin/composio).
# The composio CLI hardcodes config at $HOME/.composio, and /root is a read-only
# mount on this VPS (COMPOSIO_DIR env var is ignored; symlinks in /root fail).
# This wrapper runs composio inside a private mount namespace where $HOME is a
# tmp dir whose .composio is bind-mounted to persistent storage.
# The same pattern works for any tool that hardcodes $HOME paths on this VPS.

PERSIST_DIR=/root/.hermes/composio-home
BIN=/root/.hermes/composio/composio

mkdir -p "$PERSIST_DIR"

exec unshare -rm bash -c "
  mkdir -p /tmp/composio-fakehome/.composio
  mount --bind '$PERSIST_DIR' /tmp/composio-fakehome/.composio
  export HOME=/tmp/composio-fakehome
  export PATH=/root/.hermes/composio:\$PATH
  exec '$BIN' \"\$@\"
" -- "$@"
