【#kintone100日連続チャレンジ】AIにkintoneカスタマイズを100%任せたらどこまでいけるか?現役フリーランスの「100 Days of kintone Hacks」始動!
はじめまして。台湾を拠点に活動しているフリーランスエンジニアの森田ユウゴです。
2026年3月中旬、私は長年身を置いていた環境から独立し、フリーランスとしての新たな道を歩み始めました。そして新年度の始まりである4月1日から、私自身の限界と「生成AI x kintoneの可能性」を試すための、ある実験的なチャレンジをスタートします。

名付けて「#kintone100日チャレンジ」
毎日1つ、kintoneに関わるカスタマイズ(ハック)を「限界までAIに任せて」開発し、そのソースコードなどを100日間連続で公開するという試みです。
独立したばかりでありがたいことに案件も抱える中、なぜあえてこんなチャレンジをするのか?
本記事では、その背景と「これから確実に起こるシステム開発の未来」についてお話しさせてください。
チャレンジ変更履歴
記事内の誤字修正や日時結果の記録以外に、内容や方針変更についてまとめます
2026年4月15日(Day15)
- ソースコード(GitHub)およびプロンプトの公開を全面停止
理由:AIが生成した未検証のコードが、そのまま実環境へ適用されるセキュリティリスクや運用リスクを防止するため - 今後の発信方針:実装アイデアの共有と、プロ目線での「実運用におけるリスク評価」を中心とした内容へシフト(したい)
- 過去分への対応:Day001以降の公開済みリポジトリを非公開に変更(※取得済みのコードは引き続き自己責任にて利用可能)
🚢 なぜ「4月1日」スタートなのか?
本題に入る前に、少しだけ個人的な背景を。
実はこの記事を公開する3月末から数日間、妻とクルーズ旅行に出ます。意図的にインターネット環境から離れ、完全なオフライン(デジタルデトックス)環境に身を置く予定です。
情報の波から一度離れ、船上で波の音を聞きながら、ローカル環境で100日間のハックのアイデアや設計をじっくりと練り上げる。完全に思考を研ぎ澄ました状態から、キリよく新年度の「4月1日」に実働をスタートさせる。そんな裏のタイムラインが走っています。
☁️ 現場のAIに対するリアル:「クラウド黎明期」と全く同じ既視感
私は2012年から2022年頃まで、ITメーカー系SIerとしてインフラ系システムの構築に携わっていました。
私が担当していたのは地方公共団体、病院、エネルギー業種といった、いわゆる「ミッションクリティカル(絶対に止まってはいけない)」な現場です。
私が入社した当時の主役はVMwareなどのオンプレミス仮想化環境。世の中に「クラウド」という言葉が浸透し始めた時期でしたが、現場の反応は冷ややかなものでした。
「セキュリティ規定でサーバーの設置場所が特定できないとダメだ」
「クラウドは通信速度が担保できない」
「クラウド事業者の管理者に機密情報を抜き取られるリスクがある」
何かと理由をつけては、クラウド導入を拒む声が顧客からも社内からも上がっていたのを鮮明に覚えています。
そして今、「自社のシステム(kintone等)のカスタマイズコードをAIに書かせる」ことへの現場の忌避感は、当時のクラウドへの反応と全く同じです。
まさにこの既視感を見事に言語化してくださったのが、「Mr.kintone」こと株式会社ジョイゾー代表取締役社長の四宮靖隆さんの記事でした。
- 「ノーコードもコーディングも関係ない」生成AIエージェントによる開発時代 | 株式会社ジョイゾー – https://service.joyzo.co.jp/blog/p11600/
四宮さんが仰る通り、AIエージェントによるコーディングが普及することで、長年企業を悩ませてきた「属人化」の問題は構造的に解消されようとしています。歴史は繰り返す。新しい技術への不安は、ノウハウが蓄積されることで必ず「当たり前」へと変わるのです。
そして、この確信をさらに強いものにしてくれたのが、サイボウズ株式会社の青野慶久社長のSNSでのご発信でした。
サイボウズのトップ自らが、AIを活用した開発とセキュリティの未来について力強く断言されている。この言葉に背中を押され、「様子見をしている場合ではない。誰よりも早く、自分自身でノウハウを溜めにいくべきだ」と、今回の100日チャレンジというアクションを起こす覚悟が決まりました。
だからこそ、この100日間は単なる技術のひけらかしではなく、実務に耐えうる「AIを活用したカスタマイズ手法ノウハウ」を蓄積するための真剣勝負にしたいと思っています。

