mirror of
https://github.com/NanmiCoder/cc-haha
synced 2026-07-16 13:03:31 +08:00
31 lines
1.1 KiB
Bash
Executable File
31 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
#Get your current working directory and export it as an environment variable.
|
|
export CALLER_DIR="${CALLER_DIR:-$(pwd -W 2>/dev/null || pwd)}"
|
|
|
|
cd "$ROOT_DIR"
|
|
|
|
# When spawned by the desktop/web server as a child CLI process,
|
|
# skip .env loading — the server has already set the correct env
|
|
# via cc-haha/settings.json. Loading .env would re-inject stale
|
|
# provider keys (e.g., a MiniMax key as ANTHROPIC_API_KEY) that
|
|
# override the active provider config.
|
|
if [[ "${CC_HAHA_SKIP_DOTENV:-0}" == "1" ]]; then
|
|
# Bun auto-loads .env by default; explicitly point to /dev/null to suppress.
|
|
ENV_FILE_FLAG="--env-file=/dev/null"
|
|
elif [[ -f .env ]]; then
|
|
ENV_FILE_FLAG="--env-file=.env"
|
|
else
|
|
ENV_FILE_FLAG=""
|
|
fi
|
|
|
|
# Force recovery CLI (simple readline REPL, no Ink TUI)
|
|
if [[ "${CLAUDE_CODE_FORCE_RECOVERY_CLI:-0}" == "1" ]]; then
|
|
exec bun --feature=TRANSCRIPT_CLASSIFIER $ENV_FILE_FLAG ./src/localRecoveryCli.ts "$@"
|
|
fi
|
|
|
|
# Default: full CLI with Ink TUI
|
|
exec bun --feature=TRANSCRIPT_CLASSIFIER $ENV_FILE_FLAG ./src/entrypoints/cli.tsx "$@"
|