@charmland/crush 0.77.0 → 0.78.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.
Files changed (2) hide show
  1. package/README.md +18 -19
  2. package/package.json +25 -25
package/README.md CHANGED
@@ -770,9 +770,9 @@ To add specific models to the configuration, configure as such:
770
770
 
771
771
  ### Local Models
772
772
 
773
- Local models can also be configured via OpenAI-compatible API. Here are two common examples:
774
-
775
- #### Ollama
773
+ Crush can auto-discovers models from local providers. Add a custom provider
774
+ with `type` set to `omlx`, `lmstudio`, `litellm`, or `ollama` and leave out
775
+ the models list. Crush will populate the model list automatically.
776
776
 
777
777
  ```json
778
778
  {
@@ -780,37 +780,36 @@ Local models can also be configured via OpenAI-compatible API. Here are two comm
780
780
  "ollama": {
781
781
  "name": "Ollama",
782
782
  "base_url": "http://localhost:11434/v1/",
783
- "type": "openai-compat",
784
- "models": [
785
- {
786
- "name": "Qwen 3 30B",
787
- "id": "qwen3:30b",
788
- "context_window": 256000,
789
- "default_max_tokens": 20000
790
- }
791
- ]
783
+ "type": "ollama"
792
784
  }
793
785
  }
794
786
  }
795
787
  ```
796
788
 
797
- #### LM Studio
789
+ #### Manual Model Configuration
790
+
791
+ You can still list models explicitly. User-defined models always take
792
+ precedence over discovered ones, and any fields you set won't be overwritten
793
+ by auto-discovery. Auto discovery will run if the model list is empty for any
794
+ `openai-compat` provider or if you pass `"auto_discovery": true` it will merge
795
+ the found models with your hand configured ones.
798
796
 
