セルフホスト型サービス
koxudaxi/datamodel-code-generator avatar
koxudaxi/datamodel-code-generator

datamodel-code-generator:スキーマをPython型へ変換

プロジェクト概要:OpenAPI、JSON スキーマ、GraphQL、Avro、Protobuf、生の JSON/YAML/CSV から Pydantic v2 モデル、データクラス、TypedDict、msgspec.Struct を生成します。

スター 4,018フォーク 460PythonMIT

ひと目でわかる

これは何?
OpenAPI、JSON Schema、GraphQL、Avro、Protobuf、XSD、生データからPythonモデルを生成するCLI。
誰に向いている?
datamodel-code-generator は schema.json と standard-py312-20260826 を使うREADMEのコマンドを実行し、StrEnum、Annotated、ge=0を入力制約と照合する。複雑な $ref は practical-py312-20260826 でも確認する。
商用利用できる?
できます。MIT は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
今もメンテナンスされている?
されています。直近 1 日以内に新しいコミットがあります。
何の言語で書かれている?
主に Python です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月15日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

datamodel-code-generator:対応する入力と出力モデルの種類

READMEには幅広い入力形式が列挙されている:OpenAPI 3(YAML/JSON)、AsyncAPI、JSON Schema、MCPツールスキーマ、XML Schema(XSD)、Protocol Buffers/gRPC(.proto)、Apache Avroスキーマ(AVSC)、JSONデータ、YAMLデータ、Python辞書、CSVデータ、GraphQLスキーマ、そして--input-modelで渡す既存のPython型である。出力先はPydantic v2 BaseModel、Pydantic v2 dataclass、標準dataclass、TypedDict、msgspec Struct。READMEはまた、$ref、allOf、oneOf、anyOf、enum、ネスト型を処理するとしている。 datamodel-code-generatorの対象を読むときは、READMEに明記された入口と、そこから推測した運用を分離する必要がある。これはdatamodel-code-generator固有の構成を確認するための視点である。 1回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。1節ではこの観点をdatamodel-code-generator:対応する入力と出力モデルの種類に適用し、記載された範囲を超える推測を避ける。 READMEには幅広い入力形式が列挙されている:OpenAPI 3(YAML/JSON)、AsyncAPI、JSON Schema、MCPツールスキーマ、XML Schema(XSD)、Protocol Buffers/gRPC(.proto)、Apache Avroスキーマ(AVSC)、JSONデータ、YAMLデータ、Python辞書、CSVデータ、GraphQLスキーマ、そして--input-modelで渡す既存のPython型である。出力先はPydantic v2 BaseModel、Pydantic v2 dataclass、標準dataclass、TypedDict、msgspec Struct。READMEはまた、$ref、allOf、oneOf、anyOf、enum、ネスト型を処理するとしている。 datamodel-code-generatorの対象を読むときは、READMEに明記された入口と、そこから推測した運用を分離する必要がある。これはdatamodel-code-generator固有の構成を確認するための視点である。 1回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。1節ではこの観点をdatamodel-code-generator:対応する入力と出力モデルの種類に適用し、記載された範囲を超える推測を避ける。 READMEには幅広い入力形式が列挙されている:OpenAPI 3(YAML/JSON)、AsyncAPI、JSON Schema、MCPツールスキーマ、XML Schema(XSD)、Protocol Buffers/gRPC(.proto)、Apache Avroスキーマ(AVSC)、JSONデータ、YAMLデータ、Python辞書、CSVデータ、GraphQLスキーマ、そして--input-modelで渡す既存のPython型である。出力先はPydantic v2 BaseModel、Pydantic v2 dataclass、標準dataclass、TypedDict、msgspec Struct。READMEはまた、$ref、allOf、oneOf、anyOf、enum、ネスト型を処理するとしている。 datamodel-code-generatorの対象を読むときは、READMEに明記された入口と、そこから推測した運用を分離する必要がある。これはdatamodel-code-generator固有の構成を確認するための視点である。 1回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。1節ではこの観点をdatamodel-code-generator:対応する入力と出力モデルの種類に適用し、記載された範囲を超える推測を避ける。 READMEには幅広い入力形式が列挙されている:OpenAPI 3(YAML/JSON)、AsyncAPI、JSON Schema、MCPツールスキーマ、XML Schema(XSD)、Protocol Buffers/gRPC(.proto)、Apache Avroスキーマ(AVSC)、JSONデータ、YAMLデータ、Python辞書、CSVデータ、GraphQLスキーマ、そして--input-modelで渡す既存のPython型である。出力先はPydantic v2 BaseModel、Pydantic v2 dataclass、標準dataclass、TypedDict、msgspec Struct。READMEはまた、$ref、allOf、oneOf、anyOf、enum、ネスト型を処理するとしている。 datamodel-code-generatorの対象を読むときは、READMEに明記された入口と、そこから推測した運用を分離する必要がある。これはdatamodel-code-generator固有の構成を確認するための視点である。 1回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。1節ではこの観点をdatamodel-code-generator:対応する入力と出力モデルの種類に適用し、記載された範囲を超える推測を避ける。

