@meridiona/meridian-darwin-arm64 1.24.1 → 1.24.2

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/VERSION CHANGED
@@ -1 +1 @@
1
- 1.24.1
1
+ 1.24.2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meridiona/meridian-darwin-arm64",
3
- "version": "1.24.1",
3
+ "version": "1.24.2",
4
4
  "description": "Prebuilt Meridian app for macOS arm64 (daemon binary + dashboard + Python services). Installed via @meridiona/meridian.",
5
5
  "homepage": "https://github.com/Meridiona/meridian",
6
6
  "repository": {
@@ -523,9 +523,17 @@ fi
523
523
  info "Installing screenpipe launchd agent…"
524
524
  bash "${APP_ROOT}/scripts/install-screenpipe-daemon.sh" || warn "screenpipe agent install failed"
525
525
 
526
- # MLX: skip restart + model-load wait when server was already healthy and the
527
- # Python services/venv didn't change saves ~9 s on every non-Python update.
528
- if [[ "${_mlx_was_healthy}" -eq 1 && "${_venv_changed}" -eq 0 ]]; then
526
+ # MLX: skip restart + model-load wait when server was already healthy and
527
+ # neither the venv nor the Python source files changed.
528
+ _PY_SRC_STAMP="${HOME}/.meridian/py-src.sha256"
529
+ _py_src_hash="$(find "${APP_ROOT}/services/agents" -name '*.py' | sort | xargs shasum -a 256 2>/dev/null | shasum -a 256 | cut -d' ' -f1 || true)"
530
+ _py_src_changed=1
531
+ if [[ -f "${_PY_SRC_STAMP}" && "$(cat "${_PY_SRC_STAMP}")" == "${_py_src_hash}" ]]; then
532
+ _py_src_changed=0
533
+ fi
534
+ echo "${_py_src_hash}" > "${_PY_SRC_STAMP}"
535
+
536
+ if [[ "${_mlx_was_healthy}" -eq 1 && "${_venv_changed}" -eq 0 && "${_py_src_changed}" -eq 0 ]]; then
529
537
  ok "Python services unchanged — MLX server kept running"
530
538
  else
531
539
  info "Installing MLX inference server launchd agent…"
@@ -193,22 +193,27 @@ async def classify(req: ClassifyRequest) -> ClassifyResponse:
193
193
  from outlines.inputs import Chat
194
194
  from mlx_lm.sample_utils import make_sampler
195
195
 
196
+ from agents.llm_selector import APPLE_INTELLIGENCE_ID
197
+
196
198
  m = _app_state["mlx_module"]
197
- model = m._get_model()
198
199
  messages = [
199
200
  {"role": "system", "content": m._SYSTEM_PROMPT},
200
201
  {"role": "user", "content": req.input},
201
202
  ]
202
203
  t0 = _time.time()
203
204
  try:
204
- raw = model(
205
- Chat(messages),
206
- output_type=m.SessionClassification,
207
- max_tokens=m._MAX_TOKENS,
208
- sampler=make_sampler(temp=m._TEMPERATURE),
209
- verbose=False,
210
- )
211
- result = m.SessionClassification.model_validate_json(raw)
205
+ if m._resolve_model_id() == APPLE_INTELLIGENCE_ID:
206
+ result = m._classify_apple_fm(messages)
207
+ else:
208
+ model = m._get_model()
209
+ raw = model(
210
+ Chat(messages),
211
+ output_type=m.SessionClassification,
212
+ max_tokens=m._MAX_TOKENS,
213
+ sampler=make_sampler(temp=m._TEMPERATURE),
214
+ verbose=False,
215
+ )
216
+ result = m.SessionClassification.model_validate_json(raw)
212
217
  except Exception as exc:
213
218
  log.warning("classify: inference error: %s", exc)
214
219
  raise HTTPException(status_code=500, detail=str(exc)) from exc
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "meridian-agents"
7
- version = "1.24.1"
7
+ version = "1.24.2"
8
8
  description = "Meridian agents — hermes task linking and Jira progress updates for meridian.db"
9
9
  requires-python = ">=3.11"
10
10
  authors = [{ name = "Meridiona" }]
package/ui.tar.gz ADDED
Binary file