機能
@nocobase/app-plugin-template-print は、Office のテンプレートと業務データから文書を生成するためのエージェントのスキルとリファレンスを提供します。画像、QR コード、PDF への変換も任意で扱えます。
インストールで提供されるもの
このパッケージに含まれるのはガイダンスだけです。Client、Server、CLI のランタイム、テンプレートのテーブル、レンダリングエンジン、印刷のエンドポイント、画面はありません。その結果の機能はアプリが実装します。
互換性のあるバージョンを直接の開発用の依存関係としてインストールし、アプリのルートで同期します。
pnpm nocobase skills syncエージェントが nocobase-app-plugin-template-print を読めることを確認してください。存在しないランタイムの入口を、Client や Server の登録に追加しないでください。
シナリオと例
例:注文を印刷する
アプリのエージェントに、具体的な依頼を渡します。
template-print のスキルを使って、注文の詳細ページに「Download order」を追加してください。
提供した DOCX のテンプレートに、注文の詳細、明細、合計を入れてください。
現在のユーザーのレコードとフィールドの権限を再利用してください。
まず DOCX を実装し、PDF が必要な場合はデプロイの依存関係を説明して組み込んでください。
明細が空の場合、長いテキスト、画像がない場合、アクセスの拒否、有効な出力ファイルを検証してください。テンプレート、照会、レンダリングの依存関係、ダウンロード、画面は、アプリまたは業務のプラグインが所有します。アップロード、バージョン管理、プレビューの機能を加える前に、まず 1 つの固定のテンプレートから始めてください。
完了の条件認可されたユーザーが、正しく値の入った DOCX ファイルをダウンロードできること。任意の PDF が動作し、対象の環境で開けること。
主な仕組みと実装
以下は、この例での組み込みの領域と、想定される画面の変化です。開発作業を記述したもので、実際のファイル構成はアプリに合わせてください。
| 組み込みの領域 | コードまたは設定の変更 | 画面と動作の変化 |
|---|---|---|
| 開発用の依存関係と同期したスキル | ガイダンスをインストールして同期する | コーディングエージェントが、ランタイムのプラグインなしで手順を受け取る |
| テンプレート、業務の照会、ダウンロードの API | 認可されたデータの組み立てと DOCX のレンダリングを実装する | 実際に使える文書を返す |
| 注文の詳細と任意の PDF の環境 | ダウンロードの画面、変換の依存関係、エラーを追加する | ユーザーが出力をダウンロードし、意味のある失敗を受け取る |
出力を準備する
フィールドと繰り返しの領域を、認可されたデータに対応付けます。画像、QR コード、フォント、ページ分けは、実際に生成したファイルで確認します。PDF への変換には、別に設定したツールとデプロイの環境が必要です。このパッケージをインストールしても、それは提供されません。
app-plugin-template-print-example は別の実行できる例で、請求書のデータ、認可、固定の DOCX、ダウンロードの画面を含みます。このスキルのパッケージに組み込まれた汎用のレンダラーではありません。
AI 開発の制約と検証
プラグイン固有の開発の制約
- このパッケージに含まれるのはガイダンスだけです。ランタイムのインポートや、組み込みの汎用レンダラーをでっち上げないでください。
- テンプレートには認可されたデータだけを入れ、ダウンロードでもレコードとフィールドのアクセスを確認し直してください。
- 実際の出力を開いて、行、合計、ページ分け、画像を確認してください。PDF は、HTTP 200 のレスポンスにとどまらず、デプロイの依存関係とともに検証してください。
検証する
生成したファイルを開き、値、合計、繰り返しの領域、ページ分けを確認します。拒否されたレコードとフィールドが印刷できないことを検証します。PDF では、デプロイの環境で変換、フォント、失敗の処理をテストします。
関連:アプリの開発を続ける、ファイル、権限管理。
これらはあなたの組み込みの検収の要件であり、実機での検証が完了したことを示すものではありません。実際の変更、実行したチェック、未検証の項目をエージェントに報告させてください。プロジェクトのガイダンス、スキル、共通のチェックについては アプリの開発を続ける と テスト を参照してください。
出典:公開のプラグインの入口と実装。