金曜日, 6月 27, 2025
金曜日, 6月 27, 2025
- Advertisment -
ホームニューステックニュースGemini CLIやClaude Codeみたいなロゴを出力するoh-my-logoというツールを作りました

Gemini CLIやClaude Codeみたいなロゴを出力するoh-my-logoというツールを作りました


塗りつぶされたアスキーアート、もしかして流行る?

今月プログラマーたちの間で最も話題になったトピックの一つがClaude Codeだと思います。
そして、昨晩はGemini CLIが登場しました。他にもOpenHands CLIなどCLI系ツールもすっかり戦国時代に突入した感があります。

私はこれらのAIコーディングエージェント系のツールを見ていて思いました。
起動時のロゴがみんなデッカイなと…

特に昨晩発表されたGemini CLIは明らかにClaude Codeを意識した、塗りつぶされたアスキーアートじゃないですか…もしかしてこのスタイル、絶対流行るのでは…?

そんな非常に邪な考えがきっかけでこんなツールを作りました。

oh-my-logo

このロゴは以下のコマンドで実行できます。

npx oh-my-logo "OH\nMY\nLOGO" sunset --filled

ツールとしての要件などをある程度固めた上で、コードはClaude Codeを用いてVibe Codingで作り切りました。コードにはほとんど手を加えておらず、それでもこの規模のコードなら作り切れるということを学べました。

https://github.com/shinshin86/oh-my-logo

oh-my-logoの使い方

oh-my-logoはTypeScriptで書かれたnpmパッケージです。

以下のワンライナーで最新のoh-my-logoをnpmから落としてきて実行します。

npx oh-my-logo@latest "TONIKAKU\nYARE" fire --filled

実行結果は以下です。
※ゲームクリエイターの桜井政博氏の名言を引用させていただいています

とにかくやれ!

勿論塗りつぶしじゃないアスキーアートも表示可能です

npx oh-my-logo@latest "HELLO WORLD"

結果↓

oh-my-logo - HELLO WORLD

他にも色々オプションあります。

npx oh-my-logo@latest "TONIKAKU\nYARE" fire --filled -d horizontal
npx oh-my-logo@latest "TONIKAKU\nYARE" fire --filled -d diagonal

結果↓

oh-my-logo - Gradient direction option

あとは例えばccusageと組み合わせて、今月かかったClaude Code料金をでっかく表示させて悦に浸ることも可能です。
以下のようなワンライナーで実現可能。

npx oh-my-logo "$(npx ccusage@latest --json \
  | jq -r '"$" + ((.totals.totalCost * 100 | round) / 100 | tostring)')" \
  fire --filled

結果↓

ccusage with oh-my-logo

それ以外にも私自身が想定していなかったような活用をされている方もXに現れたりして、公開してわずか5時間ほどで自分の知らない可能性に触れることができて脈が上がりました。

https://x.com/shinshin86/status/1938228181271761072

そのような感じで気軽に使えるツールになっているかと思うので、ぜひ試してみてください。

ちなみにこのツールはCLIからだけでなく、ライブラリとしても利用可能です。

以下の examples 内にはDenoを用いたサンプルなども置いてあるので、よろしければご自身のアプリなどに組み込んで利用いただけると嬉しいです。

https://github.com/shinshin86/oh-my-logo/tree/main/examples

GitHubでのStarの集め方やバズるツールの作り方、教えて…!

GitHubでのStarの集め方やバズるツールの作り方、教えて...!

このZennの記事は oh-my-logo を公開して5時間後ぐらいに書いています。
そしてなんとこのリポジトリにはStarが現在17もついています。これは私にとって快挙です。
Starしてくれた皆様、本当にありがとうございます!!

oh-my-logoにstarが17個も!

何者でもない私のリポジトリにこんなにStarが短時間でついたのは、投稿したXが伸びてくれたからなのですが、せっかく伸びてくれたので、なぜこのツールが伸びたか?についても考えてみたいと思います。

