hyp cli.md - maoxiaoyue/hypgo GitHub Wiki
HypGo CLI (cmd/hyp)
HypGo CLI (hyp) 是 HypGo 框架專用的命令列工具,可以用於快速建立、管理和運行你的 HypGo 應用程式。
安裝
你可以透過 go install 安裝 CLI 工具:
go install github.com/maoxiaoyue/hypgo/cmd/hyp@latest
確保你的 $GOPATH/bin 已加入到系統的 PATH 環境變數中。
可用指令
hyp new [project-name]
建立一個包含完整資料夾結構(controllers, models, services 以及 welcome HTML 頁面)的全新 HypGo 專案。
- 範例:
hyp new myapp
hyp api [project-name]
建立一個僅有 API 結構的專案,不包含處理靜態檔案與樣板的設定。
- 範例:
hyp api myapi
hyp run
啟動 HypGo 應用程式。在開發模式下這可能會提供 Hot Reload 的功能(視設定與環境而定)。
- 範例:
hyp run
hyp restart
執行應用程式的熱重啟(Hot Restart),以達成零停機部署。此指令在 Unix 系統上使用 SIGUSR2 訊號實作,目前 不支援 Windows 系統。
- 範例:
hyp restart
hyp docker
根據 config.yaml 內的設定檔,為當前 HypGo 專案建立 Docker Image。
- 範例:
hyp docker
hyp generate [type] [name]
自動生成 boilerplate 的模板程式碼。支援的 [type] 包含 controllers, models, 或是 services 等。
- 範例:
hyp generate controller userhyp generate model order
hyp context
生成專案 manifest(YAML/JSON),描述路由、設定、schema metadata,供 AI 協作使用。
- 範例:
hyp context— YAML 到 stdouthyp context -f json— JSON 格式hyp context -o .hyp/manifest.yaml— 儲存到檔案
hyp migrate
資料庫 migration 工具,掃描 Go Model struct 比對快照,自動產生 SQL migration。
- 子命令:
hyp migrate diff— 比對 models 與快照,產生 up/down SQLhyp migrate diff --dialect mysql— 使用 MySQL 方言hyp migrate snapshot— 儲存當前 schema 快照
hyp chkcomment [file.go]
Annotation Protocol 檢查器。掃描 Go 檔案中所有 exported 區塊是否有標準註解,並提供建議。
- 範例:
hyp chkcomment controllers/user.go— 檢查並報告hyp chkcomment --fix controllers/user.go— 自動加入建議註解(含 .bak 備份)
hyp impact [file.go]
Change Impact Analysis。分析修改某個 Go 檔案會影響哪些套件、路由和測試。
- 範例:
hyp impact pkg/errors/catalog.go - 輸出包含:直接依賴者、受影響測試、風險等級(LOW/MEDIUM/HIGH)
hyp ai-rules
自動生成跨 AI 工具的配置檔(AGENTS.md、GEMINI.md、Copilot、Cursor、Windsurf),讓所有 AI 編碼工具都能理解 HypGo 慣例。
- 範例:
hyp ai-rules— 生成所有配置檔hyp ai-rules --only agents,gemini— 只生成特定工具hyp ai-rules --dry-run— 預覽不寫入hyp ai-rules --dir ./myproject— 指定專案根目錄
- 已存在且無自動生成標記的檔案不會被覆蓋
- 詳細文檔:wiki/airules.md
hyp health
檢查當前運行中的 HypGo 應用程式之健康狀態。
- 範例:
hyp health
hyp list
列出所有可用的 HypGo 擴充套件或插件(Plugins),例如 elasticsearch, kafka, cassandra, rabbitmq。
- 範例:
hyp list
確認安裝
輸入以下指令以確認您安裝的 CLI 版本:
hyp --version
輸出將顯示
HypGo CLI [版本號]