cybozu developer networkに追加された「LLM用にコピー」というボタンも、「どんどん生成AIを活用してカスタマイズしてくれ」というサイボウズさんからのメッセージだと、私は解釈しています。
⚠️ 「100 Days of kintone Hacks」のルールと免責事項
ここで、本チャレンジのルールを宣言します。
※若干思い付きということもあり、細かなルールなどは変更になるかもしれません…。
※Day15一部改訂
共通ルール
- JSカスタマイズ・CSSカスタマイズ・プラグイン・連携サービスに限らず、生成AIを用いたkintone活用/課題解決であればOKとします。
- ソースコードおよびプロンプトは原則「非公開」とします。(※この方針の理由は後述します)
- 2026/4/1(水) 19:00に1日目開始
私の個人ルール
- 私は毎日 日本時間 19:00 のアップデートを目標とします。
(※フリーランスとしての実案件を最優先とするため、時間や公開範囲は柔軟に対応させてください。あくまで全力で走るという決意表明です!) - 制作物への感想やアイデア等大歓迎です。一方、業務利用でクレームはお控えください…(下記の免責事項をご参照ください)
そして、本企画をご覧いただくにあたって、一番重要なお願い(免責事項)があります。
本100日企画において、私はあえて「ほぼノーコーディングで、100%AIにコーディングを任せる(バイブコーディング)」という制約を設けています。
※この「ほぼ」の対象外の例は、manifest.jsonのバージョンやプラグイン名、アイコンファイルや手動で一部コメントを消すなどを指します
AIエージェントを使った開発を日常的に行っているエンジニアなら共感いただけると思いますが、AIは指示したはずのルールを平気で忘れます。
特にリファクタリングの過程で顕著です。別のエラーを直すことにAIが夢中になり、事前に設定した「セキュアコーディング」や「kintoneのお作法」といった細かな仕様が、いつの間にか抜け落ちてしまう(コードが変異する)という事象が多発します。
本企画では「生成AIでどこまでのkintoneカスタマイズが可能なのか」というアイデアと検証プロセスの共有を目的としています。
記事内で紹介する技術や実装アプローチを自社の業務システムに流用される場合は、必ず自社のセキュリティルールを念頭に、kintoneのセキュアコーディングガイドライン等に照らし合わせ、セキュリティや動作リスクのレビューを行った上で自己責任での導入をお願いいたします。
【重要】ソースコード・プロンプト非公開への方針変更について(Day15更新)
当初、本チャレンジでは「生成AIで作った成果物」の価値を透明化するため、ソースコードとプロンプトの全面公開を予定・実施していました。しかし、チャレンジを進める中で、kintoneエンジニアというプロの立場として「あえて公開しない」という決断に至りました。
理由は、「無検証のAI生成コードがそのまま実環境に適用されてしまうリスク」を危惧したためです。
kintoneをご利用いただいている多くは法人だと思います。そのkintoneの強みは、IT部門だけでなく現場の担当者でもシステムを柔軟に構築・改善できる点にあります。そこに「AIが書いたから動く、便利なカスタマイズコード」をそのままお渡ししてしまうのは、極端に言えば「運転免許を持たない方に、スポーツカーのキーを渡してしまうようなもの」です。
また、プロンプトを非公開とする理由は、本チャレンジが単なる一問一答のチャットではなく「AIエージェント」を活用している点にあります。公開できていないスキルやMCPサーバーの連携、エディタ上の複雑なコンテキストを渡して開発を進めているため、「このテキストをコピペすれば同じものが作れる」という単一のプロンプトとして公開することが事実上不可能であり、誤解を招く恐れがあるためです。
2026年4月のAIやAIエージェントは、他のkintoneプラグインやJSカスタマイズへの干渉は対策できないはずです。なぜならそのコンテキストを渡していないから。
DOM操作による前述の干渉リスク以外にも、kintoneアップデート時の崩壊リスク、XSS(クロスサイトスクリプティング)などの脆弱性などはコーディングガイドラインなどを準拠するように指示すればある程度書いてくれますが、それが問題ないかどうか判定するのは最終的に人間です。
どんなシステムにもバグや脆弱性があることから分かるように、最終的にはシステム管理者がリスクを評価し、許容できるかを判断しなければなりません。
AIは指示をもとに考えて動いてくれますが、時にセキュリティや保守性の前提が抜けている「とりあえず動くコード」を出力します。それを評価・担保するのは、kintoneシステム管理者や我々kintoneエンジニアの役割です。
AIの進化により、エンジニアの真の価値は「コードを書けること」から「AIの出力を適切に評価し、安全に現場へ導入できること」へと完全にシフトしました。
これまでの成果物公開は、私を含め関わる3者(利用者、管理者/事業者、エンジニア自身)にとって良くない影響を与える可能性があると反省しています。
| 登場人物 | 当初の想定 | ケースを再考慮 | 負の影響 |
|---|---|---|---|
| 私(森田ユウゴ) | 「生成AIで爆速で作った!」 | 「生成AIで爆速で作った!」 | 免責事項やチャレンジの意図が通じず、マイナスブランディング |
| kintone利用者 | 「こんなアイデアがあるみたいだけど、当社に使えないかな?相談してみよう」 | 「AIで作れるみたいだしソースも公開されている、だからkintone管理者/事業者さんはサクっと安く早く作ってよ」 | 期待する機能実現に対するスピードのギャップが発生 |
| kintone管理者/事業者 | 「これは確かに当社に使えるアイデアだ!自社用に改修してみよう」 | 「そんなこと言われても、XXという事情があって…」「こんなコード書いたの誰?やっぱりネット上の情報はクソだ!保守がー、セキュリティがー」「コード行数がー」 | 専門家視点で対応できない各種事情の処理 |

