clarity-ai 6.5.3 → 6.5.5

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/CHANGELOG.md CHANGED
@@ -2,6 +2,22 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## 6.5.5 (2026-06-06)
6
+
7
+ ### Fix model routing — repo prefix stripped by regex
8
+ - Fixed `MODEL_ROUTES` keys to match `Clarity-flash-weights` / `Clarity-heavy-weights` after `callAI` strips the provider AND repo prefixes
9
+ - `npm install -g clarity-ai@latest` now works out of the box
10
+
11
+ ## 6.5.4 (2026-06-06)
12
+
13
+ ### Docker SDK + Local GGUF Inference
14
+ - All 6 Spaces converted to `sdk: docker` with FastAPI + `llama-cpp-python`
15
+ - Models run locally on each Space (no HF Inference API dependency)
16
+ - Sync FastAPI handlers for compatibility; lazy model load on first request
17
+ - Pre-built CPU wheels for `llama-cpp-python` via `--extra-index-url`
18
+ - Spaces made public — no auth header needed
19
+ - Default model: Qwen2.5-1.5B-Instruct-Q4_K_M (Flash & Heavy)
20
+
5
21
  ## 6.5.2 (2026-06-06)
6
22
 
7
23
  ### CoT + MoE Space Architecture
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "clarity-ai",
3
- "version": "6.5.3",
4
- "description": "CLARITY — terminal AI agent with Clarity Flash 14B",
3
+ "version": "6.5.5",
4
+ "description": "CLARITY — terminal AI agent with local GGUF inference on HF Spaces",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "clarity": "bin/clarity.js"
@@ -1,6 +1,6 @@
1
1
  export const ALL_MODELS = [
2
- { id: 'huggingface/Universal-618/Clarity-flash-weights', provider: 'huggingface', label: 'Clarity Flash 14B', badge: '128K' },
3
- { id: 'huggingface/Universal-618/Clarity-heavy-weights', provider: 'huggingface', label: 'Clarity Heavy 20B', badge: 'MoE' },
2
+ { id: 'huggingface/Universal-618/Clarity-flash-weights', provider: 'huggingface', label: 'Clarity Flash (Qwen 2.5 1.5B)', badge: 'Free' },
3
+ { id: 'huggingface/Universal-618/Clarity-heavy-weights', provider: 'huggingface', label: 'Clarity Heavy (Qwen 2.5 1.5B)', badge: 'Free' },
4
4
  { id: 'groq/llama-3.3-70b-versatile', provider: 'groq', label: 'Llama 3.3 70B Versatile', badge: null },
5
5
  { id: 'groq/llama-3.1-8b-instant', provider: 'groq', label: 'Llama 3.1 8B Instant', badge: 'Fast' },
6
6
  { id: 'groq/llama-4-scout-17b-16e-instruct', provider: 'groq', label: 'Llama 4 Scout 17B', badge: null },
@@ -2,13 +2,13 @@ import { getKey } from '../config/keys.js';
2
2
  import { streamResponse } from './streaming.js';
3
3
 
4
4
  const MODEL_ROUTES = {
5
- 'Universal-618/Clarity-flash-weights': [
6
- process.env.HUGGINGFACE_ENDPOINT || 'https://universal-618-clarity-2.hf.space/v1/chat/completions',
7
- 'https://universal-618-clarity-4.hf.space/v1/chat/completions',
8
- 'https://universal-618-clarity-5.hf.space/v1/chat/completions',
5
+ 'Clarity-flash-weights': [
6
+ process.env.CLARITY_INFERENCE_URL || 'https://universal-618-clarity-main.hf.space/v1/chat/completions',
7
+ 'https://universal-618-clarity-2.hf.space/v1/chat/completions',
8
+ 'https://universal-618-clarity-3.hf.space/v1/chat/completions',
9
9
  ],
10
- 'Universal-618/Clarity-heavy-weights': [
11
- process.env.HUGGINGFACE_ENDPOINT || 'https://universal-618-clarity-3.hf.space/v1/chat/completions',
10
+ 'Clarity-heavy-weights': [
11
+ process.env.CLARITY_INFERENCE_URL || 'https://universal-618-clarity-4.hf.space/v1/chat/completions',
12
12
  'https://universal-618-clarity-5.hf.space/v1/chat/completions',
13
13
  'https://universal-618-clarity-6.hf.space/v1/chat/completions',
14
14
  ],
@@ -26,7 +26,7 @@ export async function* streamResponse(endpoint, body, apiKey, extraHeaders = {},
26
26
  method: 'POST',
27
27
  headers: {
28
28
  'Content-Type': 'application/json',
29
- 'Authorization': 'Bearer ' + apiKey,
29
+ ...(apiKey && apiKey !== 'none' ? { 'Authorization': 'Bearer ' + apiKey } : {}),
30
30
  ...extraHeaders,
31
31
  },
32
32
  body: JSON.stringify({ ...body, stream: true }),