Form Builder

作者 claude-office-skills9c4c7d5cd281MIT499 个星标收录于 2026年10月8日更新于 2026年10月8日仓库8个月前更新

Build interactive document forms and questionnaires using docassemble

仅含说明Documents & Office
AI 生成的概览

构建带条件逻辑和文档生成的 docassemble 交互式表单与问卷。

功能
该技能生成用于引导式表单和问卷的 docassemble 访谈 YAML。内容涵盖访谈结构、基于答案的条件分支、文本、电子邮件、日期、货币、复选框和文件上传等字段类型,以及通过附件生成文档。还包含一个客户信息登记表的完整示例。
适用场景
当你需要交互式表单、信息登记问卷或多步骤文档组装流程时使用。适用于条件问卷、合同生成表单或输出文档的引导式访谈等需求。
运行要求
需要 docassemble 平台来运行生成的访谈。该技能列出了 office-mcp 服务器及 create_docx 和 fill_docx_template 工具。不附带脚本,仅为说明文档。

Form Builder Skill

Overview

This skill enables creation of intelligent document forms using docassemble - a platform for guided interviews that generate documents. Create questionnaires that adapt based on answers.

How to Use

  1. Describe the form or document you need
  2. Specify conditional logic requirements
  3. I'll create docassemble interview YAML

Example prompts:

  • "Create an intake form for new clients"
  • "Build a conditional questionnaire for legal documents"
  • "Generate a multi-step form for contract generation"
  • "Design an interactive document assembly form"

Domain Knowledge

Interview Structure

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_typechoices:  - Contract Review  - Document Drafting  - Consultation
---mandatory: Truequestion: |  Thank you, ${ first_name }!subquestion: |  We will contact you about your ${ service_type } request.

Conditional Logic

yaml
---question: |  Are you a business or individual?field: client_typechoices:  - 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

Field Types

yaml
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

Document Generation

yaml
---mandatory: Truequestion: |  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() }

Example: Client Intake

yaml
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_typechoices:  - Contract: contract  - Dispute: dispute  - Advisory: advisory
---if: matter_type == "contract"question: |  Contract Detailsfields:  - Contract Type: contract_type    choices:      - Employment      - Service Agreement      - NDA  - Other Party: other_party  - Estimated Value: contract_value    datatype: currency
---mandatory: Truequestion: |  Thank you, ${ client.name.first }!subquestion: |  **Summary:**    - Name: ${ client.name }  - Email: ${ client.email }  - Matter: ${ matter_type }    We will contact you within 24 hours.

Resources

来源与署名

来源:claude-office-skills/skills位于form-builder提交9c4c7d5

许可证: MIT

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架