contract-template

contract-template

熱門

>

313星標
68分支
更新於 2026/1/31
SKILL.md
唯讀
名稱
contract-template
描述

>

版本
1.0

合約範本技能

概述

此技能可讓您使用 Accord Project 建立智慧合約範本。Accord Project 是一個開源框架,用於建立具有法律效力且機器可讀的合約。您可以建立內嵌邏輯的範本,自動化合約執行流程。

使用方式

  1. 描述合約類型與條款
  2. 指定變數與邏輯規則
  3. 我將產生 Accord Project 範本

範例提示詞:

  • 「建立一份含可變條款的 NDA 範本」
  • 「建立一份含付款里程碑的服務協議」
  • 「產生一份租賃合約範本」
  • 「設計一份含終止條款的顧問合約」

領域知識

範本結構

contract-template/
├── package.json           # 中繼資料
├── grammar/
│   └── template.tem.md    # 自然語言範本
├── model/
│   └── model.cto          # 資料模型
├── logic/
│   └── logic.ergo         # 商業邏輯
└── text/
    └── sample.md          # 範例合約

範本語法 (TemplateMark)

# 服務協議

本協議由 [{supplier}](「供應商」)
與 [{buyer}](「買方」)共同簽訂。

## 服務
供應商同意提供 [{serviceDescription}]。

## 付款
買方應在收到發票後 [{paymentDays}] 天內
支付 [{paymentAmount}]。

## 期間
本協議自 [{startDate as "MMMM DD, YYYY"}] 起生效,
持續 [{termMonths}] 個月。

{{#if latePenalty}}
## 逾期付款
逾期付款將加收 [{penaltyPercent}]% 的罰款。
{{/if}}

資料模型 (Concerto)

namespace org.example.service

import org.accordproject.time.*

asset ServiceAgreement extends Contract {
  o String supplier
  o String buyer
  o String serviceDescription
  o Double paymentAmount
  o Integer paymentDays
  o DateTime startDate
  o Integer termMonths
  o Boolean latePenalty optional
  o Double penaltyPercent optional
}

transaction PaymentRequest {
  o Double amount
  o DateTime dueDate
}

transaction PaymentResponse {
  o Double amount
  o Double penalty
  o DateTime paymentDue
}

商業邏輯 (Ergo)

namespace org.example.service

import org.accordproject.time.*

contract ServiceContract over ServiceAgreement {
  
  clause payment(request : PaymentRequest) : PaymentResponse {
    let dueDate = addDuration(request.dueDate, 
                              Duration{ amount: contract.paymentDays, unit: ~org.accordproject.time.TemporalUnit.days });
    
    let penalty = 
      if contract.latePenalty
      then request.amount * contract.penaltyPercent / 100.0
      else 0.0;
    
    return PaymentResponse{
      amount: request.amount,
      penalty: penalty,
      paymentDue: dueDate
    }
  }
}

使用 Cicero CLI

# 安裝
npm install -g @accordproject/cicero-cli

# 解析合約
cicero parse --template ./contract-template --sample ./text/sample.md

# 執行邏輯
cicero trigger --template ./contract-template \
  --sample ./text/sample.md \
  --request ./request.json

# 草擬新合約
cicero draft --template ./contract-template --data ./data.json

範例:NDA 範本

template.tem.md

# 保密協議

本保密協議(「協議」)由以下雙方
於 [{effectiveDate as "MMMM DD, YYYY"}] 簽訂:

**揭露方:** [{disclosingParty}]
**接收方:** [{receivingParty}]

## 1. 機密資訊

「機密資訊」係指揭露方揭露的所有非公開資訊,
包括但不限於:[{confidentialScope}]。

## 2. 義務

接收方同意:
- 保密 [{termYears}] 年
- 僅將資訊用於 [{permittedPurpose}]
- 未經書面同意不得向第三方揭露

## 3. 例外

本協議不適用於以下資訊:
{{#if hasExclusions}}
[{exclusions}]
{{else}}
- 已公開或成為公開資訊
- 揭露前已知悉
- 獨立開發
{{/if}}

## 4. 資料歸還

協議終止後,接收方應在 [{returnDays}] 天內
歸還或銷毀所有機密資訊。

## 5. 救濟措施

{{#if monetaryPenalty}}
違反本協議應支付 [{penaltyAmount}] 的違約金。
{{else}}
揭露方有權尋求禁制令救濟。
{{/if}}

**簽署**

揭露方:____________________
日期:____________________

接收方:____________________
日期:____________________

data.json

{
  "effectiveDate": "2024-01-15",
  "disclosingParty": "Tech Corp",
  "receivingParty": "Consultant LLC",
  "confidentialScope": "營業秘密、客戶名單及技術規格",
  "termYears": 3,
  "permittedPurpose": "評估潛在商業合作關係",
  "hasExclusions": false,
  "returnDays": 30,
  "monetaryPenalty": true,
  "penaltyAmount": "$50,000"
}

資源