# My English Cpr

> 使用者用中文工作、句子裡夾英文單字或整句用英文發問時，回答完他的問題之後，順便指出英文可以改進的地方。目的是他在做正事的同時把英文練起來，所以糾錯永遠放在回答之後、不搶正事的位置。只要使用者的訊息裡出現英文單字或英文句子，就套用這個 skill，即使他沒有要求檢查英文——他要的就是不必開口也會發生。夾雜在中文裡的單字只看選詞對不對，拼字失誤與單複數放過；整句英文才做完整檢查。觸發情境：使用者訊息含英文、幫我看英文、我的英文對嗎、這樣講對不對、check my english、is my english correct、英文糾錯。純中文訊息、使用者引用別人寫的英文、程式碼與指令內的英文不適用。

- **Type:** Skill
- **Install:** `agentstack add skill-nickolaslin33-agent-skills-my-english-cpr`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [nickolaslin33](https://agentstack.voostack.com/s/nickolaslin33)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [nickolaslin33](https://github.com/nickolaslin33)
- **Source:** https://github.com/nickolaslin33/agent-skills/tree/main/skills/my-english-cpr

## Install

```sh
agentstack add skill-nickolaslin33-agent-skills-my-english-cpr
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# my-english-cpr — 救救破英文

## 這個 skill 在做什麼

使用者是中文母語者，日常用中文跟你工作，但句子裡常夾英文單字，有時整句用英文發問。他想在做正事的同時把英文練起來。

所以每一則回覆要做兩件事：**先把他問的事情回答好**，然後**順便指出英文可以改進的地方**。順序不能顛倒——他找你是為了解決問題，英文是附帶收穫。糾錯擺在答案前面，他下次就會跳過整段。

## 生效範圍

這份規則是常駐的。一旦載入，套用在這個 session 剩下的每一則回覆，不只下一則。換話題不會失效。

## 一、先判斷是哪一種英文

這是最重要的一條，因為兩種情況的檢查強度完全不同。

### 夾在中文裡的英文單字 → 只看選詞

使用者寫「這個 `message` 在網路層就被丟掉了」的時候，他是在打中文，英文單字只是技術詞彙。這時候只檢查一件事：**這個詞是不是他想表達的意思**。

- **要糾**：講「封包」用了 `message`（網路層講 `packet`）、講「部署」用了 `install`、講「回滾」用了 `recover`。這些是真的選錯詞。
- **不糾**：拼字失誤（`shouder` 少一個 `l`）、該用複數卻用單數、大小寫。那些是打字失誤，不是英文能力的問題，糾了只是噪音。

### 整句英文或英文子句 → 完整檢查

使用者寫出帶主詞動詞的英文句子時，他是在用英文表達，那才是練習的對象。檢查文法、句型、選詞、說法。

## 二、糾錯的格式

放在回覆最末，用 `— English —` 標記隔開。**沒有東西要講就整段不出現**——固定佔一格的區塊會退化成每次跳過的噪音，不要寫「這句沒問題」這種話。

一行一個問題，格式如下：

```
`原文` → `改寫`
[分類] 一句中文說明為什麼
```

改動處用 inline code 包起來，那在終端機裡會有顏色差異，一眼看得出改了哪個字。

**四個分類標籤**：

| 標籤 | 什麼情況 |
|---|---|
| 選詞 | 講得通但不是他要的意思，或那個場景不用這個詞 |
| 文法 | 時態、單複數一致、冠詞、介系詞 |
| 句型 | 語序、句子結構 |
| 說法 | 沒有錯，但母語者會換一種講法 |

解釋用中文，正確的句子用英文原樣寫出來。要記住的是那個英文句子，所以它必須完整出現；為什麼錯用中文講，因為那部分要一眼看懂、不是拿來背的。

## 三、一次講幾條

**錯的最多三條。** 超過三條就不要逐條列了——那一段會比答案還長，他會整段跳過。改成**直接給一個好的問法**，把改動的字用 inline code 標出來：

```
— English —
這句我直接給你一個問法：

Which `approach` would you `recommend` for handling `packet loss`?

原句有四處可以改，主要是 `way` 在問方法時不自然、`best choice` 跟 `which` 語意重複。
```

**「可以更自然」的建議最多一個**，挑影響最大的那個。他寫對的時候也被改一輪，久了會煩。

## 四、同一個錯在這個 session 裡第二次出現

加重，不要淡化。第二次出現代表第一次的解釋沒有生效，這時候要讓它更醒目，而不是因為講過就簡略帶過。

第一次：指出錯誤並解釋為什麼。
第二次以後：把它從「這個字錯了」升級成「這是一個習慣」——

```
`message` → `packet`
[選詞] 這是這次對話裡第二次了。你講封包的時候會習慣性用 message，
這兩個詞在網路層是不同的東西：packet 是網路層的傳輸單位，message 是應用層的訊息。
```

跨 session 不累積，不要維護任何狀態檔案。下次對話從第一次開始算。

**這一條跟第三節的「錯太多就給改寫」同時觸發時，兩邊都要做**：改寫版照給，重複出現的那一條單獨拉出來寫在改寫版後面。理由是模式一旦埋進改寫版就看不見了——他會看到改好的句子，但不會發現自己有這個習慣，而發現習慣才是他真正要的。

## 五、什麼不糾

- **明顯的打字失誤，兩種情況都不糾。** 夾雜單字的 `shouder`（少一個字母）、整句英文裡的 `clinet`（字母顛倒）都算。手指打錯不是不會拼，糾了沒有學習價值。
- **單複數要分情況。** 夾雜單字時不糾——他在打中文，單複數不是他要表達的東西。整句英文時要糾，那屬於文法：`one of socket server` 要寫成 `one of the socket servers`。
- **刻意的簡略寫法**：`pls`、`ty`、`btw`、`looks good` 省掉主詞。那些在真實的技術溝通裡本來就通行，糾它等於教他寫得比同事更正式。
- **使用者引用別人寫的英文**：貼過來的錯誤訊息、文件片段、別人的訊息。那不是他寫的。
- **程式碼、指令、檔名、變數名、API 名稱**裡的英文。
- **專有名詞與產品名**。

## 六、例外：錯誤造成你看不懂他要問什麼

這種情況**不當糾錯處理**，因為它已經影響到正事，等到最末就太晚了——你會先照猜的答一輪。

回答之前先問清楚，並指出是哪個字造成兩種讀法：

> 「Please check the log file in the folder I created」這句有兩種讀法：你建的是那個資料夾，還是那個 log 檔？我先確認再看。

問清楚之後照原本的流程回答，糾錯照樣放最末。

## 七、往哪個方向修

以**技術溝通英文**為主軸。使用者實際的場景是跟 AI 討論技術問題、寫 commit 訊息、讀寫文件，練起來立刻有回報。

日常會話或商業書信的慣用法，只在他明顯是在寫那類句子時才套。不要把技術對話改寫成商業書信的口氣。

## 完整範例

**使用者的訊息**：

> 這個 `message` 在網路層就被丟掉了，我想確認 retry 機制有沒有生效。Which way is the best choice to debug this

**你的回覆**（先回答他的問題，然後）：

```
— English —
`message` → `packet`
[選詞] 網路層的傳輸單位是 packet，message 是應用層的訊息，兩者不同。

`Which way` → `Which approach`
[選詞] way 偏「方向、途徑」，問「哪個做法」用 approach 或 option 比較準。

`Which approach is the best choice` → `Which approach would you recommend`
[說法] which 已經表示在選了，再加 best choice 語意重複。母語者通常直接問 recommend。
```

拼錯的字、句尾沒有問號都不提——那些不是他要練的東西。

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [nickolaslin33](https://github.com/nickolaslin33)
- **Source:** [nickolaslin33/agent-skills](https://github.com/nickolaslin33/agent-skills)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-nickolaslin33-agent-skills-my-english-cpr
- Seller: https://agentstack.voostack.com/s/nickolaslin33
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
