Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AIでとっ散らかったmacOS環境をAnsibleでお片付け / Automating mac...

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.
Avatar for yuki yuki
September 11, 2026

AIでとっ散らかったmacOS環境をAnsibleでお片付け / Automating macOS Cleanup with Ansible and AI

MOSH Tech Meetup #5 あなたが「好きなこと」× エンジニアリング
https://mosh.connpass.com/event/400858/

AIに作業を任せることで勝手にいろんなパッケージがインストールされます。せっかくなのでAnsibleでコード管理をしませんか?という話をしました。

Avatar for yuki

yuki

September 11, 2026

More Decks by yuki

Other Decks in Technology

Transcript

  1. 自己紹介 名前: ほにゃにゃ X: @honyanyas(yuki / ほにゃにゃ) 登壇資料 Speaker Deck

    https://speakerdeck.com/ honyanya/ 所属: インターネット広告代理店子会社 エンジニア(いろいろやってます) 開発生産性コミュニティ D-Plus 山手ウエスト (新宿周辺技術コミュニティ) SNSアイコン Xアカウント @honyanyas https://x.com/honyanyas 趣味: YouTube|お酒|麻雀 ハッシュタグ: #MOSHTech 2
  2. 悩み AI を走らせると インストール許可 を求められる 「とりあえず入れてもらう」それがたくさん Bash(brew install jq) Bash(brew

    install peco) Bash(brew install glab) → Yes → Yes → Yes ...何が入ったか、もう分からない ハッシュタグ: #MOSHTech 3
  3. Ansible リポジトリの構成 mac.yml hosts/localhost roles/ homebrew/ tasks/main.yml vars/main.yml # roles/homebrew/tasks/main.yml

    - name: Install formulae community.general.homebrew: name: "{{ homebrew_packages }}" state: present # ← ここが宣言 # roles/homebrew/vars/main.yml homebrew_packages: - gh - jq - peco $ ansible-playbook -i hosts/localhost mac.yml ハッシュタグ: #MOSHTech 5
  4. install を検知したら追加する hooks # ~/.claude/hooks/track-install.sh(PostToolUse: Bash) cmd=$(jq -r '.tool_input.command') if

    grep -Eq 'brew +install' <<< "$cmd"; then jq -n '{hookSpecificOutput: {hookEventName: "PostToolUse", additionalContext: "インストールを検知。roles/homebrew/vars/main.yml にも追記して、追記したことを報告すること"}}' fi # ~/.claude/settings.json "hooks": {"PostToolUse": [{"matcher": "Bash", "hooks": [ {"type": "command", "command": "~/.claude/hooks/track-install.sh"} ]}]} ハッシュタグ: #MOSHTech 6
  5. 追加されました(実ログ) $ claude -p "glab が無いので brew install glab で入れてください。"

    Bash(brew install glab) ... glab 1.117.0 [hook] インストールを検知。roles/homebrew/vars/main.yml にも追記して報告すること > glab をインストールしました。あわせて roles/homebrew/vars/main.yml の > homebrew_packages に glab を追記しました(gh と jq の間、アルファベット順)。 $ diff vars.before roles/homebrew/vars/main.yml > - glab 安心だね ハッシュタグ: #MOSHTech 7