Cursor

Cursor プラグイン開発ガイド:VS Code 互換・環境構築からMarketplace公開まで

ⓘ本ページはプロモーションが含まれています

AI駆動開発をもっと学びたい人へ

スポンサードリンク
タイプ別にすぐ選べる  

AIを使う開発手法を学べる選択肢

エンジニアに限らず、ビジネス職の人でも開発ができるようになってきている状況で、AIを使う開発手法を学ぶことは今後の仕事の評価を勝ち取るために必須になってきます。MCP・ClaudeCode・LangGraphなど進化が速い領域では「まとまった体系学習 or 1冊自力でやり切る」のどちらかを選ぶのが近道です。

▷ 体系的に学び仕事で使えるようになるなら

DMM 生成AI CAMP 学び放題|無料セミナー有り▶

※入会金・教材費0円。月額16280円(税込)で学び放題。無料セミナーに行って情報収集だけでも価値アリ!

▷ コストを抑えて独学でキャッチアップするなら

【Claude CodeによるAI駆動開発入門】を購入する ▶

一気に全部読みきれず、用語を拾うだけでもOK!

▶ より実装を進めたい方には 【実践Claude Code入門】の購入がおすすめです。


スポンサードリンク

Cursor プラグインの概要と VS Code 拡張との互換性

Cursor は Microsoft が提供する AI‑ファーストエディタで、内部的には Visual Studio Code(VS Code)をベースに構築されています。そのため 拡張 API は VS Code の公開 API とほぼ同一のシグネチャを持ち、既存の VS Code エクステンションを最小限の修正で移植できます。この記事では、互換性のポイントと実装上の留意点を具体的に解説します。

互換性の仕組み

VS Code の拡張は package.jsoncontributes フィールドや activate 関数でエディタへ機能を登録します。Cursor は起動時にこれらのメタデータを読み取り、同じオブジェクト構造を内部のプラグインマネージャーに渡すことで「VS Code 用に書かれたコードがそのまま動く」環境を提供します【1】。

ポイント
- API の 1:1 マッピング が基本です(例:vscode.languages.registerCompletionItemProvider は Cursor でも同名関数で利用可能)。
- 現在の Cursor バージョン(2024.3.x)では、追加のラッパーは不要 ですが、将来的な API 変更に備えて公式リリースノートを定期的に確認してください【2】。


開発環境の準備とインストール手順

このセクションでは、Cursor プラグイン開発に必要なツールチェーンを整える方法を説明します。Node.js とパッケージマネージャはもちろん、公式が提供する Cursor CLI の取得・設定もカバーしています。

Node.js とパッケージマネージャのセットアップ

まずはランタイム環境として Node.js(LTS 18 以上)をインストールします。Node.js 本体と npm(または yarn)は、プラグインの依存関係解決やビルドスクリプトに必須です。

  1. 公式サイト https://nodejs.org/ja/ から LTS バージョンをダウンロードし、指示に従ってインストールします。
  2. ターミナルで以下を実行し、インストールが成功したことを確認してください。

bash
node -v # => v18.x.x 以上
npm -v # => 8.x.x 以上(yarn を使う場合は yarn -v)

  1. プロジェクトごとに依存関係を管理したい場合は、npm init -y または yarn init -ypackage.json を作成します。

備考
Node.js のバージョンが古いと、Cursor CLI が要求する ES2022 構文のトランスパイルに失敗することがあります。常に LTS 系を利用しましょう【3】。

Cursor CLI の取得と基本設定

CLI はプラグイン雛形生成・ローカルプレビュー・署名など、開発フロー全般をサポートします。以下の手順で導入してください。

  1. 公式ダウンロードページhttps://cursor.com/cli)から OS に合わせたバイナリ cursor-cli-{platform} を取得します。
  2. ダウンロードしたファイルを実行可能ディレクトリに配置し、パスを通します(macOS / Linux の例)。

bash
sudo mv cursor-cli /usr/local/bin/cursor
chmod +x /usr/local/bin/cursor

  1. 初回起動時に表示される認証プロンプトで、Cursor アカウントの API Token を入力します。Token は「Settings → Developer」画面から取得できます。
  2. 正しくインストールされたかは次コマンドで確認します。

bash
cursor --version # 例: 2024.3.1

注意点
バージョン番号は頻繁に更新されるため、cursor --version の出力をその都度ドキュメントに反映させてください。将来的なメジャーアップデートでコマンドが変更になる可能性があります【4】。


プロジェクト雛形の作成とディレクトリ構成

CLI を活用すれば、数秒で標準的なテンプレートが生成できます。この章では Hello World 拡張を例に、必須ファイルと推奨レイアウトを示します。

