Communityコーディング&開発github.com

AhmedAttia3/sanad-agent-skills

macOS、Windows、LinuxでSanadをインストール、更新、または通常利用・ソース開発のために準備します。AIエージェントが既存のSanadインストールやチェックアウトを検査し、リリースユーザーと開発者ソースのパスを説明し、クライアントとローカルエージェントをインストールし、リモートサーバーにエージェントをインストールし、Google Cloud無料料枠サーバーを迅速に作成してSanadをペアリングし、パッケージ化されたコンポーネントを更新し、開発チェックアウトを安全に更新・実行する場合に使用します。

sanad-agent-skills とは?

このスキルは、Sanadエージェントとクライアントのインストール、更新、ペアリングを包括的にガイドするためのものです。主にClaude Code、Cursor、CodexなどのAIエージェントが、macOS、Windows、Linux環境でSanadをセットアップする際に使用します。スキルはまずシステムを検査し、既存のインストールやGitチェックアウトを特定します。その後、ユーザーの目的に応じて「リリース/ユーザー(安定版)」と「ソース/開発者(編集可能)」の2つのワークフローを提示します。リリースパスでは、公式インストーラを使用したクライアントとエージェントのインストール、リモートサーバーへのエージェントインストールとペアリング、Google Cloud無料料枠サーバーの高速セットアップをサポートします。開発者パスでは、Gitクローン、sanad-devコマンドのセットアップ、安全な更新手順を提供します。セキュリティルールが厳格で、変更前の検査、ユーザーの明示的な承認、公式ソースのみの使用、クレデンシャル情報の保護が義務付けられています。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/AhmedAttia3/agent-skills/tree/HEAD/skills/install-sanad

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Sanad のインストール

検査から検証済みのSanadインストールまたは更新までユーザーをガイドします。 リリースユーザーと開発者ソースのワークフローは別々に保ってください。

安全ルール

  • 何かを変更する前に検査すること。インストール、パッケージの置き換え、 サービス登録、アプリケーションの起動、Git更新はすべてミューテーションとして扱い、 ユーザーの同意を得た上で承認を得ること。
  • チェックアウトを探すためにホームディレクトリ全体やディスクを検索しないこと。 カレントディレクトリ、ユーザーが指定したパス、標準のインストール済みコマンドの場所のみを検査すること。 安全に特定できない場合はプロジェクトパスを尋ねること。
  • ユーザーが明示的にその操作を許可しない限り、ダーティリポジトリの上書き、リセット、クリーン、 スタッシュ、コミット、破棄を決して行わないこと。
  • アクセストークン、リフレッシュトークン、プロバイダの認証情報、署名シークレット、 ユーザーコンテンツを要求、引用、記録、再構築しないこと。明示的に許可されたエージェント操作による リモートインストールの場合のみ、ユーザーの完全なデバイス追加コマンド(短期間有効で使い捨ての 作成トークンを含む)を受け入れること。公式のブートストラップを検証し、チャット/ツール履歴に エコー、トレース、永続化せずに送信し、そのトークンを抽出/再構築しないこと。この同意が チャット/ツール履歴への作成コマンドの露出をカバーし、生成されたインストーラコマンドが トークン引数を使用する可能性があることを説明すること。露出ゼロを主張しないこと。SSH転送引数は 認証情報なしで保持すること。ユーザーがその露出を受け入れない場合は、直接実行させるか、 対話型のPortalサインインを使用させること。この例外は永続的な認証情報には決して適用されません。
  • 公式のSanadソースのみを使用すること:
    • リポジトリ:https://github.com/EastStarAI/sanad-agent
    • リリース:https://github.com/EastStarAI/sanad-agent/releases/latest
    • インストーラ:https://sanad.eaststarai.com/install.sh および https://sanad.eaststarai.com/install.ps1
  • オペレーティングシステムのセキュリティ制御を無効にしないこと。現在の署名やプラットフォームの サポート状況を説明する前に、最新のリリースノートを読むこと。
  • インストールおよび更新中、Sanad Homeとユーザーのワークスペースを保持すること。

Google Cloud高速ルート

Google Cloud / GCP / 無料クラウドサーバーのリクエストについては、 references/google-cloud-free-tier.md を読み、 その専門のリリースユーザールートに従うこと。以下の一般的なローカル/ソースの質問事項を繰り返さないこと。 これには、前提条件、最大2つの初期質問、リソースの再利用、適格なプロビジョニング、 ジャストインタイムのペアリング、最小限の組み込み検証が含まれます。上記の安全ルールを守ること。 無条件のゼロ請求を約束したり、既存の無料枠を複製したりしないこと。

