本文へスキップ
openformats — 作品をサービスの外へ残す個人プロジェクト(実証段階) v1.0

あなたの作品は、
あなたの手元に残るか?

作品を JSON 1枚(設計図)で保存する個人仕様です。サービスが終わっても、作品はあなたの手元に残る。

作品の設計図をつくる(無料・ブラウザ内) → 実作品を聴く・観る

保存先はあなたのPC。送信なし。

1つの作品が1つのJSONになり、音楽・ラジオ・本・声・動画・建築などへ広がる様子のイラスト
16作品の種類(kind 定義・うち8種はブラウザで即生成)
89プロダクト(構想含む・products/)
2変換の実装(schema.org・C2PA)
MIT仕様はオープン

作者本人が7作品で実運用中・MIT 公開・個人仕様(外部採用 0 件)

現在の位置づけ(正直に)— 個人仕様・外部採用 0 件

これは作者1人の制作物に使っている個人仕様です。MIT で公開し、誰でも使えますが、外部採用はまだ 0 件(2026-11-11 時点)。既存標準(C2PA・schema.org・MusicXML・OpenTimelineIO 等)を置き換えるものではなく、それらへ変換するハブを目指しています。標準を名乗るのは外部採用が出てから、という方針です。

ブラウザだけで、今すぐ 1 作品を残す

コマンド不要。タイトルと作者を入れるだけで、正しい JSON(設計図)ができます。ダウンロードして、音源と同じフォルダに置けば完成です。
※ 16 種類のうち、ここでブラウザ生成できるのは主要 8 種類です(残りはひな形から)。

できあがるもの:作品の設計図(JSON)1 枚。音源や画像と同じフォルダに保存すれば、サービスが終わっても作品はあなたの手元に残ります(Git にコミットすれば履歴も残せます)。

選ぶと、指紋(SHA-256)をこのブラウザ内で計算して JSON に入れます。ファイルはどこにも送信しません。

できあがる JSON(設計図) — サンプル表示(タイトルを入れるとあなたの作品に変わります)

        

id=作品の一意な名前 / kind=種類 / renditions=本体ファイルと指紋 / provenance=作り方の履歴 / license=再利用の条件

ファイルを選ぶと指紋(sha256)まで入った JSON になります。content_hash は自動で付きます。

もっと楽に:手持ちのファイルをまとめて作品にしたいときは 一括インポート、作った JSON が本物かを確かめたいときは 検証ツール を使えます。

フォーマット(16 種類)

すべて core/envelope/v1.json を継承します。同じ道具(検証・ハッシュ・署名・レンダリング)が、ぜんぶの作品にそのまま効きます。

この形式で作ってみる →

本物の作品 — その場で聴けます・観られます

この仕組みで作った実作品。実ファイルの SHA-256 は JSON の renditions[].sha256 と一致します(詳細は works/)。
実測ログ(2026-11-11): 9 作品とも of.py verify → content_hash_match: true。うち本体ファイルを持つ 5 作品は renditions[].ok: true、記事・端末・作品集・人物の 4 作品は本体ファイルを持たないため renditions は空です(解説動画 mp4 = 82915572…、画像 png = 54b83b15…)。

「モコの、ひと息AIニュース」のカバー

モコの、ひと息AIニュース

週次AIニュース・3本 ・ wav ・ 1分19秒
WAV ・ 3.8 MB ・ 1:19
ポッドキャスト『AIが賢くなるほど、なぜ僕らは忙しいのか?』のカバー

AIが賢くなるほど、なぜ僕らは忙しいのか?

本人声ポッドキャスト・第1回 ・ mp3 ・ 8分59秒
MP3 ・ 12.9 MB ・ 8:59
『ひとつ先へ』Sente テーマソングのカバー

ひとつ先へ

Sente テーマソング・take1 ・ m4a ・ 3分15秒
M4A ・ 3.5 MB ・ 3:15
『遅筋と速筋 — スポーツと筋肉のエネルギー代謝』のサムネイル

遅筋と速筋 — スポーツと筋肉のエネルギー代謝

本人声の解説動画・10場面 ・ mp4 ・ 2分38秒
MP4 ・ 7.6 MB ・ 2:38
白い箱型の住宅を斜め上から見たアイソメ図。屋根に太陽光パネル、庭に植栽とアプローチが見える。

bim.house — 住宅BIMのアイソメ日景

画像・1201×728 PNG ・ 太陽光パネル付き住宅
PNG ・ 248 KB ・ 1201×728
記事『LLMに「何点ですか」と聞くのをやめた』のカバー

LLMに「何点ですか」と聞くのをやめた

記事・建築設計AIの決定論採点 ・ 442件の実測 ・ 方式比較 $0.675
article ・ 71 ブロック ・ 表4・コード2
端末『MacBook Pro (M5 Max, 2026)』のカバー

MacBook Pro (M5 Max, 2026)

端末・制作機材 ・ 18コア / 128GB / Metal 4
device ・ macOS 26.4.1 ・ 実測スペック
作品集『濱田優貴の作品集 2026』のカバー