このような例でクレームを受ける前に気づけたのは下記の動画をたまたま視聴したためです。
今後の発信について
GitHubでのソースコード公開は停止し、ブログ(および可能であればYouTube)での活動報告を継続します。今後は以下の2点を中心にお届けします。
- ほぼ100%バイブコーディングで開発したkintone開発の事例
- その実装における「リスク評価」(cybozu developer networkのガイドライン等に基づき、どのようなセキュリティリスクや運用上の注意点があるかの解説)
なお、すでにDay001〜で公開していたリポジトリについては、安全性を考慮し非公開(Private)に変更いたしました。ただし、ライセンス自体はMITのまま変更しませんので、すでにフォークやクローンされている方は、引き続き自己責任にてご活用いただいて構いません。
🤖 私の相棒となるAIエージェントたち
今回のチャレンジで、私がどうやって100日間AIをマネジメントしていくのか。使用するツール群(2026年3月時点)を公開しておきます。
企画・壁打ち:Gemini
アイデア出しや設計の整理にはGeminiを活用します。
私がGeminiを愛用している一番の理由は「圧倒的なコストパフォーマンス」です。ただ、個人プランは業務利用におけるオプトイン問題のような懸念点もあるため、私は独自ツールを利用したりしています。(詳細はこちらの記事をご覧ください)。


