{
  "schema_version": "1.0",
  "title": "個人開発スキル台帳",
  "purpose": "他のAIに読ませ、この人物が着手可能な新しい副業候補を提案させるための構造化データシート",
  "updated": "2026-09-21",
  "canonical_url": "https://murakami-skillset.pages.dev/",
  "instructions_for_ai": {
    "task": "この台帳を読み、この人物が今すぐ着手できる新しい副業候補を提案する",
    "hard_constraints": [
      "operating_conditions と retired_ventures に反する案は提案しない",
      "既存のYouTube切り抜き事業の延長・強化は提案しない（別ドメインへの横展開を求めている）",
      "capabilities にある既存資産の転用を軸にする",
      "従量課金APIに原価が比例する案を提案しない",
      "VRAM 8GB を超える計算資源を要する案を提案しない"
    ],
    "required_fields_per_proposal": [
      "何を売るのか（顧客と対価の形）",
      "どの capability を転用するか",
      "初期投資と収益化までの想定期間",
      "最大のリスクと致命傷になる条件",
      "最初の2週間の具体的作業"
    ]
  },

  "operator": {
    "headcount": 1,
    "outsourcing": false,
    "incorporated": false,
    "region": "日本",
    "age_band": "30代",
    "availability": "平日夜と週末が中心",
    "primary_languages": ["Python", "Bash"],
    "secondary": ["Google Apps Script", "JavaScript/TypeScript（必要最小限）"]
  },

  "operating_conditions": {
    "hardware": {
      "cpu": "AMD Ryzen 7 5800X (8C/16T)",
      "gpu": "NVIDIA RTX 4060 Ti",
      "vram_gb": 8,
      "ram_gb": 48,
      "os": "Ubuntu 24.04 (WSL2併用)",
      "cloud_gpu": "常用しない"
    },
    "vram_ceiling_note": "実用になるのは7B級の量子化モデルまで。大型モデルの学習・ファインチューニング、長尺の動画生成は実用速度に届かない（実測で断念済み）",
    "local_models_in_production": [
      {"name": "Qwen2.5-VL 7B (4bit量子化)", "use": "画像・映像理解", "measured": "1フレーム0.32秒"},
      {"name": "Qwen3-ASR", "use": "音声認識（語単位タイムスタンプ）"},
      {"name": "Demucs", "use": "音声分離"},
      {"name": "Ruri v3", "use": "日本語埋め込み・意味検索"},
      {"name": "ECAPA", "use": "話者判定"},
      {"name": "NVENC (h264_nvenc)", "use": "ハードウェア動画エンコード"}
    ],
    "cost_policy": {
      "rule": "従量課金APIを常用しない",
      "evidence": "画像・映像解析の外部API課金が月1万円に達した時点で全面ローカルOSS化（2026-08-22）",
      "preference": "固定額サブスクで完結する設計"
    },
    "available_subscriptions": [
      "AIコーディング契約 月110ドル（エージェント運用の主力・固定費の大半）",
      "画像生成CLI（サブスク内・追加課金ゼロ）",
      "商用利用可のBGM・効果音ライブラリ"
    ],
    "fixed_cost_ceiling": "固定費は月2万円前後。新規事業はこの枠内で回せること。追加の月額原価が積み上がる案は成立しない",
    "publishing": "静的サイトのCDN配信（Cloudflare Pages）を自動デプロイで常用。スマホ通知(ntfy)とVPN(Tailscale)で外出先から承認操作が可能",
    "out_of_scope": [
      "対人のリアルタイム稼働（コンサル・常駐・電話対応）",
      "資格や免許を要する業務",
      "在庫を抱える物販",
      "初期投資の大きい案件"
    ]
  },

  "proof_of_work": [
    {
      "venture": "YouTube切り抜きチャンネル",
      "detail": "ゲーム実況の長尺→切り抜き／ショート量産",
      "metrics": {"subscribers": 6370, "total_views": 9862223, "published_videos": 128,
                  "daily_views_range": "20,000〜32,000", "daily_watch_minutes_range": "19,000〜105,000"},
      "as_of": "2026-09-21"
    },
    {
      "venture": "同・収益化（YouTube Partner Program）",
      "detail": "「再利用されたコンテンツ」で2度不合格（4月・5月）→ 漫画化ショートの量産で独自性を立証し覆した",
      "status": "審査通過",
      "as_of": "2026-06-02"
    },
    {
      "venture": "生成AIニュース日刊サイト",
      "detail": "収集→重複除去→要約→静的サイト生成→CDN自動デプロイ→スマホ通知を全自動・毎日。2026年3月開始・200日分以上を無人生成",
      "status": "運用中"
    },
    {
      "venture": "スプレッドシート型 業務自動化ツール",
      "detail": "4種を製品化（EC商品説明文／ビジネスメール返信／口コミ返信／SNS投稿30日分）。マニュアルPDF・出品用説明文・QCレポートまで同梱",
      "status": "制作済"
    },
    {
      "venture": "オンライン講座（Udemy）",
      "detail": "AIコーディング運用をテーマに初級・中級の全章を執筆。スライド→ナレーション→動画を章単位で自動生成",
      "status": "制作済"
    },
    {
      "venture": "受託（クラウドワークス）",
      "detail": "動画編集トライアル案件に着手（2026-04に中断）／中国語ショート動画の翻訳・日本語ナレーション化パイプラインを設計・試作。いずれも継続受注には至っておらず、受託の実績は薄い（伸びしろでもある）",
      "status": "未完"
    },
    {
      "venture": "記事投稿の自動化",
      "detail": "note.com の下書き作成・編集・公開・画像挿入・カバー設定を CLI 化（Playwright）",
      "status": "運用中"
    }
  ],

  "asset_scale": {
    "automation_scripts": {"count": 400, "breakdown": "共通基盤126 + 動画制作273（Python/Bash）"},
    "procedures": {"count": 62, "note": "エンコード設定・バッチ処理・QC基準など、事故から起こした実務ルール"},
    "agent_skill_definitions": {"count": 35, "note": "1コマンドで多工程を走らせるワークフロー定義"},
    "failure_records": {"count": 108, "note": "「なぜ駄目だったか」を理由つきで永続化。同じ事故を二度起こさないための資産"}
  },

  "capabilities": [
    {
      "id": "A",
      "name": "長尺動画から切り抜き・ショートを量産するパイプライン",
      "what": "数時間の長尺動画を投入すると、DL→音声分離→語単位の文字起こし→盛り上がり検出→候補リスト化→人が選定→切り出し→結合→縦型/横型書き出し→投稿・概要欄・チャプター設定まで繋がる",
      "method_highlight": "盛り上がりの検出は、視聴者コメントの時刻言及を束ねた票数／ライブチャット密度の平常比倍率／音量Δによる絶叫検出。「人がどこで反応したか」を一次データにし、AIの主観で選ばせない",
      "tools": ["yt-dlp（レジューム・リトライ・IP対策）", "Demucs", "Qwen3-ASR", "ffmpeg concat demuxer + NVENC", "YouTube Data API", "YouTube Analytics API"],
      "proof": "公開128本・総再生986万回・収益化通過",
      "transferable_to": ["任意ジャンルの動画切り抜き受託", "セミナー・配信アーカイブの要約クリップ化", "音声コンテンツの章立て自動化"]
    },
    {
      "id": "B",
      "name": "実写映像の「漫画化」（画像生成の実務運用）",
      "what": "実映像の一場面をキャラ画風を崩さず漫画のコマに描き起こし、実発話のセリフを縦書き吹き出しで載せ、音声と同期してコマ送り動画にする",
      "method_highlight": "外見はプロンプトに書かず三面図（参照画像）に全面委任し、プロンプトは表情・構図・状況のみ。参照画像は4枚まで（増やすと特徴が落ちることを実測）。吹き出しの誤植は塗り潰し→縦書き差し替えで機械的に修正",
      "tools": ["画像生成CLI（サブスク枠内・追加課金ゼロ）", "三面図アセット", "セリフ差し替えスクリプト", "コマ送り時刻調整Webアプリ"],
      "proof": "この手法で量産した漫画化ショートが収益化審査の「独自性」立証の決め手になった",
      "transferable_to": ["体験談・実話の漫画化", "企業の導入事例マンガ", "教材の図解コマ化"]
    },
    {
      "id": "C",
      "name": "映像・音声を機械で読む（ローカルVLM／STT／意味検索）",
      "what": "大量の動画フレームを機械に読ませて分類・集計する。画面上の名前表示から視点判定、焼き込みテロップの読み取り、ログの人物別集計など。48本を色相判定＋名前読み取りの二重チェックで自動集計した実績",
      "method_highlight": "低解像度(144p)で全数を粗く走らせ、外れ候補だけ高解像度＋VLMで裏取りする二段構え。AIの検出0件を「無い証明」に使わず、母数が小さい時は全数を人が見る検分ページで確定させる",
      "tools": ["Qwen2.5-VL 7B 4bit", "Qwen3-ASR（語単位ms）", "ECAPA話者判定", "Ruri v3 日本語埋め込みによる字幕の意味検索", "HSV色相分類"],
      "proof": "外部API課金 月1万円 → 0円。1フレーム0.32秒で実用速度",
      "transferable_to": ["動画アーカイブの検索可能化", "帳票・画面キャプチャの一括読み取り", "議事録の話者分離と検索"]
    },
    {
      "id": "D",
      "name": "人が判断するためのWeb編集アプリを即席で立てる",
      "what": "AIに決めさせてはいけない判断（どこを切るか、どのセリフか、どれを採用するか）を、人がスマホで触って決められるUIに落とす。単一ファイルのPythonサーバ＋素のHTMLで、必要になったその場で立てる",
      "implemented": [
        "クリップ頭尻を±0.1秒で詰めて試聴・書き出しするエディタ（重い元動画を読まずYouTube埋め込みで再生する軽量モード付き）",
        "セリフと話者を行ごとに直すエディタ",
        "コマ送り時刻を音を聞きながら合わせるエディタ",
        "候補一覧をボタンで採否選定して保存する検分ページ（1ページに300超のボタンを置いた実例）"
      ],
      "hard_rule": "人が入力した値は絶対に上書きしない。作り直す時は既存JSONを読み、ID一致で採用・区間・テロップを引き継ぎ追加のみ行う（一度破って選定を消す事故を起こし、コードと手順書に固定した）",
      "tools": ["Python標準ライブラリのHTTPサーバ（Range対応・POST保存）", "Tailscale経由の外部アクセス", "ntfyでURL通知"],
      "transferable_to": ["アノテーション・検品の内製ツール", "クライアントレビュー用の承認UI", "社内向けの一点物業務アプリ"]
    },
    {
      "id": "E",
      "name": "AIエージェントを長期運用する基盤づくり",
      "what": "AIコーディングエージェントを「その場のチャット」でなく継続運用される作業員として扱うための足回りを、実運用の事故から積み上げてある",
      "components": [
        "役割別の指示書と権限分離",
        "破壊的操作の禁止リストとフック（コミット前の差分確認強制・危険コマンドのブロック）",
        "タスクと報告をYAML＋SQLiteで永続化し状態を復元する仕組み",
        "セッションが途切れても文脈を戻す記憶ファイル群（失敗の理由つきで108本）",
        "進捗ダッシュボードとスマホ通知",
        "1コマンドで多工程を走らせるスキル定義35本"
      ],
      "proof": "エージェントのプロンプト前処理が30秒上限を超えて出力を捨てられていた事故を、依存ライブラリのオフライン化で 28.8秒 → 7秒に短縮",
      "transferable_to": ["AIエージェント導入の設計テンプレート販売", "運用ルールの教材化", "中小企業向けの内製化支援ドキュメント"]
    },
    {
      "id": "F",
      "name": "情報収集 → 要約 → 静的サイト配信の全自動化",
      "what": "複数ソースから毎日情報を集め、重複を除き、カテゴリ分けして要約し、OGP付きの静的HTMLを生成し、CDNへ自動デプロイし、上位3件をスマホに通知する、を無人で回している",
      "tools": ["cron", "スクレイピングとAPI取得", "重複判定", "静的サイトビルド", "Cloudflare Pages 自動デプロイ", "ntfy・Discord 配信"],
      "proof": "2026年3月開始・200日分以上を無人生成・追加の人手コストゼロ",
      "transferable_to": ["任意ジャンルの日刊・週刊メディア", "ニュースレター", "業界動向レポート", "比較サイト", "求人まとめ"]
    },
    {
      "id": "G",
      "name": "非エンジニア向け業務自動化ツールの製品化",
      "what": "「スプレッドシートに入力→ボタン→AIが文章を生成」という道具を売り物として完成させる。コードだけでなく操作マニュアル(HTML/PDF)・出品用の商品説明文・品質チェックレポートまで一式で作る",
      "products": ["EC商品説明文の自動生成", "ビジネスメール返信（6種別・クレーム対応含む）", "口コミ返信（星評価別）", "SNS投稿30日分の一括生成"],
      "tools": ["Google Apps Script", "生成AI API", "PDFマニュアル自動生成", "出品用文面のテンプレート化"],
      "transferable_to": ["業種特化テンプレートの販売", "受託カスタマイズ", "サブスク化"]
    },
    {
      "id": "H",
      "name": "教材・ドキュメントの制作パイプライン",
      "what": "本文(Markdown)から、スライド→発表者ノート→音声合成ナレーション→動画までを章単位で自動生成する。品質チェック（ノート欠落・用語制限）も機械で回す",
      "tools": ["Marp系スライド生成", "画像生成CLIによるスライド作図", "音声合成（長文は5000字単位に分割するのが安定）", "ffmpegによる無音挿入と結合", "grepベースの自動QC"],
      "proof": "オンライン講座の初級・中級を全章この流れで制作。note記事の投稿もCLI化済み",
      "transferable_to": ["研修動画の受託制作", "既存文書の動画化サービス", "電子書籍・講座の量産"]
    }
  ],

  "working_style": [
    {"principle": "判断は人間、候補出しは機械", "detail": "採用・順位・公開可否といった価値判断をAIに委ねない。機械は候補を並べるところまでで止め、人がUIで決める"},
    {"principle": "数字は実測する", "detail": "推定で断定しない。「原理的に不可能」と即断せず、前提が変わったら測り直す"},
    {"principle": "事故は手順書とフックにする", "detail": "失敗を反省文で終わらせず、機械が強制する形（差分確認の強制、危険コマンドのブロック、上書き禁止の実装）に落とす"},
    {"principle": "成果物は必ず見られる形で出す", "detail": "ローカルに置いて終わりにせず、URLを発行してスマホに通知するところまでを1工程とみなす"},
    {"principle": "固定費で回す", "detail": "従量課金の上に事業を積まない。ローカルGPUとサブスク枠に収める設計を選ぶ"},
    {"principle": "横展開を前提に作る", "detail": "設定JSONを外に出し、スクリプトは使い回せる粒度で切る。「毎回新しいスクリプトを書く」ことを明確に禁じている"}
  ],

  "retired_ventures": [
    {
      "name": "家計・資産管理アプリの自作",
      "verdict": "中止",
      "date": "2026-08-26",
      "reason": "自動取得が必須要件だが、金融機関のデータ取得は有料APIに依存する。「金を払うなら既製品でいい」という判断",
      "implication": "月額原価が立つ個人向けアプリは成立しない"
    },
    {
      "name": "3D制作による既存映像の再現",
      "verdict": "打ち切り",
      "date": "2026-09-19",
      "reason": "3Dリグ・モーションキャプチャ変換・image-to-video まで組んだが、VRAM 8GB では生成の当たり外れが大きく再現品質に届かなかった。3Dは「元映像に無い画」専用に後退",
      "implication": "動画生成AIを主軸に据えた事業は現環境では立たない"
    },
    {
      "name": "外部API従量課金を前提にした設計",
      "verdict": "全廃",
      "date": "2026-08-22",
      "reason": "画像・映像解析の課金が月1万円に達した時点でローカルVLM／ローカルSTTへ全面移行",
      "implication": "原価が利用量に比例する案は提案しない"
    },
    {
      "name": "音声の定量指標による企画",
      "verdict": "一部却下",
      "reason": "音声から機械的に差が出る指標は事実上「音量」だけと判明",
      "implication": "定量化できると思い込んだ指標は、先に実測して確かめる"
    },
    {
      "name": "既製の表情差分ライブラリ方式",
      "verdict": "廃止",
      "reason": "生成ごとに画風が割れて破綻。参照を三面図1系統に固定し、表情はプロンプトで都度指示する方式へ変更",
      "implication": "生成AIの一貫性は「参照を1つに絞る」ことでしか担保できない"
    },
    {
      "name": "ハンズオン形式の講座",
      "verdict": "非採用",
      "reason": "受講者に手を動かさせる構成は環境差のサポート負荷が高く、読み物型で確定",
      "implication": "サポート工数が読めない商材は1人体制と相性が悪い"
    }
  ]
}
