用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/omiinaya/repairshopr-skills --skill repairshopr-estimate命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | repairshopr-estimate |
| description | Create and manage estimates in RepairShopr |
| license | MIT |
| compatibility | opencode |
| metadata | {"audience":"technicians, sales, administrators","api":"GET /estimates, POST /estimates, GET /estimates/{id}, PUT /estimates/{id}, DELETE /estimates/{id}, POST /estimates/{id}/convert_to_invoice, POST /estimates/{id}/line_items, PUT /estimates/{id}/line_items/{line_item_id}, DELETE /estimates/{id}/line_items/{line_item_id}"} |
I manage repair estimates, which are cost proposals for work. I can list, create, retrieve, update, delete estimates, convert them to invoices, and manage line items (parts/labor) within estimates.
Use this when:
Required API base URL:
VITE_REPAIRSHOPR_SUBDOMAINVITE_REPAIRSHOPR_API_KEYPermissions:
List Estimates (GET /estimates) Optional:
mine (boolean) - Only my estimatesstatus (string) - Filter by status: "approved", "declined"page (integer) - Page number (50 per page)Create Estimate (POST /estimates) Required:
date (string) - Estimate date (ISO 8601)customer_id (integer) - CustomerOptional:
name (string) - Estimate name/titlenumber (string) - Custom estimate numberstatus (string) - "Fresh", "Draft", "Approved", "Declined" (default Fresh)note (string) - Customer-facing notesticket_id (integer) - Associated ticketlocation_id (integer) - Locationline_items (array) - Array of line item objects with item, name, cost, price, quantity, taxableGet Estimate (GET /estimates/{id})
id (integer) - Estimate ID or numberUpdate Estimate (PUT /estimates/{id})
id (integer) - Estimate ID
Optional body similar to create (but typically doesn't include line_items fully; use line item endpoints)Delete Estimate (DELETE /estimates/{id})
id (integer) - Estimate IDAdd Line Item (POST /estimates/{id}/line_items)
id (integer) - Estimate ID
Body includes line item fields (item, name, cost, price, quantity, taxable)Update Line Item (PUT /estimates/{id}/line_items/{line_item_id})
id, line_item_id - IDs
Body includes updatable line item fieldsDelete Line Item (DELETE /estimates/{id}/line_items/{line_item_id})
id, line_item_id - IDsConvert to Invoice (POST /estimates/{id}/convert_to_invoice)
id (integer) - Estimate ID
Requires "Estimates - View Details" and "Invoices - Create"Print/Email:
POST /estimates/{id}/print - Queue print jobPOST /estimates/{id}/email - Email to customerExample call:
// Create estimate with line items
const estimate = await skill({ name: "repairshopr-estimate" }, {
customer_id: 123,
date: "2024-01-15",
name: "Screen Replacement Estimate",
status: "Draft",
line_items: [
{ item: "LCD Display", name: "13\" Retina Display", cost: 150, price: 299, quantity: 1, taxable: true },
{ item: "Labor", name: "Screen Replacement Service", cost: 0, price: 89, quantity: 1, taxable: false }
]
})
// Add additional line item later
await skill({ name: "repairshopr-estimate" }, {
line_items: [
{ item: "Battery", name: "Replacement Battery", price: 79, quantity: 1 }
]
}, { id: estimate.., : , : { : } })
Response includes:
subtotal, total, tax, line_items array, status, etc.invoice objectdate and customer_id are required for creationitem and price at minimum; cost is optionalvalid item error occurs when item is blankrepairshopr-invoice - After estimate conversionrepairshopr-line-item - For line item managementrepairshopr-ticket-create - To link estimate to ticket