799
797
  ```json
800
798
  {
801
799
  "providers": {
802
- "lmstudio": {
803
- "name": "LM Studio",
804
- "base_url": "http://localhost:1234/v1/",
805
- "type": "openai-compat",
800
+ "ollama": {
801
+ "name": "Ollama",
802
+ "base_url": "http://localhost:11434/v1/",
803
+ "type": "ollama",
806
804
  "models": [
807
805
  {
808
806
  "name": "Qwen 3 30B",
809
- "id": "qwen/qwen3-30b-a3b-2507",
807
+ "id": "qwen3:30b",
810
808
  "context_window": 256000,
811
809
  "default_max_tokens": 20000
812
810
  }
813
- ]
811
+ ],
812
+ "auto_discovery": true
814
813
  }
815
814
  }
816
815
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@charmland/crush",
3
3
  "type": "module",
4
- "version": "0.77.0",
4
+ "version": "0.78.0",
5
5
  "description": "A powerful terminal-based AI assistant for developers, providing intelligent coding assistance directly in your terminal.",
6
6
  "scripts": {
7
7
  "postinstall": "node install.js",
@@ -27,82 +27,82 @@
27
27
  },
28
28
  "archives": {
29
29
  "darwin-arm64": {
30
- "name": "crush_0.77.0_Darwin_arm64.tar.gz",
31
- "url": "https://github.com/charmbracelet/crush/releases/download/v0.77.0/crush_0.77.0_Darwin_arm64.tar.gz",
30
+ "name": "crush_0.78.0_Darwin_arm64.tar.gz",
31
+ "url": "https://github.com/charmbracelet/crush/releases/download/v0.78.0/crush_0.78.0_Darwin_arm64.tar.gz",
32
32
  "bins": [
33
33
  "crush"
34
34
  ],
35
35
  "format": "tar.gz",
36
36
  "checksum": {
37
37
  "algorithm": "sha256",
38
- "digest": "28cbcfd4f2389e05b29f520275e5192597e9a38234fb7174f3d2563a31d80660"
38
+ "digest": "9734fd4d9333dda96d730c6ba3888db284b3962d43a489440a6ac3931da1580f"
39
39
  },
40
- "wrappedIn": "crush_0.77.0_Darwin_arm64"
40
+ "wrappedIn": "crush_0.78.0_Darwin_arm64"
41
41
  },
42
42
  "darwin-x64": {
43
- "name": "crush_0.77.0_Darwin_x86_64.tar.gz",
44
- "url": "https://github.com/charmbracelet/crush/releases/download/v0.77.0/crush_0.77.0_Darwin_x86_64.tar.gz",
43
+ "name": "crush_0.78.0_Darwin_x86_64.tar.gz",
44
+ "url": "https://github.com/charmbracelet/crush/releases/download/v0.78.0/crush_0.78.0_Darwin_x86_64.tar.gz",
45
45
  "bins": [
46
46
  "crush"
47
47
  ],
48
48
  "format": "tar.gz",
49
49
  "checksum": {
50
50
  "algorithm": "sha256",
51
- "digest": "b7c1f6e75bdb67c909cc78f26ca04f6d050e45aedff3a58c6850931c17099db4"
51
+ "digest": "fae814cff2b22aa0c7a4ee8e522793280ed9f90c645f42c2659143958b24ec5b"
52
52
  },
53
- "wrappedIn": "crush_0.77.0_Darwin_x86_64"
53
+ "wrappedIn": "crush_0.78.0_Darwin_x86_64"
54
54
  },
55
55
  "linux-arm64": {
56
- "name": "crush_0.77.0_Linux_arm64.tar.gz",
57
- "url": "https://github.com/charmbracelet/crush/releases/download/v0.77.0/crush_0.77.0_Linux_arm64.tar.gz",
56
+ "name": "crush_0.78.0_Linux_arm64.tar.gz",
57
+ "url": "https://github.com/charmbracelet/crush/releases/download/v0.78.0/crush_0.78.0_Linux_arm64.tar.gz",
58
58
  "bins": [
59
59
  "crush"
60
60
  ],
61
61
  "format": "tar.gz",
62
62
  "checksum": {
63
63
  "algorithm": "sha256",
64
- "digest": "16fc5415409a0c1deede9d73e27fa7b325755676e4eb4e02dfe662bf9b6b1879"
64
+ "digest": "cd500a3165b18f3fd4b1122d7cf40aaf3f6961c3b37bbd50c4c6fd700a102390"
65
65
  },
66
- "wrappedIn": "crush_0.77.0_Linux_arm64"
66
+ "wrappedIn": "crush_0.78.0_Linux_arm64"
67
67
  },
68
68
  "linux-x64": {
69
- "name": "crush_0.77.0_Linux_x86_64.tar.gz",
70
- "url": "https://github.com/charmbracelet/crush/releases/download/v0.77.0/crush_0.77.0_Linux_x86_64.tar.gz",
69
+ "name": "crush_0.78.0_Linux_x86_64.tar.gz",
70
+ "url": "https://github.com/charmbracelet/crush/releases/download/v0.78.0/crush_0.78.0_Linux_x86_64.tar.gz",
71
71
  "bins": [
72
72
  "crush"
73
73
  ],
74
74
  "format": "tar.gz",
75
75
  "checksum": {
76
76
  "algorithm": "sha256",
77
- "digest": "9a426a2f56a2cf643541260d6c50df960fa8a9e5513fac928248ab90126adf2a"
77
+ "digest": "5823df024a2a290abe94396f18b9f1ebf693ef5cfa642c5687404356502c3a2b"
78
78
  },
79
- "wrappedIn": "crush_0.77.0_Linux_x86_64"
79
+ "wrappedIn": "crush_0.78.0_Linux_x86_64"
80
80
  },
81
81
  "win32-arm64": {
82
- "name": "crush_0.77.0_Windows_arm64.zip",
83
- "url": "https://github.com/charmbracelet/crush/releases/download/v0.77.0/crush_0.77.0_Windows_arm64.zip",
82
+ "name": "crush_0.78.0_Windows_arm64.zip",
83
+ "url": "https://github.com/charmbracelet/crush/releases/download/v0.78.0/crush_0.78.0_Windows_arm64.zip",
84
84
  "bins": [
85
85
  "crush.exe"
86
86
  ],
87
87
  "format": "zip",
88
88
  "checksum": {
89
89
  "algorithm": "sha256",
90
- "digest": "4fc83449d02b36c2fdbf410a82145c46535fdd957c73d3c5eff3a1d1d700f96e"
90
+ "digest": "55ce97983e1c96df9c93fa974446f883d5088275786e4d132e0c0ecea513b76a"
91
91
  },
92
- "wrappedIn": "crush_0.77.0_Windows_arm64"
92
+ "wrappedIn": "crush_0.78.0_Windows_arm64"
93
93
  },
94
94
  "win32-x64": {
95
- "name": "crush_0.77.0_Windows_x86_64.zip",
96
- "url": "https://github.com/charmbracelet/crush/releases/download/v0.77.0/crush_0.77.0_Windows_x86_64.zip",
95
+ "name": "crush_0.78.0_Windows_x86_64.zip",
96
+ "url": "https://github.com/charmbracelet/crush/releases/download/v0.78.0/crush_0.78.0_Windows_x86_64.zip",
97
97
  "bins": [
98
98
  "crush.exe"
99
99
  ],
100
100
  "format": "zip",
101
101
  "checksum": {
102
102
  "algorithm": "sha256",
103
- "digest": "ccd98be007b39d938687c5a281e6cd5bcb432974e8e4433f74d03480bbf10680"
103
+ "digest": "0da8e0f478195ca5520d0244c51349cc7001bfdef3202d7762bf0f39ee3a830e"
104
104
  },
105
- "wrappedIn": "crush_0.77.0_Windows_x86_64"
105
+ "wrappedIn": "crush_0.78.0_Windows_x86_64"
106
106
  }
107
107
  }
108
108
  }