Pagecast: Markdown と HTML レポートを Cloudflare Pages に公開する
Pagecast: Markdown と HTML レポートを Cloudflare Pages に公開する
Pagecast は、ローカルの HTML レポート、Markdown ドキュメント、および静的なミニアプリを、共有可能な Cloudflare Pages の URL に変換するために設計されたローカルファーストの公開ツールです。これは、特にエージェントが生成したレポートや小規模な静的ウェブプロジェクト向けに最適化されており、ローカル開発と即時の公開ホスティングの間の架け橋を提供します。
静的アセットの即時デプロイ
Pagecast は、ターミナルまたはローカルの管理 UI から静的ファイルを迅速に公開することを可能にします。主に 3 つのデプロイ パターンをサポートしています:
- Single Files: HTML または Markdown ファイルを、同じフォルダ内にある兄弟アセットを含む、一意的な
/p/<token>/リンクに公開できます。 - Built Static Projects: 開発者は、ビルドコマンドを実行した後、ビルドされたプロジェクトのエントリファイル(例:
distまたはoutフォルダ)を公開できます。 - Entire Folders: ディレクトリ全体を、名前付きの Cloudflare Pages プロジェクトに直接デプロイできます。
グローバルインストールなしで開始するには、ユーザーは npx pagecast を実行できます。これにより、http://127.0.0.1:4173 でローカル管理 UI が起動し、http://127.0.0.1:4174 でローカルプレビューサーバーが起動します。
エッジで強制されるパスワード保護
Pagecast は、公開されたページをパスワードで保護するメカニズムを提供します。この保護は、生成された Cloudflare Pages Function を使用してエッジで強制されるため、ページと、マルチファイル レポート内のすべての関連ファイルが、保護されていない状態で提供されることはありません。
ユーザーは、管理 UI のトグル、またはターミナルを使用して以下のコマンドでパスワード保護を管理できます:
# Add password protection
npx pagecast publish "/absolute/path/report.html" --password "your-password" --json
# Remove password protection
npx pagecast publish "/absolute/path/report.html" --no-password --json
コーディング エージェントとの統合
Pagecast は、現代的な AI 駆動型開発ワークフロー向けに構築されています。ユーザーの確認後に、コーディング エージェントが完成したアーティファクトを公開するためのネイティブ スキルを提供します。サポートされている統合は以下の通りです:
- Codex: スキルは、提供されたスキルディレクトリを
.codex/skills/フォルダにコピーすることで追加できます。 - Claude Code: 統合は、プラグインマーケットプレイス経由で利用可能です(
/plugin marketplace add Amal-David/pagecast)。 - Generic Agents: 他のエージェント フレームワーク向けに、ポータブルな
SKILL.mdファイルが提供されています。
さらに、実験的な Chrome 拡張機能を使用すると、ローカルサーバーが実行されているときに、file:/// HTML レポートを Pagecast に直接公開できます。
ローカル管理 UI と管理
ローカル管理 UI では、公開済みのバージョン、リンクのリネーム(古いリンクが新しいリンクにリダイレクトされる場合)、および URL の無効化を管理できます。また、パスに依存するレポートの自動同期、および元のソースファイルを変更せずにアプリ内で HTML コンテンツを直接編集する機能もサポートしています。
セキュリティとアーキテクチャ
Pagecast は、ローカルファーストのセキュリティ モデルに従います:
- Local Access: 管理 UI は
127.0.0.1にバインドされるため、ドラフトプレビューはローカルに留まります。 - Public Access: コンテンツは、アクティブな
/p/<token>/リンクを介してのみアクセス可能です。無効化されたトークンは、再デプロイ後に 404 エラーになります。 - Route Protection: パブリック ルートは、ディレクトリ トラバーサルと隠しファイルを拒否するため、偶発的なデータ漏洩を防ぎます。
- Infrastructure: Pagecast は、Cloudflare アカウントに接続するために、スコープされた Wrangler OAuth (
account:read,user:read,pages:write) を使用します。
Pagecast は MIT ライセンスの下で提供されており、Node.js 20+ が必要です。