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
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
820
【あのMCPって、どんな処理してるの?】 AWS CDKでの開発で便利なAWS MCP Servers特集
yoshimi0227
6
960
CDK Vibe Coding Fes
tomoki10
1
630
“日本一のM&A企業”を支える、少人数SREの効率化戦略 / SRE NEXT 2025
genda
1
280
cdk initで生成されるあのファイル達は何なのか/cdk-init-generated-files
tomoki10
1
670
無理しない AI 活用サービス / #jazug
koudaiii
0
100
Four Keysから始める信頼性の改善 - SRE NEXT 2025
ozakikota
0
420
ビジネス職が分析も担う事業部制組織でのデータ活用の仕組みづくり / Enabling Data Analytics in Business-Led Divisional Organizations
zaimy
1
400
データ戦略部門 紹介資料
sansan33
PRO
1
3.3k
今だから言えるセキュリティLT_Wordpress5.7.2未満を一斉アップデートせよ
cuebic9bic
2
170
全部AI、全員Cursor、ドキュメント駆動開発 〜DevinやGeminiも添えて〜
rinchsan
10
5.1k
公開初日に Gemini CLI を試した話や FFmpeg と組み合わせてみた話など / Gemini CLI 初学者勉強会(#AI道場)
you
PRO
0
1.4k
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Navigating Team Friction
lara
187
15k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
108
19k
Music & Morning Musume
bryan
46
6.7k
A Modern Web Designer's Workflow
chriscoyier
695
190k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Faster Mobile Websites
deanohume
308
31k
Why Our Code Smells
bkeepers
PRO
337
57k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.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♡リンク→