濱田優貴の作品集 2026

コレクション ・ 6作品を同じ語彙で束ねる ・ series
collection ・ radio / music / movie / article / image
人物『濱田優貴』のカバー

濱田優貴

人物・作者プロフィール ・ author / composer / director / developer
person ・ Sente / KOE / teai を作る

自分の作品も残す →

自分の作品を残す(コピーして 3 ステップ)

コマンドが苦手なら、まず上の ブラウザで作る だけで完成します。ターミナルで自動化したい人向けの手順はこちら。

JSON — 作品の「設計図」。タイトル・作者・ライセンスなどを人間が読めるテキストで。
renditions — 音源や映像など「本体ファイル」の一覧。
sha256 — ファイルの「指紋」。本体が改ざんされていないか照合できます。
ターミナルでの手順を開く(コピーして 3 ステップ)
# 1. ひな形をコピー(署名なし・renditions 付きの starter を使う)
cp templates/starter.music.json my-song.music.json

# 2. 音源を JSON と同じフォルダに置き、title / id / renditions[].path を自分のものに書き換え
#    (例: "path": "my-song.mp3")

# 3. 指紋を計算して書き込み、本物か検証する(renditions の sha256 も自動で入る)
python3 tools/of.py hash my-song.music.json --write
python3 tools/of.py verify my-song.music.json

これだけで、あなたの作品は「JSON(設計図)」と「音源(本体)」の 2 層で、あなたの Git に残ります。verify が ok: true なら、音源と JSON の指紋が一致しています。

※ ひな形は sha256 が空なので、validate は hash --write の後に実行してください。

git clone https://github.com/yukihamada/openformats
cd openformats
python3 -m venv .venv && .venv/bin/pip install jsonschema
.venv/bin/python tools/validate.py --all

Git が苦手なら、GitHub の自分のリポジトリ画面に、ダウンロードした JSON と本体ファイルをそのままドラッグ&ドロップするだけでも残せます。

既存標準へ書き出したいときは python3 tools/export.py schema.org <file>(JSON-LD)と python3 tools/export.py c2pa <file>(C2PA マニフェスト JSON)に変換できます(どちらも実装済み)。C2PA はマニフェスト JSON の書き出しまでで、バイナリへの埋め込み(JUMBF/COSE 署名)は未実装です。MusicXML・OpenTimelineIO・EPUB への書き出しも未実装です。

作っているのは 濱田優貴(@yukihamada) です。仕様も実装も GitHub で公開しています。

よくある質問

GitHub が終わったら、作品はどうなりますか?

JSON と本体ファイルはあなたの手元(ローカルや他の Git ホスト)にそのまま残ります。特定のサービスに依存しないので、別の場所へコピーするだけで続けられます。

無料で使えますか?

はい。仕様(SPEC)もツールも MIT ライセンスで、無料です。有料のサービスに登録する必要はありません。

JSON を書くのが面倒です。

上の「JSON を作る」フォームに入力するだけで、正しい JSON をその場で作れます。ファイルは送信されず、ブラウザ内だけで完結します。

この JSON を使うプロダクト (主要 13 / 全 89 件)

各フォーマット(kind)を実際に生成・消費するサービスだけを掲載(products/ に 89 件のカタログ全件、ここは主要 13 件)。

初期採用者を募集しています。 この仕様で作品を残したら、GitHub の Issues に作品リンクを貼ってください。ここに実例として掲載します(架空の実績は載せません)。外部採用が 1 件出るまでは「オープン標準」ではなく「公開された個人仕様」として扱います。

今すぐ作る → 仕様を読む

既存標準との関係

openformats は既存標準を置き換えず、それらへのハブを目指します。「標準」を名乗るのは外部採用が出てから、という方針です(規範は SPEC.md §9)。

schema.org(検索エンジン向けの作品情報の共通形式) — 実装済み(tools/export.py schema.org で JSON-LD へ)。
C2PA(写真や動画の「本物・改ざんされていない」を証明する仕組み) — 同じことを content_hash/hash_chain/Ed25519 で JSON 内でも行う。実装済み(tools/export.py c2pa で C2PA マニフェスト JSON へ書き出し。バイナリ埋め込み JUMBF/COSE は未実装)。
MusicXML(楽譜の共通形式) / OpenTimelineIO(動画編集のタイムライン形式) / EPUB(電子書籍の共通形式) — 書き出しは未実装(方向性のみ)。

むずかしい用語が多いと感じたら、ここは読み飛ばして構いません。要点は「既存の共通形式へ変換して橋渡しする」ことだけです。実装済みの変換は schema.org と C2PA の2種です(python3 tools/export.py --list で確認できます)。実装したものから順に「実装済み」と明記します。

ブラウザで変換する(コマンド不要)→

作品 JSON を schema.org / C2PA へ変換。逆変換も。ファイルは送信しません。

作った作品が本物か確かめたいときは 検証ツール(指紋・署名・履歴をブラウザで照合)。