diff --git a/README.md b/README.md index 67cd2ec..4387597 100644 --- a/README.md +++ b/README.md @@ -8,11 +8,17 @@ Takes a spec generated by ralph-specum, analyzes task dependencies and file owne ## Install -``` -/install-plugin kavanaghpatrick/ralph-parallel -``` +```bash +# 1. Install ralph-specum first (prerequisite) +claude plugin marketplace add tzachbon/smart-ralph +claude plugin install ralph-specum@smart-ralph -Requires [ralph-specum](https://github.com/tzachbon/smart-ralph) to be installed first. +# 2. Install ralph-parallel +claude plugin marketplace add kavanaghpatrick/ralph-parallel +claude plugin install ralph-parallel@ralph-parallel + +# 3. Restart Claude Code +``` ## Commands @@ -44,4 +50,5 @@ Requires [ralph-specum](https://github.com/tzachbon/smart-ralph) to be installed - Claude Code with Agent Teams support - ralph-specum plugin (for spec generation) -- Python 3.10+ (for analysis scripts) +- Python 3.10+ (for analysis scripts) — macOS ships with 3.9; install via `brew install python` +- `jq` (for hook scripts) — install via `brew install jq` diff --git a/plugins/ralph-parallel/.claude-plugin/plugin.json b/plugins/ralph-parallel/.claude-plugin/plugin.json index 94fff0a..b5e96d7 100644 --- a/plugins/ralph-parallel/.claude-plugin/plugin.json +++ b/plugins/ralph-parallel/.claude-plugin/plugin.json @@ -7,9 +7,6 @@ }, "license": "MIT", "homepage": "https://github.com/kavanaghpatrick/ralph-parallel", - "repository": { - "type": "git", - "url": "https://github.com/kavanaghpatrick/ralph-parallel.git" - }, + "repository": "https://github.com/kavanaghpatrick/ralph-parallel", "keywords": ["ralph", "parallel", "agent-teams", "dispatch", "coordination", "worktree"] } diff --git a/plugins/ralph-parallel/hooks/scripts/session-setup.sh b/plugins/ralph-parallel/hooks/scripts/session-setup.sh index 5a63faa..710a38d 100755 --- a/plugins/ralph-parallel/hooks/scripts/session-setup.sh +++ b/plugins/ralph-parallel/hooks/scripts/session-setup.sh @@ -9,6 +9,18 @@ set -euo pipefail +# Pre-flight: check Python 3.10+ and jq are available +if ! command -v jq &>/dev/null; then + echo "ralph-parallel: WARNING — jq not found. Install via: brew install jq" +fi +PYTHON_OK=$(python3 -c "import sys; print('ok' if sys.version_info >= (3, 10) else 'old')" 2>/dev/null) || PYTHON_OK="missing" +if [ "$PYTHON_OK" = "old" ]; then + PY_VER=$(python3 -c "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}')") + echo "ralph-parallel: WARNING — Python 3.10+ required, found $PY_VER. Install via: brew install python" +elif [ "$PYTHON_OK" = "missing" ]; then + echo "ralph-parallel: WARNING — python3 not found. Install via: brew install python" +fi + # Find project root (handles both main repo and worktrees) GIT_ROOT=$(git rev-parse --show-toplevel 2>/dev/null) || exit 0