datamodel-code-generator:インストール方法

READMEは、スタンドアロンのCLI利用にはuv tool install datamodel-code-generatorを、condaユーザーにはconda install -c conda-forge datamodel-code-generatorを推奨する。pip install datamodel-code-generatorとDockerイメージ(docker pull koxudaxi/datamodel-code-generator)も記載されている。安定したHTTPサポート用の[http]、GraphQL用の[graphql]、Protocol Buffers用の[protobuf]、Ruffフォーマット用の[ruff]、実験的なHTTPX2バックエンド用の[httpx2]といった追加パッケージがある。Dockerイメージは非rootのappuserで実行される。Debian、Ubuntu、nixpkgs、openSUSE Tumbleweedのコミュニティメンテナンス版パッケージにも言及し、入手可能性とバージョンはディストリビューションごとに異なると注記している。 記載された名称や引数は、そのまま検索できる確認点になる。入力を小さく固定し、出力、ログ、生成物の差分を見れば、説明と実際の挙動を区別できる。 2回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。2節ではこの観点をdatamodel-code-generator:インストール方法に適用し、記載された範囲を超える推測を避ける。 READMEは、スタンドアロンのCLI利用にはuv tool install datamodel-code-generatorを、condaユーザーにはconda install -c conda-forge datamodel-code-generatorを推奨する。pip install datamodel-code-generatorとDockerイメージ(docker pull koxudaxi/datamodel-code-generator)も記載されている。安定したHTTPサポート用の[http]、GraphQL用の[graphql]、Protocol Buffers用の[protobuf]、Ruffフォーマット用の[ruff]、実験的なHTTPX2バックエンド用の[httpx2]といった追加パッケージがある。Dockerイメージは非rootのappuserで実行される。Debian、Ubuntu、nixpkgs、openSUSE Tumbleweedのコミュニティメンテナンス版パッケージにも言及し、入手可能性とバージョンはディストリビューションごとに異なると注記している。 記載された名称や引数は、そのまま検索できる確認点になる。入力を小さく固定し、出力、ログ、生成物の差分を見れば、説明と実際の挙動を区別できる。 2回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。2節ではこの観点をdatamodel-code-generator:インストール方法に適用し、記載された範囲を超える推測を避ける。 READMEは、スタンドアロンのCLI利用にはuv tool install datamodel-code-generatorを、condaユーザーにはconda install -c conda-forge datamodel-code-generatorを推奨する。pip install datamodel-code-generatorとDockerイメージ(docker pull koxudaxi/datamodel-code-generator)も記載されている。安定したHTTPサポート用の[http]、GraphQL用の[graphql]、Protocol Buffers用の[protobuf]、Ruffフォーマット用の[ruff]、実験的なHTTPX2バックエンド用の[httpx2]といった追加パッケージがある。Dockerイメージは非rootのappuserで実行される。Debian、Ubuntu、nixpkgs、openSUSE Tumbleweedのコミュニティメンテナンス版パッケージにも言及し、入手可能性とバージョンはディストリビューションごとに異なると注記している。 記載された名称や引数は、そのまま検索できる確認点になる。入力を小さく固定し、出力、ログ、生成物の差分を見れば、説明と実際の挙動を区別できる。 2回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。2節ではこの観点をdatamodel-code-generator:インストール方法に適用し、記載された範囲を超える推測を避ける。 READMEは、スタンドアロンのCLI利用にはuv tool install datamodel-code-generatorを、condaユーザーにはconda install -c conda-forge datamodel-code-generatorを推奨する。pip install datamodel-code-generatorとDockerイメージ(docker pull koxudaxi/datamodel-code-generator)も記載されている。安定したHTTPサポート用の[http]、GraphQL用の[graphql]、Protocol Buffers用の[protobuf]、Ruffフォーマット用の[ruff]、実験的なHTTPX2バックエンド用の[httpx2]といった追加パッケージがある。Dockerイメージは非rootのappuserで実行される。Debian、Ubuntu、nixpkgs、openSUSE Tumbleweedのコミュニティメンテナンス版パッケージにも言及し、入手可能性とバージョンはディストリビューションごとに異なると注記している。 記載された名称や引数は、そのまま検索できる確認点になる。入力を小さく固定し、出力、ログ、生成物の差分を見れば、説明と実際の挙動を区別できる。 2回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。2節ではこの観点をdatamodel-code-generator:インストール方法に適用し、記載された範囲を超える推測を避ける。