0日目時点での懸念:100個もアイデアが出るだろうか…
生成AIを活用した開発時間より、リサーチやアイデア検討に時間を取られそうな予感をしています。ここも生成AIをフル活用しようと思います。
メイン開発環境:Cursor
「Auto」というUnlimitedな選択肢を使用します。最新のClaude Opus 4.6等のハイエンドモデルと比べると、時に「錆びたナイフ」と揶揄されることもありますが、使い放題である恩恵は計り知れません。今の時代、CursorのAutoレベルでも十分すぎるほどのカスタマイズを作れます。
1年前の2025年4月、円安のタイミングだったので年間契約をして1年経ちます。これを機にClaudeのMAXにしてしまうかどうか…、どうなるかまだ未定です。
結局、Cursorを年額プランで継続しています。
もちろん、初期の初期でGeminiを使って簡単なJS開発とか、そこは臨機応変にしています。
切り札:Claude Code
前述のX投稿埋め込みのとおり、CursorのAutoでトークンを惜しげもなく使って動くものを開発し、その後Claude Codeが「新規作成」すると、比較的まともなコードになります。(さすがにCursorの使い放題Auto内部は、Sonnet4.6よりも低単価モデルだと思うので…)
もちろん、最初から最後までOpus 4.6で作りたい気持ちはありますが、これは予算の問題です。
更にいうとClaude CodeよりもCursorからAPI経由でOpus 4.6を使った方が、圧倒的に早いし求めるものを開発してくれる印象です。
🌅 100日後の景色を、一緒に見に行きませんか
最後に、先ほども触れたジョイゾー四宮氏の記事にあった言葉を引用させてください。
“今のうちに生成AIをトライアンドエラーで使っていくかどうかで半年、1年先の未来は変わる”
「ノーコードもコーディングも関係ない」生成AIエージェントによる開発時代 | 株式会社ジョイゾー – https://service.joyzo.co.jp/blog/p11600/
まさにその通りだと思います。
kintoneに関わるすべてのユーザー様に、自身のチャレンジを通して「AIでここまで出来るんだ」という可能性を実感していただきたい。
4月1日からの100日間。
フリーランスエンジニアのリアルな息づかいと、AIが紡ぎ出すコードの軌跡を、ぜひ一緒に追いかけてください。

