用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/omiinaya/repairshopr-skills --skill repairshopr-invoice命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | repairshopr-invoice |
| description | Create and manage invoices in RepairShopr |
| license | MIT |
| compatibility | opencode |
| metadata | {"audience":"technicians, accountants, administrators","api":"GET /invoices, POST /invoices, GET /invoices/{id}, PUT /invoices/{id}, DELETE /invoices/{id}, POST /invoices/{id}/email, POST /invoices/{id}/print"} |
I manage invoices in RepairShopr, which are bills for services rendered or products sold. I can list, create, retrieve, update, and delete invoices. I also support sending invoices via email and print queueing.
Use this when:
Required API base URL:
VITE_REPAIRSHOPR_SUBDOMAINVITE_REPAIRSHOPR_API_KEYPermissions:
List Invoices (GET /invoices) Optional:
paid (boolean) - Filter by paid statusunpaid (boolean) - Filter by unpaid statusticket_id (integer) - Filter by associated ticketsince_updated_at (string) - Invoices updated since datepage (integer) - Page number (25 results per page)Create Invoice (POST /invoices) Required:
customer_id (integer) - Customer IDnumber (string) - Invoice numberdate (string) - Invoice date (ISO 8601)Optional:
due_date (string) - Payment due datesubtotal, total, tax (strings/numbers) - Amountsverified_paid, tech_marked_paid, is_paid (boolean) - Payment statusticket_id (integer) - Associated ticketlocation_id (integer) - Locationcontact_id (integer) - Contact personpo_number (string) - Customer PO numbernote (string) - Customer noteshardwarecost (number) - Hardware costline_items (array) - Array of line item objectsGet Invoice (GET /invoices/{id})
id (integer) - Invoice ID or numberUpdate Invoice (PUT /invoices/{id})
id (integer) - Invoice ID
Optional body with invoice fields (customer_id, number, date, due_date, etc.)Delete Invoice (DELETE /invoices/{id})
id (integer) - Invoice ID
Returns 200 even if delete fails (soft delete/manual removal needed)Email & Print:
POST /invoices/{id}/email - Send invoice to customer emailPOST /invoices/{id}/print - Queue print jobGet Associated Ticket (GET /invoices/{id}/ticket)
id (integer) - Invoice ID
Returns the ticket linked to this invoiceExample call:
// Create invoice with line items
const invoice = await skill({ name: "repairshopr-invoice" }, {
customer_id: 123,
number: "2024-001",
date: "2024-01-15",
due_date: "2024-02-15",
line_items: [
{ item: "Repair Service", name: "Diagnostic and Repair", price: 150, quantity: 1, taxable: true },
{ item: "Part", name: "Replacement Component", price: 75, quantity: 2, taxable: true }
],
note: "Thank you for your business!"
})
// Send invoice email
await skill({ name: "repairshopr-invoice" }, {}, { id: invoice.invoice.id, method: 'POST', pathParams: {}, endpoint: '/email' })
Response includes:
id, number, date, due_date, subtotal, total, tax, is_paid, line_items, customer, etc.customer_id, number, date are required for creationrepairshopr-invoiceline-item endpoints for line item-specific updates (PUT/DELETE)repairshopr-estimate - Convert to invoicerepairshopr-invoiceline-item - Manage line items on invoicesrepairshopr-payment - Record payments against invoicesrepairshopr-ticket - Link invoices to tickets