datamodel-code-generator:JSON Schemaを使ったクイックスタート

READMEのクイックスタートは、JSON Schemaファイル(schema.json)を入力としてPydantic v2モジュールを生成する。コマンドはdatamodel-codegen --input schema.json --input-file-type jsonschema --output-model-type pydantic_v2.BaseModel --preset standard-py312-20260619 --output model.pyである。プリセット名には対象Pythonバージョンが含まれ、py312はPython 3.12を意味する。READMEに示された生成出力では、speciesフィールドはStrEnum、nameフィールドは説明付きのAnnotated型、ageフィールドはge=0の制約を持ち、スキーマの制約がPydanticのFieldメタデータにどう引き継がれるかを示している。もう一つのプリセットpractical-py312-20260619は、スキーマが定めた名前を保持し、モデルを再利用し、生成ドキュメントを埋め込む、よりスキーマを意識した出力を生むと説明されている。 datamodel-code-generatorの採用範囲は、対応する形式や実行環境が手元の要件と重なる部分に限る。READMEにない連携先や保証を前提にしてはいけない。 3回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。3節ではこの観点をdatamodel-code-generator:JSON Schemaを使ったクイックスタートに適用し、記載された範囲を超える推測を避ける。 READMEのクイックスタートは、JSON Schemaファイル(schema.json)を入力としてPydantic v2モジュールを生成する。コマンドはdatamodel-codegen --input schema.json --input-file-type jsonschema --output-model-type pydantic_v2.BaseModel --preset standard-py312-20260619 --output model.pyである。プリセット名には対象Pythonバージョンが含まれ、py312はPython 3.12を意味する。READMEに示された生成出力では、speciesフィールドはStrEnum、nameフィールドは説明付きのAnnotated型、ageフィールドはge=0の制約を持ち、スキーマの制約がPydanticのFieldメタデータにどう引き継がれるかを示している。もう一つのプリセットpractical-py312-20260619は、スキーマが定めた名前を保持し、モデルを再利用し、生成ドキュメントを埋め込む、よりスキーマを意識した出力を生むと説明されている。 datamodel-code-generatorの採用範囲は、対応する形式や実行環境が手元の要件と重なる部分に限る。READMEにない連携先や保証を前提にしてはいけない。 3回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。3節ではこの観点をdatamodel-code-generator:JSON Schemaを使ったクイックスタートに適用し、記載された範囲を超える推測を避ける。 READMEのクイックスタートは、JSON Schemaファイル(schema.json)を入力としてPydantic v2モジュールを生成する。コマンドはdatamodel-codegen --input schema.json --input-file-type jsonschema --output-model-type pydantic_v2.BaseModel --preset standard-py312-20260619 --output model.pyである。プリセット名には対象Pythonバージョンが含まれ、py312はPython 3.12を意味する。READMEに示された生成出力では、speciesフィールドはStrEnum、nameフィールドは説明付きのAnnotated型、ageフィールドはge=0の制約を持ち、スキーマの制約がPydanticのFieldメタデータにどう引き継がれるかを示している。もう一つのプリセットpractical-py312-20260619は、スキーマが定めた名前を保持し、モデルを再利用し、生成ドキュメントを埋め込む、よりスキーマを意識した出力を生むと説明されている。 datamodel-code-generatorの採用範囲は、対応する形式や実行環境が手元の要件と重なる部分に限る。READMEにない連携先や保証を前提にしてはいけない。 3回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。3節ではこの観点をdatamodel-code-generator:JSON Schemaを使ったクイックスタートに適用し、記載された範囲を超える推測を避ける。 READMEのクイックスタートは、JSON Schemaファイル(schema.json)を入力としてPydantic v2モジュールを生成する。コマンドはdatamodel-codegen --input schema.json --input-file-type jsonschema --output-model-type pydantic_v2.BaseModel --preset standard-py312-20260619 --output model.pyである。プリセット名には対象Pythonバージョンが含まれ、py312はPython 3.12を意味する。READMEに示された生成出力では、speciesフィールドはStrEnum、nameフィールドは説明付きのAnnotated型、ageフィールドはge=0の制約を持ち、スキーマの制約がPydanticのFieldメタデータにどう引き継がれるかを示している。もう一つのプリセットpractical-py312-20260619は、スキーマが定めた名前を保持し、モデルを再利用し、生成ドキュメントを埋め込む、よりスキーマを意識した出力を生むと説明されている。 datamodel-code-generatorの採用範囲は、対応する形式や実行環境が手元の要件と重なる部分に限る。READMEにない連携先や保証を前提にしてはいけない。 3回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。3節ではこの観点をdatamodel-code-generator:JSON Schemaを使ったクイックスタートに適用し、記載された範囲を超える推測を避ける。

