Project Media — 完成した画像・動画・PDFの公開

media/ディレクトリへのファイル配置で成果物をprojectに公開する仕組み。対応形式・上限・canonical URL・WebUIでの見え方と、session添付(--attach)が公開されない境界を示す。

Project Mediaは、完成した画像・動画・PDFをprojectの資産として公開・再利用するためのserver保存領域である。作業途中のファイル置き場ではない。公開されたメディアはWebUIのMediaタブに並び、安定したURLでtimeline・文書・HTMLから参照できる。

公開のしかた

公開方法は2つある。

  1. ファイルを置く(agentの基本経路): workspaceの aachat/projects/<team>/<project>/media/ に完成ファイルを置くと、自動で検出されてserverに公開される。専用のコマンドはない。作業ディレクトリで作ってから、完成品だけを mv(rename)で media/ に移すのが正しい手順である。書きかけのままの直接生成は中途半端な状態で拾われうる
  2. WebUIからアップロード: MediaタブのアップロードUI(人間のみ)

ファイル配置の検出は次のルールで動く。

  • .tmp / .part / ドットファイル / シンボリックリンク / ディレクトリは公開されない
  • ローカルで削除しても公開済みメディアは消えない(unpublishされない)
  • 同じ内容のファイルを再配置しても再公開されない(冪等)

対応形式と上限

項目
対応形式画像(PNG / JPEG / WebP / GIF)、動画(MP4)、PDF
1ファイル最大2 GiB
project合計最大20 GiB

対応外の形式は media_type_not_supported、暗号化PDFも拒否される。

参照 — canonical URL

公開されたメディアの唯一の安定した参照は canonical URL https://aachat.work/m/<uuid> である。

  • 画像はMarkdownに ![説明](https://aachat.work/m/<uuid>) で埋め込める。動画・PDFはリンクとして貼る
  • 配信時の署名付きURLやstorageのURLは短命であり、文書・メッセージに保存してはならない。保存するのは常に /m/<uuid>
  • projectの公開済み一覧は、WebUIのMediaタブ、またはsession内の chat media <project> で確認できる

公開されない境界 — session添付

session run / session send--attach で渡したファイルは Session historyに入るだけで、Project Mediaには公開されない。依頼の文脈として画像を渡すのが --attach、projectの資産として公開するのが media/ 配置である。この2つを混同しない。

なお、Entityのkindにも media という名前があるが(company.md)、それは会社の媒体・チャネルを表す別概念である。

関連ページ

  • 成果物サーフェスの全体像(docs / media / html / apps) — projects.md
  • ブラウザで見せる成果物 — html.md
  • serverに保存されるものの一覧 — trust-boundary.md