API リファレンス
拡張機能から利用可能な api オブジェクトの完全な仕様です。
datasetUI の登録
registerHeaderButton(button)
ヘッダー(画面右上)にアイコンボタンを追加します。
idstringボタンの一意なIDiconstringLucideアイコンの名前(例: 'Star', 'File')labelstringツールチップ等に表示されるラベルonClick() => voidクリック時のハンドラ
registerToolbarButton(button)
エディタ下部のツールバーにボタンを追加します。
idstringボタンの一意なIDlabelstringボタンのラベル(アクセシビリティ用)textstringボタンに表示されるテキストtooltipstring(オプション)ツールチップテキスト
registerSidePanel(panel)
右サイドバーに新しいパネルタブを追加します。
idstringパネルの一意なIDlabelstringパネルのタイトルiconstringLucideアイコンの名前componentReact.ComponentTypeパネル内に描画するReactコンポーネント
registerTheme(theme)
新しいカラーテーマを追加します。
idstringテーマの一意なIDlabelstringテーマの表示名base'light' | 'dark'ベースとなるテーマcssstringCSS変数定義(例: '--color-bg-primary: #fff;')
registerSettingsPage(page)
設定モーダルに独自の設定ページを追加します。
idstringページの一意なIDlabelstringサイドバーに表示されるラベルiconstringLucideアイコンの名前componentReact.ComponentType設定ページとして描画するReactコンポーネント
registerPreviewMode(mode)
新しいプレビューモードを追加します。
idstringモードの一意なIDlabelstringドロップダウンに表示されるラベルcomponentReact.ComponentTypeプレビューを表示するコンポーネント
registerCommand(command)
コマンドパレット等から実行可能なコマンドを追加します。
idstringコマンドの一意なIDlabelstringコマンドの表示名execute() => void実行する関数
databaseデータアクセス・操作
getProjectStore()
アプリケーションのプロジェクトストア(Zustand)に直接アクセスします。
ProjectStoreStategetUIStore()
アプリケーションのUIストア(Zustand)に直接アクセスします。
UIStoreStategetCurrentFile()
現在アクティブなファイル(エディタで開いているファイル)の情報を取得します。
{ id, name, content } | nullgetVariables()
プロジェクトで定義されている変数の一覧を取得します。
Array<{ name, value }>extractVariableNames(text)
テキスト内の変数(var{name}形式)を抽出します。
textstring対象のテキスト
string[]replaceVariables(text, customValues?)
テキスト内の変数を値に置換します。customValuesを指定すると、一時的に値を上書きできます。
textstring対象のテキストcustomValuesRecord<string, string>(オプション)変数の上書き値
stringsaveExtensionData(extensionId, key, data)
拡張機能固有のデータをプロジェクト内(.app/extensions/{id}/)にJSONとして保存します。
extensionIdstring拡張機能のIDkeystring保存するデータのキー(ファイル名になります)dataanyJSONシリアライズ可能なオブジェクト
Promise<void>loadExtensionData(extensionId, key)
保存された拡張機能データを読み込みます。
extensionIdstring拡張機能のIDkeystringデータのキー
Promise<any>subscribeToProjectStore(listener)
プロジェクトストアの変更を監視します。
listener(state, prevState) => voidコールバック関数
() => void (unsubscribe function)settings設定操作
getSettings()
現在のアプリケーション設定を取得します。
{ editor, proofreading, writing, autocomplete, fonts, theme }updateSettings(settings)
アプリケーション設定を更新します。変更したい部分のみを指定できます。
settingsPartial<Settings>更新する設定オブジェクト
edit_noteエディタ操作
getOpenTabs()
現在開いているタブの一覧を取得します。
Array<{ id, name, content }>getActiveTab()
現在アクティブなタブ(ファイル)の情報を取得します。
{ id, name, content } | nullupdateTabContent(fileId, content)
指定したファイルの内容を更新し、エディタの表示にも反映させます。
fileIdstring更新するファイルのIDcontentstring新しいファイル内容
insertText(text)
現在のアクティブなエディタのカーソル位置にテキストを挿入します。
textstring挿入するテキスト
folderファイル操作
getFileTree()
プロジェクト内の全ファイル・フォルダ構造を取得します。
Array<{ id, name, type, parentId, content? }>createFile(name, type, parentId)
新しいファイルまたはフォルダを作成します。
namestringファイル名type'file' | 'folder'種類parentIdstring | null親フォルダのID(ルートの場合はnull)
Promise<void>deleteFile(fileId)
ファイルを削除します。
fileIdstring削除するファイルのID
Promise<void>moveFile(fileId, newParentId)
ファイルを移動します。
fileIdstring移動するファイルのIDnewParentIdstring | null移動先のフォルダID
Promise<void>renameFile(fileId, newName)
ファイル名を変更します。
fileIdstring変更するファイルのIDnewNamestring新しいファイル名
Promise<void>readFile(fileId)
ファイルの内容を読み込みます。
fileIdstring読み込むファイルのID
string | nullwriteFile(fileId, content)
ファイルに内容を書き込み、保存します。
fileIdstring書き込むファイルのIDcontentstring書き込む内容
Promise<void>buildユーティリティ
showNotification(message, type)
画面下部にトースト通知を表示します。
messagestring通知メッセージtype'info' | 'success' | 'warning' | 'error'通知タイプ
addEventListener(event, handler)
拡張機能間通信やシステムイベントのためのイベントリスナーを登録します。
eventstringイベント名handler(...args: any[]) => voidハンドラ関数
removeEventListener(event, handler)
イベントリスナーを解除します。
eventstringイベント名handlerFunction解除するハンドラ関数