form-builder について
form-builderは、ガイド形式のフォームや文書を生成するdocassembleインタビューYAMLを作成するスキルです。条件分岐のある質問票や、顧客受付、文書作成フローの設計に向いています。
主な機能
- 01docassembleインタビューYAMLの生成
- 02回答に応じて変化する質問の作成
- 03一般的なフィールド型の設定
- 04回答に基づく文書の組み立て
活用シーン
- 01顧客受付用質問票の作成
- 02条件分岐のある法務フォームの設計
- 03複数ステップの契約書生成フォームの構築
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ claude-office-skills/ skills --skill form-builderインストール後、Claude Code で/form-builderを入力して読み込まれたか確認します。
詳細
フォームビルダー スキル
概要
このスキルでは、文書を生成するガイド付きインタビューのプラットフォームである docassemble を使用して、インテリジェントな文書フォームを作成できます。回答に応じて内容が変わるアンケートを作成します。
使用方法
- 必要なフォームまたは文書について説明します
- 条件分岐ロジックの要件を指定します
- 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.
リソース
コメント
Markdown 対応