Pull to refresh

Omarchy 4 用起來到底怎樣:優點、缺點,還有一張我自己機器產的快捷鍵速查表

我把 Omarchy 4.0.1(DHH 做的 Arch + Hyprland 桌面)裝在一台民國 107 年(2018 年)的舊電腦上,這篇是實際用下來的優缺點分析,加上一張從實機設定直接產出來的快捷鍵速查表(全機共 227 組綁定,表上收了最常用的 87 條)。優點的部分講它真正省掉的是什麼:不是安裝時間,是幾百個你原本要自己查、自己選、自己接的設定決定,另外也講一台八年前的機器為什麼跑得動,而且 4.0 把整套內部從 git dotfiles 改成 pacman 套件、桌面殼改用 Quickshell 重寫、Hyprland 設定全面改成 Lua。缺點的部分不客氣:Arch 滾動更新的破圖風險是真的、4.0 這種大改版換來一批新的回歸問題(升級後 kernel panic、闔蓋接外螢幕會把 GUI 程式全殺掉、待機醒來鍵盤配置跑掉、閒置抑制在改寫時掉了)、NVIDIA 是社群自理、手冊預設你有一台 2 倍解析度的螢幕、而且整個專案的品味跟治理跟一個人綁在一起。中文輸入另外開一節:Omarchy 本身就內建 fcitx5,但引擎要自己裝,而且它預設的 kb_options 會讓 Shift 單擊切換中英文失效,這是為什麼我的速查表上寫的是 CTRL + SPACE。快捷鍵那一段從修飾鍵語法講起:SUPER 是視窗與工作區、SUPER+SHIFT 是開程式或反向動作、SUPER+CTRL 是系統選單、SUPER+ALT 是分組與微調,記住這條規律比背 227 組有用得多。2026-08-30 補一節「它到底想變成什麼」:我懷疑 Omarchy 想變成 OpenClaw 那種東西,查完的結論是方向成立、種類不成立。成立的部分包括官網標語已經改成 The malleable computer for the age of agents、專案出貨一份教 agent 改自己的 skill 並無條件 symlink 到 Claude / Codex / pi / Gemini 五個 agent runtime 的 skills 目錄、AI 相關檔案數從 v3.0.0 的 0 跳到 v4.0.0 的 49、以及 usage-update 每 15 分鐘跑一次與當機自動交給 agent 診斷這兩個常駐成分。不成立的部分是 Omarchy 裡面根本沒有 agent(不打包模型、只預接 lazy stub、147 個基礎套件無 LLM)、沒有 OpenClaw 那層常駐 Gateway 與 channel 橋接、4.0.1 反而把 agent 啟動從 full bypass 收緊成 auto-review、而且 DHH 明確表示地端模型都很爛。更準的講法是三方在搶同一個位置的不同層:OpenClaw 從 agent 往下長、Omarchy 從 OS 往上長、NanoClaw 直接拿 OS 的容器隔離來裝 agent。

| 5,559 words | 14 min read | 260 views |
Text size
Line height

我把 Omarchy 4.0.1 裝在一台民國 107 年(2018 年)的舊電腦上。這篇分兩半:前半是實際用下來的優缺點,後半是快捷鍵怎麼記,附一張從我這台實機設定直接產出來的速查表。

先說清楚這個前提,因為它會影響你怎麼讀後面的每一句話。我不是把主力機砍掉重練,是找了一台放著的舊機器來裝。所以下面講的順不順、快不快,都是在一台八年前的硬體上得到的結論,不是在新機器上。

這套東西很好用,但它省下來的不是你以為的那個東西,而且它的缺點也不是「Arch 很難裝」這種老掉牙的講法。

Omarchy 是什麼

Omarchy 是 DHH(Ruby on Rails 的作者、37signals 那位)做的桌面環境,基底是 Arch Linux,視窗管理用 Hyprland。專案原本掛在 Basecamp 名下,現在 github.com/basecamp/omarchy 會 302 轉到 omacom/omarchy,官網仍寫著「Incubated at 37signals」。官方手冊自己的說法是「一套基於 Arch 與平鋪視窗管理員 Hyprland 的 omakase Linux 發行版」。

omakase 就是台灣講的「無菜單料理」。這個詞用得很準確,因為它整套設計的前提就是:你不要自己點菜,我幫你決定。終端機、編輯器、瀏覽器、啟動器、通知、主題、字型、鍵位,全部先幫你選好接好。

