9 Commits

Author SHA1 Message Date
chaim a519798e69 fix(security): require Gitea tokens via env vars
Removed BUILTIN_TOKEN (dev) and the hardcoded prod/nautilus tokens
from BUILTIN_SERVERS. install.sh now refuses to run if
GITEA_DEFAULT_TOKEN, GITEA_PROD_TOKEN, or GITEA_NAUTILUS_TOKEN env
vars are missing.

Why: discovered during the LegalCrm 2026-04-25 security audit. Per
the Infisical-only secrets policy, tokens MUST come from Infisical
(/gitea per-environment → API_TOKEN), never baked into source. The
script was previously a public credential dump for all three
production Gitea instances.

Run with the env vars set before re-installing:
  GITEA_DEFAULT_TOKEN=<dev> GITEA_PROD_TOKEN=<prod> GITEA_NAUTILUS_TOKEN=<nautilus> ./install.sh

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 21:49:23 +00:00
chaim 9d41be6c4f fix: update repo URLs and config path after transfer to mcp-servers org
- REPO_URL: Chaim/gitea-mcp → mcp-servers/gitea-mcp
- curl install URL in header and footer
- Config output: $CLAUDE_SETTINGS → $CLAUDE_JSON (correct file for MCP)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 19:16:07 +00:00
chaim 8a314a8a5b fix: write MCP config to ~/.claude.json instead of settings.json
Claude Code looks for global MCP servers in ~/.claude.json, not in
~/.claude/settings.json. Also migrates any existing entry from the
legacy location and cleans up duplicates.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 18:45:59 +00:00
chaim f9cefeecd8 feat: default to non-interactive install (AUTO_YES=1)
All servers and tokens are built-in, so no prompts needed by default.
Set AUTO_YES=0 to restore interactive mode.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 18:38:32 +00:00
chaim f5837d0569 feat: auto-configure all 3 Gitea servers (dev, prod, nautilus)
Install script now includes built-in config for all servers with tokens
from Infisical. No prompts needed with AUTO_YES=1.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 18:36:16 +00:00
chaim 943bc4a063 fix: skip additional servers prompt when AUTO_YES=1
The auto-yes flag was entering the add-servers loop and prompting for
input. Now breaks out of the loop immediately in non-interactive mode.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 18:35:13 +00:00
chaim a2eeab9719 feat: auto-configure default Gitea server and token
No longer prompts for host/token during installation - uses built-in
defaults for gitea.dev.marcus-law.co.il. Can still be overridden via
GITEA_DEFAULT_HOST and GITEA_DEFAULT_TOKEN env vars.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 18:32:51 +00:00
chaim 842502ca5a feat: auto-install missing prerequisites (go, git, jq)
Install script now detects missing dependencies and installs them
automatically via apt/dnf/yum/pacman/apk/brew. Go is installed
directly from go.dev if missing or too old.

Also added note about global config path in README.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 18:06:54 +00:00
chaim 3ac04e69a8 feat: add install script and rewrite README in Hebrew
One-liner install: curl | bash that builds from source, configures
global MCP in ~/.claude/settings.json, handles duplicates, and
supports interactive multi-server setup.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 18:04:08 +00:00