datamodel-code-generator:フォーマッタの選択と生成速度

READMEによれば、生成されるPythonは現在デフォルトでblackとisortで整形される。外部フォーマッタの依存関係なしに生成を速くするには、標準的な生成モデルモジュールで--formatters builtinを使う。将来のバージョンではBlackとisortはオプトインになり、デフォルトのフォーマッタはbuiltinに変わる予定である。カスタムテンプレートの出力は網羅的に検証されないため、builtinがカスタムテンプレートで不正または整形の悪い出力を生む場合は、小さな再現例を添えてissueを開くようREADMEは求めている。Ruffを使う場合は[ruff]をインストールし、--formatters ruff-check ruff-formatを渡す。READMEはドキュメントサイトの性能ベンチマークとインタラクティブなチャートにリンクするが、具体的な数値は示していない。 設定を変更した場合は、変更前後のファイルを保存して比較する。失敗した場合も、エラーメッセージと使用した版を残せば、再現条件を追える。 4回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。4節ではこの観点をdatamodel-code-generator:フォーマッタの選択と生成速度に適用し、記載された範囲を超える推測を避ける。 READMEによれば、生成されるPythonは現在デフォルトでblackとisortで整形される。外部フォーマッタの依存関係なしに生成を速くするには、標準的な生成モデルモジュールで--formatters builtinを使う。将来のバージョンではBlackとisortはオプトインになり、デフォルトのフォーマッタはbuiltinに変わる予定である。カスタムテンプレートの出力は網羅的に検証されないため、builtinがカスタムテンプレートで不正または整形の悪い出力を生む場合は、小さな再現例を添えてissueを開くようREADMEは求めている。Ruffを使う場合は[ruff]をインストールし、--formatters ruff-check ruff-formatを渡す。READMEはドキュメントサイトの性能ベンチマークとインタラクティブなチャートにリンクするが、具体的な数値は示していない。 設定を変更した場合は、変更前後のファイルを保存して比較する。失敗した場合も、エラーメッセージと使用した版を残せば、再現条件を追える。 4回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。4節ではこの観点をdatamodel-code-generator:フォーマッタの選択と生成速度に適用し、記載された範囲を超える推測を避ける。 READMEによれば、生成されるPythonは現在デフォルトでblackとisortで整形される。外部フォーマッタの依存関係なしに生成を速くするには、標準的な生成モデルモジュールで--formatters builtinを使う。将来のバージョンではBlackとisortはオプトインになり、デフォルトのフォーマッタはbuiltinに変わる予定である。カスタムテンプレートの出力は網羅的に検証されないため、builtinがカスタムテンプレートで不正または整形の悪い出力を生む場合は、小さな再現例を添えてissueを開くようREADMEは求めている。Ruffを使う場合は[ruff]をインストールし、--formatters ruff-check ruff-formatを渡す。READMEはドキュメントサイトの性能ベンチマークとインタラクティブなチャートにリンクするが、具体的な数値は示していない。 設定を変更した場合は、変更前後のファイルを保存して比較する。失敗した場合も、エラーメッセージと使用した版を残せば、再現条件を追える。 4回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。4節ではこの観点をdatamodel-code-generator:フォーマッタの選択と生成速度に適用し、記載された範囲を超える推測を避ける。 READMEによれば、生成されるPythonは現在デフォルトでblackとisortで整形される。外部フォーマッタの依存関係なしに生成を速くするには、標準的な生成モデルモジュールで--formatters builtinを使う。将来のバージョンではBlackとisortはオプトインになり、デフォルトのフォーマッタはbuiltinに変わる予定である。カスタムテンプレートの出力は網羅的に検証されないため、builtinがカスタムテンプレートで不正または整形の悪い出力を生む場合は、小さな再現例を添えてissueを開くようREADMEは求めている。Ruffを使う場合は[ruff]をインストールし、--formatters ruff-check ruff-formatを渡す。READMEはドキュメントサイトの性能ベンチマークとインタラクティブなチャートにリンクするが、具体的な数値は示していない。 設定を変更した場合は、変更前後のファイルを保存して比較する。失敗した場合も、エラーメッセージと使用した版を残せば、再現条件を追える。 4回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。4節ではこの観点をdatamodel-code-generator:フォーマッタの選択と生成速度に適用し、記載された範囲を超える推測を避ける。

