• Projects
  • Service
  • About
  • branding.bz
  • Podcast
  • Tips
  • FAQ
  • Recruit
  • Download
  • Contact
  • branding.bz(ブランド構築SaaS)
  • DESIGN NOW(デザインメディア)
  • X
  • LinkedIn
  • Spotify
  • Facebook

213-0011 神奈川県川崎市高津区久本3-6-7-303

© 2026 ID INC. All rights reserved

claude-skills/スキル
SKILLOfficialproductivity

carta-grant-vesting

プラグイン
carta-cap-table
ソース
GitHub で見る ↗
説明

特定の1人の従業員または1件の株式付与に関する権利確定スケジュール(権利確定まであと何年かかるか、段階的にいつ権利が確定するかという計画表)を取得します。 対象となる株式の種類: - ISO/NSO(インセンティブ・ストック・オプション/非適格ストック・オプション) - RSU(制限付き株式ユニット) - SAR(ストック・アプリシエーション・ライト) - CBU(キャッシュ・ボーナス・ユニット) 次のような場合に使用: - 「〇〇さんはいくら権利確定しましたか」 - 「〇〇さんの権利確定の段階的区切りはいつですか」 - 「〇〇さんの権利確定の進捗状況」 - 権利確定の区切り日時の確認 - 決済日時の確認 - 未権利確定の株式数 **注意**:全従業員をまとめた統計情報や、ポートフォリオ全体の権利確定状況を知りたい場合には使用しません。

原文を表示

Fetch the vesting schedule for ONE specific grant or holder — options (ISO/NSO), RSUs, SARs, or CBUs. Use for "how much has [name] vested", "when does [name]'s cliff hit", "vesting progress for [name]", cliff dates, settlement, or unvested shares. NOT for portfolio-level / all-employees aggregate vesting.

ユースケース
  • 特定従業員の権利確定額を確認するとき
  • 権利確定スケジュールの段階的区切りを知るとき
  • 権利確定の進捗状況を確認するとき
  • 権利確定の区切り日時を確認するとき
  • 未権利確定の株式数を把握するとき
本文(日本語訳)

付与株式のベスティングデータ

付与株式(ストックオプション、RSU、SAR、CBU)の完全なベスティングスケジュール(権利確定日程)を取得し、単なる表形式ではなく、有用な背景情報とともに表示します。

使用する場面

このスキルは、1つの付与株式または保有者に限定したベスティングに関する質問に使用します:

  • 「この付与株式のベスティングスケジュールは?」
  • 「クリフ(初回権利確定)はいつ来ますか?」/「ジェーンのクリフはいつですか?」
  • 「ジェーンはどのくらい権利確定していますか?」/「ジェーンのうち今まで権利確定した株数は?」
  • 「ジェーンのベスティング進捗を表示」/「ジェーンの付与株式はどこまで進んでいますか?」
  • 「今までに権利確定した株数は?」
  • 「ジェーンのオプションのベスティング進捗を表示」
  • 「ジェーンのRSU付与株式のベスティングスケジュールを表示」
  • 「決済対象の株数は?」
  • 「未確定のまま残っている株数は?」
  • 「この付与株式が完全に権利確定するのはいつですか?」

言い換え(同じ意図、異なる表現 — すべて1つの付与株式・保有者のベスティングに該当):

  • 「ジェーンのストック支払いスケジュールは?」→ ベスティングスケジュール
  • 「ジェーンが実際に株を所有するのはいつですか?」/「この付与株式は実際にいつ所有者のものになりますか?」→ 権利確定・いつ権利確定するか
  • 「ジェーンが今までの権を持つ株数は?」→ 権利確定済み株数
  • 「ジェーンの付与株式のうちまだロックされている部分は?」→ 未確定株数

