5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

RaycastAdvent Calendar 2024

Day 15

RaycastのAIをRaycast以外から利用する

Posted at

この記事はRaycast Advent Calendar 2024の15日目の記事です。
14日目の記事はtykiさんの「Dynamic Placeholders で Raycast の力を引き出す 🏋🏻 🔥」でした。

Dynamic Placeholdersは使ったことがなかったので、使ってみます。

あらためて、こんにちは。せーじです。普段はWebやバックエンド、時々アプリの開発をしています。
私は業務や私生活で日常的にRaycastを使っています。

最近、Raycast Proに課金しました。課金した↓経緯はこちらの記事から。

$16/monthという、自分にしてはかなり高価なサブスクにチャレンジしましたが、後悔はなく、とても満足しています。

ただ、「せっかくお金払ってるならもっと使い倒したい」という欲が出てきました。人間とは欲深いものです。

そこで思ったのが、「RaycastのAIの機能をRaycastの外から使えると、 もとが取れる 色々便利になるのでは?」(もはやRaycast関係ないというツッコミはおいておいて...)

思ってしまったし、できるかとりあえず探っていたところ「Raycast Port」というextensionを見つけたので、この記事では、「Raycast Portでなにができるか?」を深掘っていきます。

Raycast Portの公開日は2024年12月8日と、公開されたばかりで、仕様の変更等が今後あるかもしれません。
最新の情報はRaycastのStoreを通して確認してください。
https://www.raycast.com/litomore/raycast-port


Raycast Port

「Raycast Port」は「Raycastの外からRaycastの機能を呼び出す」ことを目的に作成されています。

This allows you to use Raycast features out of Raycast.
これにより、Raycast の外部で Raycast 機能を使用できるようになります。(日本語訳 via Raycast)

現状できることとしては、

  1. スキーマを利用してraycastの機能を呼び出す
  2. callBackに指定したurlをブラウザで開く
    1. このとき、raycastのAIに問い合わせた内容を RAYCAST_PORT_AI_ANSWER で参照できるみたい
# terminalで実行できる、サンプル
deeplink="raycast://extensions/litomore/raycast-port/ai-ask?launchType=background&context=$(jq -rR @uri <<< '{"askPrompt": "hello", "callbackOpen": ["https://example.com/?answer=RAYCAST_PORT_AI_ANSWER"]}')"
open $deeplink

Raycast Portのソースコード↓

通信の構成図としてはこんな感じ

ここで、CallBack処理はRaycastの「callbackLaunchCommand」を利用していました。
なので、CallBackにはurlを開く以外もRaycast別のextensionを立ち上げるなど、色々できるようです。

余談

私はまだ、RaycastのExtensionsを開発したことがなかったんですが、RaycastにはさまざまなAPIが用意されており、その一つにAIを利用できるAPIもありました。

とても使いやすそう。

おわりに

興味本位で深掘っていきましたが、RaycastのAPIの使いやすさとExtensionの作り方をはからず学べました。
今のところ、自分で「こんな機能ないから、RaycastのExtensions作ろ!」という衝動は発生していませんが、「なんだか楽しそうだしちょっとやってみよ」という衝動には駆られました。

近々、Extensionsまわりの記事を執筆しようと思います。

最後までお読みいただき、ありがとうございました。

5
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?