<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Flutter on RANDX</title>
		<link>https://randx.tokyo/jp/tags/flutter/</link>
		<description>Recent content in Flutter on RANDX</description>
		<generator>Hugo</generator>
		<language>jp-JP</language>
		
		
		
		
			<lastBuildDate>Sat, 29 Aug 2026 12:00:00 +0900</lastBuildDate>
		
			<atom:link href="https://randx.tokyo/jp/tags/flutter/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Flutter AI ツール</title>
				<link>https://randx.tokyo/jp/posts/flutter-ai-tools/</link>
				<pubDate>Sat, 29 Aug 2026 12:00:00 +0900</pubDate>
				<guid>https://randx.tokyo/jp/posts/flutter-ai-tools/</guid>
				<description>&lt;h2 id=&#34;flutter-ai-ツールキット&#34;&gt;&#xA;  Flutter AI ツールキット&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#flutter-ai-%e3%83%84%e3%83%bc%e3%83%ab%e3%82%ad%e3%83%83%e3%83%88&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;マルチターン状態&lt;/strong&gt;：複数ターンにわたる会話コンテキストを自動的に保持します。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;ストリーミングレスポンス&lt;/strong&gt;：リモートモデルが生成するテキストをトークン単位でリアルタイムに表示します。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;リッチテキスト対応&lt;/strong&gt;：Markdown、太字、画像、箇条書きなどのフォーマット出力をサポートします。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;音声入力&lt;/strong&gt;：&lt;code&gt;record&lt;/code&gt; パッケージによる音声入力を可能にし、明示的なデバイス権限が必要です。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;マルチメディア添付&lt;/strong&gt;：&lt;code&gt;file_selector&lt;/code&gt; と &lt;code&gt;image_picker&lt;/code&gt; を使用してファイルアップロード（画像、動画、音声、PDF）を調整します。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;カスタムレスポンスウィジェット&lt;/strong&gt;：開発者が長いプレーンテキストを専用のインタラクティブな UI コンポーネントに置き換えることができます。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;プラガブル LLM&lt;/strong&gt;：&lt;code&gt;LlmProvider&lt;/code&gt; により UI をモデルから分離し、Firebase またはカスタムモデル拡張をサポートします。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;セキュアなプロジェクト設定&lt;/strong&gt;：クライアントサイドの API キー漏洩を防止し、課金を管理するために、リンクされた Firebase プロジェクトが必要です。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;genui-sdk&#34;&gt;&#xA;  GenUI SDK&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#genui-sdk&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;A2UI プロトコル&lt;/strong&gt;：リモートエージェントがコードではなく動的なウィジェット構成をストリーミングできる JSON ベースのプロトコル。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;会話ファサード（Conversation Facade）&lt;/strong&gt;：ローカル履歴を管理し、動的サイクルを統括する主要なエントリーポイント。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;A2uiTransportAdapter&lt;/strong&gt;：LLM からの生のテキストストリームを構造化された &lt;code&gt;A2uiMessage&lt;/code&gt; レイアウトコマンドに解析します。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Surface コントローラー&lt;/strong&gt;：Surface のライフサイクルを統括し、アクティブなレンダリング画面を管理します。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;DataModel（データモデル）&lt;/strong&gt;：特定のデータパスにバインドされたウィジェットをリアクティブに更新する、セントラルかつ監視可能な状態ストア。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;ウィジェットカタログ&lt;/strong&gt;：事前登録されたウィジェット（&lt;code&gt;CatalogItem&lt;/code&gt;）の定義済みリストで、AI が構成できる内容の厳密な契約として機能します。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;mcp-サーバー&#34;&gt;&#xA;  MCP サーバー&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#mcp-%e3%82%b5%e3%83%bc%e3%83%90%e3%83%bc&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;基本プロトコル&lt;/strong&gt;：Dart の実験的な &lt;code&gt;dart_mcp&lt;/code&gt; は &lt;em&gt;Ping&lt;/em&gt; や &lt;em&gt;Progress&lt;/em&gt; などのハンドシェイクをサポートしますが、&lt;em&gt;Cancellation&lt;/em&gt;（キャンセル）は未対応です。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;CLI ツール統合&lt;/strong&gt;：Dart SDK のコアコマンド（解析、コンパイル、プロジェクト作成、フォーマット）をスキーマ検証済みのユーティリティとして公開します。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;変換レイヤー&lt;/strong&gt;：構造化された MCP 引数を標準の &lt;code&gt;List&amp;lt;String&amp;gt;&lt;/code&gt; に変換し、既存の &lt;code&gt;CommandRunner&lt;/code&gt; に渡します。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Stdio トランスポート&lt;/strong&gt;：&lt;code&gt;stdioChannel&lt;/code&gt; を使用して標準入出力経由の低遅延通信を実現します。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;自己修正エラー&lt;/strong&gt;：例外をスローする代わりに &lt;code&gt;CallToolResult.isError: true&lt;/code&gt; で失敗を伝達し、AI が自己修正できるようにします。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;agent-スキルagent-skills&#34;&gt;&#xA;  Agent スキル（Agent Skills）&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#agent-%e3%82%b9%e3%82%ad%e3%83%abagent-skills&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;段階的開示&lt;/strong&gt;：検出時にメタデータを読み込み、関連性があると判断された場合にのみ指示（&lt;code&gt;SKILL.md&lt;/code&gt;）を完全に読み込みます。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;ワークスペースストレージ&lt;/strong&gt;：ダウンロードした、またはカスタムのワークスペース指示を &lt;code&gt;.agents/skills&lt;/code&gt; ディレクトリに保存します。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;公式カタログ&lt;/strong&gt;：一般的なタスク向けに &lt;code&gt;flutter/agent-plugins&lt;/code&gt; や &lt;code&gt;dart-lang/skills&lt;/code&gt; などのキュレーションされたリポジトリにあります。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;パッケージ配布&lt;/strong&gt;：ライブラリ作者がスキルを pub.dev パッケージにバンドルでき、&lt;code&gt;dart run skills@ get&lt;/code&gt; でインストール可能です。&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;統合スキル CLI&lt;/strong&gt;：標準の &lt;code&gt;npx skills add&lt;/code&gt; CLI セットアップにより、複数アシスタントの設定を自動化します。&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
			</item>
			<item>
				<title>Flutterロードマップ2026：ポイントまとめ</title>
				<link>https://randx.tokyo/jp/posts/flutter-roadmap-2026/</link>
				<pubDate>Fri, 27 Feb 2026 12:00:00 +0900</pubDate>
				<guid>https://randx.tokyo/jp/posts/flutter-roadmap-2026/</guid>
				<description>&lt;h2 id=&#34;-レンダリングandroid版impellerの完成&#34;&gt;&#xA;  🎨 レンダリング：Android版Impellerの完成&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#-%e3%83%ac%e3%83%b3%e3%83%80%e3%83%aa%e3%83%b3%e3%82%b0android%e7%89%88impeller%e3%81%ae%e5%ae%8c%e6%88%90&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Androidにおける&lt;em&gt;Impeller&lt;/em&gt;レンダラーへの移行が完了に近づいています。&#xA;Android 10以降では従来のSkiaバックエンドが廃止され、カクつき（ジャンク）が解消されてすべてのユーザーに滑らかなアニメーションが提供されます。&#xA;高速な起動と安定したパフォーマンスの要として、Impellerはチームの本命技術であり続けます。&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