它到底算不算一個「發行版」,社群吵過很久,因為早期它只是一包 dotfiles 加一支安裝腳本,蓋在你自己裝好的 Arch 上面。這個爭論到 4.0 大致上收掉了,因為 4.0 把整套內部從 git 搬進 pacman 套件,有自己的套件庫,也有自己的完整 ISO。所以現在的正確講法是:它從一個設定層,正在變成一個真的發行版,而 4.0 就是那個轉折點。

4.0(Quattro)改了什麼

4.0.0 在 2026-08-14 發布,DHH 自己說是這個專案開始以來最大的一版。4.0.1 在 8/25 跟上,是一支由新成立的安全小組審過的修正版。

比較有感的幾件事:

整個桌面殼用 Quickshell 重寫。 原本一堆各自獨立的元件(Waybar、Walker、Mako、SwayOSD、hyprlock、hypridle、swaybg、polkit-gnome)全部拿掉,換成一支長駐的程序加上外掛架構。這代表狀態列、鎖定畫面、通知、啟動器現在是同一個東西的不同面,主題與縮放才能真的一致。

Hyprland 設定全面改成 Lua。 為了相容 Hyprland 0.56,原本的 .conf 改成 Lua。所以現在改鍵是寫程式,不是填設定檔。

啟動器併進主選單。 SUPER + SPACE 一個入口,底下巢狀搜尋,不再分「啟動器」跟「選單」兩套。

主題色盤從 8 色擴到 24 色。

安裝變快、變小。 ISO 縮了超過 1 GB(低於 6 GB),安裝速度快了三成,官方說法是現在有機會一分鐘內裝完。而且終於支援有剩餘空間時的雙開機安裝,不再一定要清掉整顆硬碟。

AI agent 是一等公民。 4.x 把好幾支 coding agent 直接接進系統層(Claude Code、Codex 那一類),狀態列有用量顯示。有意思的是 4.0.1 的更新說明其中一條是「改用 auto-review 而不是完全 bypass 來啟動 agent」,等於官方自己承認 4.0 那版的預設權限開太鬆了。這件事我等一下在缺點會再提。

優點

一、它省掉的不是安裝時間,是幾百個決定

這是我覺得最多人講錯的一點。大家都在講「一分鐘裝完」,但裝機從來不是成本所在。

真正的成本是:你要用哪個終端機、字型要選哪一套才有連字又有完整中文、通知要用哪支 daemon、螢幕鎖定跟閒置怎麼串、多螢幕縮放怎麼設、剪貼簿歷史要接什麼、螢幕擷取跟錄影用哪組工具、這些東西彼此的快捷鍵要怎麼不打架。這些每一項你自己查都要半小時到兩小時,而且錯了要重來。

Omarchy 的價值是它把這幾百個決定一次做完,而且做得有品味、彼此對得起來。你不同意的那幾項,再自己改就好,改一項的成本遠低於從零選一項。

二、快捷鍵是設計過的,不是拼湊的

這點下面會整段講。重點是修飾鍵本身帶語意,所以你不是在背 227 組綁定,你是在記四條規則。這件事在其他自組的 tiling WM 設定裡幾乎看不到。

三、內部改成套件,長期維護才有救

從 git dotfiles 改成 pacman 套件聽起來很無聊,但這是 4.0 最重要的一件事。dotfiles 模式的問題是升級靠合併,你改過的東西跟上游改過的東西會在你的家目錄裡打架。改成套件之後,系統檔歸系統檔、你的覆寫歸你的覆寫,升級才有機會是可預期的。

這也是我判斷一個專案能不能長期用的標準:它有沒有在處理「第二年」的問題,還是只在處理「第一天」的問題。

四、有人在維護硬體細節

指紋辨識、休眠、電源設定檔、特定筆電的怪毛病,發行說明裡有一大堆這種瑣碎的修正。這是自己組桌面環境最不想做、但不做就會天天煩你的部分。

五、八年前的機器跑得動

這是我裝之前最沒把握、裝完之後最有感的一項。

平鋪視窗管理員本來就沒有一堆合成特效要跑,Hyprland 加上 Quickshell 這一套的常駐開銷很低,所以整台機器的資源幾乎都還留給你真正在用的程式。同一台機器如果丟一套完整的桌面環境上去,光是待機就先被吃掉一塊。

