New APINew API
利用ガイドインストールAPIリファレンスAIアプリケーションSkillsヘルプ&サポートビジネス協力

リリースガイドライン

公式リポジトリの規約に従ってプラグインバージョンを整理し、リリースノートを作成し、マーケットインデックスを生成および検証します。

リポジトリ構造

公式プラグインリポジトリは QuantumNous/new-api-plugins です。現在、tasks ディレクトリを使用してタスクプラグインを整理しています。

new-api-plugins/
├── plugins/tasks/example/
│   ├── icon.svg                 # オプション、icon.pngも使用可能
│   └── 1.0.0/
│       ├── plugin.js
│       ├── CHANGELOG.md         # 必須、完全な英語の説明
│       └── CHANGELOG.zh-CN.md   # オプションの中国語の説明
├── index.json                  # ツールによって生成
└── tools/pluginindex/

ディレクトリのキー、バージョンは、それぞれコンパイル後の meta.key および meta.version と一致する必要があります。マーケットアイコンはプラグインキーに従ってバージョンディレクトリの横に配置され、インデックスの iconFile によって参照されます。画像データをJavaScriptソースコードに埋め込まないでください。

すでにリリースされたバージョンディレクトリは不変です。 プラグインを変更する際は、新しいバージョンディレクトリを追加し、古い plugin.js を上書きせず、またログを追記するために不変の履歴バージョンを変更しないでください。

すべての新バージョンにリリースノートが必要です

すべての新しいプラグインまたは新バージョンは、plugin.js の横に英語の CHANGELOG.md を提供する必要があります。初回リリースも例外ではありません。他のリポジトリのプラグインを同期する際はログも同期する必要があります。ソースにログがない場合は、検証済みの変更に基づいて新しいバージョンノートを追記してください。

英語の仕様ファイルはUTF-8 Markdownを使用し、最初の行からYAMLフロントマターを開始します。

CHANGELOG.md
---
changelogVersion: 1
plugin: 'example'
version: '1.0.0'
locale: 'en'
translations:
  zh-CN: CHANGELOG.zh-CN.md
---

# Changelog

## [1.0.0]

### Added

- Support task submission and status queries for the example model.

上記の translations が宣言されている場合、対応するファイルも提供します。

CHANGELOG.zh-CN.md
---
changelogVersion: 1
plugin: 'example'
version: '1.0.0'
locale: 'zh-CN'
---

# Changelog

## [1.0.0]

### Added

- 支持示例模型的任务提交和状态查询。

翻訳ファイルがない場合は、英語ファイルから translations マッピングを削除します。言語ファイル名は、同じディレクトリ内の CHANGELOG.<locale>.md である必要があり、外部URLやクロスディレクトリパスであってはなりません。

ログコンテンツの要件

メタデータキー、# Changelog、バージョンタイトル、およびカテゴリタイトルは、常に仕様で定められた英語の構造を使用し、日本語版では本文のみを翻訳します。

カテゴリは、出現する際にこの順序に従います:AddedChangedDeprecatedRemovedFixedSecurityMigration。空のカテゴリは省略します。各カテゴリは順序なしリストを使用し、項目内ではテーブル、ネストされたリスト、または追加のタイトルを使用しません。少なくとも1つの非Migrationカテゴリに実際の変更が含まれている必要があります。

メタデータ内のプラグイン、バージョン、およびバージョンタイトルは、ディレクトリとソースコードと一致している必要があります。日本語ファイルは同じバージョンとカテゴリを使用し、英語ファイルの翻訳マッピングを通じて検出されます。

課金または設定の変更は移行を説明する必要があります

変更が価格、課金計算、または必要な設定に関わる場合、Migration を追加します。最初に以下を説明します。

  1. 価格または課金計算に影響があるか。
  2. 管理者がモデル価格、解像度ティア、課金モード、または式を変更する必要があるか。
  3. どのモデルまたは設定が影響を受けるか、自動移行があるか、および実行する必要がある具体的な操作。

変更が実際に価格の再設定を必要としない場合にのみ、「価格調整は不要」と明記します。その他の互換性に関する手順は、価格の説明の後に配置します。

リリースノートには、実際の機能、動作変更、修正、および移行について記述します。テストレポート、検証範囲、および一般的なリリースプロセスはPRの説明に含め、バージョンログには含めません。

マーケットインデックスの生成

index.json はコンパイルされた派生データであり、手動で編集しないでください。インデックスツールは、同じ階層の new-api チェックアウトに依存します。

workspace/
├── new-api/
└── new-api-plugins/

プラグインリポジトリから実行します。

cd tools/pluginindex
go run . generate ../..
go run . check ../..

ジェネレーターは、コンパイルされたメタデータから名前、モデル、チャネルタイプ、および表示フィールドを抽出し、バージョンディレクトリと最新バージョンを維持し、ソースコードのSHA-256を計算します。インストール時には、ホストが実際のソースコードのハッシュ検証、コンパイル、および承認チェックを依然として行います。インデックスは信頼の根拠ではありません。

path はインデックスURLに対して相対的に解決されるため、同じリポジトリは公式サイト、GitHub raw、または規則に準拠したミラーを通じて提供できます。minApiVersion は表示ヒントであり、最終的な互換性はホストの検証によって決定されます。

ログは個別に検証する必要があります

pluginindex check はソースコードとインデックスをチェックしますが、変更ログはチェックしません。コミットする前に、YAML メタデータ、カテゴリ、バージョンタイトル、翻訳マッピング、および移行の説明も確認する必要があります。

コミットチェック

  • ターゲットのNew APIバージョンでプラグインのlintとfixtureを実行し、変更が影響するフックと互換性のあるシナリオをカバーします。
  • 新バージョンのソースコード、完全な英語ログ、および宣言された翻訳ファイルを準備します。
  • インデックスを再生成および検証し、これらのファイルを一緒にコミットします。
  • PRで、実際の変更、互換性、課金への影響、および実行された検証について説明します。
  • リリース後、公式サイトのマーケットプレイスでバージョン、モデル、インターフェース、およびログがリリース内容と一致しているかを確認します。

このガイドはいかがですか?

最終更新