Spinach Forest

Reading gemini-cli #2

さて今日は core を眺めようねー。

Code Assist

GeminiChat

prompts.ts

  • Mobile App: Compose Multiplatform (Kotlin Multiplatform) or Flutter (Dart) using Material Design libraries and principles, when sharing code between Android and iOS. Jetpack Compose (Kotlin JVM) with Material Design principles or SwiftUI (Swift) for native apps targeted at either Android or iOS, respectively.
  • Parallelism: Execute multiple independent tool calls in parallel when feasible (i.e. searching the codebase).

logger.ts

sendMessageStream

CoreToolScheduler

ToolRegistry and MCP

checkNextSpeaker

さてツールの結果が出揃ったら(あるいはツールが必要なかったら) dMessageStream は checkNextSpeaker というのを呼びます (nextSpeakerChecker.ts。)


今日はここまで。というかだいたい気が済んだので code reading は終了。これで何らかの疑問が生じた時にコードを眺めて調べるくらいはできることでしょう (React 部分除く。つまり半分はわかってない。Sigh.)

後半感想:

後発ゆえの必然とはいえオープンソースにしたのは偉かったね。ある程度機能が固まってきた暁にはつよつよエンジニアを連れてきて tech debt を返済のうえ素敵な client-side agentic platform に仕立てていっていただきたいものです。

個人的には「エージェントアプリつくるのこういうかんじかー」と大変勉強になりました。個人がおもちゃとして agent をつくるなら、もっと用途を限定してデザインを簡素化する方法を考える必要があることでしょう。


  1. 10年前からあるらしい。 ↩︎