Commentary form creation
Skill commentary-dev/commentary-skills/skills/commentary-form-creation
Design and create Commentary Forms from an agent. Use when a user wants to create, validate, revise, or review a Commentary Form Contract v1 YAML or JSON definition; choose form questions, field types, validations, conditional logic, required fields, response links, or draft-backed form authoring; detect whether a local git repo already contains forms or form results; use Commentary MCP draft_review and commentary_forms tools when no local source-backed form repo is available; or coordinate form drafts with Commentary Draft Review workflows.From its SKILL.md
npx -y skills add commentary-dev/commentary-skills --skill commentary-form-creationAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
5.1 KB, 991 tokens by cl100k_base, as published. Nobody here has run it
Commentary Form Creation
Use this skill to help users design useful structured forms and create valid Commentary Form Contract v1 source artifacts.
First Checks
- Inspect the current folder before choosing a creation path.
- If it is a git repo containing
forms/*.form.yaml,forms/*.form.yml,forms/*.form.json, orforms/results/**/**/*.result.json, treat local files as the source-backed workflow. - If no local source-backed form repo is found, default to Commentary MCP with
draft_reviewfor authoring andcommentary_formsfor validation and form operations. - If a local
.commentary/session.jsonexists for a draft review, prefer the draft review workflow and preserve that session.
Do not call commentary_forms with create or update for normal authoring. Standalone Forms API creation/editing is removed. Create or edit form source files through git-backed artifacts or draft review files.
Design The Form Before Writing YAML
Start with the business decision the form supports. Ask only for fields that change routing, validation, approval, reporting, or follow-up work.
Use this checklist:
- Define the audience, submission context, owner, and expected number of submissions.
- Separate required decision fields from helpful optional context.
- Prefer one clear question per field; avoid double-barreled prompts.
- Choose closed options when results will be aggregated; choose text areas only for narrative evidence.
- Add validation that prevents unusable answers: length limits, numeric bounds, enum options, required fields, and patterns only when they are explainable.
- Add conditional requirements only when they reduce burden or prevent incomplete follow-up.
- Plan result access and privacy before collecting sensitive values.
For detailed question and validation guidance, read references/form-best-practices.md.
For the contract fields and examples, read references/contract-v1.md.
Local Source-Backed Workflow
Use local files when the repo is the intended source of truth.
- Create standalone forms under
forms/<stable-name>.form.yamlunless the user asks for JSON. - Use stable ASCII ids such as
security.revieworrelease-readiness. - Keep
schema.additionalProperties: falsefor ordinary object forms. - Include
submit.destinationswith{ kind: commentary, enabled: true }. - Validate the source through MCP when available:
{
"action": "validate_contract",
"contractSource": "commentaryForm: 1\nid: release-readiness\ntitle: Release readiness\nschema:\n type: object\n",
"sourceFormat": "yaml"
}
If MCP is unavailable, validate by careful inspection against references/contract-v1.md and tell the user validation still needs to run in Commentary.
MCP Draft-Backed Workflow
Use this path when no local form repo exists or the user wants a form draft before committing source.
- Author a complete YAML contract in memory.
- Validate it with
commentary_formsvalidate_contract. - Create a draft review file with
draft_review:
{
"action": "create",
"title": "Intake form",
"sourceType": "mcp",
"files": [
{
"path": "forms/intake.form.yaml",
"content": "commentaryForm: 1\nid: intake.quick\ntitle: Intake\nschema:\n type: object\n",
"contentType": "auto"
}
]
}
- Share the draft review URL if the MCP response includes one.
- If the user wants review comments on structure, use
commentary-draft-reviewagainst the draft review rather than creating a second review surface.
Response Links
Create response links only from an accessible source-backed form.
Use commentary_forms create_fillout_link with:
formIdorreferenceIdsourceContextwhen the token is review-scoped or the form is embeddedshareMode:specific_user,authenticated, oranonymousreplyMode:identifiedoranonymousrepeatSubmissionsbased on the business rule
Do not use anonymous links for sensitive data unless the user explicitly accepts anonymous replies and result ownership constraints.
Guardrails
- Treat server validation as authoritative.
- Do not store tokens, private review URLs, reviewer identities, customer submissions, or local machine paths in repo files.
- Do not invent source permissions in
sourceContext; Commentary derives trusted result access server-side. - Keep forms source-authored: git files, Markdown/HTML embeds, draft review files, response links, or custom renderer submissions.
- Keep generated YAML deterministic and stable so diffs are reviewable.
What ships with it: 3 files
6.0 KB alongside SKILL.md
agents/
- openai.yaml211 B
references/
- contract-v1.md2.9 KB
- form-best-practices.md2.9 KB