@minimalcorp/tsunagi 0.1.29 → 0.1.30

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 (45) hide show
  1. package/.next/standalone/apps/web/.next/BUILD_ID +1 -1
  2. package/.next/standalone/apps/web/.next/build-manifest.json +3 -3
  3. package/.next/standalone/apps/web/.next/prerender-manifest.json +3 -3
  4. package/.next/standalone/apps/web/.next/server/app/_global-error.html +1 -1
  5. package/.next/standalone/apps/web/.next/server/app/_global-error.rsc +1 -1
  6. package/.next/standalone/apps/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  7. package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  8. package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  9. package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  10. package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  11. package/.next/standalone/apps/web/.next/server/app/_not-found.html +1 -1
  12. package/.next/standalone/apps/web/.next/server/app/_not-found.rsc +1 -1
  13. package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  14. package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  15. package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  16. package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  17. package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  18. package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  19. package/.next/standalone/apps/web/.next/server/app/index.html +1 -1
  20. package/.next/standalone/apps/web/.next/server/app/index.rsc +1 -1
  21. package/.next/standalone/apps/web/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  22. package/.next/standalone/apps/web/.next/server/app/index.segments/_full.segment.rsc +1 -1
  23. package/.next/standalone/apps/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
  24. package/.next/standalone/apps/web/.next/server/app/index.segments/_index.segment.rsc +1 -1
  25. package/.next/standalone/apps/web/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  26. package/.next/standalone/apps/web/.next/server/app/settings.html +1 -1
  27. package/.next/standalone/apps/web/.next/server/app/settings.rsc +1 -1
  28. package/.next/standalone/apps/web/.next/server/app/settings.segments/_full.segment.rsc +1 -1
  29. package/.next/standalone/apps/web/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  30. package/.next/standalone/apps/web/.next/server/app/settings.segments/_index.segment.rsc +1 -1
  31. package/.next/standalone/apps/web/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  32. package/.next/standalone/apps/web/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  33. package/.next/standalone/apps/web/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  34. package/.next/standalone/apps/web/.next/server/middleware-build-manifest.js +3 -3
  35. package/.next/standalone/apps/web/.next/server/pages/404.html +1 -1
  36. package/.next/standalone/apps/web/.next/server/pages/500.html +1 -1
  37. package/.next/standalone/apps/web/.next/server/server-reference-manifest.js +1 -1
  38. package/.next/standalone/apps/web/.next/server/server-reference-manifest.json +1 -1
  39. package/llm-server/run.sh +31 -4
  40. package/npm-shrinkwrap.json +2 -2
  41. package/package.json +1 -1
  42. package/whisper-server/run.sh +31 -4
  43. /package/.next/standalone/apps/web/.next/static/{I7sHo3zSfusvVo0mGg-dC → TsUWkgyKReTsFW3SydDNd}/_buildManifest.js +0 -0
  44. /package/.next/standalone/apps/web/.next/static/{I7sHo3zSfusvVo0mGg-dC → TsUWkgyKReTsFW3SydDNd}/_clientMiddlewareManifest.js +0 -0
  45. /package/.next/standalone/apps/web/.next/static/{I7sHo3zSfusvVo0mGg-dC → TsUWkgyKReTsFW3SydDNd}/_ssgManifest.js +0 -0
package/llm-server/run.sh CHANGED
@@ -12,14 +12,41 @@ export HF_HUB_DISABLE_XET=1
12
12
 
13
13
  MODEL="mlx-community/Qwen3-30B-A3B-Instruct-2507-4bit"
14
14
 
15
- # requirements.txt の内容が変わった(= バージョン指定を更新した)場合、既存venvがあっても
16
- # 再インストールする。venvは一度作られると中身が古いバージョンのまま固定され続けてしまうため。
15
+ # requirements.txtでpinしているmlxがrequires-python >=3.10のため、venv作成に使うpython3自体も
16
+ # 3.10以上でなければpip installがそもそも失敗する。`python3`という名前がPATH上のどのバージョンを
17
+ # 指すかは環境依存(古いmacOS付属Python等)なため、候補を新しい順に探して最初に見つかった
18
+ # 3.10以上を使う。
19
+ MIN_PYTHON_VERSION="3.10"
20
+
21
+ find_python() {
22
+ for cand in python3.14 python3.13 python3.12 python3.11 python3.10 python3; do
23
+ if command -v "$cand" >/dev/null 2>&1; then
24
+ ver="$("$cand" -c 'import sys; print("%d.%d" % sys.version_info[:2])' 2>/dev/null || true)"
25
+ [ -z "$ver" ] && continue
26
+ if [ "$(printf '%s\n%s\n' "$MIN_PYTHON_VERSION" "$ver" | sort -V | head -n1)" = "$MIN_PYTHON_VERSION" ]; then
27
+ echo "$cand"
28
+ return 0
29
+ fi
30
+ fi
31
+ done
32
+ return 1
33
+ }
34
+
35
+ if ! PYTHON_BIN="$(find_python)"; then
36
+ echo "音声整形(LLM整形)サーバーの起動に失敗: Python ${MIN_PYTHON_VERSION}以上が見つかりません。" >&2
37
+ echo "'brew install python@3.12' 等でインストールしてください。" >&2
38
+ exit 1
39
+ fi
40
+
41
+ # requirements.txtの内容、または使用するpython3のバージョンが変わった場合は既存venvごと作り直す。
42
+ # venvは作成時のpythonバイナリに紐づくため、pip installだけでは古いバージョンのまま更新できない。
17
43
  REQUIREMENTS_HASH_FILE="${VENV_DIR}/.requirements.sha256"
