🚀 快速安装

复制以下命令并运行,立即安装此 Skill:

npx skills add https://skills.sh/claude-office-skills/skills/contract-template

💡 提示:需要 Node.js 和 NPM

智能合约模板技能

概述

此技能支持使用 Accord Project 创建智能合约模板——这是一个用于创建具有法律效力、机器可读合同的开源框架。您可以创建包含嵌入式逻辑的模板,从而实现合同执行的自动化。

使用方法

  1. 描述合同类型和条款
  2. 指定变量和逻辑规则
  3. 我将生成 Accord Project 模板

示例提示:

  • “创建一个带有可变条款的保密协议模板”
  • “构建一个包含付款里程碑的服务协议”
  • “生成一份租赁协议模板”
  • “设计一份带有终止条款的咨询合同”

领域知识

模板结构

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 "YYYY年MM月DD日"}] 起生效,
有效期为 [{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

示例:保密协议模板

template.tem.md

# 保密协议

本保密协议(下称“协议”)由以下双方
于 [{effectiveDate as "YYYY年MM月DD日"}] 签订:

**披露方:** [{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": "科技公司",
  "receivingParty": "咨询有限责任公司",
  "confidentialScope": "商业秘密、客户名单和技术规范",
  "termYears": 3,
  "permittedPurpose": "评估潜在商业关系",
  "hasExclusions": false,
  "returnDays": 30,
  "monetaryPenalty": true,
  "penaltyAmount": "50,000元"
}

资源链接

📄 原始文档

完整文档(英文):

https://skills.sh/claude-office-skills/skills/contract-template

💡 提示:点击上方链接查看 skills.sh 原始英文文档,方便对照翻译。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。