AIに「思いつき」をさせる ― 出力の多様性を設計する 8 つの工夫
目次 はじめに AI はなぜ同じことしか言わないのか 人間はなぜ「思いつく」のか AI の出力に多様性を持たせる 8 つの工夫 実際に作ったもの やってみて面白かったこと まとめ 参考文献 1. はじめに 「ミールプランニングアプリ」「家事リマインダーアプリ」「支出トラッカーアプリ」。 AI にアプリのアイデアを毎週聞いてみたところ、3 週間連続で、ほぼ同じ答えが返ってきました。 筆者は Claude Code のスキルシステム(スラッシュコマンドで呼べる自作の自動化)を使って、毎週 Reddit や Hacker News、はてなブックマークを巡回し、世の中の不満やペイン...
動作確認の自動化で学ぶ自己進化 — AIが操作を覚えて次回より賢くなる仕組み
1. はじめに 前回の記事では、テストの「操作」と「判定」を別々のエージェントに分けることで判定精度が向上する話を書きました。 https://zenn.dev/kyoichi/articles/ai-qa-agent-02-llm-as-judge 判定の問題は解決しましたが、もう一つ大きな非効率が残っていました。AI は毎回、アプリの画面構造をゼロから探索するのです。 最終回の本記事では、テストを実行するたびに AI がアプリの画面構造を覚えていき、次回はより効率的に動作する「自己進化」の仕組みを解説します。Minecraft の AI(Voyager)がスキルを自動獲得する研究...
動作確認の自動化で学ぶ LLM as a Judge — 「操作するAI」と「判定するAI」を分ける理由
1. はじめに 前回の記事では、自然言語で「何を確認したいか」を書くだけで AI がシミュレータを操作してテストする仕組みの全体像を紹介しました。 https://zenn.dev/kyoichi/articles/ai-qa-agent-01-overview 実装を進める中で、最も苦労したのが「テスト結果の判定」でした。AI にシミュレータを操作させること自体はうまくいったのですが、操作した AI 自身に「合格か不合格か」を判定させると、どうしても甘い判定になってしまいます。 この記事では、その問題を「LLM as a Judge」というパターンの観点から解説します。本質は「AI...
AI時代、エンジニアに「論理」は要らなくなる
この記事は僕の感想に過ぎない。でも、最近ずっと考えていることがある。AI時代のプロダクト開発において、エンジニアの「論理化能力」や「言語化能力」は、武器じゃなくて足枷になるんじゃないか。続きをみる
意図ベースでiOSアプリの動作確認を自動化する方法
はじめに iOS アプリを開発していると、避けて通れない作業があります。シミュレータを起動して、画面をポチポチ操作して、「ちゃんと動くか」を目で確認する——手動の動作確認です。 この作業は退屈で時間がかかるわりに、やらないわけにはいきません。XCUITest でテストコードを書いて自動化する方法もありますが、UI が変わるたびにテストコードの保守が必要になり、それ自体が新たな負担になります。 本記事では、この手動の動作確認 を AI エージェントに丸ごと委譲するアプローチを紹介します。テストコードを書く代わりに、「メッセージが送信できるか確認して」と自然言語で書くだけ。あとは AI ...
AIエージェントに"チームワーク"をさせたら、人間がなぜコミュニケーションするのかが見えてきた
AIエージェントを複数体つなげて、チームのように仕事をさせたかった。LLMは人間の脳を模した知的計算機能だ。1体でも賢い。じゃあ複数体でコミュニケーションさせたら、もっと賢くなるんじゃないか。人間が会社やチームで知的作業をしているのと同じように、AIエージェントにもチームを組ませたい。続きをみる
XcodeBuildMCP×Claude Codeスキルシステムで、iOSビルドを自動化する
1. はじめに こんにちは、個人でiOSアプリ開発をしていて、Claude Codeのプラグインシステムを活用してiOS開発ワークフローを自動化しています。 前回の記事では、Xcode公式MCP(xcrun mcpbridge)の紹介と、CLIフォールバックを組み合わせたハイブリッド戦略を紹介しました。 https://zenn.dev/kyoichi/articles/claude-code-plugin-xcode-mcp-hybrid あの記事から実運用を続けるなかで、ビルドに関しては完全に方針転換しました。 Xcode公式MCPのSwiftUIプレビュー(RenderPrev...
ClaudeCodeの何がすごいのか考えてみた
同じAIモデルを使っているのに、仕組みを変えただけで正答率が42%から78%に跳ね上がった。これは2025年に公開されたCORE-Benchという科学的再現性タスクの評価結果だ。使われたモデルはどちらもClaude Opus 4.5。モデルは同じ。変わったのは「どうやってAIに仕事をさせるか」という仕組みの部分だけ。続きをみる
AIが開発コストをゼロにしても、残る複雑性の正体
AIがコードを書くコストをゼロにしたとき、ソフトウェア開発で一番難しいことは何になるんだろう。最近、この問いについてずっと考えている。続きをみる
AIで圧倒的な生産性を手にした先にあるもの ― エンジニアが本当に向き合うべき問い
社会人1年目の個人的感想と見解を述べてるだけだと思って軽く読んで欲しい。そんなことわかってんだよ!!と思ったら読むのをやめてほしい。続きをみる
個人開発者の開発方法は「どれだけ頭を使わないか」で決めている
昔の自分は、プログラムを書く日はずっとパソコンの前にいた。 座りっぱなしで、頭をフル回転させて、1日が終わるころにはぐったりする。プログラムを書くこと自体が好きだったので最高だったが、それもAIに奪われてしまった。でも最近は、個人開発のKPIを変えた。 「どれだけコードを書いたか」ではなく、「どれだけ開発タスクに脳のリソースを使わなかったか」 を見るようにしている。続きをみる
一人で17個のSwiftパッケージを育てている個人開発者の1日
平日は普通の iOS エンジニアとして働いている。でも GitHub には、自分が一人でメンテしている 17 個の Swiftパッケージがある。デザインシステム、ルーティング、API クライアント、認証、課金、画像キャッシュ、LLM 統合……。全部、自分の個人開発アプリで実際に使っているものだ。よく「いつやってるの?」と聞かれる。答えは土日。何も予定がない休日が、自分にとっての「もう一つの仕事場」になっている。ある土曜日の記録を、そのまま見せようと思う。続きをみる
Claude Codeにアプリの申請任せたら、意外にうまくいった
Claude Codeって基本開発の実装部分が限界のツールだと思ってた。仕様を渡して、実装させて、テスト通して。それが守備範囲だろうと。App Storeの申請みたいな「コードじゃない作業」は、結局自分でやるしかないと思い込んでいた。続きをみる
Xcode MCP×Claude Codeプラグインで、iOSビルドを自動化する
目次 1. はじめに 2. Xcode MCP Serverとは 3. MCPだけでは足りない理由 4. プラグインの設計思想 5. 実装の詳細 6. 使い方 7. まとめ 参考リンク 1. はじめに こんにちは、個人でiOSアプリ開発をしていて、最近では「読書メモリー」という本の管理アプリをリリースしました。 日常的にClaude Codeを使ってiOS開発をしています。コードを書く、ビルドする、テストを走らせる、エラーを直す。このサイクルをClaude Codeの中で完結させたい。そう考えて、Claude Codeのプラグインを作りました。 2026年2月、Xcode ...
AIにコードを書かせてる間、みんな何してるの?
Claude Code にプロンプトを投げて、ターミナルの文字がバーッと流れていく。「……で、この間なにしよう」続きをみる
XcodeのAI機能のプロンプト、読んでみた
Xcode 26 に AI アシスタントが載ってから、もう半年以上になる。コード補完、チャット、エージェントモード。みんな普通に使っていると思う。続きをみる
バイブコーディングがOSSを壊し始めている、という話
AIがコードを書いてくれる時代、最高じゃん?プロンプトを投げれば、ライブラリ選定からコード実装まで全部やってくれる。数年前までStack Overflowを必死にスクロールしていた自分が嘘みたいだ。続きをみる
GitHubに自分のすべてを集約してみる
「GitHubに自分のすべてを雑に放り込むリポジトリ作って、人生すべてをプッシュしてるんだけど」友人にそう言ったら、5秒くらい真顔で固まられた。続きをみる
フルスタックSwift開発を始めるテンプレートを作りました
目次 はじめに テンプレートの全体構成 Shared層:単一の真実の源 Backend層:クリーンアーキテクチャの実践 iOS層:モジュラーなパッケージ構成 開発ワークフロー デプロイメント テンプレートとしての設計意図 まとめ 1. はじめに 本記事は「サーバーサイドSwiftでiOSアプリ開発をどこまで効率化できるか」シリーズの最終回です。 これまでのシリーズでは、以下のライブラリを紹介してきました。 第1回: Swift Configuration(環境変数管理) 第2回: swift-statable(状態管理マクロ) 第3回: swift-api-cont...
サーバーサイドSwiftを使う場合のiOSアーキテクチャ
目次 はじめに 従来のアーキテクチャの振り返り サーバーサイドSwiftを使う場合の前提 各層の変化 新しいパッケージ構成 まとめ 1. はじめに 本記事は「サーバーサイドSwiftでiOSアプリ開発をどこまで効率化できるか」シリーズの第5回です。 以前の記事「ViewModelを使わない、SwiftUIらしいiOSアーキテクチャ」では、iOSアプリ単体を前提とした6パッケージ構成のアーキテクチャを提唱しました。iOSアプリを単体で構築する場合は、そのアーキテクチャで問題ありません。 本記事では、サーバーサイドSwiftを使う場合に、そのアーキテクチャがどのように変化するか...
サーバーサイドSwiftをより使いやすく
目次 はじめに サーバーサイドSwiftとVapor swift-api-serverの設計思想 主要コンポーネント サービス実装パターン ミドルウェアとエラーハンドリング まとめ 1. はじめに 本記事では、サーバーサイドSwiftの実装詳細を隠蔽し、ビジネスロジックの構築に集中できるようにするライブラリswift-api-serverを紹介します。 本記事は「サーバーサイドSwiftでiOSアプリ開発をどこまで効率化できるか」シリーズの第4回です。第1回はSwift Configuration、第2回はswift-statable、第3回はswift-api-contr...
サーバーとクライアントでAPIの型を共有する方法
目次 はじめに なぜ型安全なAPI定義が必要なのか swift-api-contractの設計思想 開発の全体像 API契約の定義 サーバー側での活用 クライアント側での活用 まとめ 1. はじめに 本記事では、Swiftマクロを使って型安全なAPI定義を実現するライブラリswift-api-contractを紹介します。 本記事は「サーバーサイドSwiftでiOSアプリ開発をどこまで効率化できるか」シリーズの第3回です。第1回はSwift Configuration、第2回はswift-statableを取り上げました。今回はAPI定義の型安全な共有を扱います。 AP...
SwiftUIの状態管理をマクロで仕組み化する
目次 はじめに State層の設計思想 AsyncState:排他的状態表現 @Statableマクロによる自動化 EnvironmentによるDI統合 OperationTrackerによる操作追跡 アーキテクチャへの統合 まとめ 1. はじめに 本記事では、SwiftUIの状態管理をマクロで仕組み化するライブラリswift-statableを紹介します。 本記事は「サーバーサイドSwiftでiOSアプリ開発をどこまで効率化できるか」シリーズの第2回です。前回はSwift Configurationを取り上げました。今回はマクロを使った状態管理の仕組み化を扱います。 また...
Apple公式Swift Configurationを試してみた
目次 はじめに Swift Configurationとは 基本的な使い方 応用的な機能 swift-envで目指したAPI設計 まとめ 1. はじめに 本記事では、2025年12月に1.0が正式リリースされたApple公式の設定管理ライブラリ「Swift Configuration」を紹介します。基本的な使い方から応用機能までを解説し、最後に自分のユースケース向けに作ったラッパーライブラリについても触れます。 なお、本記事はサーバーサイドSwiftでiOSアプリ開発をどこまで効率化できるかを検証するシリーズの第1回です。私は2025年12月頃から、Vaporを使ったバック...
Swiftで画像IDからの多段取得をキャッシュするAsyncImageライクなライブラリ設計
目次 はじめに 解決したい課題 AsyncImageライクなAPI設計 Environment経由のDI 実装の詳細 まとめ 1. はじめに こんにちは、個人でiOSアプリ開発をしていて、最近では「読書メモリー」という本の管理アプリをリリースしました。 本記事では、リモート画像の表示とキャッシュを効率的に行うライブラリ「swift-cached-remote-image」について解説します。 iOSアプリでリモート画像を扱う場面は多くあります。ユーザーのプロフィール画像、投稿された写真、商品画像など、APIから取得した画像を表示する機会は頻繁にあります。SwiftUIにはA...
SwiftUIでカメラ・ライブラリからの画像取得を1行で実装する方法
目次 はじめに 目指したAPI設計 ViewModifierによるAPI実現 UIKitのラップとUIViewControllerRepresentable 権限管理の実装 まとめ 1. はじめに こんにちは、個人でiOSアプリ開発をしていて、最近では「読書メモリー」という本の管理アプリをリリースしました。 本記事では、SwiftUIで「カメラまたは写真ライブラリから画像を取得する」機能を実装する際のAPI設計と実装について解説します。 iOSアプリで画像を扱う場面は多くあります。プロフィール画像の設定、写真の投稿、書類のスキャンなど、ユーザーが画像を選択・撮影する機能は頻...
プロトコル指向でデザインシステムを抽象化する - Swift/SwiftUI実践
目次 はじめに なぜデザインシステムをコードで定義するのか プロトコル指向とデザインシステムの相性 デザインシステムの構成要素 Environmentを活用したAPI設計 カタログアプリで具体化を確認する まとめ 1. はじめに こんにちは、個人でiOSアプリ開発をしていて、最近では「読書メモリー」という本の管理アプリをリリースしました。 本記事では、SwiftUIアプリ向けのデザインシステムをSPMパッケージとして設計・実装した経験を共有します。特に、Swiftのプロトコル指向プログラミングの考え方をデザインシステムに適用することで、アプリごとにカスタマイズ可能な再利用性...
なぜSwiftのSendableはデフォルトにならなかったのか
目次 1. はじめに 2. Copyableがデフォルトな理由 3. Sendableがデフォルトになりそうな理由 4. Sendableがデフォルトにならなかった理由 5. なぜpublic型には暗黙的なSendable準拠がないのか 6. Swiftの方向性 7. まとめ 参考リンク 1. はじめに 本記事は、筆者がSwift EvolutionやSwift Forumsの議論を調べてみて考えたことをまとめたものです。公式見解ではないですし、すべてを調べ尽くしたわけでもありません。「こういう見方もあるんだな」くらいの気持ちで読んでいただければ嬉しいです。 最近のSwif...
Swift Concurrency用語完全ガイド
目次 1. はじめに 2. Actor・Isolation 関連 3. Sendable・型システム関連 4. Task 関連 5. async/await・実行モデル関連 6. 安全性・データ競合関連 7. 混同されやすいペア 8. Swift固有ではない一般的な用語について 9. まとめ 参考リンク 1. はじめに 本記事について 本記事は、筆者が Swift Concurrency の用語を正確に理解するために、Swift Evolution Proposals や The Swift Programming Language(公式ドキュメント)を調査した内容をま...
Codableの延長線で考える、Swift Foundation ModelsによるLLMデコード
目次 はじめに Foundation Modelsの概要 アプリでLLMを使いたいとき LLMCodableの設計思想 API設計とプロトコル構成 実装のポイント まとめ 1. はじめに 本記事では、iOS/macOS 26で導入されたFoundation Modelsフレームワークを使って、Codableライクなインターフェースで曖昧なテキストを構造化データに変換するライブラリ「LLMCodable」について解説します。この記事では、私が開発する際に考えた設計思想やライブラリ自体の使い方を紹介していきます。 まずFoundation Modelsの概要を説明し、次にアプリ...
SwiftUI Environmentをジェネリックに拡張する
目次 はじめに EnvironmentValuesにジェネリックなプロパティを定義できない問題 標準的なEnvironmentの仕組み ジェネリックなEnvironment拡張の実装 アプリ側での使い方 まとめ 1. はじめに こんにちは、個人でiOSアプリ開発をしていて、最近では「読書メモリー」という本の管理アプリをリリースしました。 SwiftUIで画面遷移を実装するとき、NavigationLinkやnavigationDestinationを使う方法があります。しかし、画面遷移を管理する責務を持ったオブジェクトがいて、そのメソッドを呼ぶことで遷移するという形の方がシ...
Claude Code SkillsでSwift Packageのリリース準備を自動化する
目次 目次 1. はじめに 2. 一人で開発するOSSのリリース管理 3. Claude Code SkillsとGitHub Actionsで楽にする 4. リリースフローの設計 5. 実装 5.1 GitHub Actions 5.2 Claude Code Skills 6. まとめ 参考リンク 本記事で紹介したプラグイン 関連記事 著者が開発したアプリ 著者 1. はじめに こんにちは、個人でiOSアプリ開発をしていて、最近では「読書メモリー」という本の管理アプリをリリースしました。 個人でアプリを開発していると、デザインシステム、APIクライアント...