vague
Use when writing Vague (.vague) files - a declarative language for generating realistic test data with superposition, constraints, and cross-references
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when writing Vague (.vague) files - a declarative language for generating realistic test data with superposition, constraints, and cross-references
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Use when writing Vague (.vague) files that need realistic test data using faker generators for names, emails, addresses, dates, and more
Use when working with JSON Schema for validation, including draft-07, 2019-09, and 2020-12 specifications
Use when adding syntax highlighting for custom languages to Prism.js, used by Docusaurus and many documentation sites
Use when configuring Spectral for API linting, creating custom rulesets, and validating OpenAPI or AsyncAPI specifications
Use when developing TypeScript npm packages including tsconfig, package.json exports, dual CJS/ESM builds, and publishing
Use when writing or modifying Vitest tests to follow best practices for test structure, assertions, mocking, and coverage
| name | vague |
| description | Use when writing Vague (.vague) files - a declarative language for generating realistic test data with superposition, constraints, and cross-references |
schema Invoice {
id: unique int in 1000..9999,
status: "draft" | "sent" | "paid",
total: decimal in 100.00..5000.00,
line_items: 1..5 of LineItem,
tax: round(total * 0.2, 2),
assume total > 0
}
dataset TestData {
invoices: 100 of Invoice
}
string, int, decimal, boolean, date"a" | "b" or weighted 0.7: "a" | 0.3: "b"int in 1..100, date in 2020..20241..5 of Item or 100 of Itemlet statuses = "active" | "pending" (reusable values)total: sum(items.amount), median(), first(), last(), product()assume due_date >= issued_date} refine { if type == "A" { field: int in 1..10 } }match status { "a" => "Alpha", "b" => "Beta" }any of companies where .active == true= ^parent_fieldstring? or string | nullid: unique int in 1..1000age: private int (generated but excluded from output)[48, 52, 55, 60] (cycles through values)field: string when condition (field only exists if condition is true)