這件事的意義不是「省電費」。是你有一台淘汰邊緣的機器,它其實還可以再用幾年,只是你之前給它裝的東西太重。

要注意的是,這句話只涵蓋 CPU 跟記憶體。舊機器的螢幕、電池、無線網卡那些,Omarchy 幫不上忙,該老的還是老的。

六、有完整 ISO,不用先會裝 Arch

4.0 有自己的 ISO,開機就能裝,不再需要你先自己把 Arch 裝好再套一層設定上去。而且現在支援有剩餘空間時的雙開機,不用一定要清掉整顆硬碟。對「拿一台舊機器來試」這個情境來說,這一項的重要性比看起來高。

缺點

我不打算把這一段寫得很客氣,因為會去裝這種東西的人本來就需要知道會踩到什麼。

一、Arch 滾動更新的風險是真的,而且是你自己扛

沒有版本凍結、沒有測試通道,上游今天推什麼你明天就吃什麼。這不是 Omarchy 的錯,是 Arch 的設計,但你選了 Omarchy 就是選了這個。

配套的建議只有一個:把系統跟你的資料徹底分開,並且有可以還原的備份。不要把「我不會更新壞」當成計畫。

二、4.0 這種等級的改寫,換來一批新的回歸問題

把一整個桌面殼重寫,代價就是那些原本已經解掉的問題會重新變成問題。這不是猜的,issue 追蹤器上現在還開著的就有:

  • 升級到 4.0 之後出現頻繁的 kernel panic
  • 升級會留下一批指向舊路徑的設定,處理不好會讓 compose 鍵組合全部失效
  • 新的鎖定畫面與權限對話框不吃數字鍵盤
  • D-Bus 的閒置抑制在改寫過程中掉了,所以有些情境下該不睡的時候會睡
  • 夜燈的背景程序沒有被監管,掛掉不會有人告訴你
  • 在 Hyprland 0.56.2 上闔蓋接外接螢幕,會把所有 GUI 程式殺掉
  • 待機醒來之後鍵盤配置跑回英文

這些都會修。但如果你是靠這台機器吃飯,「都會修」跟「今天不能開會」是兩件事。

我的建議是:新版出來先不要追。等一到兩個小版本,讓別人先踩。

三、AI agent 的預設權限開太鬆過一次

前面提到 4.0.1 把 agent 的啟動方式從完全 bypass 改成 auto-review。這件事本身是好的,代表有人在看。但它也告訴你一件事:這個專案在把 agent 接進系統層的時候,第一版是往方便那邊倒的。

如果你的機器裡有任何不該被 agent 亂碰的東西,這一塊你要自己再看一遍,不要因為它是預設值就當它是安全的。

四、NVIDIA 是社群自理

官方的硬體工作重心壓倒性地在 Intel 平台跟幾條主流筆電線上。NVIDIA 不是不能跑,但開機黑窗、混合顯示卡的電源管理、高更新率多螢幕的游標延遲這些問題,你會發現討論串裡都是使用者在互相救援。

一句話:獨顯 NVIDIA 的桌機,請先做好要自己花時間的心理準備。

五、它預設你有一台好螢幕

官方手冊的預設值是照著 2 倍解析度(每吋 218 點以上)那種螢幕在調的。你如果是一般的 4K 或 1080p,開箱的縮放不會剛好,要自己進去調。

六、它是一個人的品味,也是一個人的專案

這是 omakase 的另一面。你買的是主廚的品味,那你就得接受主廚的口味。你想改的地方越多,這套東西幫你省的就越少;改到某個程度,你其實是在跟它打架,那還不如自己從 Arch 疊。

治理上現在確實在往外走,有分工的團隊(包含安全小組)跟基金會了。但 DHH 過去這一年的一些公開發言引起過相當大的爭議,也確實有人因此明講不會用這個專案。我不打算在這裡評論那些發言,但如果你是要在團隊或組織裡導入,這件事會被問,你最好先想過怎麼回答。

中文輸入:這一段單獨講

Omarchy 本身就內建 fcitx5,這點很多人不知道。它拿 fcitx5 來做 CapsLock 的 compose 組合鍵,所以每個工作階段都有一支 fcitx5 在跑,也有對應的系統服務。

