ドキュメント / how to
画像とファイルをアップロードして使う
Jenks — メディアライブラリ (Cloudflare R2) に写真、動画クリップ、PDF を追加し、コンソール、CLI、MCP または REST から、カバー画像、ギャラリー、証明用ファイル、インライン画像として使います。
メディアライブラリとは
アップロードしたファイルは Cloudflare R2 のバケットに保存され、https://jenksguo.xyz/media/… から配信されます。
対応形式: WebP、JPEG、PNG、GIF、AVIF、SVG の画像、MP4 と WebM の動画、PDF — いずれも最大 25 MB までです。
実際のファイル種別はファイル本体から判定しますので、拡張子を変えても画像のふりはできません。
すべてのファイルには /media/2026/10/acme-workshop-3f9a1c2b7d.webp のような恒久的なアドレスが付きます。末尾の
部分はバイト列のフィンガープリントであるため、そのアドレスが別の内容を指すことはなく、ブラウザは
最長 1 年間キャッシュできます。同じ名前で同一のファイルを再度アップロードすると、既存のコピーが再利用されます。
ファイルはアップロードされた瞬間から公開されます。どのページからもまだ参照されていなくても同様です。すべての訪問者に見られてもよいものだけをアップロードしてください。電話番号付きの履歴書、ID、私的な書類などは決してアップロードしないでください。
コンソールから
https://jenksguo.xyz/adminを開き、上部バーで Media を選びます。- ファイルをページにドラッグする、スクリーンショットを貼り付ける、または Upload を選びます。Optimise photos がオン(デフォルト)だと、写真はまずブラウザ内で 2400 px にリサイズされ WebP に変換されます。たとえば 6 MB のスマホ写真は通常 300~600 KB になります。iPhone の HEIC 写真は、ブラウザが読める場合に変換されます(Safari は対応しています)。
- ファイルを選択して alt text(画像が何を示すかを 1 文で)を追加します。スクリーンリーダーや Ask Jenks アシスタントが使用します。
次に、Content エディタからファイルを使用します:
- Cover image — Details で Choose or upload a cover image を選びます。エントリページの先頭に表示されます。
- Gallery — Add photo or video で本文の横に表示される項目を追加します。各項目に alt text と任意のキャプションを付けられます。
- Proof file — proof の行で、クリップのアイコンからアップロード済みの PDF(論文など)を添付します。
- Inside the text — エディタのツールバーの画像ボタンで画像を挿入できます。画像を本文に直接ドラッグまたは貼り付けることもできます。挿入した画像を選択すると、その alt text を編集できます。
エントリを保存すると、通常どおり変更が公開されます。存在しない /media/… ファイルを参照している場合、エディタは保存を拒否します。
CLI から
jenks admin media upload ~/Pictures/acme-workshop.jpg --alt "Jenks running an AI workshop at Acme"
jenks admin media upload https://example.com/talk-poster.png # the server fetches it
jenks admin media ls # newest first, with "used by"
jenks admin media alt 2026/10/acme-workshop-3f9a1c2b7d.jpg "New alt text"
jenks admin media rm 2026/10/acme-workshop-3f9a1c2b7d.jpg
CLI はファイルをそのまま(リサイズなし)アップロードします。大きな写真は事前に適切なサイズで書き出してください。次に、出力された url をエントリで参照します:
image: /media/2026/10/acme-workshop-3f9a1c2b7d.jpg
imageAlt: Jenks running an AI workshop at Acme
gallery:
- src: /media/2026/10/acme-team-0c1d2e3f4a.webp
alt: The Acme leadership team at the kick-off
caption: Kick-off, October 2026
AI エージェント(MCP)から
admin MCP サーバーには admin_upload_media、admin_list_media、admin_update_media、
admin_delete_media があります。
- Local (
jenks mcp --admin): 自分のコンピューター上のファイルをpathで渡します — ローカルサーバーがエージェントのために読み込みます。 - Remote (
/mcp/admin):filenameを添えて、url(取り込む https アドレス)またはdata(base64)を渡します。
エージェントへの典型的な依頼例: 「~/Desktop/xero-talk.jpg を alt text 'Jenks speaking at Xerocon' でアップロードし、その後 xero-developer-evangelist のカバー画像に設定して。」
REST から
curl -H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
-F file=@acme-workshop.jpg -F alt="Jenks running an AI workshop at Acme" \
https://jenksguo.xyz/api/admin/media
/api/admin/media への GET、PATCH、DELETE は一覧取得、更新、削除です。詳しくは admin API reference を参照してください。
安全に削除する
削除は恒久的です。コンテンツと異なり、ファイルには git の履歴がありません。公開済みコンテンツがまだ使用しているファイルについては、コンソールと API は削除を拒否し、使用箇所を表示します。まず参照を削除するか、壊れた画像になってもよい場合は強制的に削除します。
「used by」チェックは、この環境で最後にデプロイされたコンテンツを読み取ります。dev と production は 1 つのメディアライブラリを共有します(そのため、dev でプレビュー中にアップロードしたファイルは、昇格後もそのまま動作します)。その結果、未昇格の dev コンテンツだけで使用されているファイルは、production のコンソールでは未使用に見えることがあります。
.mdこのページはAIの支援で翻訳されています。正式な肩書は英語のままです。