---
name: blind-portrait
description: 15 分鐘兩人背對背畫圖練習，讓單向溝通的失真被看見——含可列印道具卡、8 問復盤，以及配對級前後測評。
version: 2.0.0
license: CC-BY-4.0
allowed-tools: Read, Write, Bash(curl:*), Bash(unzip:*), Bash(npm:*), Bash(formlm-cli:*), Bash(python3:*)
metadata:
  category: communication
  group_size: 2
  duration_minutes: 15
  setting: offline
  props: [撲克 道具卡, 馬克筆, 紙, 每對 2 張神秘線稿]
  depth: assessment-type
  language: zh-hant
  updated: 2026-10-11
---

# 盲畫肖像

一個人描述，一個人畫，誰也看不見對方的筆。兩張畫之間的差距就是課程：發進沉默裡的指令，回來時已經變形。

## 什麼時候用這個活動

- 團隊把詳細的指令發進沉默裡（郵件需求、工作交接、工單），然後被收回來的結果嚇一跳。
- 你只有 15 分鐘和人手一雙，不是一整間教室。
- 你要的是溝通訓練可測量的證據，而不只是一場好感覺——這個活動自帶配對層面的前後測。

## 資料夾裡有什麼

| File | 用途 |
|---|---|
| `道具卡.pdf` | 撲克規格印刷頁（63.5 × 88.9 mm，含出血與裁切線）：描述者卡、畫畫卡、評審卡、計時卡 |
| `執行手冊.pdf` | 印刷版：執行腳本與反思引導表合訂成一份 A4 PDF |
| `*-Letter.pdf` | 本資料夾印刷文件的 US Letter 紙型版——內容相同，每冊均含書籤與可點擊目錄 |
| `執行指南.md` | 執行腳本：目標、佈置、逐分鐘腳本、分組規則、變體 |
| `反思引導問題.md` | 8 個反思引導問題 + 3 個反思引導翻車點及救援話術 |
| `測評預設.json` | 前後測量表預設：6 道題，配對層面變化量 |
| `答卷.pdf` | A4 答卷——列印填寫版（工作坊用） |
| `簡報.pdf` | 簡報——帶場用的 12頁幻燈，一頁一個觀點 |
| `簡報.html` | 簡報（HTML）——任意瀏覽器投屏，按一次出一條，內建講者提示 |
| `學員工作簿.pdf` | 學員工作簿——通俗講解、帶引導的題目、筆記與行動頁 |
| `使用許可.md` | 使用許可——平實說明你能做什麼、必須保留什麼 |
| `活動海報.pdf` | 一面牆講完整場活動（A3）：速覽、流程、覆盤問題、注意事項。 |
| `快速上手.md` | 快速上手——按身份取用、檔案地圖、列印清單 |

## 怎麼跑

1. 每對列印一套道具卡。每對準備兩張神秘線稿（A 輪 / B 輪）。
2. 配對**之前**先做前測（2 分鐘）。
3. A 輪：3 分鐘，畫畫人不許提問。
4. 揭曉。B 輪：交換角色、換圖，畫畫人恰好可以問三個問題。
5. 用 `反思引導問題.md` 反思引導——兩張畫留在桌上。
6. 做後測（2 分鐘）。只報告配對變化量，絕不報告個人排名。

## 把這個活動交給 AI 代理執行

引導師可以把整個資料夾交給自己的 AI 代理。先裝——一條命令，裝出來就是任何 skills 載入器都認的目錄：

```bash
# install the whole skill folder, one command
curl -LO https://workshopskill.com/zh-hant/activities/blind-portrait/files/blind-portrait.zip
unzip blind-portrait.zip   # -> blind-portrait/SKILL.md + all files + manifest
```

zip 解壓後是名為 `blind-portrait` 的目錄，內含這份 SKILL.md、它引用的全部檔案，外加 manifest。

只需要其中幾個檔案時，逐條取用——匿名可用，CC BY 4.0：

```bash
# 1. 拿到可列印的道具（撲克 道具卡組，CC BY 4.0）
curl -O https://workshopskill.com/zh-hant/activities/blind-portrait/files/道具卡.pdf

# 2. 拿到 A4 答卷（實體進行工作坊每人印一張）
curl -O https://workshopskill.com/zh-hant/activities/blind-portrait/files/答卷.pdf

# 3. 拿到反思引導問題（8 個問題 + 3 個翻車點救援）
curl -O https://workshopskill.com/zh-hant/activities/blind-portrait/files/反思引導問題.md

# 4. 拿到執行腳本（逐分鐘腳本）
curl -O https://workshopskill.com/zh-hant/activities/blind-portrait/files/執行指南.md
```