引擎要你自己裝。中文的話就是自己補中文引擎(我用新酷音)。

然後是這一段最重要的一件事。Omarchy 預設的鍵盤選項裡有一項是把 Shift 的放開事件改送 Caps_Lock,目的是讓 CapsLock 那套 compose 能運作。副作用是 fcitx5 那個「單擊 Shift 切換中英文」會失效,因為 fcitx5 等的那個修飾鍵事件永遠不會來。

所以我的速查表上寫的中英切換是 CTRL + SPACE,不是 Shift。這不是我個人偏好,是被預設值逼出來的。

如果你一定要用 Shift 切換,解法是在自己的輸入設定裡覆寫掉那組鍵盤選項。取捨是你會失去 CapsLock 那套 compose。

另外兩個已知的狀況,遇到不用懷疑自己:

  • 在原生 Wayland 的 Chromium 跟 Electron 程式裡,選字視窗的位置會跑掉,不跟著游標。改用 XWayland 跑就正常。
  • 如果你自己另外開機自動啟動了一支 fcitx5,會跟系統那支打架,服務會無限重啟。

還有一個跟 Omarchy 無關但值得記的:新酷音預設的鍵盤配置不見得是你要的。我這台是倚天鍵盤,注音符號的位置跟預設的大千不一樣,要改的話是動 ~/.config/fcitx5/conf/chewing.conf 裡的 Layout。

快捷鍵:先記四條規則,不要背 227 組

我這台實機上總共有 227 組綁定。全部背完是不可能的,也沒必要。

真正要記的是修飾鍵本身的語意。Omarchy 的綁定是有規律的,修飾鍵就告訴你這是哪一類操作:

修飾鍵 這一層在做什麼
SUPER + 鍵 視窗與工作區的核心操作,最常按的一層
SUPER + SHIFT + 鍵 開啟應用程式,或反向動作(搬移、上一個、全部)
SUPER + CTRL + 鍵 系統選單與設定面板(音訊、網路、電源)
SUPER + ALT + 鍵 視窗分組、微調、次要變體,進階用

記住這張表,八成的快捷鍵你可以用猜的。

先記這六個就能開始用

按鍵 做什麼
SUPER + K 查看所有快捷鍵,可搜尋。記不得就按這個
SUPER + SPACE Omarchy 主選單
SUPER + RETURN 終端機
SUPER + W 關閉視窗
SUPER + F 全螢幕
SUPER + ESC 系統選單(登出/重開/關機)

第一個是最重要的。你不需要記住任何東西,只要記住「忘了就按 SUPER + K」。

速查表

下面四張是我從實機設定直接產出來的,227 組裡挑了最常用的 87 條。

2026-08-27-omarchy-keys-1.png

2026-08-27-omarchy-keys-2.png

2026-08-27-omarchy-keys-3.png

2026-08-27-omarchy-keys-4.png

幾個特別值得學起來的

SUPER + CTRL + PRINT 從畫面擷取文字。 這是 OCR,直接把螢幕上任何一塊區域的文字變成可貼上的內容。掃描件、遠端桌面、別人截圖丟過來的表格,全都救得回來。這個我用得比想像中多很多。

SUPER + CTRL + V 剪貼簿歷史。 裝完就有,不用自己接。

SUPER + BACKSPACE 切換視窗透明度。 對照兩份文件的時候很好用。

SUPER + S 暫存區。 把一個視窗丟進去,它就從畫面上消失但還活著,要用再叫出來。適合放你「等一下要處理但現在很煩」的那個視窗。

SUPER + CTRL + TAB 回到上次待的工作區。 兩個工作區之間來回跳,比按數字快。

兩個容易誤按的

CTRL + ALT + DELETE 在這裡是關閉所有視窗,而且不會問你要不要存檔。從 Windows 過來的人前幾天特別容易中。

SUPER + SHIFT + ALT + 數字 是靜默搬移,視窗會直接「消失」到別的工作區,而你還留在原地。第一次遇到會以為程式當掉了。

改鍵

改鍵是編輯 Hyprland 設定目錄底下的 bindings.lua。因為 4.0 之後是 Lua,所以覆寫既有的綁定要先解除再重綁,不能直接寫一行同樣的鍵位期待它蓋過去。