ポートフォリオレベル・全従業員集計のベスティングには使用しないでください。 これらの質問は1つの付与株式または保有者に限定されます(「[名前]の」「この付与株式の」「付与株式#の」という表現)。「従業員のエクイティ(株式)全体でどのくらい権利確定したか」「オプションプール全体での合計権利確定数」といった質問はポートフォリオレベルです。その場合はステークホルダー・ポートフォリオ・所有権スキルに委ねてください。質問が複数の付与株式に及ぶ場合は、データ取得前にワークフローの「複数の付与株式」ブランチを参照してください。

前提条件

以下が必要です:

  1. corporation_id(企業ID)— 不明な場合は list_accounts から取得
  2. grant_id(付与株式ID)— 対応する付与株式タイプのリストコマンドで特定(下記参照)
  3. 付与株式タイプ — 正しいリストと詳細コマンドを選ぶために必須。明示されていない場合はユーザーの表現から推測(「options」「ISO」「NSO」 → オプション;「RSU」;「SAR」;「CBU」)。それでも不明な場合は、検索前に AskUserQuestion で質問してください。

データ取得

ゲートウェイのデフォルトはリストコマンドで detail=summary です。このスキルは個別レコードが必要なため、"detail": "minimal" を明示的に指定しています。

ベスティング詳細用の2つのエンドポイント(API仕様)が存在し、互いに置換不可です:

付与株式タイプ リストコマンド ベスティング詳細コマンド
オプション(ISO/NSO) cap_table:list:grants cap_table:get:grant_vesting
RSU cap_table:list:rsus cap_table:get:rsu_vesting
SAR cap_table:list:sars (なし — 注釈参照)
CBU cap_table:list:cbus (なし — 注釈参照)

重要: cap_table:get:grant_vesting はオプション専用で、RSU/SAR/CBU IDに対しては500エラーを返します。上表に従い、タイプをまたいでコマンドを再利用しないでください。

read_tool({"name": "<list tool>", "arguments": {"corporation_id": corporation_id, "search": "<holder name>", "detail": "minimal"}})

その後、オプションまたはRSUの場合:

read_tool({"name": "<vesting detail tool>", "arguments": {"corporation_id": corporation_id, "grant_id": grant_id}})

SARとCBUの場合、リストレコードの vested_shares_quantity のみが利用可能な信号です。イベント単位の詳細エンドポイントはまだ公開されていません。

重要なフィールド

ベスティング詳細コマンドは若干異なるデータ形式を返します:

cap_table:get:grant_vesting(オプション):

  • total_shares、vested_shares、unvested_shares
  • grant_date、cliff_summary
  • vesting_events[] — それぞれ date、amount、cumulative、has_vested

cap_table:get:rsu_vesting(RSU):

  • awarded、vested_shares、unvested_shares、settled、eligible_for_settlement
  • vesting_start_date、vesting_type、primary_vesting_title/description
  • has_additional_condition、additional_vesting_title/description
  • acceleration_terms、termination_date
  • tranches[] — それぞれ vest_date、awarded、eligible_for_settlement、settled、status、vesting_status、milestone_name、additional_condition_*、vesting_type

ワークフロー

ステップ 0 — 企業IDを先に確認

cap_table:list:grants(および他のリストコマンド)には実際の corporation_id が必要です。企業名を corporation_id として渡さないでください(例:"meetly")— これはIDではなく、呼び出しが失敗します。

企業名しかない場合は、リスト・データ呼び出しの前に corporation_id に変換してください:

list_accounts({"search": "<company name>"})   # マッチするアカウントを絞り込む
# 各アカウントの `id` は `corporation_pk:<numeric id>` の形式です。その数字のIDを抽出してください
# — これがすべての cap_table ツールに必要な `corporation_id` です。
# 同様の名前を持つアカウントが複数ある場合は、続行前に AskUserQuestion を呼んで
# ユーザーに選択させてください — ユーザーの意図を推測しないでください。
set_context({...})     # 必要に応じてアクティブな企業コンテキストを設定

search パラメータなしで list_accounts を呼ぶと全アカウント一覧が返されます。マルチ企業環境ではマッチ間違いのリスクがあるため、常に名前を指定してください。解決した corporation_id をその後のすべての cap_table__* 呼び出しに引き継ぎます。解決されて初めてステップ1に進みます。

ステップ 1 — 付与株式を特定

grant_id が既に会話履歴から分かっている場合(例:ユーザーが付与株式リストを先ほど見た)、直接ステップ2にスキップしてください。

そうでなければ、付与株式タイプに基づいてリストコマンドを選択してください:

  • ユーザーがタイプを明示している場合(例:「ジェーンのRSU」「そのSAR」):上表の対応するリストコマンドを使用
  • タイプが不明な場合:最初に cap_table:list:grants を試す(オプションが最も一般的)。保有者が見つからない場合は list:rsus、その次 list:sars、最後に list:cbus を試します。4つすべてをチェックするまで、ベスティングデータが利用不可と結論づけないでください。
read_tool({"name": "<list tool>", "arguments": {"corporation_id": corporation_id, "search": "<holder name>", "detail": "minimal"}})

複数の付与株式が返された場合は、ユーザーにどれかを選ばせるか、文脈に基づいて最も関連性の高いものを選んでください。

ブランチ — 「すべての付与株式」/複数の付与株式

ユーザーが**「すべての付与株式」、「各付与株式」**、複数の付与株式、または保有者の全付与株式について質問する場合、付与株式ごとに1つの cap_table:get:grant_vesting(または rsu_vesting)呼び出しをファンアウト(複数に分岐)しないでください。 保有者または企業は数十から数百の付与株式を持つ可能性があり、N件の詳細取得は遅く非効率です。代わりに:

  1. 付与株式を1度リストします(サマリーリストに既に vested/unvested/quantity の信号が含まれています)、そのサマリーテーブルを表示します。
  2. ユーザーに特定の付与株式に絞り込むよう求めるか、サマリー集計を表示(付与株式ごと、通貨間の合計はしない)し、単一付与株式のイベント単位スケジュールへのドリルダウンを提案します。

ユーザーが特定の付与株式に絞り込んだ後にのみ、付与株式単位のベスティング詳細(ステップ2)を取得します。

ステップ 2 — ベスティングデータを取得

付与株式タイプに基づいて詳細コマンドを選択:

  • オプション(ISO/NSO) → read_tool({"name": "cap_table__get__grant_vesting", "arguments": {"corporation_id": ..., "grant_id": ...}})
  • RSU → read_tool({"name": "cap_table__get__rsu_vesting", "arguments": {"corporation_id": ..., "grant_id": ...}})
  • SAR/CBU → 詳細エンドポイントなし;リストレコードの vested_shares_quantity と quantity フィールドを使用し、利用可能な情報を表示します。

ステップ 3 — 文脈とともに表示

テーブルを示す前に、1文の平易な英語(または日本語)サマリーで導入してください(プレゼンテーション節を参照)。

ゲート(要件チェック)

必須入力:corporation_id、grant_id、付与株式タイプ(オプション、RSU、SAR、またはCBU)。 企業名しかない場合は、先に corporation_id に変換してください(ステップ0)— 名前文字列を corporation_id として渡さないでください。 付与株式タイプが不明または曖昧な場合は、処理を進める前に AskUserQuestion を呼んでください(carta-interaction-reference §4.1 参照)。 grant_id が不明な場合は、ワークフローのステップ1を使用して保有者名で検索します。

AI計算:いいえ — このスキルはCartaデータを直接表示します。

プレゼンテーション

形式:サマリー1文 + ベスティングイベント/トランシェ(分割払い)テーブル

冒頭の要旨:テーブルを示す前に、ベスティング状態を簡潔に1文でサマリーして導入します。

ソート順:ベスティング日付で昇順(時系列順)。

日付形式:MMM d, yyyy(例:「Jan 15, 2026」)。

ベスティング状態に応じてサマリーをカスタマイズ:

  • クリフ前:クリフまでの期間、クリフで確定する株数
  • 部分的に権利確定:権利確定パーセンテージ、進行中のペース(月次/四半期)、完全確定日
  • 完全に権利確定:確認し、未行使(オプション/SAR)または未決済(RSU/CBU)の株数がある場合は注記

ツールが返したベスティングイベント/トランシェテーブルを形式化して、ベスティング日付で昇順(時系列順)にソート。

時間に敏感な項目にフラグを立てます:

  • クリフ日が今後90日以内
  • 付与株式が間もなく失効
  • 既に失効した付与株式と没収リスク(オプション/SAR):grant_expiration_date < today かつ vested_shares > exercised_shares の場合、目
原文(English)を表示

<!-- carta:plugin-version --> <carta-plugin>carta-cap-table:6.96.0</carta-plugin>

<!-- Part of the official Carta AI Agent Plugin -->

Grant Vesting Data

Fetch the full vesting schedule for a grant — options, RSUs, SARs, or CBUs — and present it with useful context, not just the raw table.

When to Use

Use this skill for vesting questions scoped to a single grant or holder:

  • "What's the vesting schedule for this grant?"
  • "When does the cliff hit?" / "When does Jane's cliff hit?"
  • "How much has Jane vested?" / "How many shares are vested so far for Jane?"
  • "Show vesting progress for Jane" / "How far along is Jane's grant?"
  • "How many shares have vested so far?"
  • "Show vesting progress for Jane's options"
  • "Show the vesting schedule for Jane's RSU grant"
  • "How many shares are eligible for settlement?"
  • "How many unvested shares remain?"
  • "When is this grant fully vested?"

Wrong-vocab synonyms (same intent, different words — all map to vesting for a single grant/holder):

  • "What's Jane's stock payment schedule?" → vesting schedule
  • "When does Jane actually own her stock?" / "When does this grant actually own out?" → vesting / when vested
  • "How many shares does Jane have rights to so far?" → vested shares
  • "How much of Jane's grant is still locked up?" → unvested shares

Do NOT use for portfolio-level / all-employees aggregate vesting. These triggers stay scoped to one grant or holder ("for [name]", "for this grant", "for grant #"). Questions like "how much of my employees' equity has vested" or "total vested across the whole option pool" are portfolio-level — defer to a stakeholder/portfolio/ownership skill instead. If a request spans more than one grant, see the "Multiple grants" branch under Workflow before fetching anything.

Prerequisites

You need:

  1. corporation_id — get from list_accounts if you don't have it
  2. grant_id — identify via the list command for the relevant grant type (see below)
  3. Grant type — required to pick the right list and detail commands. If unstated, infer from the user's wording ("options", "ISO", "NSO" → options; "RSU"; "SAR"; "CBU"). If still unclear, ask via AskUserQuestion before searching.

Data Retrieval

The gateway defaults to detail=summary for list commands. This skill needs individual records, so "detail": "minimal" is passed explicitly.

Two endpoints exist for vesting detail and they are not interchangeable:

Grant type List command Vesting detail command
Options (ISO/NSO) cap_table:list:grants cap_table:get:grant_vesting
RSUs cap_table:list:rsus cap_table:get:rsu_vesting
SARs cap_table:list:sars (none — see Caveats)
CBUs cap_table:list:cbus (none — see Caveats)

Important: cap_table:get:grant_vesting is options-only and returns 500 for RSU/SAR/CBU ids. Use the table above; do not reuse a command across types.

read_tool({"name": "<list tool>", "arguments": {"corporation_id": corporation_id, "search": "<holder name>", "detail": "minimal"}})

Then, for options or RSUs:

read_tool({"name": "<vesting detail tool>", "arguments": {"corporation_id": corporation_id, "grant_id": grant_id}})

For SARs and CBUs, the list-record vested_shares_quantity is the only available signal — there is no per-event detail endpoint yet.

Key Fields

The vesting detail commands return slightly different shapes:

cap_table:get:grant_vesting (options):

  • total_shares, vested_shares, unvested_shares
  • grant_date, cliff_summary
  • vesting_events[] — each with date, amount, cumulative, has_vested

cap_table:get:rsu_vesting (RSUs):

  • awarded, vested_shares, unvested_shares, settled, eligible_for_settlement
  • vesting_start_date, vesting_type, primary_vesting_title/description
  • has_additional_condition, additional_vesting_title/description
  • acceleration_terms, termination_date
  • tranches[] — each with vest_date, awarded, eligible_for_settlement, settled, status, vesting_status, milestone_name, additional_condition_*, vesting_type

Workflow

Step 0 — Resolve the Corporation First

cap_table:list:grants (and the other list commands) require a real corporation_id. Never pass a company name (e.g. "meetly") as corporation_id — it is not an ID and the call will fail.

If you only have a company name, resolve it to a corporation_id before any list/data call:

list_accounts({"search": "<company name>"})   # narrow to the matching account(s)
# Each account's `id` is shaped `corporation_pk:<numeric id>`. Extract that numeric
# id — it is the `corporation_id` every cap_table tool needs.
# If several accounts share a similar name, call AskUserQuestion to disambiguate
# before continuing — never guess which one the user meant.
set_context({...})     # set the active corporation context, if applicable

Calling list_accounts with no search returns the full account list; on a multi-company instance that risks matching the wrong account, so always pass the name. Carry the resolved corporation_id into every subsequent cap_table__* call. Only once it is resolved do you proceed to Step 1.

Step 1 — Identify the Grant

If grant_id is already known from prior conversation context (e.g. the user just viewed a grants list), skip directly to Step 2.

Otherwise, pick the list command based on grant type and search:

  • Type stated by the user (e.g. "Jane's RSU", "the SAR"): use the matching list command from the table above.
  • Type unknown: try cap_table:list:grants first (options are most common). If the holder is not found, try list:rsus, then list:sars, then list:cbus. Do not conclude vesting data is unavailable until all four have been checked.
read_tool({"name": "<list tool>", "arguments": {"corporation_id": corporation_id, "search": "<holder name>", "detail": "minimal"}})

If multiple grants are returned, ask the user which one, or pick the most relevant based on context.

Branch — "All grants" / multiple grants

If the user asks about "all grants", "each grant", multiple grants, or every grant for a holder, do NOT fan out to one cap_table:get:grant_vesting (or rsu_vesting) call per grant. A holder or company can have dozens-to-hundreds of grants, and N detail fetches is slow and wasteful. Instead:

  1. List the grants once (the summary list already includes vested/unvested/quantity signals) and present that summary table.
  2. Either ask the user to narrow to a specific grant before pulling the full vesting detail, or present the summary totals (per grant, never summing across currencies) and offer to drill into a single grant's event-level schedule.

Only fetch the per-grant vesting detail (Step 2) once the user has narrowed to a specific grant.

Step 2 — Fetch Vesting Data

Pick the detail command based on grant type:

  • Options (ISO/NSO) → read_tool({"name": "cap_table__get__grant_vesting", "arguments": {"corporation_id": ..., "grant_id": ...}})
  • RSUs → read_tool({"name": "cap_table__get__rsu_vesting", "arguments": {"corporation_id": ..., "grant_id": ...}})
  • SARs / CBUs → no detail endpoint; use the list record's vested_shares_quantity and quantity fields and surface what's available.

Step 3 — Present with Context

Lead with a one-sentence plain-English summary before showing the table (see Presentation section).

Gates

Required inputs: corporation_id, grant_id, and grant type (options, RSU, SAR, or CBU). If you only have a company name, resolve it to a corporation_id first (Step 0) — never pass a name string as corporation_id. If grant type is missing or ambiguous, call AskUserQuestion before proceeding (see carta-interaction-reference §4.1). If grant_id is unknown, use Step 1 of the Workflow to search by holder name.

AI computation: No — this skill presents Carta data directly.

Presentation

Format: Summary sentence + vesting events / tranches table

BLUF lead: Lead with a one-sentence plain-English summary of the vesting state before showing the table.

Sort order: By vesting date ascending (chronological).

Date format: MMM d, yyyy (e.g. "Jan 15, 2026").

Tailor the summary based on vesting state:

  • Pre-cliff: how long until the cliff, how many shares vest at cliff
  • Partially vested: what % has vested, what the ongoing cadence is (monthly/quarterly), when fully vested
  • Fully vested: confirm and note if any shares remain unexercised (options/SARs) or unsettled (RSUs/CBUs)

Format as the vesting events / tranches table returned by the tool, sorted by vesting date ascending (chronological).

Flag anything time-sensitive:

  • Cliff date within the next 90 days
  • Grant expiring soon
  • Already-expired grant with forfeit exposure (options/SARs): if grant_expiration_date < today AND vested_shares > exercised_shares, flag it prominently — the holder has vested-but-expired-unexercised shares that may already be forfeited. This is distinct from (and more urgent than) the "expiring soon" flag above, which warns about a future date; here the window has already closed.
  • Large unvested block concentrated at a future date
  • Deep in-the-money grants (options only — ISO/NSO): if the current 409A FMV is available and the spread between exercise price and FMV exceeds 10x, flag it. Note that holders face significant ordinary income (NSO) or AMT (ISO) exposure at exercise, and recommend the company consider a tender offer, early exercise program, or liquidity event planning. Skip this flag for RSUs, SARs, and CBUs.
  • RSU settlement window (RSUs only): if eligible_for_settlement exceeds settled, note how many shares are awaiting settlement and flag if a termination_date is imminent — RSUs typically have a hard window to settle after termination.

Then show the formatted table from the tool.

Caveats

  • The grant_id is required and must be resolved first — if the user provides a name, search the appropriate list command (see Data Retrieval) to find the matching ID before fetching vesting data.
  • cap_table:list:grants excludes RSUs, SARs, and CBUs. A "not found" result there does not mean the grant has no vesting data — check the other three list commands.
  • cap_table:get:grant_vesting is options-only and returns 500 for RSU/SAR/CBU grant ids. Always route by grant type; do not pass an RSU id to it.
  • The exercise-price / 409A FMV spread flag applies to options (ISO/NSO) only. RSUs, SARs, and CBUs do not have an exercise price in the same sense — skip that flag for non-option grants.
  • SARs and CBUs do not have a per-event vesting endpoint exposed today. The list record's vested_shares_quantity and quantity are the only reliable signals — say so plainly rather than fabricating tranche detail.
  • Vesting schedules reflect the original grant terms; any modifications (e.g., acceleration clauses, leaves of absence) may not be captured in the data.
  • The 10x in-the-money flag requires a current 409A FMV — if no valuation data is available, skip the flag rather than guessing.
  • Exercised/settled vs. outstanding status may not be reflected in the vesting schedule itself; check grant-level fields for exercise/settlement history.

原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。