Communityライティング&編集github.com

fangdididi/night-shift-steps

運用手術手冊、應變手冊、設定指南或安全指示,以控制語言風格改寫,讓疲勞、壓力大、非母語或初次使用者能夠正確遵循。當有人要求讓步驟更清楚、撰寫應變手冊或SOP、準備他人可執行的指示、校對翻譯程序,或「寫得像維修手冊」時使用。

night-shift-steps とは?

此技能將任何程序文件改寫為難以誤讀的「值夜班步驟」。它借鑒航空與工業維修中使用的控制語言規範(短句、每步一個動作、主動語態、一詞一義)、設備標籤上的安全訊息順序(信號詞、危害、後果、應對方式),以及關鍵步驟後附上預期結果的習慣。它支援Claude Code、Cursor、Codex等平台,並提供`scripts/stepcheck.py` Python腳本進行自動檢查。改寫過程遵循十個步驟,從填寫程序卡、列舉事實、拆分動作、重寫每一步,到放置安全訊息、添加結果與退出點、鎖定詞彙表、執行腳本檢測、進行字面走讀,最後交付改寫結果與變更清單。這項技能非常適合SOP、事件應變手冊、部署/回滾步驟、硬體設定指南以及需要翻譯或由非母語者閱讀的任何程序。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/fangdididi/night-shift-steps/tree/HEAD

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

值夜班步驟

這是什麼

大多數程序是由已經熟悉工作的人編寫的。它們在辦公桌前讀起來沒問題。但在凌晨三點、嘈雜的房間、手機上、使用第二語言、或讀者害怕弄壞東西時,它們就失敗了。這些失敗是可預測的:一個步驟中隱藏了兩個動作、警告位於它所保護的步驟之後、條件出現在句子結尾、被動句隱藏了必須行動的人、以及像「正確地」這樣的詞要求讀者去猜測。

這項技能將這類文字轉換為人可以逐字遵循的步驟。它借鑒了飛機和工業維護中使用的控制語言規範(短句、每個句子一個動作、主動語態、一詞一義)、設備標籤上使用的安全訊息順序(信號詞、危害、後果、避免方式),以及每個風險步驟後寫下預期結果的習慣,讓讀者知道何時該停下來。

這不是一個「讓它聽起來像人類」的處理過程。目標是建立一個無法被誤讀的程序,即使它聽起來有點平淡。

何時使用

  • 應變手冊、事件處理手冊、待機檢查清單、部署和回滾步驟。
  • 硬體、家用設備、實驗室設備或辦公室IT的設定或維修指南。
  • 標準作業程序(SOP)和交接記錄,供另一個人或另一個班次使用。
  • 將被機器翻譯或由非母語者閱讀的指示。
  • 任何一個誤讀步驟可能導致資料、金錢損失或造成傷害的文字。

不要將其用於論文、行銷文案或概念性說明。這些需要不同的語氣。

規則(預設層級)

#規則限制或測試
R1每個步驟一個動作步驟內不能有「,然後」、「然後」、分號或兩個由「和」連接的動詞
R2簡短的指示句中文約35個字
R3簡短的描述句中文約45個字
R4祈使句、主動語態以動詞開頭。如果動作執行者不是讀者,要指明
R5條件在前「如果燈是紅色的,停下來。」永遠不要說「停下來,如果燈是紅色的。」
R6一詞一義在詞彙表中鎖定術語。永遠不要為了變化而交換同義詞
R7確切的值帶單位的數字、與螢幕或設備上完全相同的標籤
R8安全訊息在步驟之前信號詞、危害、後果、該怎麼做
R9風險步驟後的預期結果「結果:...」以及如果結果不同該怎麼做
R10無猜測性詞語移除「正確地」、「按需」、「確保」、「應該」、「只要」

嚴格層級(適用於安全關鍵或法規要求的文字):套用所有規則,無例外,不容許任何模糊用語,並在每個步驟後加上結果行。寬鬆層級(適用於已經不錯的內部備忘錄):僅套用R1、R5、R8和R9。

信號詞

使用仍然真實的最低程度詞語。不要誇大。

  • 危險:忽略會導致死亡或重傷。
  • 警告:可能導致死亡、重傷或重要的資料或金錢損失。
  • 小心:可能導致可修復的輕傷或損壞。
  • 注意:無傷害風險;僅有財產、資料或時間風險。

每個安全訊息包含三個部分:危害是什麼、讀者忽略會發生什麼、以及該怎麼做。「小心」不是一個安全訊息。

