jim800121chen c54f16fca0 Initial commit: visionA monorepo with local-tool subproject
local-tool/: visionA-local desktop app
- M1: Wails shell + Go server + Next.js UI + Mock mode (macOS dmg ready)
- M2: i18n (zh-TW/en) + Settings 4-tab refactor
- M3: Embedded Python 3.12 runtime (python-build-standalone) + KneronPLUS wheels
- M4: Windows Inno Setup script (build on Windows runner)
- M5: Linux AppImage script + udev rule (build on Linux runner)
- M6: ffmpeg (GPL, pending legal review) + yt-dlp bundled
- Lifecycle: watchServer health check, fatal native dialog,
            Wails IPC raise endpoint, stale process cleanup

.autoflow/: full PRD / Design Spec / Architecture / Testing docs
            (4 rounds tri-party discussion + cross review)
.github/workflows/: macOS / Windows / Linux build CI

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-11 22:10:38 +08:00

4.9 KiB
Raw Permalink Blame History

1. 產品策略與定位

1.1 產品願景(模擬新聞稿)

標題visionA-local 讓 Kneron AI 邊緣推論「裝起來就能跑」

副標題:為 Innovedus FAE 與 Kneron 開發者打造的單機桌面工具,不用架 server、不用裝 Python、不用連網

以往要讓客戶看一場 Kneron KL720 / KL730 的即時推論 demoFAE 得扛一台預先設定好的筆電祈禱客戶現場的網路、Python、KneronPLUS SDK、ffmpeg、驅動都沒問題。只要其中一個出包demo 就得延期。

visionA-local 把整套 edge-ai-platform 的能力打包成一顆單機桌面 app。下載、雙擊安裝、開啟——三分鐘內就能看到攝影機串流 + 推論 overlay。所有依賴都內嵌在安裝檔裡完全離線也能用。

「我上禮拜到客戶現場,對方 IT 環境鎖得死緊,連 pip install 都被擋。以前這種狀況我只能道歉重約,這次我點一下 visionA-local十分鐘後就開始 demo 了。」—— 一位 Innovedus 內部 FAE

visionA-local 支援 macOS、Windows、Ubuntu 三平台,透過內部 Gitea Releases 發放給 Innovedus 團隊與合作客戶。v1.0 今日釋出。

1.2 核心問題

問題 目前痛點 visionA-local 的解法
環境依賴地獄 FAE / 開發者要預先裝 Python 3.12、建 venv、pip install KneronPLUS wheel、裝 ffmpeg、設 USB 權限,每個環節都可能失敗 一鍵安裝檔內嵌所有依賴,使用者機器零預裝需求
客戶現場網路不穩 / 被鎖 原 edge-ai-platform 要跑在 server 上FAE 現場得架 Docker、設反向代理 桌面 applocalhost 跑就好,不需網路、不需 Docker、不需 root
多人系統搬回單人用 edge-ai-platform 為多人共享設計FAE 一個人用很重 砍掉 cluster / relay / tunnel / token 認證UI 更簡單
沒硬體就體驗不到 沒 Kneron 板就完全無法試用 Mock 模式零硬體入口,產品經理也能玩

1.3 與 edge-ai-platform 的差異定位

面向 edge-ai-platform visionA-local
部署形態 伺服器 / 容器EC2 + Docker + nginx 單機桌面 AppmacOS / Windows / Ubuntu
網路模型 多人可遠端連線(含 relay / tunnel / cluster 只跑 localhost一人一機
安裝體驗 Ops 手動部署、curl 腳本、需先裝 ffmpeg / Python 一鍵 GUI 安裝檔,內嵌所有依賴
多裝置策略 支援 cluster多 Kneron 叢集) 單機可接多顆 USB但不做 cluster
使用場景 共享平台、遠端存取、多人協作 個人開發、現場 POC、離線 demo
更新策略 CI/CD + Docker image push 使用者手動從 Gitea 下載新版
憑證與認證 relay token + hwid localhost

1.4 價值主張

一句話:「裝起來像一般 app、離線也能跑、接上 Kneron 就推論。」

三個支柱

  1. 零依賴:使用者機器完全不需要預先安裝任何東西
  2. 零網路:完全離線可用(唯一例外:可選的 update-check
  3. 零學習成本:接上 USB → App 自動偵測 → 點一下就跑

1.5 OKR內部工具導向不追求成長 / 營收指標)

Objective Key Results
O1讓 Innovedus FAE 能在任何客戶現場 3 分鐘內開始 demo KR1全新機器無預裝從下載安裝檔到開啟首屏 ≤ 5 分鐘
KR2從 app 開啟到 Mock 模式跑出第一幀推論 ≤ 30 秒
KR3插上 Kneron USB 到 connect 成功 ≤ 10 秒
O2把 edge-ai-platform 的重複程式碼瘦身 50% KR1cluster / relay / tunnel / deploy / docker 相關程式碼全部刪除
KR2server / frontend 程式碼行數較原專案減少 ≥ 30%
KR3安裝檔單平台 ≤ 500MB目標 ~200MB
O3建立可重複發佈的內部工具流程 KR1三平台安裝檔能從 CI 自動產出
KR2首次發佈內部 Gitea Releases 後,至少 5 位內部 FAE 成功安裝並回報可用

1.6 成功指標(護欄指標 vs 體驗指標)

體驗指標(追求極大化):

  • 安裝時間(下載完成 → 首屏):目標 < 3 分鐘,上限 < 5 分鐘
  • 首次推論時間app 開啟 → Mock 第一幀):目標 < 15 秒,上限 < 30 秒
  • 實機接入時間(插 USB → connect 成功):目標 < 5 秒,上限 < 10 秒

護欄指標(不能惡化):

  • Mock 模式 idle CPU 佔用 ≤ 5%
  • Mock 模式 idle RAM 佔用 ≤ 500 MB
  • 安裝檔單平台大小 ≤ 500 MB
  • 完全斷網時,除 update-check 外所有功能必須正常運作

1.7 北極星指標(內部工具)

由於不是對外商品,北極星指標不追求成長類數據,改用可用性為核心:

「內部 FAE 在客戶現場第一次 demo 成功率 ≥ 95%」

「第一次成功」定義為:首次安裝後 5 分鐘內順利跑出第一次推論,不需要聯繫作者 debug。