要看完整的 227 組,按 SUPER + K,或在終端機執行 omarchy menu keybindings --print

它到底想變成什麼:拿 OpenClaw 來對照

我自己的直覺是,Omarchy 想變成的其實是 OpenClaw 那種東西。查完之後,這個直覺的方向成立,種類不成立,而且兩邊是從相反方向往同一個位置靠。

支持這個直覺的部分

官網標語就是這樣寫的。omarchy.org 現在的一句話是 “The malleable computer for the age of agents.”(為 agent 時代打造的可塑電腦)。專案的自我定義已經掛在 agent 上,這不是我們自己讀出來的。

它出貨一份「教 agent 改自己」的說明書。default/agents/skills/omarchy/ 底下有七個檔(SKILL.md 加上 hyprland、plugins、theming、hooks、capture、contributing),宣告的範圍就是改 ~/.config/hypr/、鍵位、螢幕設定。而 bin/omarchy-provision-user無條件把它 symlink 到 ~/.claude/skills~/.codex/skills~/.pi/agent/skills~/.gemini/config/skills~/.agents/skills

這件事的份量比「內建 AI 工具」大很多。它不是附一支 agent 給你用,是作業系統主動把自己的操作手冊塞給任何一個 agent runtime,而且不挑廠牌。

這也解釋了我在 MacBook Air 那頁寫的觸控板經驗。config/hypr/input.lua 裡面本來就放好了註解掉的 hl.gesture({fingers = 3, ...}) 範例,等 agent 去解註解。我以為我是請 Claude 自由發揮,實際上是 Omarchy 事先把路鋪好,只是沒告訴我。

投入的量級是 4.0 才跳上來的。照 AI 相關檔案數量算:v3.0.0 是 0,v3.8.4 是 2,v4.0.0 是 49。那支 Omarchy skill 本身其實 v3.3.0(2026-01-07)就有了,但 omarchy-agentomarchy-agent-promptomarchy-agent-crashomarchy-agent-usage-* 這整組指令是 2026 年 8 月才出現的。

已經有常駐的成分。omarchy agent usage-update 每 15 分鐘跑一次。程式當掉觸發 systemd-coredump 的時候,系統會跳通知,把 core dump 交給你的預設 agent 配一支 diagnose-crash skill 去診斷。這是目前最接近「agent daemon」的東西。

DHH 自己寫過這件事。他 2026-04-15 那篇〈The malleable computer〉裡說:AI 正在以兇猛的速度把複雜度壓縮掉、讓它變得可塑,而這股力量一旦作用在作業系統上,作用的就是整台電腦。這句話幾乎就是 Omarchy 現在的產品說明。

治理在擴張。Omacom 於 2025 年 7 月成立,官網橫幅寫著基金會帶著一千萬美元啟動。

不成立的部分

Omarchy 裡面沒有 agent。它不打包任何模型,也沒有常駐的 agent runtime。install/user/mise.sh 做的只是預先接好 claude、codex、opencode、copilot、pi、grok 這些指令的 lazy stub,第一次執行之前什麼都不會下載。基礎套件那 147 個裡面沒有任何 LLM。

OpenClaw 的核心正好是 Omarchy 沒有的那一層。OpenClaw 是一支常駐的 Gateway 守護程序,綁在 127.0.0.1:18789,管 session、工具、事件與 channel 連線。README 原話是 “an AI assistant that runs on your devices and meets you in the channels you already use.”,重點在後半句:把 agent 接到你本來就在用的 WhatsApp、Telegram、Slack、Discord、iMessage、LINE。

Omarchy 完全沒有 channel 這個概念。這不是它做得比較少,是它根本沒有要做這件事。

4.0.1 是往回收,不是往前推。新成立的安全小組把 agent 的啟動方式從 full bypass 改成 auto-review。一個真的要變成 agent 宿主的專案,不會在這個時間點收緊自主性。

DHH 明確不看好地端模型。他 2025 年 11 月寫過一句「說實話吧,它們全都遠遠落後前沿模型,因為它們就是很爛」。所以 Omarchy 不會往「地端推論盒子」的方向長。而 OpenClaw 那邊 llama.cpp、LM Studio、Ollama、vLLM、SGLang 全都是一等公民。這是價值觀上的實質分歧,不是進度差。

