posimai-atlas/atlas.json

214 lines
11 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"meta": {
"owner": "mai",
"description": "Posimai 開発インフラ構成",
"updated": "2026-04-12",
"version": "3"
},
"nodes": [
{
"id": "ubuntu-pc",
"label": "Ubuntu PC",
"type": "device",
"description": "常時起動の開発サーバー実体。posimai-dev・Claude Code 稼働中。Tailscale HTTPS でどこからでもアクセス可能。Syncthing でファイル同期。Synology NAS へ毎日 3:00 に rsync バックアップ。",
"url": "https://100.77.11.43:3333",
"health_url": "https://100.77.11.43:3333/api/health",
"status": "active"
},
{
"id": "posimai-dev",
"label": "posimai-dev",
"type": "service",
"description": "ブラウザターミナル + Claude Code チャット。Ubuntu PC 上で常時稼働。音声入力・スラッシュコマンド・セッションログ対応。Station全画面監視盤も同一サーバーから提供。",
"url": "https://100.77.11.43:3333",
"health_url": "https://100.77.11.43:3333/api/health",
"status": "active",
"parent": "ubuntu-pc"
},
{
"id": "windows-pc",
"label": "Windows PC",
"type": "device",
"description": "maiさんのメイン操作端末。Cursor / Claude Code / ブラウザで Ubuntu PC に接続して開発。Syncthing で posimai-project を同期。",
"status": "active"
},
{
"id": "android-phone",
"label": "スマートフォン",
"type": "device",
"description": "PWA テスト・モバイル動作確認。Tailscale 経由で posimai-dev にアクセス。",
"status": "active"
},
{
"id": "synology",
"label": "Synology NAS",
"type": "device",
"description": "ローカルバックアップサーバーTailscale VPN 経由のみアクセス可 / 100.76.7.3。Gitea・Uptime Kuma をホスト。Ubuntu PC の rsync バックアップ受け先(毎日 3:00。旧 API・旧 PostgreSQL も待機中(フォールバック候補)。",
"status": "active"
},
{
"id": "gitea",
"label": "Gitea",
"type": "service",
"description": "ローカル Git バックアップ。Synology 上で Docker 動作100.76.7.3:3000。全リポジトリのバックアップ用リモート。",
"url": "http://100.76.7.3:3000",
"status": "active",
"parent": "synology"
},
{
"id": "uptime-kuma",
"label": "Uptime Kuma",
"type": "service",
"description": "死活監視ダッシュボード。Synology 上で Docker 動作100.76.7.3:3001。VPS・Ubuntu PC・各アプリの稼働状況を監視。※ 将来 VPS に移設予定Eiji 提案)。",
"url": "http://100.76.7.3:3001",
"status": "active",
"parent": "synology"
},
{
"id": "tailscale",
"label": "Tailscale",
"type": "network",
"description": "デバイス間 VPN メッシュ。Ubuntu PC・Windows PC・スマートフォン・Synology を安全に接続。tailnet: tail72e846.ts.net。VPS は公開 IP で直接アクセスするため不要。",
"status": "active"
},
{
"id": "vps-xserver",
"label": "VPS",
"type": "server",
"description": "Posimai API 本番サーバー。共同開発者 Eiji 提供・管理DNS 含む。Ubuntu 25.04 / AMD EPYC 4コア / 5.8GB RAM / IP: 85.131.245.239。Nginx + Docker 構成。",
"url": "https://api.soar-enrich.com",
"health_url": "https://api.soar-enrich.com/brain/api/health",
"status": "active"
},
{
"id": "posimai-api",
"label": "Posimai API",
"type": "service",
"description": "Node.js / Express:8090。認証Magic Link + WebAuthn + Google OAuth + GitHub OAuth・記事・RSS・TTS・Journal API を提供。PostgreSQL 16 と接続。Stripe Webhook も受信。",
"url": "https://api.soar-enrich.com/brain/api",
"status": "active",
"parent": "vps-xserver"
},
{
"id": "postgresql",
"label": "PostgreSQL 16",
"type": "service",
"description": "VPS 本番 DB。articles / journal_posts / users / auth_sessions / site_config / reading_history / habit_habits / habit_log / pulse_log / lens_history / together_groups / together_members / together_shares / together_reactions / together_comments テーブル。users に planfree/premium・Stripe ID 管理。Supabase からの Together 完全移行済み2026-04-06。",
"status": "active",
"parent": "vps-xserver"
},
{
"id": "gemini",
"label": "Gemini API",
"type": "cloud",
"description": "Google Gemini 2.5 Flash。VPS 経由のみ利用。Brain 記事の AI 要約生成・Journal タグ提案・Together 投稿要約に使用。モデル固定: gemini-2.5-flash。",
"status": "active"
},
{
"id": "github",
"label": "GitHub",
"type": "cloud",
"description": "ソースコード管理posimai org。push で Vercel 自動デプロイをトリガー。git push は gitea + github の2リモート同時に行う。",
"url": "https://github.com/posimai",
"status": "active"
},
{
"id": "vercel",
"label": "Vercel",
"type": "cloud",
"description": "全 posimai-* PWA のホスティング・CDN・自動デプロイ。27 本稼働中。GitHub push でトリガー。",
"url": "https://vercel.com",
"status": "active"
},
{
"id": "posimai-apps",
"label": "Posimai Apps (28)",
"type": "app",
"description": "brain / habit / pulse / feed / reader / journal / brief / daily / ambient / veil / lens / diff / clean / timer / digest / think / site / events / maps / tech-events / analytics / roadmap / together / atlas / dashboard / hotels / guard など全 28 本。VPS JWT で認証。",
"url": "https://posimai.soar-enrich.com",
"status": "active",
"parent": "vercel"
},
{
"id": "resend",
"label": "Resend",
"type": "cloud",
"description": "Magic Link メール送信のみ利用。noreply@soar-enrich.com から配信。",
"status": "active"
},
{
"id": "stripe",
"label": "Stripe",
"type": "cloud",
"description": "決済処理。共同開発者 Eiji と共有アカウント。現在テストモードで稼働中(月額 ¥500 / 1日無料トライアル。Webhook で決済完了を VPS に通知し plan カラムを premium に更新。本番モードへの切り替えは Eiji 確認後。",
"url": "https://stripe.com",
"status": "active"
},
{
"id": "google-oauth",
"label": "Google OAuth",
"type": "cloud",
"description": "Google アカウントでのログイン。Google Cloud Console「Posimai App」プロジェクトで発行。VPS の /auth/oauth/google エンドポイントで処理。",
"status": "active"
},
{
"id": "github-oauth",
"label": "GitHub OAuth",
"type": "cloud",
"description": "GitHub アカウントでのログイン。GitHub OAuth App で発行。VPS の /auth/oauth/github エンドポイントで処理。",
"status": "active"
},
{
"id": "posimai-store",
"label": "Posimai Store",
"type": "app",
"description": "Posimaiアプリ販売 LP。買い切り ¥500 モデル。Design A/B/C/D の4バリアント実装済みEiji と検討中。Stripe Payment Link で決済。",
"url": "https://store.posimai.soar-enrich.com",
"status": "active",
"parent": "vercel"
}
],
"edges": [
{ "from": "windows-pc", "to": "tailscale", "type": "connects", "label": "VPN" },
{ "from": "ubuntu-pc", "to": "tailscale", "type": "connects", "label": "VPN" },
{ "from": "android-phone", "to": "tailscale", "type": "connects", "label": "VPN" },
{ "from": "synology", "to": "tailscale", "type": "connects", "label": "VPN" },
{ "from": "windows-pc", "to": "ubuntu-pc", "type": "connects", "label": "SSH / posimai-dev" },
{ "from": "android-phone", "to": "posimai-dev", "type": "connects", "label": "Tailscale HTTPS" },
{ "from": "posimai-dev", "to": "ubuntu-pc", "type": "runs-on" },
{ "from": "gitea", "to": "synology", "type": "runs-on" },
{ "from": "uptime-kuma", "to": "synology", "type": "runs-on" },
{ "from": "ubuntu-pc", "to": "gitea", "type": "push", "label": "git push" },
{ "from": "ubuntu-pc", "to": "github", "type": "push", "label": "git push" },
{ "from": "windows-pc", "to": "gitea", "type": "push", "label": "git push" },
{ "from": "windows-pc", "to": "github", "type": "push", "label": "git push" },
{ "from": "ubuntu-pc", "to": "synology", "type": "connects","label": "rsync backup" },
{ "from": "github", "to": "vercel", "type": "trigger", "label": "auto deploy" },
{ "from": "vercel", "to": "posimai-apps", "type": "hosts" },
{ "from": "vercel", "to": "posimai-store", "type": "hosts" },
{ "from": "posimai-api", "to": "vps-xserver", "type": "runs-on", "label": "Docker" },
{ "from": "postgresql", "to": "vps-xserver", "type": "runs-on" },
{ "from": "posimai-api", "to": "postgresql", "type": "calls", "label": "SQL" },
{ "from": "posimai-api", "to": "resend", "type": "calls", "label": "Magic Link メール" },
{ "from": "posimai-api", "to": "google-oauth", "type": "calls", "label": "OAuth認証" },
{ "from": "posimai-api", "to": "github-oauth", "type": "calls", "label": "OAuth認証" },
{ "from": "stripe", "to": "posimai-api", "type": "calls", "label": "Webhook (決済完了)" },
{ "from": "posimai-store", "to": "stripe", "type": "calls", "label": "Payment Link" },
{ "from": "posimai-apps", "to": "posimai-api", "type": "calls", "label": "REST API (JWT認証)" },
{ "from": "posimai-api", "to": "gemini", "type": "calls", "label": "AI 要約" },
{ "from": "posimai-apps", "to": "gemini", "type": "calls", "label": "Guard コードスキャン (直接呼出)" },
{ "from": "uptime-kuma", "to": "vps-xserver", "type": "monitors","label": "死活監視" },
{ "from": "uptime-kuma", "to": "ubuntu-pc", "type": "monitors","label": "死活監視" },
{ "from": "uptime-kuma", "to": "posimai-apps", "type": "monitors","label": "死活監視" },
{ "from": "windows-pc", "to": "vps-xserver", "type": "connects","label": "SSH (deploy)" }
]
}