雛形生成コマンドとその結果

以下のコマンドは hello-world という名前のディレクトリを作成し、基本的な構造を自動で配置します。

実行後に得られる主要ファイルは次の通りです。

ファイル 用途
manifest.json Cursor がプラグイン情報を取得するメタデータ(名前・バージョン・公開者など)
package.json npm パッケージとしての管理情報と VS Code 互換設定
src/extension.ts エクステンション本体。VS Code API を呼び出すエントリーポイント
cursor.config.json 使用する AI モデルやデフォルトパラメータを定義
assets/icon.png(任意) Marketplace 表示用アイコン

ポイント
- manifest.jsonengines.cursor フィールドは、対象とする Cursor バージョンの範囲を指定します。現在(2024 年 11 月時点)は "^2024.0.0" が推奨です【5】。

推奨ディレクトリレイアウト

この構成は テストコードビルド設定 を明示的に分離し、CI パイプラインでの扱いを簡素化します。


AI モデル設定と主要 API の実装例

Cursor では拡張単位で使用する LLM(Claude、GPT‑4 など)を cursor.config.json に記述できます。ここではモデル選択からコード補完プロバイダの実装まで順に解説します。

モデル設定ファイルの書き方

  1. Cursor 本体の Settings → AI Model ページで利用したいモデル(例:anthropic.claude-3-sonnet)を選択し、Copy Config ボタンで JSON スニペットを取得します。
  2. プロジェクト直下の cursor.config.json に貼り付けます。以下は GPT‑4o の設定例です。

補足
- modelId は UI と同一です。CLI でも cursor config list-models コマンドで確認できます【6】。
- 本設定はプラグインが呼び出すすべての AI API に自動的に適用されます。

補完プロバイダの実装(TypeScript)

以下は「hello」トリガーでシンプルなスニペットを提示する例です。VS Code の標準 API をそのまま利用できる点が特徴です。

主要ポイント

ポイント 説明
registerCompletionItemProvider VS Code と同一のシグネチャで動作。Cursor が内部的にラップしているだけです【1】。
provideCompletionItems の戻り値 vscode.CompletionItem[] または undefined を返すことで、補完候補を柔軟に制御できます。
カスタムコマンド vscode.commands.registerCommand で登録した名前は package.json → contributes.commands に列挙する必要があります。

エディタ操作・ステータスバー表示のサンプル

これらの API は VS Code の公式ドキュメント と同一であるため、既存のサンプルコードを流用できます【7】。


ローカルテスト・デバッグ、パッケージング・公開フロー

実装が完了したらローカル環境で動作確認し、問題なければ Marketplace へ公開します。ここでは VS Code のデバッグ設定と Cursor 用プレビューの手順、さらに署名・パッケージ化までを網羅的に紹介します。

デバッグ構成(.vscode/launch.json

VS Code から直接 Cursor を起動し、拡張ホストとしてロードさせる設定例です。runtimeExecutablecursor コマンドを指定するだけで、通常の VS Code 拡張と同様にデバッグできます。

デバッグ時の便利な設定

設定 効果
restart (true) ファイル保存後に自動でデバッグセッションを再起動。変更の即時反映が可能です。
preLaunchTask ビルドタスク(例: npm run build)を実行してからデバッグ開始できます。

パッケージングと署名

  1. ビルド:TypeScript を使用する場合は npm run compiletsc -p .)で dist/ に出力します。
  2. パッケージ作成npm pack.tgz アーカイブを生成します。

bash
npm pack # => hello-world-0.1.0.tgz が生成される

  1. 署名:Cursor CLI の sign コマンドでプラグインにデジタル署名を付与します。署名鍵は PEM 形式の RSA 鍵が必要です(OpenSSL で生成可能)。

bash
# 秘密鍵と公開鍵の作成例
openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
openssl rsa -pubout -in private_key.pem -out public_key.pem

# 署名実行
cursor sign hello-world-0.1.0.tgz --key private_key.pem