皆さんのご参加も大歓迎です!ぜひ、各種SNSで「#kintone100日チャレンジ」タグで投稿をお待ちしております!
🛠️ 100 Days of kintone Hacks アーカイブ
今後、定期的にこの欄をまとめ用に更新予定です!
※Day15より、ソースコードの公開を停止し「実装アイデアとリスク評価」をメインとした記事構成へアップデートしています。公開済みの過去コード(Day001〜)は安全上の理由からGitHubリポジトリを非公開としております。
- 001日目: driver.jsを活用して入力ナビゲーションプラグイン
-
XYoutube記事
【#kintone100日チャレンジ】Day 1: driver.jsを活用して入力ナビゲーションプラグインを作ってみた #kintoneplugin – Qiita
https://qiita.com/majinalife/items/67e7d57fadb958ab1865
- 002日目: 変更履歴をDOMで取得して差分表示するプラグイン
-
XYoutube記事
【#kintone100日チャレンジ】Day 2: [変更履歴]をDOMで取得して差分表示するプラグインを作ってみた #kintoneplugin – Qiita
https://qiita.com/majinalife/items/bdfa597e3d5645b9e047
- 003日目: 編集時間をストップウォッチで記録するプラグイン:クロノスタック
-
XYoutube記事
【#kintone100日チャレンジ】Day 3: 編集時間に着目した「クロノスタックプラグイン」を作ってみた #バイブコーディング – Qiita
https://qiita.com/majinalife/items/cd136ef481265953ecc1
- 004日目: 匿名コメントプラグイン
-
XYoutube記事
【#kintone100日チャレンジ】Day 4: チームワークあふれるkintoneを支援する「匿名コメントプラグイン」を作ってみた #バイブコーディング – Qiita
https://qiita.com/majinalife/items/5d32c6cf20d04778caa8
- 005日目: kintoneアプリデータをGitで管理する支援をするGoogle Chrome 拡張機能(kin-for-Git)
-
XYoutube記事
【#kintone100日チャレンジ】Day 5: kintoneアプリのGit管理を支援するChrome拡張機能を作ってみた #バイブコーディング – Qiita
https://qiita.com/majinalife/items/a5a10d9ef3605cdfca26
- 006日目: マウスジェスチャープラグイン
-
XYoutube記事
【#kintone100日チャレンジ】Day 6: kintoneでマウスジェスチャーを出来るプラグインを作ってみた #バイブコーディング – Qiita
https://qiita.com/majinalife/items/0919fd6a30865d7a296c
- 007日目: キーボードショートカットプラグイン
-
XYoutube記事
【#kintone100日チャレンジ】Day 7: 自治体や金融システム風のキーボード入力プラグインを作ってみたかった #バイブコーディング – Qiita
https://qiita.com/majinalife/items/61ae3eb36a73b3896528
- 008日目: 詳細画面のテーブルを見やすくするテーブル拡張プラグイン(テーブル・プラス)
-
XYoutube記事
動画の冒頭で「Day007」となっていますが、Day008が正しいです。
【#kintone100日チャレンジ】Day 8: 詳細画面のテーブルを見やすくする「テーブル・プラス」を作ってみた #バイブコーディング – Qiita
https://qiita.com/majinalife/items/a939251d0429b523e688
- 009日目: モバイル入力を効率化する準備 QRコードメーカープラグイン(for kintone)
-
XYoutube記事
【#kintone100日チャレンジ】Day 9: モバイル入力を効率化する準備に「QRコードメーカー for kintone」を作ってみた #バイブコーディング – Qiita
https://qiita.com/majinalife/items/828355a2bf2776635d40
- 010日目: モバイル入力を効率化 QRコードリーダープラグイン(for kintone)
-
XYoutube記事
【#kintone100日チャレンジ】Day 10: モバイル入力を効率化する準備に「QRコードリーダー for kintone」を作ってみた #バイブコーディング – Qiita
https://qiita.com/majinalife/items/a75777407f85ea33acc6
- 011日目: フィールド表示制御プラグイン(simple-field-switcher)
-
XYoutube記事
【#kintone100日チャレンジ】Day 11: 条件付きフィールド表示切替プラグインを作ってみた|森田ユウゴ
https://note.com/majinalife/n/nd1e31c4df992
- 012日目: 帳票生成プラグイン (powered by pdfme)
-
XYoutube記事
【#kintone100日チャレンジ】Day 12: フロントエンドでここまで出来る「帳票生成プラグイン (powered by pdfme)」」作ってみた|森田ユウゴ
https://note.com/majinalife/n/n195050895d3a
- 013日目: フィールドスタイル条件設定プラグイン
-
XYoutube記事
【#kintone100日チャレンジ】Day 13: 2026年4月のアップデートに対応「フィールドスタイル条件設定プラグイン」作ってみた|森田ユウゴ
https://note.com/majinalife/n/n9b6fd04dfe5a
- 014日目: 禁止ワードマスキングプラグイン
-
XYoutube記事
【#kintone100日チャレンジ】Day 14: コールセンター業務のメンタルヘルスに「禁止ワードマスキングプラグイン」を作ってみた|森田ユウゴ
https://note.com/majinalife/n/n8da88435e146
- 01X日目: 準備中
-
XYoutube記事
準備中

最新情報は私のX投稿をご確認ください!
さいごに…おまけの種明かし
最後までお読みいただき、ありがとうございます。
ここまで熱い想いを語らせていただきましたが……
実はこの記事の構成から文章作成まで、その9割を「生成AI」と相談しながら作成しました。
システム開発も、文章作成も。パラダイムシフトはすでに始まっています。
もちろん、2013年のサイボウズOfficeの思い出や、インフラSEとしての実体験など「私自身の血肉」となるプロンプトは、すべて私が壁打ちしてAIに注入しています。
「人間の熱量や泥臭い文脈をAIに渡し、AIがそれを形にする」
まさにこれからお見せしていく、システム開発における「バイブコーディング」のプロセスと何ら変わりありません。
このように人間らしい情報をハンドリングする仕事こそが、これからのエンジニアの新しい形なのだと確信しています。
それでは、次の更新「Day X」でお会いしましょう!