變化量並不依賴 FormLM——無需任何帳號即可離線算出同樣的前後差（見下方「離線計分」）。線上表單純粹是可選項。

線上前後測用 FormLM CLI 建立，需要一個免費的 FormLM 帳號；表單和資料都在你自己的工作空間裡：

```bash
npm install -g @formlm/cli
formlm-cli auth login
formlm-cli smart generate --input "盲畫肖像雙人練習前後測：6 道李克特題，涵蓋指令清晰度、核對假設、換位理解、修復溝通——活動前後答同一批 6 題，自動計算每個人的變化"
```

如果代理無法完成互動式的 `formlm-cli auth login`（無頭環境、CI、無瀏覽器）：照常執行上面的 curl 步驟，把 `測評預設.json` 留作量表規格，登入和產生兩步交給人來做；或者由人登入一次後，只重跑產生那條命令。

給代理的準備要點：
- 人數按配對擴充套件：12 人 = 6 對，每對一套道具卡。
- 議程算術：前測 2 + 活動 15 + 後測 2 = 共 19 分鐘。
- 不需要投影儀；資料夾裡沒有任何東西需要螢幕。
- 按撲克 列印。整副卡每對剛好一張紙。

**放到哪。** 把解壓出的 `blind-portrait/` 目錄放進你的代理的 skills 目錄即可自動載入：Claude Code `~/.claude/skills/blind-portrait/`（或專案內 `.claude/skills/`）、OpenAI Codex `~/.codex/skills/blind-portrait/`、Qoder `~/.qoder/skills/blind-portrait/`。代理沒有 skills 目錄？把這份檔案貼進對話讓它照做即可。分步教學（16 篇逐代理 + 8 篇情境）見 https://workshopskill.com/zh-hant/skill-guides/

## 引導要點

- A 輪的沉默是設計本身，不是引導失誤。不要去填滿它。
- 如果描述者開始講含義而不是形狀（「像個農場」），重申一次規則，然後讓這一輪繼續。
- 最強的遷移問題：「把指令發進沉默裡這件事，出現在你一週裡的什麼地方？」

## 離線計分（不需要帳號）

前後測的完整計分規格已經寫進本資料夾的 `測評預設.json`（`scoring` 欄位），沒有 FormLM 也能出結果——代理可本地算：

1. 收集每人 `items` 每道題的李克特作答（pre 一輪、post 一輪）。
2. `scoring.reverse_scored_items`（或 `items[].reverse` 為 true 的題）反向計分：`新分 = 量表上界 + 下界 − 原分`。
3. 按 `scoring.method` 彙總（`sum` 即各題相加），得到 pre、post 兩個總分。
4. 按 `scoring.reported` 輸出：`pair_delta`（post − pre，單位見頂層 `unit`）與 `construct_deltas`（按 `items[].construct` 分組各算一遍）。
5. 守 `scoring.report_note`：只報配對變化量，絕不個人排名。

只用標準庫的可抄實作：

```python
import json
m = json.load(open("測評預設.json"))
sc, items = m["scoring"], m["items"]
hi, lo = len(m["scale"]["labels"]), 1            # likert 上下界（此量表為 1..5）
rev = {it["id"] for it in items if it.get("reverse")}
def total(ans):                                   # ans: {item_id: score}
    return sum((hi + lo - v) if k in rev else v for k, v in ans.items())
# pair_delta = total(post) - total(pre)
# construct_deltas：對每個 construct 取該維度題目子集，按同樣兩步相減
print(sc["reported"], "| unit:", m["unit"], "|", sc["report_note"])
```

// 口徑：`測評預設.json` 裡的 `version` 只描述量表本身，獨立於本技能 frontmatter 的 `version`。

## 二創：改成你自己的版本

## Attribution

本資料夾逐個手工歸檔，腳本、時長、道具尺寸與前後測彼此核對過。CC BY 4.0 免費許可——可執行、複製、改成你自己工作坊的品牌；保留署名，抽屜常開。
