Templates — 再利用したいものから選ぶ

文書kind、Discover Project Template、Client Entry Project Templateの使い分け、権限、コピー範囲を説明する。

aachatには3種類のtemplateがあります。既存Projectの文書を揃えたいのか、自分の新しいProjectを始めたいのか、公開フォームからクライアントを迎えたいのかで選びます。

Template入口結果権限
Shared Document kind template既存ProjectのDocuments。カタログはDiscover → TemplatesProject内のkind定義と文書執筆用の雛形導入はProject Admin / Collaborator。カタログ公開は人間の操作
Discover Project TemplateDiscover → Project Templates新しいProject、任意のPROJECT.mdの初期本文、選択したLeadへの依頼サインイン済みのactiveなteamメンバー。通常のProject開始・Lead条件も適用
Client Entry Project TemplateTeam Settings → Client Entryフォーム送信ごとの専用Projectとguest参加設定はteam owner / Admin。個人teamは対象外。クライアントはGitHub login不要

どれも開始時に使う材料です。後からtemplateを編集しても、既存Projectへ継続同期する仕組みではありません。

既存Projectで文書kindを再利用する

複数のProjectでbrief・spec・reportの書き方を揃えたいときに使います。kindは文書の構造と表示規則を定め、_template.mdは執筆の出発点となる本文です。kindの導入ではProject作成、Agent割り当て、会話コピー、既存文書本文の移行は行いません。

  1. 対象Projectの Documents からkindの管理画面を開きます。AdminまたはCollaboratorの書き込み権限が必要です。
  2. template導入ダイアログを開き、カタログを検索して選択します。先にkind一覧と説明を読みます。
  3. 導入します。同じkind名がある場合は、既存側と導入側の名前を確認してから明示的な上書きを選びます。既存定義を維持したい場合はキャンセルします。
  4. 導入されたkindと文書雛形を確認し、選んだkindのtemplateから文書を作って実際の仕事の内容を記入します。表示されたfieldと検証diagnosticを確認します。

たとえばbrief kindを導入した後、その雛形を使ってProject内のdocs/brief/website-refresh.mdを書きます。例文は実際の目的と制約に置き換えてください。ローカルpathは次のとおりです。

text
aachat/projects/<team>/<project>/docs/brief/website-refresh.md

Shared Documentsの手順で保存します。

導入は衝突しないkindをmergeし、同名kindは明示的な上書きを要求します。既存定義が不正な状態で強制導入すると、その定義を置き換える場合があるため、先に確認・保存してください。既存文書の本文は書き換えませんが、kindのschemaを置き換えると検証と表示は変わることがあります。カタログ側の後日の更新が導入済み定義へ自動反映されることはありません。

kind templateの公開は選択した定義の再利用向け共有で、Agent公開とは別です。schemaと雛形・例文にprivate情報がないことを確認します。導入に失敗したらProject権限と検証エラーを確認してください。衝突は既存定義を残すか上書きするかを決める必要があり、同じ要求を繰り返すだけでは解消しません。

DiscoverからProjectを開始する

カタログの実践例に近い仕事を始めたい場合に使います。Project Templatesで詳細と推奨Agentを読み、開始操作へ進みます。

  1. サインインし、自分が所属するteamを選びます。
  2. 新しいProject名とLeadを指定します。名前は小文字英数字とハイフンで2〜30文字とし、streamdmrepoは避けます。
  3. 実際の目的、背景、期待する成果、制約をBriefへ書きます。Agent Leadなら、自分が所有し、このteamで実行できるAgentを選びます。
  4. 一度送信します。フォームを開いている間、同じ入力の再試行には同じidempotency nonceが使われます。
  5. 新しいProjectを開きます。templateが供給する場合はPROJECT.mdを確認し、LeadのSessionまたは人間への通知を確認します。開始応答は受付であり、成果完成ではありません。

たとえば調査Projectの名前をmarket-researchとし、Briefに「対象市場の公開情報を3件比較し、出典付きreportを作る。事実と推定を分け、外部への連絡はしない」と書きます。実際の仕事に合わせてから送信してください。

現在の開始操作は、templateにPROJECT.md本文があれば{project_name}を置換して、通常のProject開始フローを使います。カタログで紹介されるAgentの自動clone・割り当て、Skill導入、追加文書やHTMLの一括コピーは行いません。AgentはDiscoverから別に取得します。詳細画面の文書例は、導入済みである証拠ではありません。

templateにAgentがない、またはAgentがカタログ項目と紐付いていないため開始できない場合は、利用可能なtemplateを選ぶか通常のProject作成へ進みます。teamやLeadを選べない場合はmembershipとAgent ownershipを確認します。送信結果が不明なら、フォームを開き直して新しいnonceで別Projectを作る前にProjects一覧を確認してください。開始時の復旧はProjectsを参照します。

Client Entry templateでクライアントを迎える

GitHubアカウントを要求せず、専用のクライアント会話を始める場合に使います。Discoverとは別に、team owner/Adminが Team Settings → Client Entry で設定します。

  1. consultation-{date}-{short_id}などのProject名patternを持つ、有効なtemplateを作ります。
  2. defaultの人間メンバー(Project Admin)とAgent(Collaborator)を選びます。default membersが空ならentry link作成者がAdminとして参加します。
  3. templateを選んで有効なentry linkを作り、title・description・message prompt・任意の期限を指定します。一度だけ表示される公開URLを保存します。
  4. 別のブラウザprofileでURLを開き、秘密情報のないテスト入力を送ります。専用Project、最初のmessage、guestアクセス、想定したメンバーを確認してからクライアントへ渡します。

このtemplateは名前とmembershipを設定するもので、Discover templateの文書やHTMLをコピーしません。guestはCollaboratorで、ブラウザのloginは 7日間 有効ですがguest再loginの仕組みはありません。同じemailでも再送信すると別guestと別Projectを作ります。継続する仕事にはGitHubによるProject参加を計画します。詳しい設定とアクセス制約は接続repo / client entryを参照してください。

templateやlinkを無効にすると新規受付を止め、既存Projectは残ります。RotateはURLを交換し、古いURLを無効にします。どちらも既存guestの移行やlogin期限延長は行いません。新規受付の管理と、開始済みの仕事へのアクセス管理を分けて扱います。