Add scripts/ with install.sh / uninstall.sh#87
Merged
austin-denoble merged 5 commits intomainfrom Apr 30, 2026
Merged
Conversation
scripts/ with install.sh / uninstall.sh
…ll scripts Resolve relative readlink paths to absolute before pattern-matching against BREW_PREFIX, so Homebrew-managed installs are correctly detected on macOS. Attempt unprivileged mkdir before falling through to sudo, so user-owned paths like /Users/austin/.local/bin are never created as root.
…ript Replace grep regex match with awk exact field match to prevent false checksum hits from SBOM or similarly-named files. Strip leading v from user-supplied PINECONE_VERSION to avoid double-encoding in the download URL.
The CLI stores config at ~/.config/pinecone on all platforms, but the uninstall script was looking in ~/Library/Application Support/pinecone on macOS and silently leaving config behind.
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 92dfdb2. Configure here.
check_package_manager was using command -v pc, which resolves the first pc in /Users/austin/google-cloud-sdk/bin:/Users/austin/.sdkman/candidates/java/current/bin:/Users/austin/.sdkman/candidates/gradle/current/bin:/Users/austin/.nvm/versions/node/v22.21.1/bin:/Users/austin/apache-maven-3.9.6/bin:/Users/austin/.local/bin:/Users/austin/.cargo/bin:/usr/local/go/bin:/Users/austin/go/bin:/opt/homebrew/opt/llvm/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/opt/pmk/env/global/bin:/usr/local/go/bin:/Users/austin/.cargo/bin:/Applications/Warp.app/Contents/Resources/bin rather than the binary targeted by PINECONE_INSTALL. Now checks BINARY_PATH directly, matching what remove_binary would remove.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Problem
Currently, the installation and uninstall scripts are in a specific repo: https://github.com/pinecone-io/cli-scripts
It would be more convenient for those scripts to live in this repo so they can be represented publicly close to the source.
Solution
scripts/folder.install.shanduninstall.shto the folder.Type of Change
Test Plan
Nothing to test yet, will need to test the wiring when calling scripts via
https://pinecone.io/install.sh|uninstall.sh.Note
Medium Risk
Adds shell scripts that download and install binaries to system paths and remove user config, which can affect user environments if misconfigured. Risk is limited to installer/uninstaller behavior and does not change CLI runtime code.
Overview
Adds a new
scripts/directory containinginstall.shanduninstall.shfor distributing the Pinecone CLI.install.shauto-detects OS/arch, resolves the latest (or pinned) GitHub release, downloads the appropriate tarball, optionally verifies SHA256 checksums, extractspc, and installs it toPINECONE_INSTALL(default/usr/local/bin) usingsudo/doaswhen needed.uninstall.shremoves the installedpcbinary (withsudo/doasfallback), warns/short-circuits when the binary appears Homebrew-managed, and optionally deletes CLI config under~/.config/pineconeunlessPINECONE_KEEP_CONFIG=1.Reviewed by Cursor Bugbot for commit 5d22e18. Bugbot is set up for automated code reviews on this repo. Configure here.