# New Mission

> 新任務開工前的簡報流程：只問最必要的幾題（一次一題、能查的先查）→ 產第一版計畫（不實作）→ 送審 → 整合後給使用者確認 → 同時輸出一份優化過的任務 prompt 當這件事的基礎 → 確認後才動手 → 執行結束交一份對照計畫的收尾報告。當使用者說「新任務」「任務簡報」「開工簡報」「先問我再做」「先給計畫」「mission brief」「這個任務怎麼開始」時觸發；接到一個三步以上、或做錯不好回頭的新任務時也該主動提議跑一次。⚠️ 一兩步、可逆、做壞了重來只花幾分鐘的小事不適用，直接做。 English triggers: "new mission", "mission brief", "brief me first", "plan before doing", "ask me first", "kickoff".

- Skill: `tingyulu/new-mission` (Agent Skill)
- Install (CLI): `npx skillmds@latest add tingyulu/new-mission`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tingyulu/new-mission/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: tingyulu (https://skillmd.com/u/tingyulu)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tingyulu/new-mission

---


# /new-mission — 任務簡報

新任務開工前的固定流程：先問對問題、再給計畫、審過、使用者點頭、才動手。順便產出一份能重複使用的任務 prompt；執行結束後，交一份對照計畫的收尾報告。

> 🤖 R2-D2 時刻：R2 把死星藍圖投影出來，反抗軍圍著全像圖把攻擊路線看完、確認那條溝渠可以飛，X-wing 才升空。沒有人在看完藍圖之前就起飛。

## 為什麼需要

Claude 接到任務的預設行為是**直接開始做**。做到一半才發現三件事，每一件都要重來：

1. **這件事已經有人在做**，或已經有一張卡、一份檔案、一個負責人。另起爐灶的成本不是重工，是兩份互相矛盾的真相。
2. **範圍理解錯了**。使用者的一句話裡有三種讀法，Claude 挑了最順手的那種，做完才被退。指示越短、解讀空間越大，而 Claude 通常不會察覺自己選了哪一種解讀。
3. **產出落在沒人找得到的地方**。分析做了、品質也夠，但只活在對話裡；三個月後要用的人不知道去哪裡找。

這三件事，多數在動手前問一句就能擋掉。這支 skill 把「問哪幾句」「問完做什麼」「什麼時候才准動手」釘成固定順序。

## 什麼時候不要用

做錯的代價小於問一輪的代價，就直接做。判準：**一兩步、可逆、做壞了重來只花幾分鐘**的事不用跑這支。三步以上、會寫進共用檔案、會發訊息給別人、會改規則的，跑。

## 動作

### 0. 開場分流，然後先查、不空問

**⏰ 開場第一行先報時間**：不管接下來是分流、是先查、還是直接給計畫，回覆的**第一行**固定是

`⏰ <YYYY-MM-DD（週幾）HH:MM> <IANA 時區>` —— 例 `⏰ 2026-03-09（一）10:12 Europe/Berlin`

- **時區不可省**。人與機器不在同一個時區、或使用者正在外地時，一個沒有時區的時間讀不出來是哪裡的幾點。印的是**這台機器的時區**，不要假裝知道使用者人在哪。
- **從機器取，不要憑印象拼**。零依賴取法（macOS／Linux 通用，不需 python）：

  ```bash
  set -- $(date '+%Y-%m-%d %u %H:%M')
  case $2 in 1) w=一;; 2) w=二;; 3) w=三;; 4) w=四;; 5) w=五;; 6) w=六;; 7) w=日;; *) w=;; esac
  tz=${TZ:-$(readlink -f /etc/localtime 2>/dev/null || readlink /etc/localtime 2>/dev/null)}
  tz=${tz#:}; tz=${tz##*/zoneinfo/}
  [ -f "/usr/share/zoneinfo/$tz" ] || [ -f "/var/db/timezone/zoneinfo/$tz" ] || tz="$(date +%Z)（非 IANA 名稱）"
  [ -n "$1" ] && [ -n "$w" ] && printf '⏰ %s（%s）%s %s\n' "$1" "$w" "$3" "$tz" || echo '時間取不到完整值'
  ```

  三個地方別省：① 星期用 `%u`（1–7）對照表——`date '+%A'` 給的是 locale 決定的 `Tuesday`／`星期二`，都不是規格要的「（二）」。② **一次 `date` 取齊所有欄位**，分開呼叫會在跨午夜時湊出「新日期＋舊星期」這種看不出破綻的錯。③ **最後那行的驗證是整段的重點**：把切出來的名字拿回時區資料庫對，對不上就退成 `%Z` 縮寫並標「非 IANA」。所有「看起來合格、其實是錯的」路徑都在這裡被擋下——多層符號連結的中繼目標、連結指向非時區檔、`$TZ` 裝的是 `PST8PDT`／`:Asia/Taipei` 這類 POSIX 寫法。🚫 寧可標「非 IANA」，也不要印一個猜出來的名字。
- **回覆語言不是中文**時，週幾寫該語言的慣用形式即可（`⏰ 2026-03-09（Mon）10:12 Europe/Berlin`）；不可省的是時區，不是格式的中文外觀。
- **跑不了 shell 的環境**（網頁版、無終端機）：用當回合系統給的時刻，自己補上時區標籤；連完整值都拿不到就直接寫「時間取不到完整值」，🚫 不要包裝成一個看起來合格的時間行。

**先分流**：觸發時使用者還沒說任務是什麼（只打了觸發詞）→ 第一則訊息只問下面這個，**不掃環境、不預先查**——查證要有目標才有意義，空手先掃一輪是最貴的猜謎：

> 這次要開什麼任務？
> 1. 直接回一句話任務描述
> 2. 從待辦挑——我列重要的給你選

回 2 才去翻這個專案看得到的待辦／交接紀錄（有任務系統的見進階節），挑最重要的至多五件編號列出，使用者回數字就接那件當任務描述。觸發時已帶任務說明的，跳過此問直接往下。

**然後先查**：問使用者之前先花一輪查能查的：這個目錄、相關專案、待辦系統、最近的交接紀錄。範圍盒：**最多一輪、以任務描述的關鍵詞為索引**，引結論與出處、不貼全文——查證是為了少問一題，不是展示讀了多少。**查到的東西拿去確認，不是拿去問。** 「我查到這件事 X 已經有一張卡在做，你要接續還是另開？」比「這件事之前有人做過嗎？」省使用者一半的力氣，而且不會讓他覺得你什麼都沒讀。

### 1. 問，一次一題，最多五題

每題只在**自己查不到**的時候問。答案含糊就追一次，不追第二次（追問算同一題，不另佔名額）；三題內收斂最好。預設一次一題；使用者明說「一次問完」時才集中列出（仍最多五題，含糊仍只追一次）。

**能給編號候選就給**：第 0 步查到的東西直接生成選項（「落點：1＝掛既有的 X／2＝開新檔／3＝對話交付」），使用者回數字即可，打字量最小；生不出合理候選才開放式問。任一題使用者回「跳過」或「都可以」→ 採用最合理的預設值，並把該預設寫進第 2 步的【假設】格——少答一題不等於少一條風險，風險改由假設清單浮上檯面。

1. **要什麼**：「做完之後，你手上多了什麼？」一句話講不清楚的，通常是兩件事，先拆。
2. **不要什麼**：「哪些不算在這次範圍裡？」邊界比目標更常被猜錯。
3. **既有**：把第 0 步查到的拿出來確認：「已經有 X，接續還是另開？」查不到就明說「我查了 A、B、C 都沒有」，讓使用者知道掃過哪裡。
4. **落點**：「產出放哪、給誰看？」問這題的判準：**三個月後有人要找這份東西，他會去哪裡找？那裡有嗎？** 候選裡永遠給一個具體檔案路徑檔位（如「2＝落檔 `<工作目錄>/mission-reports/<日期>-<任務>.md`」）；列「對話交付」時旁邊明標「（對話結束即消失）」。這題的「跳過」預設＝落檔到上述路徑，**不是**對話交付——落地優先於蒸發。
5. **完成判準**：「做到什麼算完成？怎麼驗？」這題的答案會原封不動進計畫，執行完拿它對照。

⚠️ 使用者說「我記得之前有立過 X」：**先查證再回答**。查不到就說查不到，不要順著講。他的記憶可能是對的（那是真缺口，要新立）也可能是錯的（那就省一件事），兩種都比順著講好。

### 2. 第一版計畫，不實作

固定骨架，每格都要填，填不出來的寫「未知，需確認」而不是留白：

```
【目標】一句話
【範圍】內：…／外：…
【既有】接續 X／另開，理由
【步驟】每一步配一個驗證方式（怎麼知道這步真的做完了）
【假設】每一條假設都是一個要被使用者看見的風險
【產出】形式／落點；收尾報告放哪也在這格先寫明（沒指定就寫預設 `<工作目錄>/mission-reports/…`；無檔案系統的純聊天環境才寫「對話交付」）
【完成判準】照第 1 步第 5 題的答案
```

🚫 這一步**不動手**。不建檔、不改檔、不發訊息、不寫進共用系統。計畫本身可以落在暫存區。

**比例原則**（與第 7 步同一條）：貼近「什麼時候不要用」下限的小任務，計畫每格壓成一行、第 3 步的自審與審稿表一條一行。格不刪、行要短，一屏讀得完。⚠️ 第 5 步的優化 prompt **不在壓縮範圍**——它的用途是複製貼上重用，永遠用模板區塊完整呈現；壓成一行使用者會認不出那是一份 prompt，等於廢掉功能（行為實測踩過）。

### 3. 送審

計畫先過一輪審，再給使用者。零依賴版是自審；有外部審稿工具的接在進階節。

自審五問，逐題回答、一題一到兩句：

1. 這個計畫解的是使用者問的那件事，還是我順手想做的事？
2. 每一步的驗證方式寫了嗎？「做完」是誰說了算？
3. 哪一步做錯的代價最高？計畫裡有沒有把它放在前面或設停損？
4. 假設清單裡，哪一條錯了整個計畫要重來？
5. 這個計畫有沒有繞過使用者剛剛講的某個「不要」？

（這五問審的是**計畫**；收工後審**結果**的另一組五問見 [`damage-report`](../damage-report/SKILL.md)——一頭一尾，兩組不重複。）

**審稿意見的處理紀律**：診斷可以收，處方要自己判。審稿者抓到問題常常是對的，但它給的改法是通用平均值，未必合這件事。逐條標「採納／不採納＋理由」，不採納的也要留下，讓使用者看得到你拒絕了什麼。

### 4. 給使用者審，等明確的「做」

呈現三樣：整合後的計畫、審稿意見處理表、下一節的優化 prompt。結尾固定給編號選項，然後**停**：

> 1. 開始執行　2. 要改（回我改哪裡）　3. 先擱置

🔴 **沒有明確確認不動手。** 「看起來可以」「應該沒問題」不算確認；「回 1」或「做」「開始」「go」這類明確的字才算，且是對**目前這份計畫**的直接回覆——引用、反問、或討論規則時提到這些字眼都不算。沒等到就不動，即使計畫看起來很安全。

使用者改了計畫的某一段：回報**改動點**，不是只給新版。「我把第三步移到第一步、把 X 從範圍外移進範圍內」這一句讓他一眼能否決；重寫過的整份計畫他要重讀才能發現你理解對不對。

### 5. 輸出優化後的任務 prompt

用第 1 到 4 步收集到的東西填這個模板。它的用途是**下次同一件事、或這件事中斷後重開**，貼上去就能從對的地方開始，不用再問一輪：

```
【任務】<第 1 題的答案，一句話>
【範圍】內：<…>／外：<第 2 題>
【既有】<接續哪張卡／哪份檔，或「查過 A、B、C 皆無，全新」>
【產出】形式：<…>／落點：<第 4 題>
【完成判準】<第 5 題，原話>
【已確認的假設】<第 2 步假設清單裡使用者點頭的那些>
【不要做的事】<使用者在過程中說過的每一個「不要」>
【驗證要求】每一步做完要能指出證據在哪；憑印象的標「未驗證」；掃不到的明說「掃不到」，不靜默跳過
【收尾】做完交收尾報告（見第 7 步）：計畫／執行過程／成果對照／誠實帳／落點五格，明講什麼沒做、什麼沒驗、什麼是猜的
```

📝 這份 prompt 在第 4 步跟計畫一起**呈現**（預覽）；**拿到「做」之後**才隨計畫存進使用者指定的落點——簡報階段不把計畫或 prompt 寫進使用者的落點／共用系統（第 2 步的暫存區草稿、進階節的送審暫存檔不算落地）。

### 6. 確認後執行

拿到明確的「做」才開始。執行中遇到會影響範圍、風險或完成判準的計畫外狀況（新發現、新阻礙、範圍要變），**停下來回報，不自作主張擴大或縮小**。每完成一步，當下記一行「做了什麼、證據在哪」——第 7 步的【執行過程】從這份記錄長出來，不是靠回憶補。

### 7. 收尾報告

執行結束後——做完、做一半停掉、失敗收場都算——交一份完整報告，不是一句「做完了」。固定骨架，對照第 2 步的計畫逐格填；沒有內容的格寫「無」，不刪格：

```
【計畫】使用者核可的最終版；中途改過的列改動點，不重貼全文。第 5 步的優化 prompt **全文**附在本格末——prompt 是這件事可重跑的濃縮版，少了它報告就當不了下次的起點；照第 2 步的規矩不壓行
【執行過程】逐步對照計畫：每步一行「做了什麼 → 證據在哪」（指令輸出、檔案路徑、連結）；計畫外狀況單獨列：發生什麼、當時怎麼裁決、有沒有停下來回報
【成果】完成判準逐條對照：過的附證據，沒過的講差在哪
【誠實帳】沒做：略過或降級的步驟＋原因／沒驗：做了但沒驗證的＋驗證等級（看起來對 ≠ 驗過 ≠ 實際跑過）／猜的：哪些結論是推論不是證據
【落點】產出實際放在哪；與計畫落點不一致要明講原因
```

報告放哪，照第 2 步【產出】格寫明的收尾報告落點走：計畫核可了落點就落檔；落點是既有載體（卡片、討論串）就附加上去；計畫沒指定、但環境有檔案系統（裝得了本 skill 的環境都有）→ 落預設路徑 `<工作目錄>/mission-reports/<日期>-<任務>.md` 並在報告裡寫明；只有**無檔案系統的純聊天環境**（lite 簡版的情境）才在對話交付並明說「報告未落檔」——這不算降級失敗。

**比例原則**：貼近「什麼時候不要用」下限的小任務，五格各壓成一行照樣交齊；有沒過的完成判準、或出過計畫外狀況的，不准壓。

（收工前另有一組自審五問，見 [`damage-report`](../damage-report/SKILL.md)——有裝的環境可先跑五問、拿結果餵【誠實帳】；沒裝也沒關係，五格自足，缺了姊妹 skill 不降級。）

## 🚦 鐵則

- 🔴 **沒有明確的「做」不動手**。計畫再安全也一樣，這是整支 skill 存在的理由。
- ⏰ **開場第一行報時間**，含 IANA 時區；從機器取，不憑印象拼，取不到就照實說取不到。
- 🚫 **不空問**。能查的先查，查到的拿去確認，查不到的明說掃過哪裡。唯一例外＝空手觸發：先問任務是什麼，再開始查。
- 📝 **一次一題，最多五題**。含糊追一次，不追第二次；能給編號候選就給，讓使用者回數字。
- ⚠️ **計畫裡的每一條假設都要被使用者看見**。藏在心裡的假設，錯了沒人知道。
- 📝 **審稿的診斷可收、處方自己判**。逐條標採納與否，不採納的留理由。
- 📝 **改了計畫就回報改動點**，不只給新版。指示越短，這句越必要。
- ✅ **完成判準在動手前就寫好**，執行完拿它對照，不是做完才定義什麼叫完成。
- 📝 **優化 prompt 要落在使用者指定的地方**（拿到「做」之後落檔），不是只留在對話裡。
- 📝 **收尾交報告，不是一句「做完了」**——計畫、執行過程、成果、誠實帳、落點五格齊；小任務壓成五行也要齊。**落地優先於蒸發**：有檔案系統就不讓報告只活在對話裡。

## 進階：接上你自己的審稿工具

檔案版的自審五問是零依賴的最小公倍數，不是天花板。有跨模型審稿工具的，在第 3 步把計畫送出去審，拿回來的意見照同一套「診斷可收、處方自己判」處理。若環境裡有本包的 [`ai-review`](../ai-review/SKILL.md)：把計畫存成暫存檔，**用完整路徑呼叫**（別打裸命令名）`<ai-review skill 目錄>/scripts/ai-review.sh <計畫檔> --rubric research --context "<這個任務要解什麼>"`，回 `skipped_*`／`failed_*` 就照舊自審並明講「本次僅自審」。

⚠️ **送審前先想資料界線**：計畫裡常帶著人名、客戶名、內部路徑、卡號。送給外部模型前去識別化（換成〔角色〕〔專案〕這類佔位符），路徑與檔名也算資料，別以為只送內容就安全。送了什麼在回報裡明講。

有任務系統的（待辦、看板、卡片），第 0 步的「先查」與空手觸發的「從待辦挑」就查那裡；第 5 步的 prompt 落點也可以直接掛在那張卡上，下次接手的人打開那張卡，全文就在。

