macOS
Native builds for Apple Silicon, from the one-line installer or from Homebrew.
aarch64create a local report archive · share it privately with the support team
will it work with my stack?
coverage
Shell commands run inside the sandbox your operating system provides,
and squeezy doctor reports the one your machine is actually
using. What it enforces differs by platform. On Windows the default tier
limits where a command may write and needs no admin rights; full read
and network isolation is a stronger tier you turn on once with
squeezy doctor --sandbox-setup.
The permissions docs say what each tier
enforces.
Terminal first, not terminal only. The same agent runs inside editors that speak the Agent Client Protocol (ACP), embeds in your own application through the Rust, TypeScript, and Python SDKs, and runs a single prompt with no interface at all for scripts and CI. The editors, SDKs & CI docs cover all three.
Native builds for Apple Silicon, from the one-line installer or from Homebrew.
aarch64Static binaries for x86_64 and ARM64, from the one-line installer. Homebrew covers x86_64, and a Rust toolchain can build from source instead.
x86_64 + aarch64An x86_64 build through winget or a downloadable archive. The sandbox enforces filesystem writes by default; read isolation and network blocking need a one-time elevated setup.
x86_64The install command for each platform is on /install.
For these, squeezy reads your repository on your machine and navigates it by structure: where something is declared, what calls it, what a change touches. The general-purpose languages are below, and they are the ones the benchmark measures. Markup, configuration, and documentation formats are covered too. Files outside the set still work through search, targeted reads, and the build and test commands you already run.
Packages, imports, classes, functions, decorators, and inheritance.
ES modules, CommonJS, functions, classes, exports, and JSX.
Types, interfaces, imports, generics, classes, and TSX.
Packages, Maven/Gradle projects, classes, members, and inheritance.
Modules, packages, structs, interfaces, receivers, imports, and tests.
Cargo workspaces, crates, traits, impls, modules, and tests.
Solutions, namespaces, usings, partial types, attributes, and members.
Headers, namespaces, classes, templates, methods, and overload-heavy code.
Headers, includes, structs, functions, typedefs, macros, and references.
Classes, modules, mixins, singleton methods, accessors, and require paths.
Namespaces, Composer-style code, traits, enums, attributes, and methods.
SwiftPM modules with enforced visibility, protocols, actors, structs, extensions, and property wrappers.
Packages, Gradle projects, classes, objects, companions, and extensions.
Packages, traits, objects, case classes, enums, and extension methods.
Pubspec package identity, libraries, parts, classes, mixins, extensions, and named arguments in Flutter-style projects.
And 26 more, including HTML, CSS, YAML, SQL, Protobuf, HCL/Terraform, and Markdown. The full list, grouped, is in the language docs.
Point squeezy at any of 27 providers: vendor APIs and subscription sign-ins, aggregators that put many models behind one key, cloud platforms and dedicated model hosts, and runtimes on your own machine. One of them is a generic preset you point at any endpoint that speaks the OpenAI chat-completions API. squeezy reads your key from an environment variable, or from an owner-only file in its own folder on your machine.
OpenAI, Anthropic, and Google Gemini API by API key. A ChatGPT or GitHub Copilot subscription signs in instead of billing a key.
API key or sign-inOne key, many models: OpenRouter, Vercel AI Gateway, PortKey, and Cloudflare AI Gateway.
one key, many modelsYour cloud's own credentials on AWS Bedrock, Azure OpenAI, and Google Vertex AI. Dedicated hosts: Groq, Cerebras, DeepSeek, Together AI, Fireworks AI, DeepInfra, Baseten, Mistral AI, xAI, and Cloudflare Workers AI.
cloud credentials or API keyRun locally with Ollama, LM Studio, vLLM, or llama.cpp, or point the OpenAI-compatible preset at any other endpoint.
local or customThe environment variable or sign-in each provider uses is in the provider docs.
squeezy builds the report itself, so your version, your platform, and what actually ran arrive with it. Each path is built on your machine and shown to you first. Nothing is uploaded until you send it.
If squeezy will not start at all, run squeezy doctor first.
It checks your settings, providers, storage, and sandbox, and prints one
line per check: what passed, what warned, and what failed.
/feedbackFor confusing wording, a rough edge, or a feature request. It sends the note you typed and nothing from the session: no transcript, no files. Secret-shaped values in the note are masked, and the send stays locked until you have read the exact outgoing text to the end.
/reportFor a run that failed or answered badly. squeezy packs the session into an archive on your machine, then lists every part of it with its size and how many values were masked. Choose Create archive, then share the ZIP privately with the developer support team using the appropriate channel. Nothing is uploaded.
squeezy reportFor a saved Session or a startup failure. Use --latest for the latest Session or --startup without opening a Session. --dry-run prints the same listing and writes nothing. With no flag the archive is written to a file and its path printed, which is the copy you attach to a ticket yourself.
the report flow
/feedback the /cost panel confused me
/feedback send
/report
squeezy sessions list
squeezy report <session_id> --dry-run
squeezy report <session_id> --output problem.zip
The archive includes your conversation and tool activity with
secret-shaped values masked. Use the interactive content groups or
--exclude conversation to leave content out. The manifest
explains missing evidence. Share the ZIP privately with the developer
support team using the appropriate channel. Managed reports, diagnostic
logs, and inactive Session history expire after 30 days by default;
a file saved to an explicit output path is yours to keep.