freebuff 0.0.185 → 0.0.186

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.
Files changed (3) hide show
  1. package/README.md +14 -0
  2. package/launcher.js +7 -5
  3. package/package.json +9 -8
package/README.md CHANGED
@@ -17,6 +17,20 @@ cd ~/my-project
17
17
  freebuff
18
18
  ```
19
19
 
20
+ ### Older Intel Macs (without AVX2)
21
+
22
+ The npm launcher automatically switches to the `darwin-x64-baseline` build if
23
+ the standard Intel binary exits with an illegal-instruction error (`SIGILL`).
24
+ To select that build before the first launch:
25
+
26
+ ```bash
27
+ FREEBUFF_BINARY_TARGET=darwin-x64-baseline freebuff
28
+ ```
29
+
30
+ For manual installation, download `freebuff-darwin-x64-baseline.tar.gz` from the
31
+ [Freebuff CLI releases](https://github.com/CodebuffAI/codebuff-community/releases?q=freebuff-v)
32
+ and keep the extracted `freebuff` binary and `tree-sitter.wasm` together.
33
+
20
34
  ## Why Freebuff?
21
35
 
22
36
  **Choice of leading models** — The regular CLI picker includes GLM 5.3 Flash, DeepSeek, GPT-6 Luna, MiMo 2.6 Flash, MiMo 2.6 Pro, Solar Pro 4, Gemini 3.8 Flash, and Muse Spark 1.2, with GLM 5.3 Flash selected by default.
package/launcher.js CHANGED
@@ -27,6 +27,7 @@ const PLATFORM_TARGET_KEYS = [
27
27
  'linux-x64-baseline',
28
28
  'linux-arm64',
29
29
  'darwin-x64',
30
+ 'darwin-x64-baseline',
30
31
  'darwin-arm64',
31
32
  'win32-x64',
32
33
  'win32-x64-baseline',
@@ -356,6 +357,7 @@ function createLauncher(productConfig) {
356
357
 
357
358
  const BASELINE_FALLBACK_TARGETS = {
358
359
  'linux-x64': 'linux-x64-baseline',
360
+ 'darwin-x64': 'darwin-x64-baseline',
359
361
  'win32-x64': 'win32-x64-baseline',
360
362
  }
361
363
 
@@ -433,8 +435,8 @@ function createLauncher(productConfig) {
433
435
 
434
436
  // Everything else assumes AVX2 — true of every x64 CPU since ~2013.
435
437
  //
436
- // Windows is the case that matters, since it's the only other platform with
437
- // a baseline build. It has no /proc/cpuinfo equivalent we can read without
438
+ // Windows and macOS use the crash fallback rather than a subprocess probe.
439
+ // Windows has no /proc/cpuinfo equivalent we can read without
438
440
  // spawning something, and the probe that used to fill the gap asked
439
441
  // PowerShell to compile a C# stub and P/Invoke
440
442
  // kernel32!IsProcessorFeaturePresent — accurate, but a textbook malware
@@ -490,14 +492,14 @@ function createLauncher(productConfig) {
490
492
 
491
493
  const platformKey = getPlatformKey()
492
494
  // Linux still detects up front (reading /proc/cpuinfo is free). Windows
493
- // cannot without spawning a process, and the PowerShell probe that used to
494
- // do it tripped Defender, so Windows is optimistic-then-corrected: see
495
+ // and macOS are optimistic-then-corrected; the old Windows PowerShell
496
+ // probe tripped Defender. See
495
497
  // detectMachineHasAvx2() and tryFallbackToBaseline(). Once a machine has
496
498
  // failed once, readCachedAvx2() answers here and baseline is chosen up front
497
499
  // exactly as it used to be.
498
500
  //
499
501
  // This assumes every baseline target is gated on AVX2 specifically, which
500
- // holds today (only linux-x64 and win32-x64 have baseline builds, both
502
+ // holds today (linux-x64, darwin-x64 and win32-x64 have baseline builds, all
501
503
  // AVX2-gated). If a baseline build is ever added for a different reason, give
502
504
  // BASELINE_FALLBACK_TARGETS a per-target capability and check that instead.
503
505
  if (BASELINE_FALLBACK_TARGETS[platformKey] && !machineHasAvx2()) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "freebuff",
3
- "version": "0.0.185",
3
+ "version": "0.0.186",
4
4
  "description": "The world's strongest free coding agent",
5
5
  "license": "MIT",
6
6
  "bin": {
@@ -41,12 +41,13 @@
41
41
  "provenance": false
42
42
  },
43
43
  "binaryChecksums": {
44
- "linux-x64": "1e4486baa6be32c5473279b2cbc748b5ce6f703da498def2926a7fb09bff28b1",
45
- "linux-x64-baseline": "4a32c47dd03352b75d3f4e9ad9a9252a1fe828c39e8a718694ef3a79de870b82",
46
- "linux-arm64": "6e3703aafcc1b18ef764eff22f48a7778dddd17a070f6253a5f6085321aae6d6",
47
- "darwin-x64": "90c09d7ca98488e3bc96920f987a98e997ec6c243207626a2854dee7f9419a11",
48
- "darwin-arm64": "95b042a8515c50e4b46b5813a8b99cf8d114b9058f933c59a93543ce28637e29",
49
- "win32-x64": "e170ba58fc9d2db635e6b59a045d65c6df3f889b2ce8147215bbaae38d747347",
50
- "win32-x64-baseline": "0a90478e9520e15f598041e7da495f76913930a3516bcce1b38385f5b971612d"
44
+ "linux-x64": "3235b4a873799bc69ebb7be314506011bdcbd0e74f5459401268f01d7bc908fa",
45
+ "linux-x64-baseline": "97f0445f608a02ec6d3363fa5a367342aa71abfc3328a8a6982691eb21626a81",
46
+ "linux-arm64": "d76cdac794034674d906a34104df9601b8af59581b1b0fc92ee7d3f222729947",
47
+ "darwin-x64": "3746385e2be5521817a7b7db0d2f7112480c315ba2564ab75bd5fa6c92983f0d",
48
+ "darwin-x64-baseline": "c72cc0150a90a17aae2984b51433305212bee0c85b2536525c30b85c75cee488",
49
+ "darwin-arm64": "231d31896225b9cd67b23bd9050a3099ca5e9d6928fea61d0e3e1b2e479c3910",
50
+ "win32-x64": "9374750512e13d38f124a2b7609ae668b283c31632d63067d5e880c177249295",
51
+ "win32-x64-baseline": "461d37dbdfef96d966c393ff5e649a8f2ce1399685f8d186be7359c5def1f74d"
51
52
  }
52
53
  }