如何操作

  1. 填寫程序卡。 在編輯之前,寫下:目標狀態(「磁碟2正在重建」)、誰將遵循它(角色、語言、條件例如手套、噪音、手機螢幕、夜間)、他們擁有什麼(存取權限、工具、時間)、危害以及停止條件。對於任何你無法推斷的內容,向使用者提問。缺少停止條件是最常見的差距。
  2. 列出你必須保留的事實。 每個數字、單位、標籤、指令、順序限制、警告和條件。改寫必須包含所有這些,且不添加任何內容。如果你認為某個值有誤,請標記出來;不要默默修正。
  3. 拆分為動作。 讀者做的一個動詞=一個步驟。導航也算在內(「前往儲存」和「選擇磁碟2」是兩個步驟)。將背景資訊移到一個簡短的「開始之前」段落。
  4. 重寫每個步驟。 動詞在前,條件在前,確切的標籤用粗體或代碼表示,單位始終保留。替換每個隱藏動作執行者的被動語態:「金鑰被生成」變成「工具生成金鑰」,或者更好的是讀者用來生成它的步驟。
  5. 放置安全訊息。 對於每個刪除、覆寫、關機、重啟、斷開、加熱、切割或加壓的步驟,將訊息直接放在步驟上方。從上面的階梯中選擇信號詞。
  6. 添加結果和退出點。 在每個風險或狀態變化的步驟之後,寫下讀者看到什麼表示操作成功。如果結果可能不同,給出一行:「如果你看到X,停下來並前往恢復A。」寫下恢復章節。
  7. 鎖定詞彙表。 為每個事物選擇一個術語(例如「托盤」,而不是「支架」或「滑軌」)。如果程序將被維護,將其儲存為 glossary.json。
  8. 檢查。 執行 python scripts/stepcheck.py lint procedure.md --glossary glossary.json。修正每個「不安全」和「需重做」的發現,或解釋為什麼某個是誤判。
  9. 進行字面走讀。 只閱讀編號的步驟,假裝你是嚴格執行每句話所說內容、不多做任何事情的人。他們會在何處停下來、猜測或做出有害的事情?修正那些地方。
  10. 回傳 改寫後的程序,然後是簡短的變更清單(規則編號)、你無法驗證的事實清單以及待解決的問題。

輔助腳本

scripts/stepcheck.py 是一個使用標準庫的Python檢查工具,用於Markdown程序,支援英文或中文。

代碼嚴重程度意義
危害-無警告嚴重風險步驟上方沒有安全訊息
延遲警告嚴重安全訊息位於它保護的步驟之後
弱警告修正訊息沒有說明會發生什麼
過長修正指示句超過限制
堆疊修正步驟中有超過一個動作
隱藏執行者修正被動語態或「被」隱藏了誰在行動
模糊/含糊修正猜測性詞語
條件在後修正條件在動作之後出現
偏移修正使用了詞彙表中禁止的同義詞
無結果、描述過長備註僅供建議

判定結果:就緒(exit 0)、需重做(exit 1)、不安全(exit 2)。腳本使用詞彙表和模式,因此會遺漏某些情況,有時也會將正確的句子標記為錯誤。它永遠無法取代步驟9。

範例

改寫前:

  1. 如果NAS仍在運行,請關閉電源。
  2. 拉出磁碟2的托盤,並將新磁碟放入。 小心:舊磁碟可能很燙。

改寫後:

警告:在移除磁碟之前關閉NAS電源。磁碟在運行時被移除可能會損壞第二個磁碟。 5. 按壓電源按鈕2秒以關閉NAS電源。 結果:約1分鐘後,前面板的所有指示燈熄滅。 小心:舊磁碟使用後可能很燙。握住托盤,否則可能燙傷手指。 6. 拉出磁碟2的托盤。 7. 將新磁碟放入托盤。

變更:R1(拆分步驟4)、R5(透過將關機設為獨立步驟移除條件)、R8(警告上移並附上後果)、R9(添加結果)。完整檔案在 examples/ 中。

提示

  • 如果原始文字是錯的,最清晰的改寫仍然是錯的。在變更清單中標記有疑問的值。
  • 保留指令、路徑和螢幕上的標籤,一字不差。在拼錯的指令周圍寫出清晰的散文比原始文字更糟。
  • 需要長篇說明的步驟通常是兩個步驟加上一條前置備註。
  • 步驟連續編號。不要在單一程序中重新開始編號;對恢復使用單獨的章節。
  • 當你同時產生中文和英文版本時,並排閱讀:每個步驟應該一一對應。
  • 永遠不要聲稱輸出符合任何官方控制語言標準。請說「以控制風格撰寫」。

関連スキル