1. ターゲットの検査

コマンドをユーザーの現在のマシンで実行するのか、リモートマシンで実行するのかを確認すること。 Sanad ClientをホストしているマシンがSanad Agentをホストすべきマシンであると想定しないこと。

読み取り専用の証拠を収集する:

  1. オペレーティングシステムとアーキテクチャを特定する。
  2. sanad と sanad-dev が PATH 上で解決可能か確認する。
  3. 関連する場合、インストーラが所有する実行可能ファイルを確認する:
    • macOS/Linux:${SANAD_HOME:-$HOME/.sanad}/bin/sanad
    • Windows:$env:SANAD_HOME\bin\sanad.exe、または SANAD_HOME が設定されていない場合は $HOME\.sanad\bin\sanad.exe。
  4. 現在のディレクトリまたは指定されたディレクトリがGitチェックアウトの場合、以下を検査する: git rev-parse --show-toplevel、git remote -v、git status --short --branch、git worktree list。リポジトリIDが EastStarAI/sanad-agent と一致するか、 ユーザーが意図的なフォークであることを確認した場合のみ、Sanadソースとして受け入れる。
  5. インストールされたバージョンとサービスの状態は、解決されたSanad実行可能ファイルを通じてのみ クエリすること。sanad が PATH にないからといって失敗しないこと。

変更を提案する前に、何が存在するかを要約すること。

2. ワークフローの選択

ユーザーのリクエストがすでにワークフローを明示している場合は、ターゲットを確認して続行する。 それ以外の場合は、以下の選択肢を提示し、希望するものを尋ねること:

パス最適な用途結果トレードオフ
リリース / ユーザー通常の日常使用パッケージ化されたClientと検証済みAgentリリース安定してシンプル。ソースは編集不可
ソース / 開発者Sanadへの貢献、デバッグ、変更sanad-dev で実行されるリポジトリチェックアウト編集・テスト可能。開発ツールとより多くのディスク容量が必要

リリースパスの場合、トポロジを決定する:

  • このデスクトップ: Sanad Clientをインストール。ローカルで実行は、同じコンピュータに 対応するAgentをインストールして起動する。
  • 別のコンピュータまたはサーバー: Clientをデスクトップ、モバイル、またはWebに残し、 ターゲットマシンにSanad Agentのみをインストールする。
  • Clientのみ: デスクトップ/モバイルClientをインストールするか、そのデバイスにAgentを インストールせずにWeb Clientを使用する。

正確なアクション、保存先、およびサービスへの影響を記載する。ダウンロード、インストール、 置き換え、登録、起動、再起動の前に承認を得ること。

3. リリース / ユーザーパス

クライアントとローカルエージェントのインストール

  1. 最新の公式リリースとそのマニフェストを読む。確認されたプラットフォームとアーキテクチャに 一致するClientパッケージのみを選択する。
  2. リリースによって公開されたチェックサム、署名、プラットフォームガイダンスを使用して アーティファクトを検証する。古いリリースの署名ステータスを現在のリリースに一般化しないこと。
  3. 通常のオペレーティングシステムのフローを使用してClientをインストールする。アプリケーション レビューやセキュリティプロンプトを黙ってバイパスしないこと。
  4. ユーザーにSanad Clientを起動し、ローカルで実行を選択するよう依頼する。Clientが ダウンロード、検証、登録、起動、対応するローカルAgentに接続することを説明する。 Sanadアカウントとペアリングトークンは必要ありません。
  5. ClientがローカルAgentに到達できることを確認してから成功を宣言する。

Android、iOS、Webの場合は、現在のリリースノートに記載されている可用性に従うこと。 これらのプラットフォームはインターフェースを提供しますが、ネイティブのAgentサービスは ホストしません。

別のコンピュータまたはサーバーへのエージェントのインストール

2つの同等の選択肢を提供する:

  1. Sanad Clientを介してペアリングする: 設定を開き、設定サイドバーのデバイスの横にある + をクリックしてデバイスの追加を開く。ユーザーにターゲットマシンで生成された完全な コマンドを実行させるか、使い捨ての作成トークン例外の下で許可されたリモートインストールのために その完全な生成コマンドを受け入れる。認証情報を個別に要求したり、コマンドをレポートに エコーしたりしないこと。
  2. Agentを直接インストールする: Portalサインインまたはローカルのみモードを選択し、承認後、 一致する公式インストーラを実行する。

エージェント操作のmacOS/Linuxターミナルでは、あいまいなプロンプトを避けること:

