Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Flutterと Vibe Coding で個人開発!
Search
Hayami Shuhei
August 01, 2025
Programming
1
320
Flutterと Vibe Coding で個人開発!
第8回 FlutterGakkai
吹き出し素材は
https://kage-design.com
のものを使用させていただいております
Hayami Shuhei
August 01, 2025
Tweet
Share
More Decks by Hayami Shuhei
See All by Hayami Shuhei
Claude Agent SDK を使ってみよう
hyshu
0
1.5k
BLoCパターンとflutter_bloc
hyshu
0
120
Melos x Pub Workspaces で 沢山のアプリとパッケージを管理するのに 苦労した話
hyshu
1
49
Jasprが凄い話
hyshu
0
340
CanvasKitの描画の仕組みを調べてみる
hyshu
0
170
Other Decks in Programming
See All in Programming
퇴근 후 1억이 거래되는 서비스 만들기 | 내가 AI를 사용하는 방법
maryang
2
400
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
250
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
520
Register is more than clipboard
satorunooshie
1
370
Kotlin 2.2が切り拓く: コンテキストパラメータで書く関数型DSLと新しい依存管理のかたち
knih
0
280
品質ワークショップをやってみた
nealle
0
940
外接に惑わされない自システムの処理時間SLIをOpenTelemetryで実現した話
kotaro7750
0
160
data-viz-talk-cz-2025
lcolladotor
0
110
エンジニアインターン「Treasure」とHonoの2年、そして未来へ / Our Journey with Hono Two Years at Treasure and Beyond
carta_engineering
0
480
Bakuraku E2E Scenario Test System Architecture #bakuraku_qa_study
teyamagu
PRO
0
210
モテるデスク環境
mozumasu
3
1.4k
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
14
47k
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Visualization
eitanlees
150
16k
Statistics for Hackers
jakevdp
799
220k
KATA
mclloyd
PRO
32
15k
Automating Front-end Workflow
addyosmani
1371
200k
YesSQL, Process and Tooling at Scale
rocio
174
15k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Designing for Performance
lara
610
69k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
The World Runs on Bad Software
bkeepers
PRO
72
11k
Transcript
ୈճ'MVUUFS(BLLBJ ͱ Vibe CodingͰ ݸਓ։ൃʂ BR )BZBNJ4IVIFJ
ݸਓ։ൃɺしていますか? ࠙ձͰͷௐࠪʢBRௐʣ ͍͔ͭΓ͍͚ͨͲ͕࣌ؒͳ͍ʜ AIがあるので時間がなくても作れます🙆
·ͣ$IBU(15ʹ࣭ 何か良い感じに便利な Flutterアプリを沢山考えてください
͢Δͱݸ͘Β͍ߟ͑ͯ͘ΕΔ IUUQTDIBUHQUDPNTIBSFCEFDCGD 23ίʔυҰׅεΩϟφʔཤྺཧ εϚʔτ5P%P श׳τϥοΧʔ ࣸਅʹࣸͬͯΔจࣈΛॠ࣌ʹϦετԽ͢Δ0$3ϝϞா 1%'ऍˍॺ໊πʔϧ 8J'J#MVFUPPUIࣗಈΓସ͑πʔϧʢ"OESPJEͷΈʣ "*ͱձֶͯ͠Ϳӳձ࿅शΞϓϦ ୯ޠாϝʔΧʔ
ΧϝϥऔΓࠐΈ ඵͰ෮शɿ௨Ͱখςετ ίʔυεχϖοτهˍݕࡧΞϓϦ ϚΠϯυϑϧωεݺٵτϨʔφʔ ৯ࣄϩάʴࣸਅ͔ΒࣗಈΧϩϦʔܭࢉ εϚʔτਫิڅϦϚΠϯμʔ ࢄาϧʔτهˍؾϩά "*ٞࣄϥΠλʔʢԻˠཁʣ γϯϓϧग़ୀۈλΠϜΧʔυ ΧελϜςϯϓϨʔτٻॻδΣωϨʔλʔ ΫϥΠΞϯτผϝϞ λεΫ ਐḿՄࢹԽ ϛχ7MPH࡞ߘΞϓϦ ಗ໊͓Έ૬ஊܝࣔ൘ʢ"*͖ʣ ҰҰࣸਅ4/4ʢ࣌ؒͰফ͑Δʣ झຯϚονϯάΞϓϦʢݩɾΦϯϥΠϯରԠʣ ෦ͷ༷ସ͑γϛϡϨʔλʔʢ"3 %ʣ ϖοτͷ݈߁هΞϓϦ ಡॻϩά ཁϊʔτΞϓϦ Πϕϯτཧˍ23νΣοΫΠϯ ఱؾ༧ใΟδΣοτ ੈք࣌ܭʢෳࢢରԠʣ ͪΐ͍ϝϞʢϩοΫը໘ͰݟΒΕΔʣ ετοϓΥον ϥοϓه ΧϨϯμʔ༧ఆཧʢ(PPHMF࿈ܞʣ ͜ͷத͔ΒબΜͰ࡞ͬͨΓɺ͜ΕΛىʹ࡞Γ͍ͨͷΛߟ͑ͨΓʜ
猫の餌やり記録アプリの 企画書を考えてください ࣍ʹاըॻΛ࡞ͬͯΒ͏
ೣͷ㕒ΓهΞϓϦاըॻ ˙ΞϓϦ໊ʢԾʣ ʹΌΜϩάʢ/ZBN-PHʣ ʙೣͷ͝ΜهΛ؆୯ɾ࣮֬ʹʙ ⸻ ˙എܠɾత ଟ಄ࣂ͍ͷՈఉෳਓͰೣͷੈΛ͍ͯ͠ΔڥͰɺʮೣʹ㕒Λ͔͋͛ͨͲ͏͔͔Βͳ͍ʯͱ͍͏τϥ ϒϧ͕ൃੜ͕ͪ͠Ͱ͢ɻ ·ͨɺ݈߁ཧͷͨΊʹɺʮ͍ͭɾͲͷ͘Β͍㕒Λ৯͔ͨʯͷهॏཁͰ͢ɻ ͦ͜Ͱɺ㕒ΓͷཤྺΛ؆୯ʹهɾڞ༗Ͱ͖ΔεϚϗΞϓϦΛ։ൃ͠ɺೣͷ݈߁ͱࣂ͍ओͷ҆৺Λαϙʔτ
͠·͢ɻ ⸻ ҎԼུ IUUQTDIBUHQUDPNTIBSFFDFDBDFEGGFF
ೣͷ㕒ΓهΞϓϦاըॻ ˙ΞϓϦ໊ʢԾʣ ʹΌΜϩάʢ/ZBN-PHʣ ʙೣͷ͝ΜهΛ؆୯ɾ࣮֬ʹʙ ⸻ ˙എܠɾత ଟ಄ࣂ͍ͷՈఉෳਓͰೣͷੈΛ͍ͯ͠ΔڥͰɺʮೣʹ㕒Λ͔͋͛ͨͲ͏͔͔Βͳ͍ʯͱ͍͏τϥ ϒϧ͕ൃੜ͕ͪ͠Ͱ͢ɻ ·ͨɺ݈߁ཧͷͨΊʹɺʮ͍ͭɾͲͷ͘Β͍㕒Λ৯͔ͨʯͷهॏཁͰ͢ɻ ͦ͜Ͱɺ㕒ΓͷཤྺΛ؆୯ʹهɾڞ༗Ͱ͖ΔεϚϗΞϓϦΛ։ൃ͠ɺೣͷ݈߁ͱࣂ͍ओͷ҆৺Λαϙʔτ
͠·͢ɻ ⸻ ҎԼུ 'MVUUFSͰҎԼͷΞϓϦΛ࡞͍ͬͯͩ͘͞ɻ Ճ ͓ΈͰػೳઃܭɾ͍͍ͨύοέʔδͳͲΛه͍ͯ͘͠
ͲΕ࣭ʹ͋·Γࠩͳ͍ͷͷɺ͔͔Δख͕ؒҟͳΔ खؒ ଟΊ গͳΊ ແྉ ʙ ʙ
$MJOFY(FNJOJ1SP ແྉ"1*Ωʔ
$VSTPSY$MBVEF4POOFU (FNJOJͱͷੑೳࠩߕԵ͚͍͕ͭɺ$MBVEFҰͷࢦࣔͰ͘ಈ͍ͯ͘Εָͯ ͲͪΒະ࣮ෆ۩߹͕݁ߏ͋ΔͷͰɺҰͭͣͭࢦࣔΛग़ͯ͠मਖ਼͍ͯ͘͠
Ұ൪ָΛ͍ͨ͠ͷͳΒ $MBVEF$PEF ˞ݱ࣌ͰͷͰ͢ 1SPϓϥϯ Ͱ ेͰ͢
ϧʔϓͰλεΫ͕ ࣮ߦͰ͖Δ͔Β $MBVEF$PEFָ͕ͳཧ༝ DDSVOOFSͱ͍͏͜ͷҝͷ$-*࡞Γ·ͨ͠ IUUQTHJUIVCDPNIZTIVDDSVOOFS ZBNMͰॻ͚ΔɺϨʔτϦϛοτղআ·Ͱࣗಈػʣ
λεΫϦετͷ࡞͔Βϧʔϓ࣮ߦ·Ͱ اըॻ QMBONE ΛλεΫϦετʹม͠ɺUBTLNEͱͯ͠ॻ͍ͯΒ͏ اըॻΛషΓ͚ɺʮاըॻΛ࣮͢ΔͨΊͷλεΫΛUBTLNEʹຊޠͷν ΣοΫϦετܗࣜͰॻ͍͍ͯͩ͘͞ʯͱࢦࣔ͢Δͱॻ͍ͯ͘Ε·͢ UBTLNEΛख͢͠Δ
εέδϡʔϧকདྷతͳ࣮ܭըͳͲ͕ॻ͔Εͨ߹আ͠·͢ ৽ن'MVUUFSϓϩδΣΫτΛ࡞ fl VUUFSDSFBUFͷࡍʹFNQUZΦϓγϣϯΛ͚ΔͱແବͳϑΝΠϧ͕ग़ͳ ͓ͯ͘͢͢ΊͰ͢ʢҙ֎ͱΒΕ͍ͯͳ͍Φϓγϣϯʣ
λεΫϦετͷ࡞͔Βϧʔϓ࣮ߦ·Ͱ 8JEHFU#PPLϓϩδΣΫτ࡞ʢҙʣ $-"6%&NEʹ ʮ6*ίϯϙʔωϯτΛ࡞ɾߋ৽ͨ͠ࡍ!XJEHFU@CPPLʹө͍ͯͩ͘͠͞ʯ ͱࢦࣔ͢Δͱॻ͍ͯ͘Ε·͢ʢ͘͠UBTLNEʹλεΫͱͯ͠Ճʣ $MBVEF$PEF8JEHFU#PPLͷηοτΞοϓ͕ۤखͳͷͰςϯϓϨʔτϓϩδΣ ΫτΛ༻ҙ͓ͯ͘͠ͱָͰ͢
UBTLNEɺQMBONEɺSVOOFSZBNM DDSVOOFSΛ͏߹ Λ'MVUUFSϓϩδΣΫτʹஔͯ͠ϧʔϓ࣮ߦ ϧʔϓͰDMBVEFίϚϯυΛݺΕDDSVOOFSʹݶΒͣγΣϧεΫϦϓτͰྑ ͍ͷͰ͕͢ɺϨʔτϦϛοτ͕དྷͨ࣌ʹظؒʹԿ࣮ߦͯ͠͠·Θͳ͍Α͏ʹ ͝ҙ
$MBVEF$PEFͷ͍ํ npm install -g @anthropic-ai/claude-code Πϯετʔϧ claude ରϞʔυΛىಈʢ$VSTPS$MJOFͷΑ͏ʹࢦࣔΛग़ͤΔϞʔυʣ claude -p
"͜ͷϓϩδΣΫτΛղઆͯ͠" -—allowedTools "Read" ϓϩϯϓτΛ࣮ߦ͠ɺऴΘͬͨΒऴྃ ϑΝΠϧͷಡΈࠐΈͷΈڐՄ claude -p "ϦϑΝΫλϦϯά͖߲͢Λڭ͑ͯ" -c લճͷ࣮ߦ݁ՌΛҾ͖ܧ͍ͩঢ়ଶͰϓϩϯϓτΛ࣮ߦ claude -p "@task.md Λ࣮ͯ͠" --dangerously-skip-permissions શͯͷૢ࡞ΛڐՄͨ͠ঢ়ଶͰϓϩϯϓτΛ࣮ߦ :0-0Ϟʔυ
DDSVOOFS npm install -g @hyshu/ccrunner yolo: true steps: - type:
loop steps: - type: prompt name: ImplementTask prompt: "@task.md Λ࣮͍ͯͩ͘͠͞" Πϯετʔϧ ˡ:0-0Ϟʔυ ࣗಈঝೝ Λ0/ʹ͢Δͱɺ΄ͱΜͲͷίϚϯυΛ$MBVEF$PEF͕͑ΔΑ͏ʹͳΔ SVOOFSZBNMͷྫ ͻͨ͢Β$MBVEF$PEF͕UBTLNEͷ࣮ΛਐΊΔ SVOOFSZBNMΛ࣮ߦ ccrunner
yolo: true steps: - type: loop name: Process until finish
marker condition: "[ ! -e finish ]" steps: - type: prompt name: ImplementTask prompt: '@task.md Λ࣮͍ͯͩ͘͠͞ɻҰʹશͯͷλεΫΛߦ͏ඞཁ͋Γ·ͤΜɻख़ߟ͠దͳ࣮Λ৺͕͚͍ͯͩ͘͞ɻ' - type: prompt name: Testing prompt: 'flutter analyze ͱ flutter test Λ࣮ߦ͠ɺΤϥʔ͕͋Εमਖ਼͍ͯͩ͘͠͞ɻ' continuedFrom: before - type: prompt name: UpdateTask prompt: 'ݱࡏͷ࣮Λௐɺ task.md ʹ͋Δ࣮ࢪࡁΈͷλεΫʹνΣοΫΛೖΕ͍ͯͩ͘͞ɻશͯྃࡁΈͷηΫγϣϯআ͠ɺ్தܦաྃใࠂॻ͔ͳ͍ɻ' saveResultAs: result continuedFrom: ImplementTask - type: prompt name: GitCommitPush prompt: 'git add -A ͱ git commit Λ͍ͯͩ͘͠͞' continuedFrom: before - type: prompt name: Refactroing prompt: 'ϦϑΝΫλϦϯάΛߦ͍ͬͯͩ͘͞ɻྨࣅͷ࣮Ұͭʹ·ͱΊɺΘΕ͍ͯͳ͍Ϋϥεϝιουআ͍ͯͩ͘͠͞ɻ' - type: prompt name: Testing prompt: 'flutter analyze ͱ flutter test Λ࣮ߦ͠ɺΤϥʔ͕͋Εमਖ਼͍ͯͩ͘͠͞ɻ' continuedFrom: before - type: prompt name: GitCommitPush prompt: 'git add -A ͱ git commit Λ͍ͯͩ͘͠͞' continuedFrom: before - type: command command: rm finish && rm task.md && git add -A && git commit -m "finish" ˡ fi OJTIͱ͍͏ϑΝΠϧ·ͨσΟϨΫτϦʔ͕࡞ΒΕΔͱऴྃ͢Δ UBTLNEͷඌʹʮશͯͷ<>͕<Y>ʹͳͬͨΒAUPVDI fi OJTIAΛ࣮ߦ͢ΔʯͱՃ͍͑ͯͩ͘͞ ˢҰʹλεΫΛ࣮ͤ͗͢͞Δͱ࣭͕Լ͕ΔͷͰগͣͭ͠ߦΘͤΔ ˢ$MBVEF$PEF࡞ۀਐḿΛUBTLNEʹॻ͍ͯ͘ΔͷͰγϯϓϧͳঢ়ଶΛҡ࣋ͤ͞Δ ˡ࣮ͱϦϑΝΫλϦϯάΛަޓʹͤͯ͞ίʔυͷ૿͑ա͗Λ͙ SVOOFSZBNMʹΑΔλεΫͷϧʔϓ࣮ͷྫ
$MBVEF$PEF͓खܰݸਓ։ൃελΠϧ w ༵ʹاըॻλεΫϦετ࡞ɻλεΫ࣮ΛϧʔϓͰճ͢ w ৸Δ w ࣍ͷձ͔ࣾΒؼ͖ͬͯͯ6*͕ྑ͍ײͩͬͨ͡Β λεΫϦετʹػೳՃෆ۩߹मਖ਼λεΫͳͲΛՃ w ৸Δ
w ࣍ͷձ͔ࣾΒؼ͖ͬͯͨΒमਖ਼͍ྃͯ͠ΔͷͰλεΫϦετʹ ུ w ݄ʙۚͰ΄΅͢ΔͷͰɺΓͷ࡞ۀΛʹͯ͠
͓ΘΓʹʜޭ͍͢͠ݸਓ։ൃͱ ͕ࣗཉ͍͠ͷͰʢετΞʹͳ͍͔Βʣ࡞ͬͨΞϓϦ ˠࣗવͱϢʔβʔઢʹͳΔ ɹͩ͜ΘΓ69 Ϣʔβʔମݧ ͕ॆ࣮͍͢͠ ɹ͏ػձ͕ݶఆత͗͢ͳ͚ΕଟগχονͰ0, ૂͬͯώοτͤ͞ΔΞϓϦқ͕ߴ͍ʜ ˠಡΈ͕ͨΔ͕֬ͦͦ͘ɺ
ɹਓؾ͕ग़͕ͯࣗ͏༁Ͱͳ͍ͷͰɺ"#ςετϢʔβʔͷߦಈϩά ɹ͔Βਪଌ͍ͯ͘͠ඞཁ͕͋ΓɺΞϓϦ։ൃͱผͷٕज़͕ඞཁ ࣗͷͩ͜ΘΓΛΞϓϦʹࠐΊͯྑ͍ݸਓ։ൃϥΠϑΛ🙆
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ X: @aqhayami