Token导航 LogoToken导航TokenDH.com
研究检索只读clawhub未标认证来源可访问clear审计提醒

mova-contract-writerMOVA 合同作家

Agent Skill

mova-contract-writer 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

3,394

周安装

140

GitHub Stars

公开资料未说明

下载量

1,109
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:mova-contract-writer(MOVA 合同作家)
来源仓库:https://github.com/mova-compact/mova-contract-writer
安装命令:
openclaw skills install mova-contract-writer
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install mova-contract-writer

简介

将预合同转化为完整有效的MOVA合同工件。

  • 适用于合同标准化与自动化部署流程。适用宿主包括 OpenClaw,接入前应确认版本、权限和运行环境要求。
  • 包含信封、数据模式与指令配置文件生成。
  • 需输入经校准的用户意图与约束条件。
  • 注意版本控制与向后兼容性维护。mova-contract-writer 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

name
mova-contract-writer
description
Translate a pre-contract (output of mova-intent-calibration) into a complete, valid MOVA contract — envelope, data schema references, instruction profile, and episode frame. Trigger when the user provides a pre-contract document and asks to generate a MOVA contract, formalize it, or turn it into executable form. Requires a completed pre-contract with status VALID.
license
MIT-0

MOVA Contract Writer

Transform a fully calibrated pre-contract into a complete MOVA contract — structured JSON with envelope, instruction profile, and episode frame — ready for execution by any MOVA-compliant runtime.

What this skill does

  1. Parses the pre-contract — reads all sections produced by mova-intent-calibration
  2. Maps to MOVA constructs — translates each pre-contract section into the correct MOVA artifact
  3. Drafts each artifact — envelope (env.*), data schema references (ds.*), instruction profile, episode frame
  4. Human review gate — each artifact is shown to the user for approval before the final contract is assembled
  5. Outputs the complete MOVA contract — a single JSON document ready for submission to a MOVA runtime

Requirements

  • A completed pre-contract with Status: VALID from mova-intent-calibration
  • MOVA spec available at /home/mova/.openclaw/workspace/mova-spec/ for schema validation

Pre-contract → MOVA mapping

Pre-contract sectionMOVA artifactNotes
ACTOR (actor, owner, reason_now)env.*.roles[]actor = sender/initiator, owner = recipient/accountable
CHANGE DEFINITION (change_target, change_type, after_state)verb_id in envelopechange_type maps to verb: action→create/update, state→route/record, result→analyze/publish
OBJECT (object_description, selection_rule)ds.* schema reference + input_data_refs[]describes what is being acted on
GOAL (goal_statement, verification_method, confirmation_owner)Episode result contractdefines expected result_status and confirmation criteria
CONSTRAINTS (forbidden_action, invariant, unacceptable_consequence)ds.instruction_profile_core_v1 ruleseach constraint → a deny or transform rule in instruction profile
SUCCESS/FAILURE statesEpisode result_status allowed valuessuccess → completed; failure → failed/cancelled/partial
DECISION POINTS (deterministic)Inline in episode frame or envelope verbdeterministic rules go into policy; human decisions go to human gates
HUMAN GATESds.instruction_profile_core_v1 HITL rulestrigger_condition maps to policy rule; pause execution and wait for human input
INPUTS (name, available, source)input_data_refs[] + input_envelopes[] in episodeunavailable inputs → blocking dependency in instruction profile
DEPENDENCIES (name, type, blocking)Instruction profile: required_resources[] or blocking rulesblocking deps → must be resolved before execution starts
ASSUMPTIONSEpisode context notes + instruction profile on_violationblocking assumptions → deny rule; safe assumptions → warn rule
TIME LIMITS (deadline, max_attempts, stop_condition)Instruction profile limits or episode finished_at constraintencode as policy constraints
AMBIGUITIESAnnotation in meta.ext of the envelopedocumented but not executable until resolved
LINEARITY CHECKValidates that the episode frame has no hidden branchesnon-linear → decision points must appear as explicit HITL gates

Verb selection guide

Change type from pre-contractVerbUse when
Creating something newcreateafter_state is a new record or artifact
Modifying existing dataupdateafter_state is a changed version of an existing record
Making a routing/selection decisionroutethe task is choosing between options
Recording a fact or observationrecordthe task produces an audit entry or episode
Publishing to a registrypublishthe task distributes a catalog or configuration
Analyzing dataanalyzethe task produces findings, scores, or risk bands
Planning a sequence of stepsplanthe task produces a plan or strategy
Explaining a decisionexplainthe task produces a human-readable justification
Summarizing contentsummarizethe task condenses input into a shorter form

Step-by-step process

Step 1 — Receive and validate the pre-contract

Ask: "Paste the pre-contract document (output of mova-intent-calibration)."

Check:

  • Status must be VALID — if BLOCKED, stop here and tell the user to resolve the blocking items first
  • All required sections must be present
  • No unresolved blocking ambiguities

Step 2 — Identify the core MOVA constructs

From the pre-contract, determine:

  1. Verb — use the Verb selection guide above
  2. Envelope ID — format: env.[domain]_[operation]_v1 (e.g. env.procurement_po_review_v1)
  3. Primary data schema — format: ds.[domain]_[object]_v1 (e.g. ds.procurement_po_v1)
  4. Roles — map actor → initiator, owner → accountable, confirmation_owner → approver
  5. Instruction profile ID — format: [domain]_policy_v1 (e.g. procurement_po_policy_v1)