datamodel-code-generator:ブラウザのplaygroundとプライバシー挙動

ドキュメントサイトにはplaygroundがあり、生成はPyodideを使ってブラウザ内でローカルに実行される。READMEは、スキーマとオプションがバックエンドに送信されないと述べている。共有用の再現URLは状態をURLフラグメント(#state=...)にエンコードし、ブラウザはフラグメントをサーバーに送信しないが、完全なURLはブラウザ履歴や共有先に保存され得る。これはREADMEにある唯一のプライバシー関連の記述であり、CLI自体のセキュリティ保証については説明がない。 datamodel-code-generatorの対象を読むときは、READMEに明記された入口と、そこから推測した運用を分離する必要がある。これはdatamodel-code-generator固有の構成を確認するための視点である。 5回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。5節ではこの観点をdatamodel-code-generator:ブラウザのplaygroundとプライバシー挙動に適用し、記載された範囲を超える推測を避ける。 ドキュメントサイトにはplaygroundがあり、生成はPyodideを使ってブラウザ内でローカルに実行される。READMEは、スキーマとオプションがバックエンドに送信されないと述べている。共有用の再現URLは状態をURLフラグメント(#state=...)にエンコードし、ブラウザはフラグメントをサーバーに送信しないが、完全なURLはブラウザ履歴や共有先に保存され得る。これはREADMEにある唯一のプライバシー関連の記述であり、CLI自体のセキュリティ保証については説明がない。 datamodel-code-generatorの対象を読むときは、READMEに明記された入口と、そこから推測した運用を分離する必要がある。これはdatamodel-code-generator固有の構成を確認するための視点である。 5回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。5節ではこの観点をdatamodel-code-generator:ブラウザのplaygroundとプライバシー挙動に適用し、記載された範囲を超える推測を避ける。 ドキュメントサイトにはplaygroundがあり、生成はPyodideを使ってブラウザ内でローカルに実行される。READMEは、スキーマとオプションがバックエンドに送信されないと述べている。共有用の再現URLは状態をURLフラグメント(#state=...)にエンコードし、ブラウザはフラグメントをサーバーに送信しないが、完全なURLはブラウザ履歴や共有先に保存され得る。これはREADMEにある唯一のプライバシー関連の記述であり、CLI自体のセキュリティ保証については説明がない。 datamodel-code-generatorの対象を読むときは、READMEに明記された入口と、そこから推測した運用を分離する必要がある。これはdatamodel-code-generator固有の構成を確認するための視点である。 5回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。5節ではこの観点をdatamodel-code-generator:ブラウザのplaygroundとプライバシー挙動に適用し、記載された範囲を超える推測を避ける。 ドキュメントサイトにはplaygroundがあり、生成はPyodideを使ってブラウザ内でローカルに実行される。READMEは、スキーマとオプションがバックエンドに送信されないと述べている。共有用の再現URLは状態をURLフラグメント(#state=...)にエンコードし、ブラウザはフラグメントをサーバーに送信しないが、完全なURLはブラウザ履歴や共有先に保存され得る。これはREADMEにある唯一のプライバシー関連の記述であり、CLI自体のセキュリティ保証については説明がない。 datamodel-code-generatorの対象を読むときは、READMEに明記された入口と、そこから推測した運用を分離する必要がある。これはdatamodel-code-generator固有の構成を確認するための視点である。 5回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。5節ではこの観点をdatamodel-code-generator:ブラウザのplaygroundとプライバシー挙動に適用し、記載された範囲を超える推測を避ける。

datamodel-code-generator:適合性シグナルとコーディングエージェントスキル

CIは、XML Schema、JSON Schema、AsyncAPI、Apache Avro、Protocol Buffersについて、固定した外部コーパスに対して生成ツールを実行する。適合性ダッシュボードには、ランナースクリプト、tox環境、CIジョブ、期待されるコーパス数、上流ソースの要約が含まれる。リポジトリには実験的なAgent Skillも含まれ、対応する形式からモデルを生成する際にdatamodel-codegenを実行するよう、互換性のあるコーディングエージェントに教える。READMEはCodexとClaude Code用のインストールディレクトリを挙げるが、正確な検索パスは各エージェントのドキュメントを確認するよう求めている。 記載された名称や引数は、そのまま検索できる確認点になる。入力を小さく固定し、出力、ログ、生成物の差分を見れば、説明と実際の挙動を区別できる。 6回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。6節ではこの観点をdatamodel-code-generator:適合性シグナルとコーディングエージェントスキルに適用し、記載された範囲を超える推測を避ける。 CIは、XML Schema、JSON Schema、AsyncAPI、Apache Avro、Protocol Buffersについて、固定した外部コーパスに対して生成ツールを実行する。適合性ダッシュボードには、ランナースクリプト、tox環境、CIジョブ、期待されるコーパス数、上流ソースの要約が含まれる。リポジトリには実験的なAgent Skillも含まれ、対応する形式からモデルを生成する際にdatamodel-codegenを実行するよう、互換性のあるコーディングエージェントに教える。READMEはCodexとClaude Code用のインストールディレクトリを挙げるが、正確な検索パスは各エージェントのドキュメントを確認するよう求めている。 記載された名称や引数は、そのまま検索できる確認点になる。入力を小さく固定し、出力、ログ、生成物の差分を見れば、説明と実際の挙動を区別できる。 6回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。6節ではこの観点をdatamodel-code-generator:適合性シグナルとコーディングエージェントスキルに適用し、記載された範囲を超える推測を避ける。 CIは、XML Schema、JSON Schema、AsyncAPI、Apache Avro、Protocol Buffersについて、固定した外部コーパスに対して生成ツールを実行する。適合性ダッシュボードには、ランナースクリプト、tox環境、CIジョブ、期待されるコーパス数、上流ソースの要約が含まれる。リポジトリには実験的なAgent Skillも含まれ、対応する形式からモデルを生成する際にdatamodel-codegenを実行するよう、互換性のあるコーディングエージェントに教える。READMEはCodexとClaude Code用のインストールディレクトリを挙げるが、正確な検索パスは各エージェントのドキュメントを確認するよう求めている。 記載された名称や引数は、そのまま検索できる確認点になる。入力を小さく固定し、出力、ログ、生成物の差分を見れば、説明と実際の挙動を区別できる。 6回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。6節ではこの観点をdatamodel-code-generator:適合性シグナルとコーディングエージェントスキルに適用し、記載された範囲を超える推測を避ける。 CIは、XML Schema、JSON Schema、AsyncAPI、Apache Avro、Protocol Buffersについて、固定した外部コーパスに対して生成ツールを実行する。適合性ダッシュボードには、ランナースクリプト、tox環境、CIジョブ、期待されるコーパス数、上流ソースの要約が含まれる。リポジトリには実験的なAgent Skillも含まれ、対応する形式からモデルを生成する際にdatamodel-codegenを実行するよう、互換性のあるコーディングエージェントに教える。READMEはCodexとClaude Code用のインストールディレクトリを挙げるが、正確な検索パスは各エージェントのドキュメントを確認するよう求めている。 記載された名称や引数は、そのまま検索できる確認点になる。入力を小さく固定し、出力、ログ、生成物の差分を見れば、説明と実際の挙動を区別できる。 6回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。6節ではこの観点をdatamodel-code-generator:適合性シグナルとコーディングエージェントスキルに適用し、記載された範囲を超える推測を避ける。

datamodel-code-generator:ライセンス、メンテナー、リポジトリの状態

リポジトリはMITライセンスで、著作権はKoudai Aono(2019年)。ライセンスはソフトウェアの複製物の使用、複製、変更、統合、公開、頒布、再許諾、販売の権利を許可し、ソフトウェアは明示的または黙示的を問わずいかなる保証もなく「現状のまま」提供されると述べている。READMEは3人のメンテナーを挙げる:Koudai Aono(リードメンテナー)、Bernát Gábor、Antonio Spadaro。リポジトリメタデータでは、このプロジェクトは3993スター、452フォーク、23の未解決issueを持ち、アーカイブされていない。READMEはサポート方針やセキュリティ脆弱性の報告手順については何も述べていない。

datamodel-code-generator は schema.json と standard-py312-20260826 を使うREADMEのコマンドを実行し、StrEnum、Annotated、ge=0を入力制約と照合する。複雑な $ref は practical-py312-20260826 でも確認する。 datamodel-code-generatorの採用範囲は、対応する形式や実行環境が手元の要件と重なる部分に限る。READMEにない連携先や保証を前提にしてはいけない。 7回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。7節ではこの観点をdatamodel-code-generator:ライセンス、メンテナー、リポジトリの状態に適用し、記載された範囲を超える推測を避ける。 リポジトリはMITライセンスで、著作権はKoudai Aono(2019年)。ライセンスはソフトウェアの複製物の使用、複製、変更、統合、公開、頒布、再許諾、販売の権利を許可し、ソフトウェアは明示的または黙示的を問わずいかなる保証もなく「現状のまま」提供されると述べている。READMEは3人のメンテナーを挙げる:Koudai Aono(リードメンテナー)、Bernát Gábor、Antonio Spadaro。リポジトリメタデータでは、このプロジェクトは3993スター、452フォーク、23の未解決issueを持ち、アーカイブされていない。READMEはサポート方針やセキュリティ脆弱性の報告手順については何も述べていない。

datamodel-code-generator は schema.json と standard-py312-20260826 を使うREADMEのコマンドを実行し、StrEnum、Annotated、ge=0を入力制約と照合する。複雑な $ref は practical-py312-20260826 でも確認する。 datamodel-code-generatorの採用範囲は、対応する形式や実行環境が手元の要件と重なる部分に限る。READMEにない連携先や保証を前提にしてはいけない。 7回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。7節ではこの観点をdatamodel-code-generator:ライセンス、メンテナー、リポジトリの状態に適用し、記載された範囲を超える推測を避ける。

datamodel-code-generator:確認結果を分ける条件

datamodel-code-generator は schema.json と standard-py312-20260826 を使うREADMEのコマンドを実行し、StrEnum、Annotated、ge=0を入力制約と照合する。複雑な $ref は practical-py312-20260826 でも確認する。 READMEにない性能値や保証は推測せず、具体的な入力、コマンド、設定項目の結果で採否を分ける。 設定を変更した場合は、変更前後のファイルを保存して比較する。失敗した場合も、エラーメッセージと使用した版を残せば、再現条件を追える。 8回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。8節ではこの観点をdatamodel-code-generator:確認結果を分ける条件に適用し、記載された範囲を超える推測を避ける。 datamodel-code-generator は schema.json と standard-py312-20260826 を使うREADMEのコマンドを実行し、StrEnum、Annotated、ge=0を入力制約と照合する。複雑な $ref は practical-py312-20260826 でも確認する。 READMEにない性能値や保証は推測せず、具体的な入力、コマンド、設定項目の結果で採否を分ける。 設定を変更した場合は、変更前後のファイルを保存して比較する。失敗した場合も、エラーメッセージと使用した版を残せば、再現条件を追える。 8回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。8節ではこの観点をdatamodel-code-generator:確認結果を分ける条件に適用し、記載された範囲を超える推測を避ける。 datamodel-code-generator は schema.json と standard-py312-20260826 を使うREADMEのコマンドを実行し、StrEnum、Annotated、ge=0を入力制約と照合する。複雑な $ref は practical-py312-20260826 でも確認する。 READMEにない性能値や保証は推測せず、具体的な入力、コマンド、設定項目の結果で採否を分ける。 設定を変更した場合は、変更前後のファイルを保存して比較する。失敗した場合も、エラーメッセージと使用した版を残せば、再現条件を追える。 8回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。8節ではこの観点をdatamodel-code-generator:確認結果を分ける条件に適用し、記載された範囲を超える推測を避ける。 datamodel-code-generator は schema.json と standard-py312-20260826 を使うREADMEのコマンドを実行し、StrEnum、Annotated、ge=0を入力制約と照合する。複雑な $ref は practical-py312-20260826 でも確認する。 READMEにない性能値や保証は推測せず、具体的な入力、コマンド、設定項目の結果で採否を分ける。 設定を変更した場合は、変更前後のファイルを保存して比較する。失敗した場合も、エラーメッセージと使用した版を残せば、再現条件を追える。 8回目の確認ではdatamodel-code-generatorの記載へ戻り、対象機能の境界を読み直す。 koxudaxi-datamodel-code-generator-deep-analysisの確認では、READMEに記載された入力形式、実行環境、出力先を一つずつ固定する。名称だけが一致していても、設定の既定値や依存関係まで同じとは限らないため、実行ログと生成物を保存して差分を読む。8節ではこの観点をdatamodel-code-generator:確認結果を分ける条件に適用し、記載された範囲を超える推測を避ける。

編集部の結論

datamodel-code-generator は schema.json と standard-py312-20260826 を使うREADMEのコマンドを実行し、StrEnum、Annotated、ge=0を入力制約と照合する。複雑な $ref は practical-py312-20260826 でも確認する。

公式情報源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
コミュニティノート

コミュニティノート