https://x.com/shinshin86/status/1938162469601738859

ccusageがもたらしたnpxコマンドの普及

まず最近爆発的なヒットを残したオープンソースのツールの1つといえば、ccusage を思い浮かべる方も多いと思います。私も日々お世話になっております。

https://github.com/ryoppippi/ccusage

ccusage がもたらしてくれた恩恵の一つとして npx の普及があると思います。
おそらく去年に比べて npx とタイプされた量は今年爆発的に伸びていることでしょう。
(そんなことねーよ!と思った方も、よもや話として聞いて下さい)

昨晩、「Gemini CLIのロゴは絶対Claude Codeを意識しているよな〜」と思いながら眠りについたとき、「ああいうロゴを簡単に作成できるツールは面白がってくれる人も多いかも。実行は npx foo hogehoge とかで実行するようにすれば、敷居も低く沢山の人が試してくれるのでは?」と考えました。

私自身もプロダクトを作っている人間なので、オープンソースのツールとはいえ利用者数を目標に置くなら

  • 需要があること
  • 導入の敷居が低いこと

は重要だと感じています。
(別にこれらを満たしていないツールが悪いとは思っていません)

今回伸びたのは運要素が90%ぐらいは締めていると思いますが、もし導入から結果を確認できるまでのプロセスが以下のようだったら、ここまで気軽に使ってくれはしなかったでしょう。

# これは例で、このような使い方はしません
npm install -g oh-my-logo
OH_MY_LOGO_COLOR=red
OH_MY_LOGO_FONT=robot
oh-my-logo "Hello World"

そういった意味で、npx で実行できるツールというのは興味を持ってくれた方が結果を確認できるまでのプロセスとしては短くて優秀だと思います。

ちなみに普段あまり npx を触らない方向けに書き残しておくと、 npx 自体は簡単に悪意のあるnpmパッケージの実行などもできてしまうので、これを利用する際は信頼のできるパッケージのみを実行するようにしたほうが良いでしょう。

Claude CodeやGemini CLI、Codex CLIなどが普及したからこそのCLIツールの魅力

また最近はAI系ツールの主戦場の一つとしてCLIが注目されていることから、CLIツールの魅力がまた戻って来ているように思います。

昨晩、私はmizchiさんが書かれていたsimilarity-tsを使って、あるプロダクトのリファクタリングを行いました。

https://x.com/mizchi/status/1937759448292032544

これはTypeScriptのコード重複を検知するツールでCLI上で動きます。そしてCLI上で動くということはClaude CodeやGemini CLIに渡すことで、よしなに作業に組み込んでくれます。

実際このツールはかなり便利で、私はClaude Codeにこのツールを使ってくれと頼んだだけであとはスレッショルドを調整して重複の検知具合をClaude Codeが何度も調整しつつ、無理のない範囲でリファクタリングのプランを出してくれました。

similarity-tsの面白い点は、想定される利用者がAIだということです。
(私は使っていてそう感じましたが、間違っていたらすみません)

新たなCLIの可能性を感じられましたし、そういった意味でも今後CLIツールを書く面白さはあると思いました。

oh-my-logoはsimilarity-tsのようにCLIで使ったからといってAIがそれを活用する類のものではないかもしれませんが、そんな盛り上がっているCLI分野でツールを書くことは絶対楽しいですし、利用者の中での需要(便利なツールあったら使いたい熱)は確実に上がってきていると思います。

というわけで、書きながらエモい気持ちになって最後ポエムになってしまいましたが(すみません!)、CLIツール熱いという話でした。

oh-my-logo、ぜひこの機会に知った方は #ohmylogo のハッシュタグを使って、あなたの気持ちをSNSで発信してみてください。



Source link

Views: 0

RELATED ARTICLES

返事を書く

あなたのコメントを入力してください。
ここにあなたの名前を入力してください

- Advertisment -