這一點要補一個例外免得講太滿:Omarchy 其實有帶一個地端模型,就是語音聽寫的 voxtype,約 150 MB、吃 Vulkan GPU,第一次用會問你要不要裝。但那是單一功能的小模型,跟「把推論搬回自己機器上」是兩回事。

比重也還不到。v4.0.0 的發行重點大約 24 條,跟 agent 有關的只有 1 條。桌面殼重寫、Lua 設定、ISO 瘦身那些才是主戲。

更準的講法

與其說 Omarchy 想變成 OpenClaw,不如說兩邊在搶同一個位置的不同層:誰來當 agent 的宿主。

它的答案 常駐 agent channel 層 地端模型
OpenClaw 一支跨平台的 Gateway,OS 是它底下的東西 有(Gateway) 核心賣點 一等公民
Omarchy 把 OS 本身變成可被 agent 改寫的對象,附說明書 沒有 沒有 明確不做
NanoClaw 把每個 agent 關進獨立的 Linux 容器 看你接什麼

有意思的是,OpenClaw 自己的文件引用過一句話而且語氣是認同的:「唯一能擋住敵意 LLM 的安全邊界就是作業系統。」等於它承認 OS 在它底下。NanoClaw 的立論也正是這個,它說 OpenClaw 的安全是應用層的、不是真正的作業系統層隔離,所以改成一個 agent 一個容器。

三者是同一個問題的三種答案。OpenClaw 從 agent 往下長,想長到 OS;Omarchy 從 OS 往上長,想長到 agent;NanoClaw 直接拿 OS 現成的隔離機制來裝 agent。目前還沒有交會。

這件事可以拿走什麼

能抄的是那個模式,不是那套軟體。Omarchy 的做法是把系統自己的操作規範寫成 agent 讀得懂的檔案、放在固定位置,然後任何 agent 都能照著做,不綁廠牌。

換到院內的語境,就是把一套系統的設定規則、交接文件、常見處置寫成 agent 讀得懂的形式,而不是只給同仁一個聊天視窗。這跟我一直在講的積木化、可交接、可外推是同一件事,只是往下多做了一層。

要記得的教訓是 4.0.1 那個。第一版的預設值是往方便那邊倒,是後來才收緊的。院內要做,權限那一格要自己先想清楚,不要等別人幫你發現。

所以誰適合用

適合:主力是開發或寫作、鍵盤操作為主、願意接受滾動更新、而且對「別人幫我決定」這件事不反感的人。特別是那種已經自己組過一次 tiling WM、知道那有多耗時間的人,你會最有感。

不適合:這台機器不能出事的人。跑產線、跑臨床、跑任何停機有代價的東西,不要用滾動更新的系統當工作站。另外是獨顯 NVIDIA 的桌機,或是你已經有一套用了很多年、很順手的設定,那 Omarchy 幫你省的會少於你要改的。

折衷的做法:拿一台舊機器裝,主力機先不要動。跑一兩個月,看你有沒有真的回不去。我自己就是這樣做的,找了一台民國 107 年的舊電腦,壞了也不心疼,結果反而發現那台機器沒有我以為的那麼不堪用。

這個做法還有一個好處。前面講的滾動更新風險、大改版的回歸問題,在一台不用扛工作的機器上都只是麻煩,不是災難。你要真的知道自己吃不吃得下這套東西,本來就得先讓它壞給你看。

一句話

Omarchy 賣的不是 Linux,是「不用自己做決定」。這個東西在你剛開始的時候價值極大,在你有自己意見之後價值會遞減。所以問題不是它好不好,是你現在在哪個階段。

相關頁面

tech Public omarchy 無菜單料理 舊電腦再利用 老機器 輕量桌面 omarchy4 quattro dhh basecamp omacom arch-linux hyprland wayland quickshell tiling-wm 平鋪視窗管理員 快捷鍵 keybindings 速查表 cheatsheet lua設定 fcitx5 新酷音 chewing 中文輸入 輸入法 注音 倚天鍵盤 桌面環境 linux桌面 開發環境 作業系統 omakase 滾動更新 rolling-release nvidia 優缺點分析 ai-agent agent-host agent-skills claude-skill claude-code codex malleable-computer openclaw nanoclaw gateway 地端模型 local-llm 權限預設值 積木化 可交接 可外推 802 kafgh