squeezr-ai 1.16.0 → 1.16.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -3
- package/bin/squeezr.js +6 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
**Token compression proxy for AI coding CLIs.** Sits between your CLI and the API, compresses context on the fly, saves thousands of tokens per session.
|
|
4
4
|
|
|
5
|
-
[](https://www.npmjs.com/package/squeezr-ai) [](LICENSE) [](https://www.npmjs.com/package/squeezr-ai) [](LICENSE) []()
|
|
6
6
|
|
|
7
7
|
## Supported CLIs
|
|
8
8
|
|
|
@@ -24,7 +24,7 @@ squeezr start
|
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
`squeezr setup` handles everything automatically:
|
|
27
|
-
- Sets `ANTHROPIC_BASE_URL`, `GEMINI_API_BASE_URL`, `HTTPS_PROXY`, `NODE_EXTRA_CA_CERTS
|
|
27
|
+
- Sets `ANTHROPIC_BASE_URL`, `GEMINI_API_BASE_URL`, `HTTPS_PROXY`, `NODE_EXTRA_CA_CERTS`
|
|
28
28
|
- Registers auto-start (launchd on macOS, systemd on Linux, Task Scheduler/NSSM on Windows)
|
|
29
29
|
- **Windows:** imports the MITM CA into the Windows Certificate Store (user-level, no admin required) so Rust-based CLIs like Codex trust the proxy's TLS certificates
|
|
30
30
|
- **macOS/Linux:** generates a CA bundle at `~/.squeezr/mitm-ca/bundle.crt` for `SSL_CERT_FILE`
|
|
@@ -92,6 +92,8 @@ Compression aggressiveness scales with context window usage:
|
|
|
92
92
|
|
|
93
93
|
Codex uses WebSocket over TLS to `chatgpt.com` with OAuth authentication — it cannot be proxied via `OPENAI_BASE_URL`. Squeezr runs a TLS-terminating MITM proxy on port 8081 that intercepts and compresses WebSocket frames. See [CODEX.md](CODEX.md) for the full technical breakdown.
|
|
94
94
|
|
|
95
|
+
The MITM proxy **only intercepts `chatgpt.com`** traffic. All other HTTPS requests (npm, git, curl, etc.) pass through as a transparent TCP tunnel — no certificate needed, no interference.
|
|
96
|
+
|
|
95
97
|
## Configuration
|
|
96
98
|
|
|
97
99
|
### Global config: `squeezr.toml` (next to the binary)
|
|
@@ -169,7 +171,7 @@ Squeezr uses cheap/free models for AI compression (the deterministic layer is pu
|
|
|
169
171
|
|
|
170
172
|
```bash
|
|
171
173
|
squeezr setup # configure env vars, auto-start, CA trust
|
|
172
|
-
squeezr start # start the proxy (
|
|
174
|
+
squeezr start # start the proxy (auto-restarts if version mismatch after update)
|
|
173
175
|
squeezr stop # stop the proxy
|
|
174
176
|
squeezr status # check if proxy is running
|
|
175
177
|
squeezr logs # show last 50 log lines
|
package/bin/squeezr.js
CHANGED
|
@@ -164,14 +164,17 @@ function stopProxy() {
|
|
|
164
164
|
} else {
|
|
165
165
|
execSync(`kill -9 ${pid}`, { stdio: 'pipe' })
|
|
166
166
|
}
|
|
167
|
-
console.log(`Squeezr stopped (pid ${pid} on port ${p})`)
|
|
168
167
|
killed = true
|
|
169
168
|
} catch {}
|
|
170
169
|
}
|
|
171
170
|
} catch {}
|
|
172
171
|
}
|
|
173
|
-
if (
|
|
174
|
-
console.log(`Squeezr
|
|
172
|
+
if (killed) {
|
|
173
|
+
console.log(`Squeezr stopped`)
|
|
174
|
+
console.log(` HTTP proxy (Claude/Aider/Gemini): http://localhost:${port}`)
|
|
175
|
+
console.log(` MITM proxy (Codex): http://localhost:${mitmPort}`)
|
|
176
|
+
} else {
|
|
177
|
+
console.log(`Squeezr is not running`)
|
|
175
178
|
}
|
|
176
179
|
}
|
|
177
180
|
|
package/package.json
CHANGED