Show the user this mapping and ask for confirmation before continuing.

Step 3 — Draft the envelope

{
  "envelope_id": "env.[domain]_[operation]_v1",
  "verb": "[verb from step 2]",
  "roles": {
    "initiator": "[actor from pre-contract]",
    "accountable": "[owner from pre-contract]",
    "approver": "[confirmation_owner from pre-contract]"
  },
  "payload": {
    "object_ref": {
      "data_type": "ds.[domain]_[object]_v1",
      "description": "[object_description from pre-contract]"
    }
  },
  "policy_profile_id": "[instruction profile ID]",
  "meta": {
    "reason": "[reason_now from pre-contract]",
    "goal": "[goal_statement from pre-contract]"
  }
}

Show to user. Ask to approve or edit.

Step 4 — Draft the instruction profile

{
  "schema_id": "ds.instruction_profile_core_v1",
  "profile_id": "[instruction profile ID]",
  "security_model_version": "mova_security_default_v1",
  "rules": [
    // One rule per CONSTRAINT from pre-contract
    {
      "rule_id": "constraint_[n]",
      "description": "[constraint statement]",
      "target": {
        "kind": "action",
        "verb_id": "[verb]"
      },
      "effect": "deny",   // deny for forbidden_action/unacceptable_consequence; warn for safe assumptions
      "condition": "[when this rule fires]",
      "rationale": "[why this constraint exists]"
    }
  ],
  "hitl_gates": [
    // One entry per HUMAN GATE from pre-contract
    {
      "gate_id": "gate_[n]",
      "trigger_condition": "[trigger_condition from pre-contract]",
      "question_for_human": "[question_for_human from pre-contract]",
      "valid_resolution_criteria": "[valid_resolution_criteria from pre-contract]",
      "on_no_response": "block"
    }
  ],
  "on_violation": "block"
}

Show to user. Ask to approve or edit.

Step 5 — Draft the episode frame

{
  "schema_id": "ds.mova_episode_core_v1",
  "episode_type": "execution/[domain]_[operation]",
  "mova_version": "6.0.0",
  "verb_id": "[verb from step 2]",
  "tool_id": 0,
  "executor": {
    "role": "ai_agent",
    "skill_id": "mova-contract-writer"
  },
  "input_envelopes": [
    { "envelope_type": "env.[domain]_[operation]_v1" }
  ],
  "input_data_refs": [
    // One entry per INPUTS REQUIRED that is available
    { "data_type": "ds.[domain]_[object]_v1", "data_id": "[from pre-contract inputs]" }
  ],
  "result_contract": {
    "success_statuses": ["completed"],
    "failure_statuses": ["failed", "cancelled"],
    "partial_allowed": [true/false from pre-contract partial_success_allowed],
    "verification_method": "[verification_method from pre-contract]",
    "confirmed_by": "[confirmation_owner from pre-contract]"
  },
  "context": {
    "assumptions": "[assumptions from pre-contract]",
    "ambiguities": "[any remaining ambiguities from pre-contract]"
  }
}

Show to user. Ask to approve or edit.

Step 6 — Assemble and output the complete MOVA contract

When all three artifacts are approved, output the final contract:

MOVA CONTRACT  —  [task title from pre-contract]
Generated: [date]
Spec version: MOVA 6.0.0
Pre-contract: VALID

━━━ ENVELOPE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[envelope JSON]

━━━ INSTRUCTION PROFILE ━━━━━━━━━━━━━━━━━━━━━━
[instruction profile JSON]

━━━ EPISODE FRAME ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[episode frame JSON]

━━━ CONTRACT SUMMARY ━━━━━━━━━━━━━━━━━━━━━━━━━
Verb:             [verb]
Envelope:         [envelope_id]
Policy profile:   [profile_id]
HITL gates:       [count]
Constraint rules: [count]
Open ambiguities: [count from pre-contract]
Status:           READY FOR EXECUTION / PENDING AMBIGUITY RESOLUTION

Spec reference

All schema structures are validated against:

  • /home/mova/.openclaw/workspace/mova-spec/schemas/ds.mova_episode_core_v1.schema.json
  • /home/mova/.openclaw/workspace/mova-spec/schemas/ds.instruction_profile_core_v1.schema.json
  • /home/mova/.openclaw/workspace/mova-spec/docs/mova_core.md
  • /home/mova/.openclaw/workspace/mova-spec/docs/mova_security_layer.md

Use mova-spec-guide skill to look up any concept while drafting.

Rules

  • NEVER accept a pre-contract with status BLOCKED — stop and tell the user what to resolve first
  • NEVER invent verb IDs, schema IDs, or policy values outside the MOVA verb catalog — read from spec
  • NEVER skip the human review step for each artifact — the user must approve envelope, profile, and episode frame individually
  • NEVER produce a contract with unresolved blocking ambiguities — mark it PENDING AMBIGUITY RESOLUTION
  • If the pre-contract has optional sections marked not_required — omit the corresponding MOVA fields
  • Generated IDs (envelope_id, profile_id, episode_type) follow MOVA naming conventions: lowercase, underscores, versioned with _v1
  • tool_id = 0 unless the pre-contract specifies an external tool channel

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

88.34%
按下载量换算980

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills