squeezr-ai 1.16.23 → 1.17.0

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 CHANGED
@@ -23,13 +23,12 @@ squeezr setup # configures env vars, auto-start, and CA trust
23
23
  squeezr start
24
24
  ```
25
25
 
26
- > **WSL users:** After `squeezr setup` or `squeezr update`, close the terminal and open a new one so the environment variables take effect.
27
-
28
26
  `squeezr setup` handles everything automatically:
29
- - Sets `ANTHROPIC_BASE_URL`, `GEMINI_API_BASE_URL`, `HTTPS_PROXY`, `NODE_EXTRA_CA_CERTS`
27
+ - Sets `ANTHROPIC_BASE_URL`, `GEMINI_API_BASE_URL`, `NODE_EXTRA_CA_CERTS`
28
+ - Installs a shell wrapper (PowerShell on Windows, bash/zsh on Linux/macOS/WSL) that auto-refreshes env vars after `squeezr start/setup/update` — no need to restart the terminal
30
29
  - Registers auto-start (launchd on macOS, systemd on Linux, Task Scheduler/NSSM on Windows)
31
30
  - **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
32
- - **macOS/Linux:** generates a CA bundle at `~/.squeezr/mitm-ca/bundle.crt` for `SSL_CERT_FILE`
31
+ - **macOS/Linux/WSL:** generates a CA bundle at `~/.squeezr/mitm-ca/bundle.crt` for `SSL_CERT_FILE`
33
32
 
34
33
  ## How it works
35
34
 
@@ -188,8 +187,8 @@ squeezr version # print version
188
187
 
189
188
  ## Requirements
190
189
 
191
- - Node.js 18+
192
- - For Codex MITM: `HTTPS_PROXY=http://localhost:8081` (set automatically by `squeezr setup`)
190
+ - Node.js 18+ (compatible with Node.js 24)
191
+ - For Codex MITM: set `HTTPS_PROXY=http://localhost:8081` in the terminal where you run Codex (not set globally to avoid interfering with other tools)
193
192
  - For local compression: [Ollama](https://ollama.ai) with `qwen2.5-coder:1.5b`
194
193
 
195
194
  ## License
package/bin/squeezr.js CHANGED
@@ -157,19 +157,19 @@ function installPowerShellWrapper() {
157
157
  const psProfileDir = path.dirname(psProfilePath)
158
158
  if (!fs.existsSync(psProfileDir)) fs.mkdirSync(psProfileDir, { recursive: true })
159
159
  const psMarker = '# squeezr wrapper'
160
- const psFunction = [
161
- psMarker,
162
- 'function squeezr {',
163
- ' & squeezr.cmd @args',
164
- " if ($args[0] -match '^(start|setup|update)$') {",
165
- " @('ANTHROPIC_BASE_URL','GEMINI_API_BASE_URL','NODE_EXTRA_CA_CERTS') | ForEach-Object {",
166
- " $v = [Environment]::GetEnvironmentVariable($_, 'User')",
167
- " if ($v) { [Environment]::SetEnvironmentVariable($_, $v, 'Process') }",
168
- ' }',
169
- ' }',
170
- '}',
171
- '# end squeezr wrapper',
172
- ].join('\n')
160
+ const psLines = []
161
+ psLines.push(psMarker)
162
+ psLines.push('function squeezr {')
163
+ psLines.push(' & squeezr.cmd @args')
164
+ psLines.push(' if (@("start","setup","update") -contains $args[0]) {')
165
+ psLines.push(' foreach ($k in @("ANTHROPIC_BASE_URL","GEMINI_API_BASE_URL","NODE_EXTRA_CA_CERTS")) {')
166
+ psLines.push(' $val = [Environment]::GetEnvironmentVariable($k, "User")')
167
+ psLines.push(' if ($val) { [Environment]::SetEnvironmentVariable($k, $val, "Process") }')
168
+ psLines.push(' }')
169
+ psLines.push(' }')
170
+ psLines.push('}')
171
+ psLines.push('# end squeezr wrapper')
172
+ const psFunction = psLines.join('\r\n')
173
173
  const existing = fs.existsSync(psProfilePath) ? fs.readFileSync(psProfilePath, 'utf-8') : ''
174
174
  if (!existing.includes(psMarker)) {
175
175
  fs.appendFileSync(psProfilePath, `\n${psFunction}\n`)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "squeezr-ai",
3
- "version": "1.16.23",
3
+ "version": "1.17.0",
4
4
  "description": "AI proxy that compresses Claude Code, Codex, Aider, Gemini CLI and Ollama context windows to save thousands of tokens per session",
5
5
  "keywords": [
6
6
  "claude",