curl -fsSL https://sanad.eaststarai.com/install.sh | bash -s -- --login

ユーザーが明示的にローカルのみモードを選択した場合は、代わりに --no-login を使用すること。

エージェント操作のWindows PowerShellターミナルでは:

& ([scriptblock]::Create((irm https://sanad.eaststarai.com/install.ps1))) -Login

ユーザーが明示的にローカルのみモードを選択した場合は、代わりに -NoLogin を使用すること。 人間が対話的にインストーラを実行する場合は、明示的なログインオプションを省略してプロンプトに 回答しても構いません。

Portalサインインでは、ユーザーがURLを開いたりコードを入力する必要がある場合があります。 返された認証情報を公開せずに、その人間のアクションに対して一時停止すること。インストール後、 解決された実行可能ファイルのバージョンと service status を確認する。クラウド接続が選択された場合は、 Sanad Clientからデバイスを確認する。

パッケージ化されたインストールの更新

  1. インストールされているClientとAgentのバージョンを検査し、変更する前に最新のリリースノートを 読む。

  2. プラットフォームが所有する更新フローを通じてSanad Clientを更新する。パッケージ化されたClientを ソース出力で置き換えないこと。

  3. スタンドアロンAgentを解決された実行可能ファイルを通じて更新する:

    sanad update
    

    sanad が PATH にない場合は、実行可能ファイルの完全パスを使用すること。アップデータが restart_required を報告した場合は、承認を得て sanad service restart を実行する。

  4. 最終バージョン、サービスの状態、ClientからAgentへの接続、およびSanad Homeの保持を確認する。 手動で行う必要があるプラットフォームの手順があれば報告する。

4. ソース / 開発者パス

チェックアウトの準備

一致するチェックアウトがすでに存在する場合は、そのパス、ブランチ、ワークツリー、リモート、 ダーティ状態を報告した後にのみ使用すること。黙って重複をクローンしないこと。

チェックアウトが存在しない場合は、保存先を提案して承認を得てから、次を実行する:

git clone https://github.com/EastStarAI/sanad-agent.git sanad-agent
cd sanad-agent

さらに作業を進める前に、リポジトリの AGENTS.md、docs/llms.txt、および最も近いネストされた コントラクトを読むこと。すべてのDartまたはFlutter操作にはFVMを使用すること。

ユーザースコープの開発コマンドを一度インストールする。

macOS/Linuxの場合:

scripts/sanad-dev install

Windows PowerShellの場合:

.\scripts\sanad-dev.ps1 install

次に、すべてのプラットフォームで一致するAgentとClientのペアを実行する:

sanad-dev run

ユーザーが明示的にローカルのみの開発を希望する場合にのみ、sanad-dev run --no-cloud を使用すること。 検証には sanad-dev status と範囲指定された sanad-dev logs agent -n 50、sanad-dev logs client -n 50 の 呼び出しを使用すること。AIツールの呼び出しからログフォローモードを決して使用しないこと。

開発者チェックアウトの更新

  1. アクティブなブランチ、アップストリーム、ワークツリー、ダーティファイルを検査する。
  2. 意図したリモートを確認した後にのみ git fetch を実行する。統合前に受信コミットを説明する。
  3. 意図した追跡ブランチ上のクリーンなチェックアウトに対しては、git pull --ff-only を提案する。 暗黙的にマージコミットを作成しないこと。
  4. ダーティなチェックアウトの場合は停止し、保存オプションを提示する。明示的な許可なしに、 スタッシュ、コミット、リベース、スイッチ、リセット、破棄を行わないこと。
  5. ソースの更新が成功した後、プラットフォーム固有の sanad-dev install を再実行する。その後、 sanad-dev run またはユーザーが要求した範囲指定された検証コマンドを使用する。
  6. ソース/FVMランタイムに対して sanad update を決して使用しないこと。ソースの更新はGitと sanad-dev に属します。

5. 結果の報告

以下を報告する:

  • 選択されたワークフローとターゲットマシン
  • 検出および最終バージョン
  • Client、Agent、リポジトリ、サービスの状態
  • 検証コマンドと結果
  • まだ必要な手動ユーザーアクション
  • 変更されたファイル、サービス、またはGitの状態

ダウンロードやコマンドの終了コードだけで成功を主張しないこと。関連するサービスまたは ClientからAgentへのヘルスエビデンスを要求すること。ユーザーがその個別のアクションを明示的に 要求しない限り、ユーザーデータをコミット、プッシュ、公開、削除しないこと。

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

関連スキル