v1.0.0
The first stable release of the Pinecone CLI. pc is now generally available — the public-preview period is over, and the command surface can be considered stable moving forward.
This release consolidates everything since v0.4.6, including a round of pre-v1 finalization: new commands, a normalized flag and command structure, safer destructive operations, and a number of correctness fixes.
New features
pc index import— a new command group for bulk-loading vector data from a storage provider (S3, GCS, Azure) directly into a serverless index:start,list,describe, andcancel. Supports--error-modeand--integration-idfor private buckets. (#91)- Key-based
pc config— a generic, registry-driven configuration interface:pc config get|set|unset|list|describe <key>, with keysapi-key,color, andenvironment. Adds the ability to view all settings at once (list) and inspect a setting's purpose, valid values, and sensitivity (describe). (#90) - Deletion confirmation prompts — destructive delete commands now prompt for confirmation before proceeding, with a
--skip-confirmationflag to bypass them for automation. (#99)
Breaking changes
backup,restore, andcollectionmoved underpc index. These were top-level commands and are nowpc index backup,pc index restore, andpc index collection. Shipped without backwards-compatibility aliases. (#89)pc backup ... → pc index backup ... pc backup restore → pc index restore pc collection ... → pc index collection ...--index-name/--namenormalization.--index-name(-i) now uniformly refers to an existing index, and--name(-n) names a resource being created. (#92)pc index describe|delete|configurerenamed their primary flag from--nameto--index-name.--name/-nstill works as a deprecated alias (prints a warning).- The
--index-nameshorthand changed from-nto-ion all other index commands. - The
-ishorthand was removed from--idonvector query,import cancel, andimport describe.
pc configcommands renamed.get-api-key/set-api-key/set-color/set-environmentare superseded by the key-based interface (pc config set api-key <value>, etc.). The legacy commands still work but are hidden and deprecated, and will be removed in a future release. (#90)pc index record search --top-kis now required. It previously defaulted to10; omitting it now returns a validation error. (#98)--deletion-protectionshorthands removed. The-p(onindex configure) and-d(onindex restore) shorthands were dropped; use the long-form--deletion-protection. (#99)- Delete commands prompt by default. Non-interactive scripts that relied on silent deletes must now pass
--skip-confirmation(or--json, which also bypasses the prompt).pc index vector deleteonly prompts for--all-vectors; targeted--ids/--filterdeletes proceed without a prompt. (#99)
Improvements
--bodyis now the documented primary input flag forrecord upsertandvector upsert;--fileis retained as a hidden alias for now. (#98)pc index configurenow requires--index-nameinstead of silently passing an empty name to the API. (#89)--metricand--dimensionare now correctly forwarded when creating an integrated index (previously accepted but dropped). (#89)- Fixed column alignment in
import,backup, andrestorelist tables, where ANSI color codes inflated column widths. (#91) - Clarified that
--jsonmust be set explicitly — it is not inferred from TTY state (only color is auto-suppressed on non-TTY output). Thelogin,target, andauthinteractive flows are the exception to better support agentic workflows. (#99) --sparse-indiceshelp text now specifies the element type (uint32 array). (#98)
Bug fixes
pc index collection listprinted garbage for the dimension and vector-count columns (string(int32)rendered Unicode runes); now formatted correctly. (#99)pc index configure --jsonwas unreachable because the flag was never registered. (#99)pc auth configure --project-id <unknown>panicked on an unmatched id; now fails with a clear message. (#99)- Corrected several help examples and "no target set" error hints that referenced nonexistent flags or the wrong subcommand. (#99)
Installation
# Install script (macOS / Linux):
curl -fsSL https://pinecone.io/install.sh | sh
# Homebrew (macOS, and Linux on Homebrew 4.5.0+):
brew install --cask pinecone-io/tap/pineconeAlready on a v0.4.x build? No migration is required — brew upgrade --cask pinecone, or re-run the install script to fetch and apply the latest version.
Full changelog: v0.4.6...v1.0.0
Changelog
- e42a719 Add
golangci-lintto codebase & CI (#96) - 0ef1e5e Add
pc index importcommand group (#91) - a2b0329 Clean up
backup,restore, andcollectioncommands (#89) - d4f351d Clean up installation instructions in
README.md(#97) - a754fe1 Final V1 Tweaks (#98)
- 31f652c Normalize
--index-nameflag and shorthand conventions (#92) - 9fa3ef2 Refactor
pc configto support key-based configuration and commands (#90) - 35b3921 Thorough review pass (#99)
- 967e6ae Update .gitignore to exclude harness artifacts (#95)
- dd913da V1 Finalization (#93)
- dc8d8f2 V1 Finalization continued (#94)