ワークスペースランディングページエディター
ワークスペースのランディングページ(/w/:slug にレンダリングされる)は、workspace.landing_page_html に保存された単一の自己完結型HTMLブロブです。brief が送信されるたびに、サーバーサイドの LANDING_PAGE_PROMPT によってゼロから生成され、そのパスではHTML全体が上書きされます。
ページ全体を再生成すべきではない変更(タイポグラフィの微調整、レイアウト編集、セクションの追加、コピーの変更、画像の差し替え、タグラインの修正など)を行う場合は、HTMLを直接編集して書き戻してください。ユーザーが完全な再生成を希望する場合を除き、brief を送信しないでください。
すべてのコマンドは astria CLIを使用します(astria-api スキルを参照)。-w <workspace_id> を渡してワークスペースを指定します。
LANDING_PAGE_PROMPT からの制約事項(引き継がれるもの)
編集時には、以下の不変条件を維持してください(ライブの /w/:slug ページはこれらに依存しています):
- 出力は inner body HTML です —
<html>、<head>、<body>、<!DOCTYPE>タグは含めないでください - スタイリングには Tailwind ユーティリティクラス を使用します(ページに既に読み込まれています)。Tailwind で表現できないホバー/アニメーション効果にのみ
<style>を使用してください - パックリンクは正確に
/p/{slug}とします。モデル/リファレンスリンクは、tunes JSON のlinkフィールドをそのまま使用します(%5B/%5Dを再エンコードしないでください) - すべての画像/動画は
<a>タグでラップします - 画像と動画のURLは既に存在するものにしてください。URLを新しく作成しないでください
- 動画は
<video autoplay muted loop playsinline poster="POSTER_URL"><source src="VIDEO_URL" type="video/mp4"></video>を使用します <script type="application/json" id="tunes-data">…</script>内の文字列__TUNES_JSON_PAYLOAD__はサーバーサイドのプレースホルダです。サーバーはレンダリング時にこれをライブのtunes JSONに置き換えます。これをリテラルなJSONに置き換えないでください — キャストが固定され、新しく追加されたtunesが表示されなくなります- 編集スタイル:セリフ体の見出し、十分なホワイトスペース、ヘアラインルール、ポートレート画像には
object-cover object-[center_top]、ヒーロースプレッドにはmax-h-[70vh]、ポートレートコンテナにはaspect-[4/5]またはaspect-[3/4]
ワークフロー
1. 現在のランディングページHTMLを取得する
astria landing get -w <workspace_id> --html > /tmp/landing_page.html
astria landing get -w <workspace_id>(--html なし)は、ワークスペースの完全なJSON(title、slug、brief、url、public_at、unlisted_at)を返します。これはそれらが必要な場合に使用します。レンダリングされたページは /w/{slug} でプレビューできます。
2. ワークスペースデータを取得する(編集で実際のパック/プロンプト/チューンを参照する必要がある場合)
astria packs list -w <workspace_id> --limit 100
astria tunes list -w <workspace_id> --limit 200 # ページ上にレンダリングされる「キャスト」
astria prompts list -w <workspace_id> --limit 100 --offset 0 # 空になるまで --offset でページング
astria prompts list -w <workspace_id> --pack-id <pack_id> # より効率的、セクション単位で取得
リストエンドポイントは --limit/--offset でページングします(デフォルトのソートはID降順)。ページが空で返ってくるまで --offset でループします。
3. 段階的な編集を行う
/tmp/landing_page.html をローカルで編集します。変更は外科的に行ってください。ジェネレーターは数千バイトのレイアウトを生成しており、その大部分はそのまま維持する必要があります。保存する前に、上記の制約事項セクションを再読してください。
4. ページを書き戻す
astria landing set -w <workspace_id> --html-file /tmp/landing_page.html
ここで --brief を渡さないでください — 編集内容が破棄され、Gemini経由でゼロから再生成されます。
5. 確認する
/w/{slug} を開き、変更を視覚的に確認します。__TUNES_JSON_PAYLOAD__ プレースホルダはレンダリング時にサーバーサイドで置き換えられます — レンダリングされたページにJSONのような文字列がまだ表示されている場合、プレースホルダが誤って削除または名前変更されています。
ゼロからの再生成
ユーザーが明示的に完全な再デザインを要求した場合にのみ、brief を送信すると、サーバーは LANDING_PAGE_PROMPT をGeminiに対して実行し、HTMLを上書きします:
astria landing set -w <workspace_id> \
--brief "Editorial fashion lookbook, AW26, dark moody palette, emphasize the womenswear packs"