Skip to content

Stop hardcoding pip commands in USAGE.md - #37

Merged
fedorov merged 1 commit into
mainfrom
usage-drop-hardcoded-pip
Aug 10, 2026
Merged

Stop hardcoding pip commands in USAGE.md#37
fedorov merged 1 commit into
mainfrom
usage-drop-hardcoded-pip

Conversation

@fedorov

@fedorov fedorov commented Aug 10, 2026

Copy link
Copy Markdown
Member

Follow-up to #36, which removed hardcoded pip install commands from SKILL.md but left three in USAGE.md.

Why

scripts/check_version.py exists to emit an install command that targets the interpreter actually running and pins the vetted version. A bare pip install idc-index defeats both: it may resolve to a different environment than the one importing the package, and it ignores the pin. USAGE.md still handed out pip install idc-index and pip install --user idc-index directly, and justified network egress solely as "so that Claude can install idc-index".

Changes

  • Troubleshooting points at check_version.py and explains why, keeping the PEP 668 note that the old --user bullet carried
  • The Command Execution list no longer names an install command — the distinction it draws is whether the assistant can execute, not what it installs
  • The egress step reads "reach IDC and, when a task needs it, install idc-index", since the API path needs no package

Scope

Deliberately not documenting which access path the skill picks per task. That is the assistant's decision from SKILL.md, and a human configuring the skill cannot act on it — so it would be noise in a setup doc. The one exception is the allowed-domains list, where it genuinely changes what they configure; that was already covered in #36.

README.md is unchanged for the same reason.

Verified: 52 passed across test_structure, test_rest_api, test_mcp_server.

🤖 Generated with Claude Code

The claude.ai setup step justified network egress solely as "so that Claude can
install idc-index", and two other places handed out bare `pip install
idc-index` / `pip install --user idc-index`. Those target whichever interpreter
pip resolves to and ignore the pinned version — the failure scripts/
check_version.py exists to prevent, and which SKILL.md no longer does either.

Point the troubleshooting entry at check_version.py and drop the install
commands from the Command Execution list, which does not need to name one.

Deliberately not documenting which access path the skill picks per task: that
is the assistant's decision from SKILL.md, and a human configuring the skill
cannot act on it. The one exception is the allowed-domains list, where it does
change what they configure.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@fedorov
fedorov merged commit 0841a30 into main Aug 10, 2026
2 checks passed
@fedorov
fedorov deleted the usage-drop-hardcoded-pip branch August 10, 2026 20:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant