@wix/agent-skills 1.30.0 → 1.31.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/package.json +1 -1
  2. package/skills/wix-app/SKILL.md +7 -8
  3. package/skills/wix-app/references/DASHBOARD_PAGE.md +1 -1
  4. package/skills/wix-app/references/WIX_PATTERNS_DOCS.md +11 -50
  5. package/skills/wix-app/references/dashboard-page/DATA_SOURCES.md +14 -10
  6. package/skills/wix-app/references/dashboard-page/DRAFT_TEMPLATE.md +5 -8
  7. package/skills/wix-app/references/dashboard-page/TABLE_STATE.md +5 -4
  8. package/skills/wix-headless-kit/SKILL.md +20 -12
  9. package/skills/wix-headless-kit/guides/api-run.md +178 -0
  10. package/skills/wix-headless-kit/guides/existing-site.md +3 -2
  11. package/skills/wix-headless-kit/guides/reference-mode.md +9 -1
  12. package/skills/wix-headless-kit/install/AGENTS.md +7 -5
  13. package/skills/wix-headless-kit/install/attach.mjs +3 -3
  14. package/skills/wix-headless-kit/install/context.mjs +13 -3
  15. package/skills/wix-headless-kit/install/deploy.mjs +3 -3
  16. package/skills/wix-headless-kit/install/pins.json +1 -1
  17. package/skills/wix-headless-kit/install/setup.mjs +2 -2
  18. package/skills/wix-headless-kit/install/templates.mjs +2 -1
  19. package/skills/wix-headless-templates/blog/seed/SEED.md +1 -1
  20. package/skills/wix-headless-templates/blog/seed/seed-blog.mjs +2 -2
  21. package/skills/wix-headless-templates/bookings/seed/SEED.md +1 -1
  22. package/skills/wix-headless-templates/bookings/seed/seed-bookings.mjs +2 -1
  23. package/skills/wix-headless-templates/donations/seed/SEED.md +1 -1
  24. package/skills/wix-headless-templates/donations/seed/seed-donations.mjs +3 -2
  25. package/skills/wix-headless-templates/events/seed/SEED.md +1 -1
  26. package/skills/wix-headless-templates/events/seed/seed-events.mjs +3 -2
  27. package/skills/wix-headless-templates/portfolio/seed/SEED.md +4 -2
  28. package/skills/wix-headless-templates/portfolio/seed/seed-portfolio.mjs +6 -6
  29. package/skills/wix-headless-templates/rentals/seed/SEED.md +1 -1
  30. package/skills/wix-headless-templates/rentals/seed/seed-rentals.mjs +2 -1
  31. package/skills/wix-headless-templates/restaurants/seed/SEED.md +1 -1
  32. package/skills/wix-headless-templates/restaurants/seed/seed-restaurants.mjs +4 -3
  33. package/skills/wix-headless-templates/shared/seed/images.mjs +63 -7
  34. package/skills/wix-headless-templates/storefront/seed/SEED.md +17 -5
  35. package/skills/wix-headless-templates/storefront/seed/seed-store.mjs +49 -16
  36. package/skills/wix-manage/SKILL.md +25 -15
  37. package/skills/wix-manage/references/automations/activation-status.md +52 -0
  38. package/skills/wix-manage/references/automations/api-catalog.md +81 -0
  39. package/skills/wix-manage/references/automations/build-and-manage-automations.md +34 -0
  40. package/skills/wix-manage/references/bookings/create-and-update-booking-services.md +277 -363
  41. package/skills/wix-manage/references/custom-apps/use-app-skills-and-app-tools.md +3 -1
  42. package/skills/wix-manage/references/sites/send-feedback-to-wix.md +92 -0
  43. package/skills/wix-manage/references/sites/upload-static-site.md +258 -279
  44. package/skills/wix-vibe-headless/platforms/base44-ecom-light-seed-with-install.md +7 -1
  45. package/skills/wix-vibe-headless/platforms/base44-ecom-light-seed.md +7 -1
  46. package/skills/wix-vibe-headless/platforms/base44-ecom-light.md +7 -1
  47. package/skills/wix-headless-kit/guides/no-machine.md +0 -115
  48. package/skills/wix-manage/references/bookings/create-appointment-service.md +0 -243
  49. package/skills/wix-manage/references/bookings/create-booking-service-from-prompt.md +0 -31
  50. package/skills/wix-manage/references/bookings/create-class-service.md +0 -222
  51. package/skills/wix-manage/references/bookings/create-course-service.md +0 -251
@@ -1,251 +0,0 @@
1
- ---
2
- name: "Create Course Service"
3
- description: "Create a course booking service — e.g. 'create a 6-week photography workshop', 'set up a training program', 'add a bootcamp course for $300', 'create a hidden free test course with 8 sessions'. Handles group capacity, full-course pricing, bulkCreateServices, and separate course session events via bulkCreateEvents. Staff assignment is not used for courses."
4
- ---
5
-
6
- # Create Course Service from Prompt
7
-
8
- ## When to Use
9
-
10
- - User wants to create a multi-session course: "create a training program", "set up a 6-week workshop", "add a bootcamp course", "create a teacher training course"
11
- - User wants a free or hidden test COURSE with specific session dates/counts, such as "create a hidden free test course with 8 online sessions"
12
- - The service type is COURSE — a fixed series with pre-defined start and end dates
13
- - Customers must book the entire course (all sessions), unlike CLASS where they can pick individual sessions
14
- - For general service creation where the type is ambiguous, see [Create Booking Service from Prompt](./create-booking-service-from-prompt.md)
15
-
16
- ## Prerequisites
17
-
18
- - For full API field definitions, validation rules, and troubleshooting, see [Create and Update Booking Services](./create-and-update-booking-services.md)
19
-
20
- ---
21
-
22
- ## Step 1: Gather Business Context
23
-
24
- Run these queries to collect site data for informed defaults.
25
-
26
- ### 1a. Query Service Categories
27
-
28
- ```bash
29
- curl -X POST 'https://www.wixapis.com/bookings/v2/categories/query' \
30
- -H 'Authorization: <AUTH>' \
31
- -H 'Content-Type: application/json' \
32
- -d '{ "query": {} }'
33
- ```
34
-
35
- ### 1b. Query Existing Services (Duplicate Check)
36
-
37
- ```bash
38
- curl -X POST 'https://www.wixapis.com/bookings/v2/services/query' \
39
- -H 'Authorization: <AUTH>' \
40
- -H 'Content-Type: application/json' \
41
- -d '{ "query": { "paging": { "limit": 100 } } }'
42
- ```
43
-
44
- Warn the user if a service with a similar name already exists.
45
-
46
- > **Note:** Staff queries are optional for COURSE services since `staffMemberIds` is ignored by the API. However, querying staff can still be useful for context (e.g., mentioning the instructor in the description).
47
-
48
- ---
49
-
50
- ## Step 2: Apply Course Defaults
51
-
52
- For any fields the user did not explicitly specify:
53
-
54
- | Field | Default | Notes |
55
- |---|---|---|
56
- | Capacity | 10 | `defaultCapacity` — required for COURSE |
57
- | Online booking | Enabled | `onlineBooking.enabled: true` |
58
-
59
- ### Pricing (if not specified)
60
-
61
- - If user specifies a price → `rateType: "FIXED"` (for the entire course)
62
- - If user says "free" → `rateType: "NO_FEE"`, `options.inPerson: true`, `options.online: false`
63
- - If no price mentioned → infer from context (workshops ~$100-300, training programs ~$200-500, bootcamps ~$150-400) or default to free
64
- - **Course pricing is for the full course**, not per session — remind the user of this in the summary
65
-
66
- ### Capacity (if not specified)
67
-
68
- - Default: 10 participants
69
- - If user mentions group size → use their number
70
- - Typical ranges: intensive 5-10, standard 10-20, lecture-style 20-50
71
-
72
- ### Category
73
-
74
- - If categories exist → assign the most relevant one (e.g., "Training", "Workshops")
75
- - If no categories exist → create one:
76
- ```bash
77
- curl -X POST 'https://www.wixapis.com/bookings/v2/categories' \
78
- -H 'Authorization: <AUTH>' \
79
- -H 'Content-Type: application/json' \
80
- -d '{ "category": { "name": "General" } }'
81
- ```
82
-
83
- ### Service Name & Description
84
-
85
- - Use the user's wording for the service name
86
- - Generate a brief, professional description (1-2 sentences) mentioning it's a multi-session course
87
- - If the user specified the number of sessions or duration, include that in the description
88
-
89
- ---
90
-
91
- ## Step 3: Create the Course Service
92
-
93
- **CRITICAL: COURSE services do NOT use `staffMemberIds` or `sessionDurations`.** These fields are ignored. Use `defaultCapacity` instead.
94
-
95
- Do not put session dates under `course.sessions`, `CourseSession`, or any similar nested field in the Services V2 create/update payload. Services V2 creates the course service and returns a `service.schedule.id`; it does not create bookable course sessions from nested `course` data. A course with no Calendar events can be created successfully but appear as ended or unavailable on the service page.
96
-
97
- **Paid course:**
98
-
99
- ```bash
100
- curl -X POST 'https://www.wixapis.com/bookings/v2/bulk/services/create' \
101
- -H 'Authorization: <AUTH>' \
102
- -H 'Content-Type: application/json' \
103
- -d '{
104
- "returnEntity": true,
105
- "services": [{
106
- "name": "<SERVICE_NAME>",
107
- "description": "<GENERATED_DESCRIPTION>",
108
- "type": "COURSE",
109
-
110
- "onlineBooking": { "enabled": true },
111
- "defaultCapacity": <CAPACITY>,
112
- "payment": {
113
- "rateType": "FIXED",
114
- "options": { "online": true, "inPerson": false },
115
- "fixed": {
116
- "price": { "value": "<PRICE>" }
117
- }
118
- },
119
- "category": {
120
- "id": "<CATEGORY_ID>"
121
- }
122
- }]
123
- }'
124
- ```
125
-
126
- **Free course:**
127
-
128
- ```bash
129
- curl -X POST 'https://www.wixapis.com/bookings/v2/bulk/services/create' \
130
- -H 'Authorization: <AUTH>' \
131
- -H 'Content-Type: application/json' \
132
- -d '{
133
- "returnEntity": true,
134
- "services": [{
135
- "name": "<SERVICE_NAME>",
136
- "description": "<GENERATED_DESCRIPTION>",
137
- "type": "COURSE",
138
-
139
- "onlineBooking": { "enabled": true },
140
- "defaultCapacity": <CAPACITY>,
141
- "payment": {
142
- "rateType": "NO_FEE",
143
- "options": { "online": false, "inPerson": true }
144
- },
145
- "category": {
146
- "id": "<CATEGORY_ID>"
147
- }
148
- }]
149
- }'
150
- ```
151
-
152
- ### COURSE-Specific Reminders
153
-
154
- - Do **NOT** include `staffMemberIds` — it is ignored for COURSE services
155
- - Do **NOT** include `schedule.availabilityConstraints.sessionDurations` — not used for COURSE
156
- - Do **NOT** include `course.sessions` or inferred `CourseSession` objects in the service payload — accepted or ignored nested course data does not make sessions bookable
157
- - `defaultCapacity` is **required** — sets max participants for the entire course
158
- - Customers must book the **entire course** (all sessions), not individual sessions
159
- - After creation, course sessions must be scheduled separately via `bulkCreateEvents` using the returned `service.schedule.id` (see [Create and Update Booking Services](./create-and-update-booking-services.md))
160
- - If the user asked you to create the course and gave the session count/times, the job is not complete after `bulkCreateServices`; continue by creating the Calendar events, then verify the service has future events before telling the user it is ready
161
-
162
- Save the `serviceId` from the response: `results[0].item.id` (the created service is directly under `item` — there is no `item.service`). This requires `returnEntity: true` on the request; without it the response carries only `results[0].itemMetadata.id`.
163
- Save the `service.schedule.id` from the response (`results[0].item.schedule.id`) for the follow-up `bulkCreateEvents` request.
164
-
165
- ---
166
-
167
- ## Step 4: Create Course Session Events
168
-
169
- If the user specified session dates, times, or a session count, create the course events immediately after the service exists:
170
-
171
- 1. Read `results[0].item.schedule.id` from the service create response.
172
- 2. Query or create the resource/staff member that should appear on the course events and use its `resourceId`.
173
- 3. Call `bulkCreateEvents` (`POST https://www.wixapis.com/calendar/v3/bulk/events/create`) with one event per course session.
174
- 4. For each event, set:
175
- - `event.scheduleId` to the course service's `service.schedule.id`
176
- - `event.type` to `COURSE`
177
- - `event.resources` to at least one resource object using a valid `resourceId`
178
- - start/end fields for the session time
179
- 5. Query the service/calendar events afterward to confirm future events exist before saying the course is bookable.
180
-
181
- If the session details are missing, create only the service and clearly tell the user that the course still needs session events before it can be booked.
182
-
183
- ---
184
-
185
- ## Step 5: Summary Message
186
-
187
- Provide a summary including:
188
-
189
- 1. **What was created** — service name, total course price, capacity
190
- 2. **Assumptions made** — list defaults used (e.g., "I set the capacity to 10 participants since you didn't specify")
191
- 3. **Pricing clarification** — note that the price is for the entire course, not per session
192
- 4. **Schedule status** — say whether course session events were created and verified; do not say the course is bookable if only the service exists
193
- 5. **Next steps** — if events were not created, tell the user to provide session dates/times or set up the course schedule
194
- 6. **Offer to adjust** — "Want me to change the price, capacity, or description?"
195
-
196
- **Example:**
197
-
198
- > I created **"Yoga Teacher Training"**:
199
- >
200
- > - **Type**: Course (customers book the full program)
201
- > - **Price**: $300 for the full course
202
- > - **Capacity**: 10 participants
203
- > - **Category**: Training
204
- >
205
- > I assumed a capacity of 10 since you didn't specify. The price of $300 covers the entire course — customers pay once for all sessions. You can review and adjust the details in the service form.
206
- >
207
- > **Next step:** You'll need to set up the course schedule (specific session dates and times) before customers can book it.
208
-
209
- ---
210
-
211
- ## Error Handling
212
-
213
- | Error | Cause | Action |
214
- |---|---|---|
215
- | 400 "INVALID_PAYMENT_OPTIONS" | Payment misconfigured | Free: `inPerson: true`, `online: false`. Paid: price > 0 |
216
- | Course page says "Ended", "Beendet", or "This service is not available" after service creation | Service exists but no future course events were created on `service.schedule.id` | Create course events via Calendar Events `bulkCreateEvents`, then verify future events exist |
217
- | 403 | Permission denied | Inform user they lack permission |
218
-
219
- ---
220
-
221
- ## Payment Validation Quick Reference
222
-
223
- | rateType | `options.online` | `options.inPerson` | Valid? |
224
- |----------|------------------|-------------------|--------|
225
- | FIXED | true | false | ✓ |
226
- | FIXED | false | true | ✓ |
227
- | FIXED | true | true | ✓ |
228
- | NO_FEE | false | true | ✓ |
229
- | NO_FEE | true | false | ✗ |
230
- | Any | false | false | ✗ |
231
-
232
- ---
233
-
234
- ## What This Skill Does NOT Cover
235
-
236
- - **Course schedule setup** — individual session events (dates/times) must be configured separately via Calendar Events API. See [Create and Update Booking Services](./create-and-update-booking-services.md) Step 3.
237
- - **Pricing plans** — memberships or installment payments are separate. See [Create and Update Pricing Plans](../pricing-plans/create-and-update-pricing-plans.md)
238
- - **Instructor assignment** — `staffMemberIds` is ignored for COURSE. Staff association is managed through calendar events.
239
- - **Service images** — requires Media Manager API (see [create-and-update-booking-services.md](./create-and-update-booking-services.md))
240
-
241
- ---
242
-
243
- ## API Documentation Reference
244
-
245
- - [Bulk Create Services](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/services-v2/bulk-create-services)
246
- - [Query Services](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/services-v2/query-services)
247
- - [Query Categories](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/categories-v2/query-categories)
248
- - [Create Category](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/categories-v2/create-category)
249
- - [Bulk Create Events](https://dev.wix.com/docs/api-reference/business-management/calendar/events-v3/bulk-create-event)
250
- - [About Service Types](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/services-v2/about-service-types)
251
- - [About Service Payments](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/services-v2/about-service-payments)