# Terminal Grid8 Tiling

> 「ターミナル8分割して」「Terminal窓を整列して」と言われたら即このスクリプトを実行する。Terminal.appの窓をウルトラワイド画面(最も横長の画面)に4x2の8等分グリッドで自動整列。手作業のosascript組み立ては不要=罠(スピナー名失効・size直後position無視・行丸めクランプ揺れ)は全部スクリプト内で対処済み。

- Skill: `bokuwalily/terminal-grid8-tiling` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add bokuwalily/terminal-grid8-tiling`
- Raw SKILL.md: https://api.skillmd.com/api/skills/bokuwalily/terminal-grid8-tiling/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: bokuwalily (https://skillmd.com/u/bokuwalily)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/bokuwalily/terminal-grid8-tiling

---


## Procedure

一発実行のみ。AppleScriptを手で組み立てない。

```bash
bash ~/.claude/skills/terminal-grid8-tiling/terminal-grid8.sh
```

- 対象: **最も横長の画面**（ウルトラワイド）上のTerminal窓。他画面の窓（ノートPC側ステータス窓等）は触らない
- 出力: 最終レポート（各窓の `x,y WxH タイトル`）。上段y=画面上端・下段yは**実高で下端揃え**（例: 3440x1440なら上段-1410/下段-709）
- 検証: レポートのxが `0/860/1720/2580` の4値、yが上段・下段の各1値に揃っていれば成功

## スクリプトが内包する罠（再実装しないための知識）

1. **窓の名前参照はスピナー(⠐⠂✳)回転で失効** → 毎パスindex再スキャン+即時操作
2. **size直後のposition設定はdelay無しだと無視される**（エラーも出ない） → set間に`delay 0.2`+読み返し補正
3. **Terminalの高さは行単位に丸まる**（705px指定→44行=709px）。セル高超過分のmacOSクランプが効いたり効かなかったりでyが混在 → 収束ループ後に「実高を読んで下端揃え」の正規化パス
4. **visibleFrameがメニューバーを反映しない画面がある** → 実測でtop+30を手動控除
5. 過渡エラー(-10006/-1728)はtry+次パス再試行で自然回復

## バリエーション

- 分割数を変えたい: スクリプト冒頭の `COLS` / `ROWS` を変更（8分割=4x2、6分割=3x2）
- 窓が9枚以上: 余りは放置される（エラーにしない設計）

