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
1
620
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
78
今、スマートグラスが熱い。
kotauchisunsun
0
220
RooCodeによる開発の夢と実践の現実
kotauchisunsun
0
620
書籍「テスト駆動」が 教えてくれること 教えてくれないこと 知っておくべきこと
kotauchisunsun
0
130
2025年のARグラスの潮流
kotauchisunsun
0
1.1k
幻のLispマシン
kotauchisunsun
0
310
仮想と実存。その融合する世界を創る。 ~XR業界へ就職・転職のために必要な経験・スキルとは?~
kotauchisunsun
0
85
ARグラスにChatGPTを入れてみた V2.2
kotauchisunsun
0
190
AR グラスにChatGPTを入れてみた V2.0
kotauchisunsun
0
160
Other Decks in Technology
See All in Technology
伴走から自律へ: 形式知へと導くSREイネーブリングによる プロダクトチームの信頼性オーナーシップ向上 / SRE NEXT 2025
visional_engineering_and_design
3
460
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
18k
公開初日に Gemini CLI を試した話や FFmpeg と組み合わせてみた話など / Gemini CLI 初学者勉強会(#AI道場)
you
PRO
0
1.3k
ソフトウェアQAがハードウェアの人になったの
mineo_matsuya
3
210
Introduction to Bill One Development Engineer
sansan33
PRO
0
260
ソフトウェアテストのAI活用_ver1.25
fumisuke
1
610
How to Quickly Call American Airlines®️ U.S. Customer Care : Full Guide
flyaahelpguide
0
240
ロールが細分化された組織でSREは何をするか?
tgidgd
1
420
AWS 怖い話 WAF編 @fillz_noh #AWSStartup #AWSStartup_Kansai
fillznoh
0
130
Snowflake Intelligenceという名のAI Agentが切り開くデータ活用の未来とその実現に必要なこと@SnowVillage『Data Management #1 Summit 2025 Recap!!』
ryo_suzuki
1
160
ビジネス職が分析も担う事業部制組織でのデータ活用の仕組みづくり / Enabling Data Analytics in Business-Led Divisional Organizations
zaimy
1
400
サービスを止めるな! DDoS攻撃へのスマートな備えと最前線の事例
coconala_engineer
1
180
Featured
See All Featured
Fireside Chat
paigeccino
37
3.5k
Six Lessons from altMBA
skipperchong
28
3.9k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
830
A designer walks into a library…
pauljervisheath
207
24k
The Language of Interfaces
destraynor
158
25k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Optimizing for Happiness
mojombo
379
70k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
How to Ace a Technical Interview
jacobian
278
23k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
520
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
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♡リンク→