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
OpenHands🤲にContributeしてみた
Search
kotauchisunsun
June 27, 2025
Technology
0
190
OpenHands🤲にContributeしてみた
AI駆動開発(AI-Driven Development) 勉強会 【大阪支部 #2】
https://aid.connpass.com/event/356707/
kotauchisunsun
June 27, 2025
Tweet
Share
More Decks by kotauchisunsun
See All by kotauchisunsun
A-Scouterの紹介 ~AtomS3/S3Rのスカウター化キット~
kotauchisunsun
0
71
今、スマートグラスが熱い。
kotauchisunsun
0
210
RooCodeによる開発の夢と実践の現実
kotauchisunsun
0
560
書籍「テスト駆動」が 教えてくれること 教えてくれないこと 知っておくべきこと
kotauchisunsun
0
130
2025年のARグラスの潮流
kotauchisunsun
0
1.1k
幻のLispマシン
kotauchisunsun
0
310
仮想と実存。その融合する世界を創る。 ~XR業界へ就職・転職のために必要な経験・スキルとは?~
kotauchisunsun
0
84
ARグラスにChatGPTを入れてみた V2.2
kotauchisunsun
0
180
AR グラスにChatGPTを入れてみた V2.0
kotauchisunsun
0
160
Other Decks in Technology
See All in Technology
20250625 Snowflake Summit 2025活用事例 レポート / Nowcast Snowflake Summit 2025 Case Study Report
kkuv
1
220
Observability в PHP без боли. Олег Мифле, тимлид Altenar
lamodatech
0
290
GeminiとNotebookLMによる金融実務の業務革新
abenben
0
150
Wasm元年
askua
0
100
AIにどこまで任せる?実務で使える(かもしれない)AIエージェント設計の考え方
har1101
3
1.3k
BigQuery Remote FunctionでLooker Studioをインタラクティブ化
cuebic9bic
2
230
Model Mondays S2E02: Model Context Protocol
nitya
0
190
Oracle Cloud Infrastructure:2025年6月度サービス・アップデート
oracle4engineer
PRO
2
140
CSS、JSをHTMLテンプレートにまとめるフロントエンド戦略
d120145
0
230
20250623 Findy Lunch LT Brown
3150
0
790
rubygem開発で鍛える設計力
joker1007
1
120
第9回情シス転職ミートアップ_テックタッチ株式会社
forester3003
0
150
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.8k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
330
24k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.8k
How STYLIGHT went responsive
nonsquared
100
5.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Fireside Chat
paigeccino
37
3.5k
Embracing the Ebb and Flow
colly
86
4.7k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
660
Gamification - CAS2011
davidbonilla
81
5.3k
Transcript
OpenHands に Contributeしてみた @こたうちさんさん 私が生産者(の一部)です。
自己紹介 • こたうち さんさん • @kotauchisunsun • こたうち企画 主催 • 本職:サーバーサイドエンジニア
• スマートグラスが好き
1月からほぼ毎日投稿してます!! 2025年だけで150本以上アップロードしてます。
HUAWEI Eyewear2 RayNeo X3 Pro Monocle Even Realities ASUS AirVision
M1 Oakley Meta
YouTubeChannel運用ツール AI Coding ニュースサイト ニュースの収集・選定 概要文の生成 YouTube運用の効率化ツールをAI Codingしてる。
OpenHandsとは Docker + WebUI (local) OpenHands Cloud (SaaS) OpenHands CLI
(local) OpenHands Resolver (Github,Gitlab,BitBucket) • 自然言語でコーディングを指示できるAI Coding Agent • いろいろな形態がある こたうちがContributeをしたのはコレ New!
デモ
OpenHands Resolverの機能 ①Issueの解決 GithubのIssueを作成し、”fix-me”のラベルをつけるだけ! あとは勝手にPRが作られる!
OpenHands Resolverの機能 ②PR修正への対応 “@openhands-agent”と修正内容をリプライするだけ!
OpenHands Resolverの始め方 • Github Actionsのworkflowのファイルを置く(Qiita記事or公式リポジトリ参照) • LLMのモデルの指定・APIキーの登録 • プライベートのリポジトリならPATトークンが必要 ◦
プライベートのリポジトリでも動く!! • Geminiの無料枠で動く • Github Actionsの無料枠で動く • 完全無料でAI Codingできる! 無料最強 タッグ
なんでContributeしたの?
Devinへの憧れ(2025年3月頃の話) ※当時月額50万円 Devinよさそうだけど 高いなぁ。 無料でできねぇかなぁ。 ①タスクを依頼 ②コードを実装 ③PR作成 null-sensei
その時に見つけた技術記事 https://zenn.dev/itaosan/articles/43742985318a21
動かねぇ。
OpenHandsのリトライ処理 リクエスト 429エラー(リクエスト上限) 無料枠 ・・・ リクエスト LLM_RETRY_MIN_WAIT LLM_NUM_RETRIES 何回か 繰り返す
待機
OpenHands Resolverのリトライ処理のバグ リクエスト 429エラー(リクエスト上限) 無料枠 ・・・ リクエスト LLM_RETRY_MIN_WAIT LLM_NUM_RETRIES 何回か
繰り返す 待機 リトライ関連の設定値が、 Resolverだと反映されない挙動だった
OpenHandsへContributeした内容 OpenHands ResolverによるGemini無料枠での稼働が安定するようになった。 やや強引にリトライ設定値を反映するPR 他の設定値も反映できるようにしたPR 大小合わせて6つのPRがマージ
2025年6月時点でのAI Coding Agentは戦乱状態 Visual Studio Code コマンドライン SaaS Plugin
OpenHandsの現在のメリット “GithubのIssueをGithub Actions上で解決し、 PRを無料で作らせる ”用途 Gemini無料枠が使える コマンドラインで動く 問題解決ができる ClineやRooCodeなどのVSCodeプラグインは Github
Actions上では動かせない。 ClaudeCodeやRobodev(?)は LLMをGeminiに変更できない。 OpenHandsで修正できた内容がCodex CLIで 修正できなかった(Geminiが原因?) • Geminiの無料枠は日毎に復活する • Github Actionsの無料枠は2000分(Pulbic無制限) 無料の範囲内でかなりのことが出来る。
OpenHands公式の ベストプラクティス
OpenHandsの公式ベストプラクティス 良いプロンプトの例: 具体的 修正箇所の明示 適切な範囲 追加する必要がある機能や修正が必要なエラーを明確に説 明します。 コードベース内で変更する必要がある場所がわかっている場 合は指定します。 通常は
100 行のコードを超えない、単一の機能に重点を置く。
OpenHandsの公式ベストプラクティス 悪いプロンプトの例: 抽象的 曖昧な修正箇所 過大な指示 コードを改善してください。 (漠然としすぎていて、具体的ではありません) ユーザー認証のどこかにバグがあります。見つけて修正できま すか?(詳細度と位置情報が不足しています) バックエンド全体を書き換えて、別のフレームワークを使用す
る。(適切なスコープが設定されていない) 割とどんなAI Coding Agentでも使える内容
個人的な OpenHands Resolver プラクティス
AIにコーディング時に Lint・自動テストをさせない。 Github Actionsに指示させる。
タスクを忘れるAI • 機能Aを実装 ◦ 機能A-1を実装 ◦ 機能A-2を実装 • 機能Bを実装 •
機能Cを実装 • 機能Dを実装 • Lintを実行 • 自動テストを実行 やってほしいタスク • 機能Aを実装 ◦ 機能A-1を実装 ◦ 機能A-2を実装 • 機能Bを実装 • 機能Cを実装 • 機能Dを実装 • Lintを実行 • 自動テストを実行 実際に行ったタスク 複雑なタスクになればなるほど後半のタスクを忘れがち。 (RooCodeのOrchestratorなどはだいぶマシ)
Github ActionsにLint修正やテスト修正のAI指示をさせる PR作成 Lint実行 Lint成功? Lint実行をコメント指示 No
AIに機能の実装に集中させる Lint実行 自動テスト実行 機能実装 機能実装 Lint実行指示 テスト修正指示 やることが多いとうまく動かない AIにタスクを一気に渡さない。 AIは実装に集中。Lintやテスト修正のフォローアップをGithub
Actionsにさせる。 ♪~
Github Actionsによるフォローアップは前時代的か? • 手動やローカルでコードを書くこともある。 • Lint忘れやテスト忘れでプッシュ ◦ AIも忘れる。 • 人力レビューが止まる
◦ (マージが遅れる。リリースが遅れる。 ) • 割とやりたくないLintエラー修正や テスト修正をOpenHandsが フォローしてくれる。 ①Lint忘れ・テスト忘れで ブランチにプッシュ ③Lint修正・ テスト修正を OpenHandsが 自動修正 ②作業忘れを検知 手動でのコード品質維持のコストやリードタイムを下げることができる。
シンギュラリティ来てる?
人類の最後の柱がOpenHandAgentに 倒れようとしている 人間が書いたコード量 < AIが書いたコード量になりそう。 OpenHandsAgentによるOpenHandsの修正が人間を超えるのも時間の問題。
コミット数に関しては AI Agentが人間を突破した。
まとめ • OpenHandsの紹介 • OpenHands ResolverはGeminiと利用することで無料でGitthub Issueを解決出来 る • OpenHands(AI
Coding Agent)へのプロンプトのベストプラクティス ◦ 具体的 ◦ 修正箇所の明示 ◦ 適切な範囲 • Lint忘れ・テスト忘れのためのGithubActionsによるフォローが有用 • OpenHands自体の開発がOpenHandsにより行われ、人間を一部超えた。
言いたかったこと
AIによるCodingは不完全
AI Coding Agent自体も不完全
まだまだつくる部分はいっぱいある
みなさんもContributeしてはいかが?
ご清聴ありがとうございました。 Github Sponsor♡リンク→