Contract Drafter
SkillDev toolsDraft a contract from a versioned template with explicit parties and terms, reconciling every clause against the rendered baseline deterministically and keeping delivery behind a human gate.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Contract Drafter skill
What this skill tells your AI
The instructions your AI receives, as published by runxhq/runx in skills/contract-drafter/SKILL.md and read by ahel’s review.
Draft a contract without letting the drafting agent silently rewrite the template. The template, parties, and terms are the only evidence; the agent assembles clause text, and deterministic code re-renders every baseline with the supplied values and reconciles the draft against it. A clause may differ from its rendered baseline only through a declared deviation with a reason.
This is not legal advice and does not replace counsel. It is an execution boundary for template fidelity: the receipt proves which template version was drafted, which terms were bound, and which deviations were declared.
Procedure
- Admission requires a complete template (id, version, title, clauses with
baselines), explicit parties, and every
required_termskey present interms. Missing evidence stops before the drafting agent runs. - Native
data.digestbinds the exact template, parties, and terms. - The drafting agent assembles clause text and declares any deviations.
- Deterministic reconciliation re-renders each baseline with the supplied
values (
{{provider.legal_name}},{{terms.fee_usd}}, and similar paths). A clause must match its rendered baseline exactly, or carry a declared deviation with a reason. Undeclared deviations, deviations that match the baseline anyway, unknown clause targets, unresolved placeholders, and missing clauses all refuse. - A drafted verdict carries the document and a send proposal gated on a human
approver through
send-as.delivery_performedis always false.
Output
contract_draft (runx.contract_draft.v1) carries decision, reason, the
document or null, confirmed deviations with baseline and text, the gated
send_proposal or null, validation, and the three input digests.
Inputs are template, parties, and terms.
Agent task contracts
contract-drafter-assemble
Read template, parties, and terms from step inputs. Return draft_doc
with title, clauses (each id, heading, text), and deviations as an
array of clause_id plus reason entries. Render every placeholder from
the supplied values; never invent parties, amounts, or dates. Match each
baseline exactly unless a deviation is genuinely needed, and declare every
deviation with its reason. Do not add clauses the template does not define and
do not produce delivery instructions; delivery belongs to the gated proposal.
Signals
- GitHub stars
- 87
- Forks
- 101
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
contract-drafter- Source
- github.com/runxhq/runx