'Drafts a customized Customer Agreement starting from the Y Combinator
Scanned 6/8/2026
Install via CLI
openskills install ThomasMoreAI/legal-skills-open---
name: victor-wang-yc-saas-drafter
title: Output Requirements
description: 'Drafts a customized Customer Agreement starting from the Y Combinator
standard form SaaS template. Tailors the agreement through structured intake
questions covering fee structure, data handling, ML rights, implementation
services, and more. Applies 18 always-on defaults that transform the raw YC
form into a professional starting point (renamed to "Customer Agreement",
data privacy section added, warranty restructured, consolidated SLA/support
exhibit, etc.). Produces a clean .docx and a lawyer-facing memo explaining
every change from the YC standard. Use when user says "draft a SaaS
agreement", "YC SaaS", "startup SaaS contract", "customer agreement",
"SaaS subscription agreement", or "I need a SaaS agreement starting from
the YC form". Also trigger when the user is a startup founder discussing
SaaS contracting, even if they don''t mention YC specifically.'
author: Victor Wang
author_url: https://lawve.ai/en/skills/victor-wang-yc-saas-drafter
license: MIT
version: 0.1.0
execution_mode: open
jurisdiction: us
practice: commercial
language: en
sources:
- title: Decision Matrix
path: references/decision-matrix.md
- title: Intake Questions
path: references/intake-questions.md
- title: Supplementary Language
path: references/supplementary-language.md
---
## Output Requirements
The final .docx must read like a lawyer drafted it. The output must contain:
- **Zero** YC drafting annotations (`*[Note:...]*`, `*[OPTIONAL:...]*`)
- **Zero** placeholder scaffolding (`[OPTIONAL]` markers, option guides)
- **Zero** unfilled template brackets — except deliberate `[TBD — description]`
markers for values the user couldn't provide, documented in the memo
The agreement title is "Customer Agreement" — NOT "SaaS Services Agreement".
If any annotation, note, or non-TBD bracket appears in the output, the draft
is not ready. Fix it before delivering.
---
## Workflow
### Step 1: Load References
Before asking any questions, read all three reference files:
- `references/intake-questions.md` — 15 question groups with branching and defaults
- `references/decision-matrix.md` — maps answers to YC template actions (18 always-apply defaults, 12 conditional decisions, variable substitutions, raise-with-lawyer flags)
- `references/supplementary-language.md` — pre-written clause text anchored by ID (always-apply blocks and conditional blocks)
The decision matrix tells you WHAT to change. The supplementary language gives
you the EXACT TEXT to insert. Do not improvise contract language — if the
matrix says to insert `#DATA-PRIVACY`, use the verbatim text from
supplementary-language.md. The ONE exception is Order Form Service Fees,
where the LLM composes from fee pattern examples.
### Step 2: Run Intake
Follow the questions in `references/intake-questions.md` in order. Apply
branching logic (e.g., skip implementation fee if no implementation, skip
pilot details if no pilot, skip service capacity if flat pricing).
Key principles:
- Offer defaults but let the user override
- Use `[TBD — description]` for any value the user can't provide yet
- Confirm all decisions in a summary before proceeding (template at the
end of intake-questions.md)
- Do NOT proceed to document assembly without user confirmation
### Step 3: Produce the Agreement
Read the YC template from `assets/YC_Form_SaaS_Agreement.docx`.
Apply modifications in this order:
**First — Always-apply defaults** (decision-matrix.md Section A, items A1-A18):
1. Rename Order Form title → "Order Form Number One"
2. Rename "SaaS Services Agreement" → "Customer Agreement" throughout
3. Update preamble date year
4. Section 1.1 SLA reference — remove [OPTIONAL], always on
5. Section 1.2 — change "Exhibit C" to "Exhibit B"
6. Section 2.2 — strip export controls note (keep the language)
7. Section 2.3 — delete customer indemnity clause + note entirely
8. Section 2.5 — insert `#DATA-PRIVACY` (new section)
9. Section 3.3 — remove optional framing (keep analytics language)
10. Section 6 — restructure into 6.1/6.2/6.3: insert `#WARRANTY-REMEDY`,
`#CUSTOMER-WARRANTY`, `#BETA-DISCLAIMER`
11. Section 7 — remove optional note, remove "United States" from patent scope
12. Section 8 — strip negotiation note
13. Section 9 — replace YC press release language with `#MARKETING-DEFAULT`
14. Exhibits — replace B + C with `#EXHIBIT-B-CONSOLIDATED`, delete Exhibit C
15. Strip ALL remaining annotations and notes
**Second — Conditional decisions** (decision-matrix.md Section B, items B1-B12):
Walk through each conditional decision. For each, look up the intake answer
and apply the specified action. When the matrix references supplementary
language (e.g., `#NO-AUTO-RENEWAL`), use the verbatim text.
**Third — Variable substitutions** (decision-matrix.md Section C):
Replace all YC placeholders with intake values. Any field not collected →
`[TBD — description]`.
**Fourth — Cleanup:**
- Remove any surviving annotations, brackets, or drafting guidance
- Remove empty paragraphs left by deleted sections
- Verify section numbering is sequential (especially after §2.5 addition
and §6 restructure into 6.1/6.2/6.3)
- Verify no non-TBD brackets remain
**DocX formatting notes:**
- Exhibit B credit table MUST be a proper Word table, not inline text
- Exhibit B communication channels MUST be a proper Word table
- Section 6 subsections (6.1, 6.2, 6.3) need proper heading formatting
- Section 6.3 (Beta Products) must be ALL CAPS
Produce the output as a .docx file:
`[CompanyName]_[CustomerName]_Customer_Agreement_DRAFT.docx`
Use available document creation tools (native DocX skill, python-docx, or
equivalent) to produce a professionally formatted Word document.
### Step 4: Produce the Lawyer Memo
Create a markdown memo alongside the agreement:
`[CompanyName]_[CustomerName]_Customer_Agreement_Memo.md`
The memo must include:
**1. Deal Summary** — One paragraph: who, what, fee structure, term.
**2. Template Base** — "This agreement is based on the Y Combinator standard
form SaaS Agreement with the following modifications."
**3. Always-Applied Defaults** — Itemized list of every always-apply change
(A1-A18), with brief rationale for each. Example:
- "Renamed to 'Customer Agreement' (professional standard)"
- "Removed 'United States' from IP indemnity patent scope (standard redline)"
- "Added Section 2.5 data privacy and security provisions (essential for modern SaaS)"
- "Added Section 6.2 customer warranty and Section 6.3 beta products disclaimer"
**4. Intake-Driven Decisions** — Each conditional decision and what was
selected. Example:
- "Section 3.2: Customer owns derivative data (bracketed language retained)"
- "Section 5.1: Auto-renewal with 60-day notice"
**5. Items Requiring Attorney Review** — This is critical. For each
raise-with-lawyer flag (decision-matrix.md Section D), include the flag
text verbatim. These are:
- DPA recommendation (almost always needed)
- Implementation services IP ownership (if applicable)
- Derivative data ownership (if company retains)
- ML training on customer content (if applicable)
- Data retention timeline confirmation
**6. TBD Items** — Every `[TBD — description]` in the document, listed so
the founder knows what to fill in before sending.
### Step 5: Deliver
Provide the user with:
1. The clean .docx Customer Agreement
2. The lawyer memo
3. Brief summary: key decisions, TBD count, attorney review items
---
## Decision Points Quick Reference
| # | Location | What's Decided |
|---|----------|---------------|
| B1 | Order Form | Services description (from product intake) |
| B2 | Order Form | Fee structure + service capacity (8 fee types) |
| B3 | Order Form + Exhibit A | Implementation services: include or remove |
| B4 | Order Form | Pilot period: include or remove |
| B5 | §2.1 | Distributed software license: include or remove |
| B6 | §3.2 | Derivative data: customer owns or company retains |
| B7 | §5.1 | Auto-renewal: yes (30/60/90 day notice) or no |
| B8 | §5.2 | Data retention period on termination |
| B9 | §9 | Governing law: state selection |
| B10 | §9 | Marketing formulation: default, more, or less |
| B11 | Exhibit B | SLA availability: 99.9% / 99.95% / 99.99% |
| B12 | Exhibit B | Support details: email, phone, hours, tool |
---
## Supplementary Language Reference
| Anchor | Clause | Type |
|--------|--------|------|
| #DATA-PRIVACY | §2.5 Data privacy & security | Always |
| #WARRANTY-REMEDY | §6.1 Exclusive warranty remedy | Always |
| #CUSTOMER-WARRANTY | §6.2 Customer warranty | Always |
| #BETA-DISCLAIMER | §6.3 Beta products (ALL CAPS) | Always |
| #MARKETING-DEFAULT | §9 Marketing language | Always |
| #EXHIBIT-B-CONSOLIDATED | Exhibit B: SLA + Support | Always |
| #NO-AUTO-RENEWAL | §5.1 Manual renewal replacement | Conditional |
| #FEE-EXAMPLES | Order Form fee patterns (8 types) | Conditional |
| #EXPANDED-DATA-RESTRICTIONS | Sensitive data protections | Conditional |
| #ML-TRAINING | ML model training rights | Conditional |
| #ML-FEDERATED | Federated learning carve-out | Conditional |
---
## What This Skill Does NOT Do
- **Does not draft DPAs.** Flags DPA need in memo; use dpa-drafter separately.
- **Does not handle professional services agreements.** If the deal has
significant services beyond implementation, use msa-drafter.
- **Does not review or redline incoming contracts.** This drafts from a
template. For review, use a review skill.
- **Does not invent clause language.** Every modification is a deletion,
variable substitution, or verbatim insertion from supplementary-language.md.
Exception: Order Form Service Fees, composed from fee pattern examples.
- **Does not resolve attorney review items.** Flags them in the memo for
counsel to address.
41:["$","div",null,{"className":"relative z-10 mx-auto max-w-[1400px] px-4 pb-16 sm:px-8 lg:px-16","children":[["$","$L45",null,{"skillId":"8c742b2e-9445-44af-a837-ce4c2e72c4db","skillTitle":"YC SaaS Drafter","skillStatus":"active","skillVisibility":"listed","slug":"victor-wang-yc-saas-drafter","shareToken":null,"settingsShareToken":null,"fileTree":["assets/","references/","assets/YC_Form_SaaS_Agreement.docx","LICENSE","README.md","references/decision-matrix.md","references/intake-questions.md","references/supplementary-language.md","SKILL.md"],"textContents":{"README.md":"$46","references/decision-matrix.md":"$47","references/intake-questions.md":"$48","references/supplementary-language.md":"$49","SKILL.md":"$4a"},"fileSizes":{"assets/YC_Form_SaaS_Agreement.docx":37440,"LICENSE":1078,"README.md":3019,"references/decision-matrix.md":16774,"references/intake-questions.md":13095,"references/supplementary-language.md":16234,"SKILL.md":9543},"hasShowcase":false,"hasSandbox":true,"canEdit":false,"isAdmin":false,"demoFiles":[],"sandboxConfig":{"steps":[{"type":"files","filesRequired":false}]},"initialDependencies":[],"initialMcpServers":[],"initialOauthConnections":[],"initialAccessGrants":[],"showcase":null,"about":{"locale":"en","sections":[{"title":"What this skill does","body":"Drafts a customized SaaS Customer Agreement starting from the Y Combinator standard form SaaS template. Runs a structured intake covering fee structure, data handling, ML/AI rights, implementation services, SLA, and governing law, then applies 18 always-on professional defaults plus 12 conditional decisions. Outputs a clean .docx ready for review alongside a lawyer-facing memo that itemizes every change from the YC baseline and flags each item still requiring attorney input. Aimed at startup founders preparing first-draft customer subscription agreements."},{"title":"How to use","body":"The best way to start is to try it live right here — run it against your own document or question to see exactly how it operates, without any setup. Once you're comfortable, download the skill files and drop them into any AI assistant — Claude (Anthropic), ChatGPT (OpenAI), Gemini (Google), or Mistral. The same skill file works across all of them, so you are never locked into a single provider."}],"requiredSkills":[],"dependentSkills":[],"author":{"name":"Victor Wang
No comments yet. Be the first to comment!