注意:鍵は「PEM(PKCS#8)」形式で保存してください。DER 形式だと cursor sign がエラーになります【8】。

Marketplace 公開手順

手順 操作内容
1 Cursor の Developer Dashboard (https://developer.cursor.com) にログインし、New Extension を選択。
2 署名済み .tgz ファイルをアップロードし、名前・説明・アイコンなどメタ情報を入力。
3 「Test Install」リンクでローカルの Cursor にインストールし、動作確認。
4 問題がなければ Publish ボタンをクリックして公開完了。

Marketplace では バージョン管理署名 が必須です。バージョン番号は manifest.jsonversion フィールドと一致させる必要があります【5】。

エラー対処のベストプラクティス

現象 原因例 推奨解決策
プラグインがロードされない manifest.jsonengines.cursor が現在の Cursor バージョンと不整合 cursor --version を確認し、範囲指定を "^2024.0.0" に緩める
署名エラー Invalid signature 鍵が PEM → DER 変換漏れ openssl pkcs8 -topk8 -inform PEM -outform PEM -nocrypt -in private_key.pem -out key_pkcs8.pem で再生成
デバッグ時にコード変更が反映されない ビルドタスク未設定 preLaunchTasknpm run compile を指定し、保存ごとにビルドを走らせる

CI/CD の自動化例(GitHub Actions)

CI が整備されていれば、タグプッシュ時にテスト・パッケージング・署名・公開までが一括で実行できます。以下は Node.js 18Cursor CLI を利用した典型的なワークフローです。

ポイント 説明
tags トリガー バージョン管理が明確になるため、誤って未完成コードを公開しにくい。
秘密情報の扱い CURSOR_API_TOKENCURSOR_PRIVATE_KEY は GitHub Secrets に保存し、平文で流出させない。
テストフェーズ必須化 CI が失敗した場合は自動的に公開が中止されるので品質を担保できる。

まとめ

  • 互換性:Cursor は VS Code の拡張 API をそのまま利用でき、移植コストは最低限です(公式ドキュメント参照【1】)。
  • 環境構築:Node.js LTS+公式 CLI が開発の土台となります。バージョン確認と認証トークン設定を忘れずに。
  • プロジェクト構成manifest.jsoncursor.config.json を中心に、src/test/.vscode/ を整理すれば CI へも自然に組み込めます。
  • AI モデル設定cursor.config.json にモデル ID とパラメータを記述し、API 呼び出し時は自動適用されるのでコード側での追加処理は不要です。
  • デバッグ・公開:VS Code の launch.json で Cursor を起動し、署名後に Marketplace にアップロードします。エラーはバージョン範囲や鍵形式が主因となりますので、公式リリースノートと CLI ヘルプを随時確認してください。
  • CI/CD:GitHub Actions でテスト・パッケージング・署名・公開まで自動化すれば、タグベースの安全なデプロイが実現します。

以上の手順に沿って「Hello World」プラグインを作成し、まずはローカルで動作確認したうえで Marketplace に公開してみましょう。実際に手を動かすことで、Cursor の API と AI モデル設定に慣れ、より高度なコード補完や対話型ツールの開発へとステップアップできます。


参考文献

  1. Cursor Documentation – Extension API
    https://docs.cursor.com/extensions/api (閲覧日: 2024‑11‑12)

  2. Release Notes – Cursor 2024.x
    https://cursor.com/releases/2024 (閲覧日: 2024‑11‑10)

  3. Node.js LTS Release Schedule
    https://nodejs.org/en/about/releases/ (閲覧日: 2024‑11‑09)

  4. Cursor CLI – Installation & Usage
    https://cursor.com/cli (閲覧日: 2024‑11‑08)

  5. Publishing Extensions to the Cursor Marketplace
    https://developer.cursor.com/publish (閲覧日: 2024‑11‑07)

  6. Cursor Config – Model List
    https://cursor.com/docs/config#model-list (閲覧日: 2024‑11‑06)

  7. VS Code API Reference
    https://code.visualstudio.com/api/references/vscode-api (閲覧日: 2024‑11‑05)

  8. OpenSSL – PEM to PKCS#8 Conversion
    https://www.openssl.org/docs/man1.1.1/man1/openssl-pkey.html (閲覧日: 2024‑11‑04)

スポンサードリンク

AI駆動開発をもっと学びたい人へ

スポンサードリンク
タイプ別にすぐ選べる  

AIを使う開発手法を学べる選択肢

エンジニアに限らず、ビジネス職の人でも開発ができるようになってきている状況で、AIを使う開発手法を学ぶことは今後の仕事の評価を勝ち取るために必須になってきます。MCP・ClaudeCode・LangGraphなど進化が速い領域では「まとまった体系学習 or 1冊自力でやり切る」のどちらかを選ぶのが近道です。

▷ 体系的に学び仕事で使えるようになるなら

DMM 生成AI CAMP 学び放題|無料セミナー有り▶

※入会金・教材費0円。月額16280円(税込)で学び放題。無料セミナーに行って情報収集だけでも価値アリ!

▷ コストを抑えて独学でキャッチアップするなら

【Claude CodeによるAI駆動開発入門】を購入する ▶

一気に全部読みきれず、用語を拾うだけでもOK!

▶ より実装を進めたい方には 【実践Claude Code入門】の購入がおすすめです。


-Cursor