管理人

このブログは、IT関係を中心とした勉強サイトです。

Healthy arugula and radish salad with seeds on white plate viewed from above.

FastAPIでCORSを設定して別ポートのフロントから呼べるようにする

別ポートのフロントエンドからAPIを呼ぶと起きるCORSエラーを、FastAPIのCORSMiddlewareで解消する手順を、ハンズオン形式で解説します。

A detailed close-up of an agave plant with dewdrops, captured in Tequila, Mexico.

FastAPIで非同期APIエンドポイントを作る(Pydanticでの型付け・パスパラメータ・エラー応答)

FastAPIを使って、非同期APIエンドポイントを作る方法を解説します。Pydanticによるリクエストデータの型定義と自動バリデーション、パスパラメータの扱い、HTTPExceptionを使ったエラー応答、自動生成ドキュメント(/docs)の活用まで、書籍を扱うAPIを例に、順を追って説明します。

Captivating view of Ticino's mountainous landscape with sunlight streaming through the peaks.

httpxとasyncio.gatherで複数のHTTPリクエストを並行実行する(タイムアウト・例外処理付き)

複数のHTTPリクエストを1件ずつ順番に処理すると、応答待ち時間が積み上がって全体が遅くなります。本記事ではPythonのhttpxとasyncio.gatherを使い、複数地点の天気をOpen-Meteoから並行で取得する手順を、タイムアウトと「1件失敗しても全体を止めない」例外処理を含めてハンズオン形式で解説します。

Spacious living room with a large sofa and rustic decor.

複数のWeb APIを共通の関数インターフェイスにまとめる方法-アダプタパターン入門

複数のWeb APIをサービスごとに直接叩くと、リクエスト形式や認証、単位の違いが呼び出し側に漏れて保守が難しくなります。本記事ではPythonとhttpxを使い、2つの天気API(OpenWeatherMapとOpen-Meteo)を題材に、アダプタパターンで違いを吸収する方法をハンズオンで解説します。

A rustic structure nestled in green, rolling hills.

Claude Codeのサブエージェント入門:タスクをエージェントに委任する

2026/7/4    ,

Claude Codeのサブエージェントは、メインとは別のコンテキストで動作する独立したClaudeのインスタンスです。本記事では、サブエージェントの仕組み、定義ファイルの書き方、/agents コマンドによる作成方法、呼び出し方、コードレビュー用エージェントの実例までを解説します。

Aerial view of an ocean pool surrounded by crashing waves.

SKILL.mdの書き方と使い方:Claude Codeに手順を覚えさせる

2026/7/27    ,

Claude Codeのスキル(SKILL.md)の書き方を解説します。descriptionによる起動の仕組み、frontmatterの各フィールド、配置場所、Pythonスクリプトの同梱方法を、議事録整形とCSV集計の2つの実践例で具体的に説明します。

A cool citrus beverage with ice and a dried citrus garnish, set outdoors on a rustic wooden table.

Claude Code から GitHub の MCP サーバーに接続する方法(PAT 認証)

2026/7/27    ,

GitHub には、Claude Code をはじめとする MCP 対応クライアントからリポジトリや Issue、Pull Request にアクセスできる公式の MCP サーバーが提供されています。本記事では、このサーバーに Personal Access Token(PAT)で接続し、Claude Code から GitHub のデータを参照・操作できる環境を構築する手順をハンズオン形式で解説します。Fine-grained PATの発行から登録、動作確認、チームへの共有まで一連の手順を扱います。

A yellow bicycle casting shadows on a cobblestone path by an Amsterdam canal.

Windowsでいつの間にかメモリが足りなくなっている場合の原因調査

2026/7/4    

Windowsで「いつの間にかメモリが足りなくなる」現象の原因を、タスクマネージャーとリソースモニターを使って特定する手順をまとめました。プロセス一覧の確認方法から、メモリリークを疑う判断基準、原因アプリ特定後の対処までを段階的に解説します。

A minimalistic photo of a person in a hat against a large orange wall, perfect for design needs.

Claude Code の MCP 設定をチームで共有する方法(.mcp.json の活用)

2026/7/27    ,

Claude CodeのMCPサーバー設定をチームメンバーと共有する方法を、天気予報MCPサーバーを題材にハンズオン形式で解説します。.mcp.jsonの生成、${VAR}形式による環境変数化、APIキーなど機密情報の.envファイルでの管理、.gitignoreの整備、Gitリポジトリへの共有までを一通り扱います。

Aerial view of a winding road through Xinjiang's desert landscape with unique geological formations.

Claude Code に MCP サーバーを接続する設定方法(用語解説と基本コマンド)

2026/7/27    ,

Claude Code に MCP サーバーを接続する設定方法を解説します。Claude Desktop との設定の違い、トランスポートとスコープの考え方、基本コマンドの使い方を整理した上で、公式の天気予報サーバーを題材に、WSL と Windows ネイティブの両方で接続手順を実演します。

Close-up of a striped tabby cat peacefully sleeping on a stone surface outdoors.

CLAUDE.mdの書き方と運用:Claude Codeにプロジェクトのルールを渡す

2026/7/27    ,

Claude Codeにプロジェクトの文脈を渡す設定ファイル「CLAUDE.md」について、公式ドキュメントを軸に書き方と運用のポイントを解説。配置場所別の記述例から段階的開示、Hookとの連携まで実例で紹介します。

Beautiful white gazebo with pillars in a lush Malaysian garden. Perfect for serene moments.

Claude Code CLIの導入と基本操作(Windows)

2026/7/27    , ,

Anthropic社のAIコーディング支援ツール「Claude Code」のCLI版をWindows環境に導入する手順を解説します。WSLとWindowsネイティブの両方のインストール方法、認証、対話モード・ワンライナーモードの基本操作、よく使うコマンドまでを一通りまとめました。

Classic wooden bench inside a vintage train with view of adjacent carriage.

VS Code Dev Containersで作るPython開発環境(Docker入門)

2026/7/27    ,

VS CodeのDev Containers拡張機能を使い、Dockerコンテナ上にPython開発環境を構築する手順を解説します。devcontainer.jsonの書き方から、コンテナ内でのコード補完・実行・ファイル同期まで、一通りの流れを紹介します。

Close-up of fresh green plums, lemon, and salt on a table with leaves, depicting a traditional Turkish snack.

Docker Composeの導入:複数コンテナの構成管理と起動の自動化(Docker入門)

2026/7/27    

Docker Composeを用いた複数コンテナの構成管理と、システム起動の自動化について解説します。単体のコンテナを動かす段階から先に進み、Webサーバー、データベース、管理ツールといった複数のサービスが連携するシステムを、一つの設定ファイル(docker-compose.yml)で制御するための方法を示します。また、セキュリティ対策(.env)やコンテナ同士の連携を保証するヘルスチェック(自動待機)などについても取り扱います。

A vibrant painted lady butterfly (Vanessa cardui) perched on yellow marigolds in Mersin, Türkiye.

名前付きボリュームとコンテナ間ネットワーク(Docker入門)

2026/7/27    

Dockerコンテナの「使い捨て」の強みを活かしつつ、データの永続化とコンテナ間通信を実現する方法を解説。名前付きボリュームとバインドマウントの使い分け、ユーザー定義ネットワークによる名前解決の仕組みを、Adminerを使った実践ハンズオン形式で学べます。