18
- CURRENT_HASH="$(shasum -a 256 requirements.txt | awk '{print $1}')"
44
+ CURRENT_HASH="$( { cat requirements.txt; "$PYTHON_BIN" --version; } | shasum -a 256 | awk '{print $1}')"
19
45
 
20
46
  if [ ! -d "$VENV_DIR" ] || [ "$(cat "$REQUIREMENTS_HASH_FILE" 2>/dev/null)" != "$CURRENT_HASH" ]; then
21
47
  mkdir -p "$TSUNAGI_LLM_DIR"
22
- [ -d "$VENV_DIR" ] || python3 -m venv "$VENV_DIR"
48
+ rm -rf "$VENV_DIR"
49
+ "$PYTHON_BIN" -m venv "$VENV_DIR"
23
50
  "$VENV_DIR/bin/python3" -m pip install -r requirements.txt
24
51
  echo "$CURRENT_HASH" > "$REQUIREMENTS_HASH_FILE"
25
52
  fi
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@minimalcorp/tsunagi",
3
- "version": "0.1.29",
3
+ "version": "0.1.30",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@minimalcorp/tsunagi",
9
- "version": "0.1.29",
9
+ "version": "0.1.30",
10
10
  "license": "SEE LICENSE IN LICENSE",
11
11
  "os": [
12
12
  "darwin",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@minimalcorp/tsunagi",
3
- "version": "0.1.29",
3
+ "version": "0.1.30",
4
4
  "description": "Multi-repo GitHub project management with Claude AI integration, designed for visualizing and controlling AI-driven development locally.",
5
5
  "keywords": [
6
6
  "tsunagi",
@@ -10,14 +10,41 @@ export HF_HOME="${TSUNAGI_WHISPER_DIR}/cache"
10
10
  # xet転送は進捗の観測が難しい独自プロトコルのため無効化し、素直なHTTPダウンロードに固定する。
11
11
  export HF_HUB_DISABLE_XET=1
12
12
 
13
- # requirements.txt の内容が変わった(= バージョン指定を更新した)場合、既存venvがあっても
14
- # 再インストールする。venvは一度作られると中身が古いバージョンのまま固定され続けてしまうため。
13
+ # requirements.txtでpinしているmlxがrequires-python >=3.10のため、venv作成に使うpython3自体も
14
+ # 3.10以上でなければpip installがそもそも失敗する。`python3`という名前がPATH上のどのバージョンを
15
+ # 指すかは環境依存(古いmacOS付属Python等)なため、候補を新しい順に探して最初に見つかった
16
+ # 3.10以上を使う。
17
+ MIN_PYTHON_VERSION="3.10"
18
+
19
+ find_python() {
20
+ for cand in python3.14 python3.13 python3.12 python3.11 python3.10 python3; do
21
+ if command -v "$cand" >/dev/null 2>&1; then
22
+ ver="$("$cand" -c 'import sys; print("%d.%d" % sys.version_info[:2])' 2>/dev/null || true)"
23
+ [ -z "$ver" ] && continue
24
+ if [ "$(printf '%s\n%s\n' "$MIN_PYTHON_VERSION" "$ver" | sort -V | head -n1)" = "$MIN_PYTHON_VERSION" ]; then
25
+ echo "$cand"
26
+ return 0
27
+ fi
28
+ fi
29
+ done
30
+ return 1
31
+ }
32
+
33
+ if ! PYTHON_BIN="$(find_python)"; then
34
+ echo "音声入力(Whisper)サーバーの起動に失敗: Python ${MIN_PYTHON_VERSION}以上が見つかりません。" >&2
35
+ echo "'brew install python@3.12' 等でインストールしてください。" >&2
36
+ exit 1
37
+ fi
38
+
39
+ # requirements.txtの内容、または使用するpython3のバージョンが変わった場合は既存venvごと作り直す。
40
+ # venvは作成時のpythonバイナリに紐づくため、pip installだけでは古いバージョンのまま更新できない。
15
41
  REQUIREMENTS_HASH_FILE="${VENV_DIR}/.requirements.sha256"
16
- CURRENT_HASH="$(shasum -a 256 requirements.txt | awk '{print $1}')"
42
+ CURRENT_HASH="$( { cat requirements.txt; "$PYTHON_BIN" --version; } | shasum -a 256 | awk '{print $1}')"
17
43
 
18
44
  if [ ! -d "$VENV_DIR" ] || [ "$(cat "$REQUIREMENTS_HASH_FILE" 2>/dev/null)" != "$CURRENT_HASH" ]; then
19
45
  mkdir -p "$TSUNAGI_WHISPER_DIR"
20
- [ -d "$VENV_DIR" ] || python3 -m venv "$VENV_DIR"
46
+ rm -rf "$VENV_DIR"
47
+ "$PYTHON_BIN" -m venv "$VENV_DIR"
21
48
  "$VENV_DIR/bin/python3" -m pip install -r requirements.txt
22
49
  echo "$CURRENT_HASH" > "$REQUIREMENTS_HASH_FILE"
23
50
  fi