[{"data":1,"prerenderedAt":629},["ShallowReactive",2],{"content-/2026-06-30-diary":3,"all-pages-for-dir":610,"related-/2026-06-30-diary":611,"og-image-/2026-06-30-diary":628},{"id":4,"title":5,"body":6,"category":591,"concepts":592,"description":593,"extension":594,"meta":595,"navigation":596,"ogImage":592,"path":597,"project_name":598,"published":599,"publishedAt":600,"seo":601,"source":592,"stem":602,"tags":603,"todo":592,"unpublished":599,"updatedAt":592,"__hash__":609},"pages/2026-06/2026-06-30/diary-2026-06-30.md","2026年6月30日の開発日記 - つくみセミナードラフトとSVG 17枚スライド",{"type":7,"value":8,"toc":574},"minimark",[9,14,27,31,38,41,46,55,61,77,88,91,95,102,106,120,128,130,134,137,141,149,157,159,163,172,176,190,198,200,204,207,211,222,230,232,236,243,247,258,266,268,271,503,505,508,543,545,548],[10,11,13],"h1",{"id":12},"_2026年6月30日の開発日記","2026年6月30日の開発日記",[15,16,17,18,22,23,26],"p",{},"今日は朝から「思考の見取り図」をマークダウン化して ",[19,20,21],"code",{},"/ai-position-map"," で公開し、午後はつくみのバックオフィスAIセミナー用ドラフトに SVG 17枚を埋め込んでスライド化させた。合間にクリエ塾の年間カリキュラムを Google カレンダーに10件登録、",[19,24,25],{},"/blog"," に make-diary バッジ表示を追加、Xブックマーク9387件から生成AI活用ネタを719件抽出という1日。",[28,29,30],"h2",{"id":30},"今日のタイムライン",[15,32,33],{},[34,35],"img",{"alt":36,"src":37},"タイムライン","/2026-06/2026-06-30/timeline-2026-06-30.png",[28,39,40],{"id":40},"今日やったこと",[42,43,45],"h3",{"id":44},"_1-ai-position-map思考の見取り図を記事化svg-8枚","1. ai-position-map（思考の見取り図）を記事化＋SVG 8枚",[15,47,48,51,52,54],{},[19,49,50],{},"C:\\Users\\numbe\\Downloads\\ai-position-map.html"," の「労働者・フリーランス型経営者・雇用型経営者の3立場で生成AIへの態度がどう割れるか」を、マークダウンに構造化させて ",[19,53,21],{}," で公開した。最初インラインでSVG書いてしまい svg-diagram スキル違反を指摘されて、ファイル化して書き直し。Chrome DevToolsで目視したらFigure 1のラベル衝突とFigure 4の矢印終端ズレを発見、Codexでレビューを回して構成も整理。後段で X Bookmarks から「経営者起点でツールとフローを作る」事例を3サブセクションに追加した。",[15,56,57],{},[58,59,60],"strong",{},"主な成果:",[62,63,64,68,71,74],"ul",{},[65,66,67],"li",{},"マークダウン記事化（SVG 4枚: Figure 1-4）",[65,69,70],{},"裏付け数字を1セクション追加（SVG 4枚: Figure 5-8）",[65,72,73],{},"Codex レビュー反映（留保セクション上移動、接続文追加）",[65,75,76],{},"X Bookmarks 8930件 → 228件 → 精選 → 3サブセクション追加",[15,78,79,82,83],{},[58,80,81],{},"詳細:"," ",[84,85,87],"a",{"href":86},"/ai-position-map-diary","Downloadsに溜まっていた思考メモを記事化＋SVG 8枚",[89,90],"hr",{},[42,92,94],{"id":93},"_2-つくみセミナードラフトsvg-17枚スライドai-era記事へのsvg追加","2. つくみセミナードラフト＋SVG 17枚スライド＋ai-era記事へのSVG追加",[15,96,97,98,101],{},"つくみのセミナーが「業種問わずバックオフィス担当者向けの業務効率改善＋会計税務スペシャリスト視点＋AI」と想定外の話だったので、Unpublishedドラフトとして書き起こした。「スライドっぽくして」の指示で svg-diagram スキル準拠で SVG 14枚 → 17枚に拡張（デモを3本→4本＋書籍→スキル化フロー＋AIエージェント束ねる転回SVG 3枚追加）。既存記事 ",[19,99,100],{},"ai-era-dismantle-division-of-labor"," の各 mermaid 直下にもSVG 6枚を比較用に追加。矢印崩れを指摘されて「▶（右尖り三角形）」だけに統一する Python スクリプト一括変換。スキル§6.6の「目視確認必須」をサボったことを正直に自白する場面もあり。",[15,103,104],{},[58,105,60],{},[62,107,108,111,114,117],{},[65,109,110],{},"つくみセミナードラフト（Unpublished）",[65,112,113],{},"SVG 17枚スライド（720幅、グレースケール＋マゼンタML3）",[65,115,116],{},"ai-era... 既存記事にSVG 6枚比較追加",[65,118,119],{},"矢印を ▶ / ▼ に統一（横フローは ▶、縦フローは ▼）",[15,121,122,82,124],{},[58,123,81],{},[84,125,127],{"href":126},"/tsukumi-seminar-svg-slides","つくみセミナー用SVGスライド17枚＋既存記事の図解作り直し",[89,129],{},[42,131,133],{"id":132},"_3-子供の塾カレンダーをclaude-code経由でgoogleカレンダーに一括登録","3. 子供の塾カレンダーをClaude Code経由でGoogleカレンダーに一括登録",[15,135,136],{},"子供の通う塾の理科実験教室の年間カリキュラム（7月〜12月）を Google カレンダーに登録させた。最初「子供クリエイティング」「クリエ塾」と検索キーワードが間違っていてヒット0件、「理科実験教室」で再検索したら7月〜9月の6回分が見つかった。既存4件を新カリキュラム内容で update し、画像で渡したカリキュラム表に従って10月〜12月の6件を新規作成。",[15,138,139],{},[58,140,60],{},[62,142,143,146],{},[65,144,145],{},"既存4件を update（カリキュラム内容修正、日付ズレ報告含む）",[65,147,148],{},"10月〜12月 6件を新規作成（中級クラス 第1・3土曜 14:30-15:45 / 日本橋校）",[15,150,151,82,153],{},[58,152,81],{},[84,154,156],{"href":155},"/calendar-science-class-registration","子供の塾カレンダーをClaude Code経由でGoogleカレンダーに一括登録",[89,158],{},[42,160,162],{"id":161},"_4-blog-に-make-diary-自動生成バッジを追加","4. /blog に make-diary 自動生成バッジを追加",[15,164,165,167,168,171],{},[19,166,25],{}," で make-diary 製記事と手書き記事の区別がつかなくて見づらいというユーザー指摘から。最初は「新フィールドを追加するか」と考えたが、調べさせたら既に ",[19,169,170],{},"category: \"diary\""," 195件が全部 make-diary 製で、識別子は実はあって UI に出ていないだけだったと判明。スキーマ追加せず、BlogCalendar と ArticleTable に小さなバッジを追加する最小コストのA案を選択。",[15,173,174],{},[58,175,60],{},[62,177,178,181,184],{},[65,179,180],{},"BlogCalendar.vue: 「開発日記」フィルタ右に make-diary バッジ",[65,182,183],{},"ArticleTable.vue: リスト表示でも make-diary バッジ",[65,185,186,187,189],{},"スキーマ変更ゼロ（既存 ",[19,188,170],{}," を流用）",[15,191,192,82,194],{},[58,193,81],{},[84,195,197],{"href":196},"/blog-make-diary-badge-ui","/blog に make-diary 自動生成バッジを追加",[89,199],{},[42,201,203],{"id":202},"_5-xブックマーク9387件から生成ai活用ネタをカテゴリ別に抽出","5. Xブックマーク9387件から生成AI活用ネタをカテゴリ別に抽出",[15,205,206],{},"Google Spreadsheet「X Bookmarks」（9387行）から生成AI活用関連の投稿を抽出させた。gogcli スキル経由でアクセス、最初1175件と多すぎたので「活用方法・ノウハウ」に絞り込み、719件（重複カテゴリ込み976エントリ）に整理。後段で ai-position-map 記事の補強事例にも転用。",[15,208,209],{},[58,210,60],{},[62,212,213,216,219],{},[65,214,215],{},"9387件 → 1175件 → 719件 のフィルタリング",[65,217,218],{},"カテゴリ別マークダウン化",[65,220,221],{},"副産物: ai-position-map 記事への事例追加（228件 → 精選）",[15,223,224,82,226],{},[58,225,81],{},[84,227,229],{"href":228},"/x-bookmarks-genai-extraction","Xブックマーク9387件から生成AI活用ネタをカテゴリ別に抽出",[89,231],{},[42,233,235],{"id":234},"_6-x-apimcpの料金プラン確認とxurl投稿テスト401で頓挫","6. X API/MCPの料金プラン確認とxurl投稿テスト（401で頓挫）",[15,237,238,239,242],{},"X 公式の MCP ドキュメントを取得しつつ、環境に入っていた ",[19,240,241],{},"xurl"," で投稿テスト。401 が返ってきて、トークン期限切れかデフォルトアプリ未設定かの二択で一旦停止。X API の料金プランを公式で再確認したら、SNS の Premium+ と開発者向け API は別契約・別請求のままで、API側は月額プラン→従量課金に変わっていた。投稿単価 $0.015 ≒ 2.25円、URL付き $0.20 ≒ 30円。結論は「Chrome DevTool 経由で下書き保存ルートに倒す」。",[15,244,245],{},[58,246,60],{},[62,248,249,252,255],{},[65,250,251],{},"xurl 401 の切り分け（OAuth再認証 or アプリ未設定の二択で停止）",[65,253,254],{},"X API 料金体系の最新化（従量課金、$0.015/post）",[65,256,257],{},"規約温度感の整理（下書き保存 OK / 完全自動投稿はグレー / 予約投稿は問題なし）",[15,259,260,82,262],{},[58,261,81],{},[84,263,265],{"href":264},"/x-api-pricing-and-mcp-check","X API/MCPの料金プラン確認とxurl投稿テスト（401で頓挫）",[89,267],{},[28,269,270],{"id":270},"今日の試行錯誤",[272,273,274,296],"table",{},[275,276,277],"thead",{},[278,279,280,284,287,290,293],"tr",{},[281,282,283],"th",{},"#",[281,285,286],{},"テーマ",[281,288,289],{},"試したこと",[281,291,292],{},"結果",[281,294,295],{},"気づき",[297,298,299,317,334,351,368,384,401,418,435,452,469,486],"tbody",{},[278,300,301,305,308,311,314],{},[302,303,304],"td",{},"1",[302,306,307],{},"ai-position-map SVG化",[302,309,310],{},"最初インラインで SVG を書いた",[302,312,313],{},"スキル違反指摘",[302,315,316],{},"svg-diagram スキルは「インライン禁止＋ファイル化」が前提",[278,318,319,322,325,328,331],{},[302,320,321],{},"2",[302,323,324],{},"Figure 1〜4 の目視確認",[302,326,327],{},"Chrome DevToolsでスクショ",[302,329,330],{},"Figure 1 ラベル衝突 + Figure 4 矢印終端ズレ発見",[302,332,333],{},"XMLパースチェックだけでは描画崩れは拾えない",[278,335,336,339,342,345,348],{},[302,337,338],{},"3",[302,340,341],{},"Codexレビュー反映",[302,343,344],{},"留保セクションの位置と接続文",[302,346,347],{},"構成が締まった",[302,349,350],{},"レビューは構造の補強に効く",[278,352,353,356,359,362,365],{},[302,354,355],{},"4",[302,357,358],{},"クリエ塾カレンダー検索",[302,360,361],{},"「子供クリエイティング」「クリエ塾」で検索",[302,363,364],{},"ヒット0件",[302,366,367],{},"1年前の自分が決めた命名規則を覚えていなかった",[278,369,370,373,375,378,381],{},[302,371,372],{},"5",[302,374,358],{},[302,376,377],{},"「理科実験教室」で再検索",[302,379,380],{},"6件ヒット",[302,382,383],{},"正式名でなく実態のキーワードが当たることがある",[278,385,386,389,392,395,398],{},[302,387,388],{},"6",[302,390,391],{},"/blog バッジ実装方針",[302,393,394],{},"A案（既存スキーマ）/ B案（新フィールド）を比較",[302,396,397],{},"A案採用",[302,399,400],{},"「識別子はあって、UIに出ていないだけ」を先に確認すべき",[278,402,403,406,409,412,415],{},[302,404,405],{},"7",[302,407,408],{},"X Bookmarks 絞り込み",[302,410,411],{},"9387件 → 全件「生成AI」検索",[302,413,414],{},"1175件と多すぎ",[302,416,417],{},"「活用方法・ノウハウ」軸で再フィルタが正解",[278,419,420,423,426,429,432],{},[302,421,422],{},"8",[302,424,425],{},"SVGスライド作成",[302,427,428],{},"XMLパースだけ通して目視確認サボった",[302,430,431],{},"矢印崩れを指摘される",[302,433,434],{},"§6.6 違反、目視確認は省略不可",[278,436,437,440,443,446,449],{},[302,438,439],{},"9",[302,441,442],{},"矢印▶統一の一括変換",[302,444,445],{},"Pythonスクリプト1本目（方向継承）",[302,447,448],{},"元のミス方向を保持",[302,450,451],{},"頂点座標を強制書き換える2本目で修正",[278,453,454,457,460,463,466],{},[302,455,456],{},"10",[302,458,459],{},"figure-05 の縦切替",[302,461,462],{},"「最初から縦一列」に作り直し",[302,464,465],{},"きれいに収まった",[302,467,468],{},"中途半端な横→縦は最初から縦でいい",[278,470,471,474,477,480,483],{},[302,472,473],{},"11",[302,475,476],{},"Y軸ラベル",[302,478,479],{},"「低い生産性／高い生産性」が逆",[302,481,482],{},"修正",[302,484,485],{},"象限の中身と軸ラベルの整合は最後にもう一度見直す",[278,487,488,491,494,497,500],{},[302,489,490],{},"12",[302,492,493],{},"xurl 投稿テスト",[302,495,496],{},"xurl post で投稿してみた",[302,498,499],{},"401 で弾かれた",[302,501,502],{},"OAuthトークン期限切れの可能性、API契約も別途必要",[89,504],{},[28,506,507],{"id":507},"今日の学び",[62,509,510,516,525,531,537],{},[65,511,512,515],{},[58,513,514],{},"svg-diagram スキルは「ファイル化＋目視確認」が前提","。インラインで書いたり XML パースだけで済ませると毎回崩れに気づかず手戻りする",[65,517,518,521,522,524],{},[58,519,520],{},"新フィールドを増やす前に既存スキーマで識別できないか確認する","。",[19,523,25],{}," のバッジ問題は「識別子は既にあって UI に出ていないだけ」だった",[65,526,527,530],{},[58,528,529],{},"検索キーワードは命名規則より実態の言葉","。「クリエ塾」より「理科実験教室」のほうがヒットする場面がある",[65,532,533,536],{},[58,534,535],{},"ブックマークは貯めた瞬間に7割死ぬ","。9387件のうち実際に拾ったのは719件、それも検索キーワードを変えて2回フィルタしてやっと到達",[65,538,539,542],{},[58,540,541],{},"X API は Premium+ と別物","。月額プラン→従量課金に変わっていて「ちょい試し」の温度感は下がった。Chrome DevTool 経由の下書き保存が現実解",[89,544],{},[28,546,547],{"id":547},"関連記事",[62,549,550,554,558,562,566,570],{},[65,551,552],{},[84,553,87],{"href":86},[65,555,556],{},[84,557,127],{"href":126},[65,559,560],{},[84,561,156],{"href":155},[65,563,564],{},[84,565,197],{"href":196},[65,567,568],{},[84,569,229],{"href":228},[65,571,572],{},[84,573,265],{"href":264},{"title":575,"searchDepth":576,"depth":576,"links":577},"",2,[578,579,588,589,590],{"id":30,"depth":576,"text":30},{"id":40,"depth":576,"text":40,"children":580},[581,583,584,585,586,587],{"id":44,"depth":582,"text":45},3,{"id":93,"depth":582,"text":94},{"id":132,"depth":582,"text":133},{"id":161,"depth":582,"text":162},{"id":202,"depth":582,"text":203},{"id":234,"depth":582,"text":235},{"id":270,"depth":576,"text":270},{"id":507,"depth":576,"text":507},{"id":547,"depth":576,"text":547},"diary",null,"ai-position-mapとつくみセミナーをSVG化、クリエ塾の年間カレンダー登録、/blogにmake-diaryバッジ追加、Xブックマーク9387件から生成AIネタ719件抽出。","md",{},true,"/2026-06-30-diary","daily-log",false,"2026-06-30T00:00:00.000Z",{"title":5,"description":593},"2026-06/2026-06-30/diary-2026-06-30",[604,605,606,607,608],"日記","SVG","Nuxt","生成AI","セミナー","QImmbR65KzCgDigv-ygBK2_0XWpYUdgAdfm1Svlt7Ts",[],[612,614,618,620,624],{"title":613,"path":126,"publishedAt":600},"つくみセミナー用ドラフトに SVG スライド 17 枚を埋め、既存記事にも比較用 SVG を追加した日",{"title":615,"path":616,"publishedAt":617},"2026年7月1日の開発日記 - つくみ通しスライド、MU財務チャート、SVGスキル拡張","/2026-07-01-diary","2026-07-01T00:00:00.000Z",{"title":619,"path":86,"publishedAt":600},"「思考の見取り図」HTMLを記事化＋SVG 8枚で公開 ― svg-diagramスキル違反から立て直しまで",{"title":621,"path":622,"publishedAt":623},"2026年5月12日の開発日記 - SVG対照表とTurso DB取り込み、財務諸表クイズの並列展開","/2026-05-12-diary","2026-05-12T00:00:00.000Z",{"title":625,"path":626,"publishedAt":627},"2026年4月28日の開発日記 - feature-slidesスキル新設、書籍OCR1181ページ、Amazon書棚UIまで1日で組み上げた","/2026-04-28-diary","2026-04-28T00:00:00.000Z","https://log.eurekapu.com/og/blog/2026-06-30-diary.png?v=2026-06-30T00%3A00%3A00.000Z&title=2026%E5%B9%B46%E6%9C%8830%E6%97%A5%E3%81%AE%E9%96%8B%E7%99%BA%E6%97%A5%E8%A8%98%20-%20%E3%81%A4%E3%81%8F%E3%81%BF%E3%82%BB%E3%83%9F%E3%83%8A%E3%83%BC%E3%83%89%E3%83%A9%E3%83%95%E3%83%88%E3%81%A8SVG%2017%E6%9E%9A%E3%82%B9%E3%83%A9%E3%82%A4%E3%83%89&author=Kei%20Komatsu&sig=b91c9bc6a9d68b77",1785655008724]