mcpField
F
form-builder

form-builder

github.com/claude-office-skillsドキュメント5454.6k 回インストール39 週間前に更新
リポジトリ

form-builder について

form-builderは、ガイド形式のフォームや文書を生成するdocassembleインタビューYAMLを作成するスキルです。条件分岐のある質問票や、顧客受付、文書作成フローの設計に向いています。

主な機能

  1. 01docassembleインタビューYAMLの生成
  2. 02回答に応じて変化する質問の作成
  3. 03一般的なフィールド型の設定
  4. 04回答に基づく文書の組み立て

活用シーン

  1. 01顧客受付用質問票の作成
  2. 02条件分岐のある法務フォームの設計
  3. 03複数ステップの契約書生成フォームの構築

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/claude-office-skills/skills --skill form-builder

インストール後、Claude Code で/form-builderを入力して読み込まれたか確認します。

詳細

フォームビルダー スキル

概要

このスキルでは、文書を生成するガイド付きインタビューのプラットフォームである docassemble を使用して、インテリジェントな文書フォームを作成できます。回答に応じて内容が変わるアンケートを作成します。

使用方法

  1. 必要なフォームまたは文書について説明します
  2. 条件分岐ロジックの要件を指定します
  3. docassemble のインタビュー YAML を作成します

プロンプトの例:

  • 「新規クライアント向けの受付フォームを作成してください」
  • 「法律文書向けの条件分岐式アンケートを作成してください」
  • 「契約書生成用の複数ステップのフォームを生成してください」
  • 「対話型の文書作成フォームを設計してください」

ドメイン知識

インタビューの構造
metadata:
  title: Client Intake Form
  short title: Intake

---
question: |
  What is your name?
fields:
  - First Name: first_name
  - Last Name: last_name

---
question: |
  What type of service do you need?
field: service_type
choices:
  - Contract Review
  - Document Drafting
  - Consultation

---
mandatory: True
question: |
  Thank you, ${ first_name }!
subquestion: |
  We will contact you about your ${ service_type } request.
条件分岐ロジック
---
question: |
  Are you a business or individual?
field: client_type
choices:
  - Business
  - Individual

---
if: client_type == "Business"
question: |
  What is your company name?
fields:
  - Company: company_name
  - EIN: ein
    required: False

---
if: client_type == "Individual"
question: |
  What is your date of birth?
fields:
  - Birthdate: birthdate
    datatype: date
フィールドの種類
fields:
  # Text
  - Name: name
  
  # Email
  - Email: email
    datatype: email
  
  # Number
  - Age: age
    datatype: integer
  
  # Currency
  - Amount: amount
    datatype: currency
  
  # Date
  - Start Date: start_date
    datatype: date
  
  # Yes/No
  - Agree to terms?: agrees
    datatype: yesno
  
  # Multiple choice
  - Color: color
    choices:
      - Red
      - Blue
      - Green
  
  # Checkboxes
  - Select options: options
    datatype: checkboxes
    choices:
      - Option A
      - Option B
  
  # File upload
  - Upload document: document
    datatype: file
文書の生成
---
mandatory: True
question: |
  Your document is ready.
attachment:
  name: Contract
  filename: contract
  content: |
    # Service Agreement
    
    This agreement is between **${ client_name }**
    and **Service Provider**.
    
    ## Services
    ${ service_description }
    
    ## Payment
    Total amount: ${ currency(amount) }
    
    Date: ${ today() }

例:クライアント受付

metadata:
  title: Legal Client Intake
  short title: Intake

---
objects:
  - client: Individual

---
question: |
  Welcome to our intake form.
subquestion: |
  Please answer the following questions.
continue button field: intro_screen

---
question: |
  What is your name?
fields:
  - First Name: client.name.first
  - Last Name: client.name.last
  - Email: client.email
    datatype: email
  - Phone: client.phone
    required: False

---
question: |
  What type of matter is this?
field: matter_type
choices:
  - Contract: contract
  - Dispute: dispute
  - Advisory: advisory

---
if: matter_type == "contract"
question: |
  Contract Details
fields:
  - Contract Type: contract_type
    choices:
      - Employment
      - Service Agreement
      - NDA
  - Other Party: other_party
  - Estimated Value: contract_value
    datatype: currency

---
mandatory: True
question: |
  Thank you, ${ client.name.first }!
subquestion: |
  **Summary:**
  
  - Name: ${ client.name }
  - Email: ${ client.email }
  - Matter: ${ matter_type }
  
  We will contact you within 24 hours.

リソース

コメント