為認知類型設計輸出:共用底層與可組合的 mode
為認知類型設計輸出的方法論核心是:把「好輸出」拆成一層所有神經類型共用的底層,加上幾層針對特定認知特性、可以獨立開關的轉換。這個拆法解決一個具體問題——三種特性對好輸出的定義部分重疊、部分衝突,如果把規則平鋪成一張清單,衝突的規則會互相抵消,共用的規則會被重複三次。分層之後,共用的只寫一次,衝突的被隔離到可切換的層,整合就成為可能。
這篇建立在三篇分析之上:ADHD 輸出設計、自閉輸出設計、需求迴避重構。它不重述那些 skill 的規則,而是回答一個工程問題:怎麼把三套規則組成一個不自我矛盾的結構。
為了讓沒讀過前三篇的讀者也能接住後面的推導,先用三句話速寫三種特性各自要的輸出。ADHD 要降低「知道」到「做到」的啟動摩擦(壓縮、動作前置、外化狀態、讓進度可見)。自閉要消除歧義(字面直說、明確結構、標優先級、變動前預告)。需求迴避要去命令化(把命令重構成邀請、歸還控制權)。後面出現的規則簡稱都對應這三組。
共用的 base layer
三種特性對輸出的要求裡,有一組是完全一致的。把它們抽出來當作永遠開啟的底層:
去除提取成本。開場白、回顧、結尾寒暄、不帶資訊的修飾詞——這些前綴與修飾,三種特性都要求刪掉。它們不服務任何認知特性,只是佔用讀者的注意力。ADHD 讀者被它們拖慢啟動,自閉讀者被它們埋掉字面意思,需求迴避的人被過度熱情的語氣讀成施壓。刪掉它們對三者都是淨收益。
具體取代事實層的模糊。用明確的數字、名稱、條件取代「很快」「一點點」「應該可以」——這對 ADHD(模糊估計無法幫讀者決定要不要開始)和自閉(模糊逼讀者猜一個範圍)都成立。但這條有一個例外要標清楚:需求迴避讀者要的常是彈性的時間(「什麼時候順手都行」),對他們把時間點講死反而是施壓。所以「具體化」在事實與條件上是底層規則,在時間點上讓位給需求迴避 mode 的彈性。
誠實,不操弄。對錯誤與不確定用平鋪直敘的語氣,不用情緒化修辭,不製造隱形的情緒勞動,不假裝有選擇。ADHD 導向的「平鋪直敘講錯誤」、自閉導向的「對不確定誠實」、需求迴避重構的「真誠是硬底線」,是同一個原則在三個脈絡下的樣子。
外化讀者本來要自己記住或推斷的東西。把假設、優先級、狀態從讀者的腦內搬到頁面上。ADHD 外化的是「做到哪了」,自閉外化的是「你假設了什麼、哪個最重要」,兩者都在拒絕「請讀者自己記住 / 自己推斷」。ADHD 特有的「讓進度可見」不放進這一層——它服務多巴胺、對純需求迴避讀者甚至可能讀成被監看,所以留在 ADHD mode。這類成員判定(什麼服務多巴胺、什麼會被讀成監看、什麼觸發焦慮)依賴前三篇整理的認知事實;本篇 given 那些前提來推導整合結構,不在此重新論證它們。
這幾條是 base layer。放進來的門檻是三者都受益,所以它不是「三種特性規則的聯集」——像「進度可見」這種只有一種特性要、另一種可能反受其害的規則,就留在它自己的 mode、不進底層。
這一層跟 blog 既有的 compositional-writing 高度重疊——後者為「通用讀者的認知負荷與 token 成本」塑形輸出,base layer 可以看成同一組原則在「不預設特定神經類型」時的樣子。差別從第二層(mode)才開始:mode 是這套方法論在 compositional-writing 之上、針對特定認知特性加的東西。
兩層轉換:格式層與框架層
base layer 之上的差異,要先按它們作用的層次分開,否則會把「其實不衝突的」誤判成衝突。三篇分析已經指出這個區分:ADHD 與自閉導向作用在格式層——同一件要做的事,怎麼排版、怎麼措辭、怎麼標優先級;需求迴避重構作用在框架層——這件事被呈現成命令還是邀請。
這個區分的用處,是它決定了哪些轉換可以疊加、哪些必須擇一。
框架層和格式層在多數規則上正交,可以疊加。一份輸出可以同時是「去命令化的邀請」(框架層)和「明確結構、標好優先級」(格式層)——需求迴避重構不規定答案怎麼排版,多數格式層規則也不規定任務以什麼姿態出現,兩者不爭同一個決定。但正交不是全稱的:有一條格式層規則(自閉的「給單一路徑」)會跟框架層的「給真實選擇」爭同一個決定,下一節連同其他衝突一起處理。
衝突:一條全域開關,加幾條逐項讓步
分層真正的收益,是把衝突變成局部而且具名的——每一組衝突都被定位到「哪兩條規則、爭哪一個決定」,而不是藏在一張平鋪清單裡等人踩到。定位之後會看到:衝突不只一組,但它們需要的處理力度差很多,從「一個全域開關」到「一次逐項讓步」排成一道光譜。
需要全域開關的,只有一組:動作的措辭。ADHD 導向要求動作前置,而它在範例裡的實現形式是祈使命令(「執行 X」「改第 42 行」);需求迴避重構要拿掉所有「你必須 / 你應該」。同一個位置不能同時是命令和去命令化的邀請,兩者爭的就是「這個動作用什麼語氣呈現」。這一組用一個全域規則解決:需求迴避 mode 開啟時,動作一律改用邀請語氣。自閉導向在這組裡中立——祈使命令和邀請都可以寫得明確。
其餘衝突用逐項讓步吸收,不需要全域開關。它們一樣是兩條規則爭同一決定,只是讓步發生在少數位置、可以就地處理:
- ADHD 的「結尾給一個少於兩分鐘的明確下一步」對上需求迴避的「不指定單一動作、不施加時間壓力」。同開時,那個收尾動作改成「一個可選的起點」、拿掉時間框——它仍然被外化出來(ADHD 要的),但不再是單一指定的收束推力(需求迴避要的)。
- 自閉的「給單一清楚的路,不給菜單」對上需求迴避的「給同等效力的真實選擇」。同開時合成成一個動作:給選項,但每個選項附一行判準——這同時滿足自閉「別讓他盲選」和需求迴避「保留選擇權」。
- ADHD 的「壓縮」對上自閉的「標明每一個建議的強度、永不讓讀者自己推斷」。同開時,預設壓縮,但在會產生歧義的關鍵點保留自閉的逐項標示——這是把自閉的「每一個」讓步成「會歧義的每一個」,是一次真實的規則收窄,只是幅度小。
逐項讓步和全域開關是同一種動作的不同幅度。差別在「這個衝突發生在多少個位置」——措辭衝突發生在每一個動作上,所以用一個全域開關一次解決最省;其餘衝突只發生在特定規則交會的少數位置,就地讓步比架一個全域開關划算。所以「只有一組需要全域開關」是個關於幅度的判斷,不是「結構上只有一組衝突」——衝突有好幾組,分層的價值是讓每一組都被看見、被指定處理方式,而不是把它們抹平。
整合的結構
有了 base layer、兩層轉換、和被定位的衝突組,整合的結構就確定了(以下把每一組可獨立開關的規則叫一個 mode):
第一層,base layer,永遠開。去提取成本、具體化、誠實、外化。
第二層,格式 mode,可獨立開關。ADHD mode(壓縮、外化狀態、進度可見、抑制發散)、自閉 mode(消歧義、明確結構、標優先級、變動預告)。這兩個 mode 的多數規則可以同時開。它們之間的壓縮與消歧義程度張力不靠開關解決,靠逐項調節:預設壓縮,在會產生歧義的關鍵點展開。
第三層,框架 mode,可獨立開關,和格式層多數正交。需求迴避 mode(去命令化、歸還控制權、真誠邊界)。
衝突解析用三種力度(對齊 #235 整合互斥規則集 的分類:全域開關、逐項讓步、合成)。一條全域開關:需求迴避 mode 開啟時,覆蓋 ADHD 的動作直給,動作改用邀請語氣;ADHD 的外化狀態、進度可見、抑制發散照常生效,但結尾動作那條要跟著讓步(去掉時間框、改成可選起點)。其餘用逐項讓步(壓縮讓位給會歧義處的逐項標示)與合成(單一路徑與真實選擇合成成一個帶判準的選項、同時滿足雙方)處理,都只發生在規則交會的少數位置、不需要獨立的全域開關。這裡的宣稱要精確:需要全域開關的衝突分析到目前只找到措辭這一組,而逐項讓步與合成也是枚舉到目前找到的這幾組——都是搜尋的結果,不是結構上只可能有這些。
這個結構直接對應到一個 skill 的樣子:一個共用的 base,加上讀者可以宣告自己是哪種組合的 profile,加上一條全域覆蓋規則和幾條逐項讓步。讀者宣告「我是 AuDHD(自閉加 ADHD)且有需求迴避」,skill 就開啟 ADHD mode、自閉 mode、需求迴避 mode,並讓需求迴避 mode 覆蓋祈使措辭。宣告「我只有 ADHD」,就只開 ADHD mode、用動作直給。
為什麼分層比選一個更好
一個看似更簡單的做法是:不整合,讓讀者各自用對應的 skill。分層整合比它好在幾個地方。
神經多樣性經常共現。AuDHD 是常見的組合,需求迴避特質也常疊加在自閉之上。對這些人來說,單一 skill 各自為政會產生矛盾的指令——ADHD skill 叫輸出下命令,PDA skill 叫輸出別下命令,而讀者同時需要兩者的其他規則。分層結構讓「同時是 A 又是 B」成為一個明確定義的狀態,而不是兩套規則的混戰。
共用底層只寫一次。base layer 的四條規則如果散在三個 skill 裡各寫一遍,維護時會漂移成三個略微不同的版本。抽成共用底層,它們只有一個真實來源。
衝突被顯性化而不是被藏起來。平鋪的規則清單會把衝突藏在兩條看起來都合理的規則裡,讀者或維護者要踩到才發現。分層結構把每一組衝突提到檯面上、逐一指定處理方式(全域開關、逐項讓步或合成),讓「當這幾種特性同時存在時該怎麼辦」有一個寫下來的答案。
整合也有代價,該一起放上秤、不假裝它是零成本的勝出。三個獨立 skill 各自維護、各自版本化更單純;只有單一 profile 的讀者,拿到的是更精實、沒有無關 mode 的規則集;整合版多了 mode 組合的測試負擔(每加一種特性,要重驗它跟既有每個 mode 的交互),也讓「此刻哪些規則生效」比較難一眼推理。淨值仍偏向整合,關鍵是神經多樣性經常共現這個事實——對 AuDHD、或自閉疊需求迴避的讀者,各自為政產生的矛盾指令是每次協作都踩的痛點,而多出的測試與推理成本是一次性的設計負擔、由寫 skill 的人吸收。取捨的方向是整合,但代價要講出來。
通往 skill
這套方法論的產出是一個整合三種特性的 skill:一層永遠開的 base、三個可組合的 mode、一條全域覆蓋規則加幾條逐項讓步。它讓讀者用一次宣告描述自己的認知組合,而不是在多個各自為政、偶爾互相矛盾的 skill 之間手動調停。這個 skill 是 neurodivergent-output,收在公開的 claude-skills 庫、可複製到自己的環境取用(取用說明見系列首頁)。
方法論本身是可搬移的:base layer 加可組合 mode 加顯性衝突解析,這個結構不限於這三種特性——把它抽離神經多樣性主題後的通用形式(整合任何互斥規則集:互斥的 lint 規則、多來源 API 契約、彼此拉扯的 stakeholder 需求)收在 #235 整合互斥規則集。
若日後要納入第四種認知特性,流程是固定的——找出它和 base layer 重疊的部分(併入底層)、判斷它作用在格式層還是框架層、逐一對照它和既有 mode 的每條規則有沒有爭同一個決定(有的話,看衝突發生在多少位置,決定用全域開關還是逐項讓步)。判斷格式層還是框架層有一個粗略的測試:把輸出裡所有「要求讀者去做某事」的部分拿掉、只留純說明,這條規則還適用嗎——適用偏格式層(管答案形狀),只在提出要求時才作用偏框架層(管任務姿態)。
這個測試是啟發、不是判準:一條動機在框架層、卻會改變答案形狀的規則會騙過它,所以真正吃力的是逐條對照規則有沒有相爭,那一步沒有機械方法、只能枚舉——本文一開始只找到一組衝突、後來發現不只,正是這一步沒枚舉徹底的例子。分層不是這三個 skill 的特例,是為認知類型設計輸出的通用方法。