# 課前準備 (Windows)
本頁整理課程當日前需要完成的所有準備事項,請在上課前確認每個步驟都完成。
---
## 需要創建的帳號
在開始安裝任何軟體之前,請先確認以下帳號都已經註冊並可以正常登入。
- **Claude** — <https://claude.ai>
- **GitHub** — <https://github.com>
- **AWS** — <https://aws.amazon.com>(需要先提供信用卡,但流量沒用超過不會收費)
- **Pencil.dev** — <https://www.pencil.dev>
---
## 需要安裝的軟體(Windows 端)
請在課程前將以下軟體安裝完畢並確認可以正常開啟。**一定要照順序安裝**且**能選預設就選預設**
### WSL2
開啟 **PowerShell並以系統管理員身分執行**,輸入:
```powershell
wsl --install
```
> 安裝完成後輸入使用者名稱及密碼(自己取)並**重新開機**
再次開啟 **PowerShell並以系統管理員身分執行**,輸入:
```powershell
wsl --update
```
### Microsoft Visual Studio Code
<https://code.visualstudio.com/download>
安裝完成後,在powershell執行:
```powershell
code --install-extension ms-vscode-remote.remote-wsl
```
### VS Code 擴充套件
開啟 VS Code,在 Extensions 搜尋並安裝以下套件:
- `pencil.dev extension`
- `Jupyter`
### SourceTree for Windows
<https://www.sourcetreeapp.com>
>要求電子郵件就填創github的email
### Docker Desktop(必須全程保持開啟)
1. 按 `Win + R`,輸入 `control` 開啟控制台
2. 前往 **程式集 → 開啟或關閉 Windows 功能**
3. 勾選以下三項:
- **Windows Hypervisor 平台**
- **Windows 子系統 Linux 版**
- **虛擬機器平台**
4. 點確定後**重新開機**
在microsoft store 搜尋**Docker Desktop**並下載 或是在
<https://docs.docker.com/desktop/setup/install/windows-install/> 下載
>
>推薦用github帳號登入,
>下載失敗可以參考**附錄3**
### PuTTY
<https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html>
> 選擇 **64-bit x86** 的 MSI 安裝包(`putty-64bit-0.83-installer.msi`)
### Windows Git
<https://gitforwindows.org>
>選預設選到底
### Claude Desktop
<https://claude.ai/download>
### claude code(in powershell)
```powershell
irm https://claude.ai/install.ps1 | iex
```
### Pencil.dev Desktop
<https://www.pencil.dev/downloads>
>進設定->mcp 把**除了**claude和claude desktop以外的選項都關掉
---
## 需要在 WSL2 內執行的指令(有問[Y/n]都打Y)
開啟 Ubuntu 終端(在開始界面搜尋**ubuntu**或是**wsl**),依序執行以下指令:
>接下來都會在這個地方執行所有指令
```
cd
sudo apt update
```
### Claude Code
```bash
curl -fsSL https://claude.ai/install.sh | bash
```
### uv
```bash
curl -LsSf https://astral.sh/uv/install.sh | sh
```
### npm 與 Node.js
```bash
sudo apt install nodejs npm -y
```
### unzip
```bash
sudo apt install unzip -y
```
### Pencil CLI
```bash
npm install -g @pencil.dev/cli
```
### AWS CLI v2
```bash
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
```
### 產生 SSH Key
在 WSL2 的 Ubuntu 終端中執行:
```bash
mkdir -p ~/.ssh
chmod 700 ~/.ssh
cd ~/.ssh
ssh-keygen -t ed25519 -C "your_email@example.com"
```
> - 將 `your_email@example.com` 換成你自己的 email
> - 遇到詢問檔案存放位置和設定密碼,都直接按 **Enter**
> - 產生後會出現 `id_ed25519`(私鑰)和 `id_ed25519.pub`(公鑰)兩個檔案
### SSH Agent(keychain)
```bash
cd
sudo apt install keychain
```
安裝完成後執行:
```bash
echo 'eval "$(keychain --eval --quiet $HOME/.ssh/id_ed25519)"' >> ~/.profile
source ~/.profile
```
### 設定 AWS
```bash
aws configure
```
依序填入以下資訊:
```
AWS Access Key ID: (從 AWS Console → IAM → 建立存取金鑰取得)
AWS Secret Access Key: (同上)
Default region name: us-west-2
Default output format: json
```
key ID以及Access Key取得方式
1. 打開aws <https://aws.amazon.com/tw/console/>並登入
2. 在左上搜尋欄輸入IAM並按下IAM
3. ctrl+F 搜尋**Quick Links**
4. 點擊 **我的安全身份碼**(找不到的話可以登入後使用這個連結<https://us-east-2.console.aws.amazon.com/iam/home?region=us-east-2#/security_credentials>)
5. 點擊建立存取金鑰
6. 建立後複製輸出的 **存取金鑰**->是Key ID,**私密存取金鑰** ->是Secret Access Key
### 設定 Git 全域資訊
```bash
git config --global user.email "your_email@example.com"
git config --global user.name "Name"
```
> 將上面的 email(用來創github的email) 和 Name 換成你自己的資訊。
### 下載vscode pencil extension in wsl
1.執行
```
code
```
>會跳出vscode界面
2.在extenions處搜尋pencil並下載
>如果沒跳出install in wsl:Ubuntu的話,點擊附圖右下角**齒輪左邊**的按鈕(如附圖),並點擊trust

### github cli
```
(type -p wget >/dev/null || (sudo apt update && sudo apt install wget -y)) \
&& sudo mkdir -p -m 755 /etc/apt/keyrings \
&& out=$(mktemp) && wget -nv -O$out https://cli.github.com/packages/githubcli-archive-keyring.gpg \
&& cat $out | sudo tee /etc/apt/keyrings/githubcli-archive-keyring.gpg > /dev/null \
&& sudo chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg \
&& sudo mkdir -p -m 755 /etc/apt/sources.list.d \
&& echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null \
&& sudo apt update \
&& sudo apt install gh -y
```
## Claude Code MCP 設定
> PowerShell 版的 Claude Code 需要在 WSL 的 VS Code 中啟用 MCP 擴充套件
編輯 WSL 內的設定檔:
```bash
code .claude.json
```
新增"github"欄位,內容如下(搜尋mcpServers, 裡面必須已經有pencil欄位):
可以在"mcpServers": \{ 後按一個enter 再貼上github那段
>**絕對不要動到pencil那個欄位**, 如果沒有pencil欄位, 就是上上一步沒做
```json
{
"mcpServers": {
"github": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN=YOUR_TOKEN",
"ghcr.io/github/github-mcp-server"
]
},
"pencil": {
"command": "/home/<你的WSL使用者名稱>/.vscode-server/extensions/highagency.pencildev-0.6.44/out/mcp-server-linux-x64",
"args": [
"--app",
"visual_studio_code"
],
"env": {},
"type": "stdio"
}
}
}
```
>不要動到**pencil部分**
### 取得 GitHub Personal Access Token
1. 前往 GitHub → **Settings** → **Developer Settings** → **Personal access tokens**
2. 選擇 **Tokens (classic)** → **Generate new token (classic)**
3. 選90天,勾選所有權限
4. 複製產生的 token,填入上方設定檔的 `YOUR_TOKEN`
5. **記得**`Ctrl + S`
---
---
## 綁定 SSH 公鑰到 GitHub
1. 複製公鑰內容(以下指令輸出之內容):
```bash
cat ~/.ssh/id_ed25519.pub
```
2. 前往 GitHub → **Settings** → **SSH and GPG keys** → **New SSH key**
3. 貼上複製的內容 → 點擊 **Add SSH key**
## 在claude desktop 執行
1. 開啟claude desktop
2. 點擊左上角的Customize
3. 點擊Github Integration
4. 點擊connect
5. 進入<https://github.com/apps/claude>並點擊或install(如果是configrue就不用接著做了)
6. 一直點下一步
---
# check
全部裝完後確認
## Windows 端(在 PowerShell 中執行)
```powershell
wsl --list --verbose
code --version
git --version
docker --version
```
> 每個指令都應該回傳版本號或清單資訊,如果出現錯誤代表該工具沒裝好。
## WSL2 (在開始界面搜尋**ubuntu**或是**wsl**)
### 確認軟體安裝
```bash
claude --version
uv --version
node --version
npm --version
aws --version
git --version
gh --version
keychain --version
```
> 每個指令都應該回傳版本號,如果出現 `command not found` 代表該工具沒有安裝成功,請回到對應步驟重新安裝。
### SSH Key 確認
```bash
# 確認金鑰檔案存在
ls ~/.ssh/id_ed25519 ~/.ssh/id_ed25519.pub
# 查看公鑰(最後面應該顯示你的 email)
cat ~/.ssh/id_ed25519.pub
```
### SSH Key 確認載入
```bash
ssh-add -l
```
>輸出結果尾巴要有your_email@example.com (ED25519)
### 確認git config
```bash
git config --global --list
```
>應該要輸出mail和使用者名稱
### 測試SSH到GitHub是否成功
```bash
ssh -T git@github.com
```
>要回傳HI! \...\...
---
## 附錄(先不要用)
### 附錄1. SSH Agent 啟動
```bash
ssh-add ~/.ssh/id_ed25519
```
### 附錄2. 使用本地 Ollama 作為 Anthropic API
若要測試 將 Claude Code 指向本地的 Ollama 服務:
```bash
export ANTHROPIC_AUTH_TOKEN=ollama
export ANTHROPIC_BASE_URL=http://localhost:11434
```
### 附錄3. Docker安裝失敗參考
在開始頁面搜尋`powershell`並以系統管理員身分執行
```
Remove-Item -Path "C:\ProgramData\DockerDesktop" -Recurse -Force
```
執行後再嘗試安裝