harness: fix py-vs-python3 doc gap — add py.sh resolver, repoint skill/command docs
The skill/command DOCS instructed Claude to run a bare `py ...`, which is the Windows py-launcher — absent on Linux/macOS (exit 127, hit on GURU-KALI). A blind py->python3 swap is wrong too: python3 is a broken MS Store shim on some Windows boxes where `py` is the correct launcher. Fix mirrors the resolution the .sh skill scripts already do: - New .claude/scripts/py.sh: picks the interpreter that actually RUNS — identity.json python.command first, then py -> python3 -> python, each validated with `-c 'import sys'` so the MS Store stub is skipped. exec's it. - Repointed all DOC invocations (10 files, ~70 sites) from `py ...` to `bash "$CLAUDETOOLS_ROOT/.claude/scripts/py.sh" ...` (incl. the `py -c` and `py -` heredoc forms in checkpoint.md / mailbox.md). - Left the .sh skill scripts untouched — they already resolve py/python/python3. - errorlog.md: marked the GURU-KALI entry RESOLVED. Depends on CLAUDETOOLS_ROOT (seeded by ensure-settings-env.py); py.sh also self-resolves the repo root via git/cwd as a fallback. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -25,9 +25,9 @@ work with `python`/`python3`.
|
||||
|
||||
```bash
|
||||
# from the scripts dir, or pass full paths
|
||||
py "$CLAUDETOOLS_ROOT/.claude/skills/b2/scripts/b2.py" status
|
||||
py "$CLAUDETOOLS_ROOT/.claude/skills/b2/scripts/b2.py" buckets
|
||||
py "$CLAUDETOOLS_ROOT/.claude/skills/b2/scripts/b2.py" usage --json
|
||||
bash "$CLAUDETOOLS_ROOT/.claude/scripts/py.sh" "$CLAUDETOOLS_ROOT/.claude/skills/b2/scripts/b2.py" status
|
||||
bash "$CLAUDETOOLS_ROOT/.claude/scripts/py.sh" "$CLAUDETOOLS_ROOT/.claude/skills/b2/scripts/b2.py" buckets
|
||||
bash "$CLAUDETOOLS_ROOT/.claude/scripts/py.sh" "$CLAUDETOOLS_ROOT/.claude/skills/b2/scripts/b2.py" usage --json
|
||||
```
|
||||
|
||||
Transport auto-selects: uses `httpx` if installed, otherwise stdlib `urllib`
|
||||
@@ -95,7 +95,7 @@ into tickets/logs. Destructive calls are NEVER retried automatically.
|
||||
## Common commands
|
||||
|
||||
```bash
|
||||
B2="py $CLAUDETOOLS_ROOT/.claude/skills/b2/scripts/b2.py"
|
||||
B2="bash "$CLAUDETOOLS_ROOT/.claude/scripts/py.sh" $CLAUDETOOLS_ROOT/.claude/skills/b2/scripts/b2.py"
|
||||
|
||||
# Status / inventory
|
||||
$B2 status
|
||||
@@ -175,7 +175,7 @@ that would exceed that.
|
||||
### Commands
|
||||
|
||||
```bash
|
||||
B2="py $CLAUDETOOLS_ROOT/.claude/skills/b2/scripts/b2.py"
|
||||
B2="bash "$CLAUDETOOLS_ROOT/.claude/scripts/py.sh" $CLAUDETOOLS_ROOT/.claude/skills/b2/scripts/b2.py"
|
||||
|
||||
# 1. READ-ONLY: see the bucket's current lifecycle rules + revision
|
||||
$B2 lifecycle ACG-Internal
|
||||
|
||||
Reference in New Issue
Block a user