<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>開発環境 on j1nn0 lab</title>
    <link>https://j1nn0.com/tags/development_environment/</link>
    <description>Recent content in 開発環境 on j1nn0 lab</description>
    <generator>Hugo -- 0.164.0</generator>
    <language>ja-JP</language>
    <lastBuildDate>Wed, 15 Jul 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://j1nn0.com/tags/development_environment/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>2026年の開発環境</title>
      <link>https://j1nn0.com/posts/dev-environment-2026/</link>
      <pubDate>Wed, 15 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://j1nn0.com/posts/dev-environment-2026/</guid>
      <description>&lt;p&gt;今年は、デスク周りと開発ツールを見直した。
パッケージ管理はまだ整理の途中だ。&lt;/p&gt;
&lt;h2 id=&#34;この記事で分かること&#34;&gt;この記事で分かること&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;USB-Cドックを中心にしたデスク周りとMacBookの接続構成&lt;/li&gt;
&lt;li&gt;VS Code と iTerm2 と tmux をやめて選んだエディタとターミナル&lt;/li&gt;
&lt;li&gt;フォントとテーマ、パッケージ管理を見直している現状&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;毎朝のケーブル抜き差しに嫌気が差していた&#34;&gt;毎朝のケーブル抜き差しに嫌気が差していた&lt;/h2&gt;
&lt;p&gt;自分はリモートワークではなく毎日出社している。
職場のセキュリティポリシーで、退社時にマシンをロッカーにしまわなければならない。
デスクに置きっぱなしにできないため、出退勤時や会議のたびに、複数のケーブルを抜き差ししていた。
モニター2台分のケーブル、キーボードのケーブル、トラックパッドの充電ケーブル、ACアダプタ。
これら4〜5本のケーブルを毎回抜き差しするのは、小さいようで積もり積もるとかなりのストレスになる。&lt;/p&gt;</description>
    </item>
    <item>
      <title>AIエージェントをコンテナに入れず、devcontainer execで動かしている話</title>
      <link>https://j1nn0.com/posts/ai-agent-devcontainer-exec/</link>
      <pubDate>Tue, 07 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://j1nn0.com/posts/ai-agent-devcontainer-exec/</guid>
      <description>&lt;h2 id=&#34;この記事で分かること&#34;&gt;この記事で分かること&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;ホストで動かすAIエージェントから Dev Container 内の PHP と Node.js を実行する方法&lt;/li&gt;
&lt;li&gt;&lt;code&gt;devcontainer exec&lt;/code&gt; を使うときの実行ルールとサンドボックスの扱い&lt;/li&gt;
&lt;li&gt;コンテナ内にAIエージェントを入れない構成を選んだ理由&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Laravel と Vue を使った Web アプリの開発環境は、Dev Container CLI で起動する Docker Compose コンテナの中に置いている。
PHP や Node.js のランタイムもコンテナ内にある。
一方で、AI エージェントはホストマシン上で動かしている。
そのため、エージェントが &lt;code&gt;php artisan&lt;/code&gt; や &lt;code&gt;pnpm run build&lt;/code&gt; をそのまま実行すると、エラーになる。&lt;/p&gt;</description>
    </item>
    <item>
      <title>ターミナル起動を1秒も遅くせず、Homebrewを裏で安全に自動更新する</title>
      <link>https://j1nn0.com/posts/brew-daily-update/</link>
      <pubDate>Fri, 03 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://j1nn0.com/posts/brew-daily-update/</guid>
      <description>&lt;p&gt;Homebrew の更新をターミナル起動時に同期実行すると、起動が遅くなる。
この構成では更新確認だけを裏で走らせ、更新が必要なときだけ通知から実行する。&lt;/p&gt;
&lt;h2 id=&#34;この記事で分かること&#34;&gt;この記事で分かること&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Homebrew の更新確認を1日1回だけ非同期で実行する仕組み&lt;/li&gt;
&lt;li&gt;Caskの更新で &lt;code&gt;sudo&lt;/code&gt; が必要になったとき、macOSの認証ダイアログを使う設定&lt;/li&gt;
&lt;li&gt;ターミナル起動を待たせない更新確認と、更新が見つかったときの通知&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;同期実行の遅さと自動更新の壊れやすさを避ける&#34;&gt;同期実行の遅さと自動更新の壊れやすさを避ける&lt;/h2&gt;
&lt;p&gt;ターミナル起動時に毎回「brew update」を同期実行すると、シェルの起動が遅くて耐えられない。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Lazygit × aicommit2 で AI コミットメッセージ生成を組み込む</title>
      <link>https://j1nn0.com/posts/lazygit-aicommit2/</link>
      <pubDate>Thu, 02 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://j1nn0.com/posts/lazygit-aicommit2/</guid>
      <description>&lt;h2 id=&#34;この記事で分かること&#34;&gt;この記事で分かること&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Lazygit をコミット操作に使っている理由&lt;/li&gt;
&lt;li&gt;aicommit2 でコミットメッセージを生成する設定&lt;/li&gt;
&lt;li&gt;Lazygit から生成したメッセージを使う流れ&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;lazygit-を選んだ経緯&#34;&gt;Lazygit を選んだ経緯&lt;/h2&gt;
&lt;p&gt;VSCode の &amp;ldquo;Generate Commit Message&amp;rdquo; に慣れきっていたせいで、エディタを乗り換えたとき、コミットメッセージの自動生成も一緒に消えた。
&lt;code&gt;fix&lt;/code&gt; や &lt;code&gt;wip&lt;/code&gt; で逃げる日が増えたが、aicommit2 と Lazygit の customCommands を組み合わせて解決した。
Ctrl+a で候補を 2 件生成し、選んでエディタで確認してコミットするところまで 1 操作で完結する。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
