{"id":95634,"plugin_id":"plugin_asdk_app_6ae6685bd07c81919a53ea6d680d612f","kind":"skill","collection_source":"plugin_package","comparison_source":null,"observed_at":"2026-11-13T18:12:34.810Z","digest":"6855a8fa03e46d3c32f541c8b1183740417fc6371d3982cdf241a51f8b9b7c19","against":null,"payload":{"description":"Set up Impulse and create a first branded event with registration, an attendee landing page, and an automatic confirmation email. Use for first-event setup or resuming unfinished onboarding.","included_files":[],"name":"onboarding","skill_md_contents":"---\nname: onboarding\ndescription: Set up Impulse and create a first branded event with registration, an attendee landing page, and an automatic confirmation email. Use for first-event setup or resuming unfinished onboarding.\n---\n\n# Set up an Impulse event\n\nWhen creating a new event, you MUST start its pages and emails from the starter/example library and customize those resources. Only create them from scratch if the user explicitly requests it. A request for custom branding or design does not override this requirement.\n\nHelp the user get a working event ready to share as fast and easy for the user as possible. Create one registration page, one attendee landing page, and one confirmation email. Match their brand and event style, make sensible design decisions, and keep questions to the facts and preferences you cannot infer. Everything can be edited later. Use your context and everything you know about the user to create an appropriate event without asking too many questions.\n\n## Account and event context\n\nIf Impulse is not connected, guide the user through the host's connection flow. They can create an account with verified email or Google there; return to setup after connection.\n\nUse `get_account_context` to confirm the connected account and available capabilities. Check existing events with `list_events` before creating one. Resume an event already identified in this conversation; if several could be the unfinished setup, ask which one. Do not change an unrelated event.\n\nReuse the user's event description, website, flyer, images, and earlier answers. If context is missing, ask for the event name or purpose and a website or brand reference in one short question. A brand reference is helpful, not required.\n\nInfer colors, typography, tone, layout. Ask only for missing facts that would materially change the event. Do not invent dates, times, venues, ticket prices, agendas, or organizer contact details. Omit unknown details or use “to be announced.” When including a time, establish its timezone from the event's location or the user.\n\n## Choose a design\n\nRead `list_event_presets`. Select the preset that creates registration, an attendee landing page, and one automatic confirmation email. Use its returned ID, page slots, and email names in subsequent calls.\n\nSearch `search_page_starters` with `presetId` and `pageType=registration`. Show two to four relevant designs with `show_starter_gallery`. Inspect its image attachments; use the returned `imageIndex` to identify each design. Recommend one direction and let the user choose or ask you to choose. Do not make them select the attendee page and email separately unless they want to.\n\nChoose matching attendee and email starters using `search_page_starters` and `search_email_examples` with the same `presetId`. Use tags and the actual previews to compare them. Read the selected documents with `get_page_starter` and `get_email_example`. Starter IDs from these searches work with `create_event`. `search_page_examples` reads the same released catalog and uses the same IDs; use preset-filtered search to choose a compatible design. Preset event creation copies the catalog assets and binds links between its selected pages and email. Standalone page and email creation copies assets and preserves template links for separate customization.\n\nChoose the confirmation email to match the selected pages' typography, palette and tone. `default-email` is a versatile branded Impulse confirmation; use it when it fits the design. `basic-confirmation` is the minimal option for users who request that style. Inspect the email preview alongside the selected pages before creating the event.\n\n## Create and customize\n\nCall `create_event` with the event name, a suitable URL slug, the preset, and all selected starters. Read the result before continuing.\n\nCustomization uses private drafts; publish the finished drafts before reporting the branded event as live, only while onboarding.\n\nDiscover the created resources with `list_event_pages` and `list_email_templates`. Read `get_skill_page_builder` and `get_skill_email_template` before editing. Create a draft for each resource with `create_page_draft` or `create_email_draft`.\n\nApply one consistent design across the three resources:\n\n- Use the user's logo, colors, imagery, tone, and event name. Replace sample branding, event details, support addresses, social links, and offers.\n- Keep registration short. Collect a required email address and the name fields the event needs. Include a phone number, waiver, or other extra fields only when relevant to the requested experience.\n- Make the attendee page useful immediately: confirm registration, show known event details, and provide the relevant next step. If it includes photos, show a clear empty state until photos are available. Remove unrelated sample features.\n- Write a confirmation subject and message that identify the event and explain what happens next. Use real signup field keys for personalization.\n- Keep the pages usable on mobile, with legible text, visible labels, and clear form errors.\n\nUse permanent image URLs. `import_page_file` saves a direct public image URL; user-uploaded files use `create_editor_upload`, the returned upload URL, `finalize_editor_upload`, then `store_page_file`. Use `import_email_image` to copy a saved page image into the email. Follow the authoring guides for fonts and other assets.\n\n## Connect and check the flow\n\nBoth registration and the confirmation email must open the new attendee page with that attendee's identity (unless the confirmation email does not require a link):\n\n- After successful `signup.submit`, redirect to the attendee page with `?attendee=` followed by the returned `humanId`. Read the page guide for the action and result binding syntax.\n- The confirmation email's landing link uses `attendee.humanId` with URI-component encoding. Keep the link personalized; a bare landing-page URL cannot identify the guest.\n- Use `list_template_tags` to confirm `sent-on-registration` is assigned to the confirmation email. If needed, use `assign_template_tag` with the current assignment as `expectedTemplateId`. The preset sends this email once when a guest registers with an email address.\n\nRead the saved drafts with `get_page_document` and `get_email_document` to check the registration actions, attendee links, and personalization against the intended experience.\n\nInspect `screenshot_page` for both pages and `screenshot_email` for the confirmation at desktop and mobile widths. Show the finished work with `show_page_preview` and `show_email_preview`. Test the form in an available browser preview, including required-field errors, the success state, and the destination link. Preview submissions are simulated and do not create a real attendee. If browser interaction is unavailable, say which runtime checks remain untested.\n\n## Publish and hand over\n\nA request to create a live, working event includes publishing the finished customization. Carry that authorization through the three drafts without asking separately for each resource.\n\nOffer a real registration walkthrough or a test email to an address the user chooses. A test email sends real mail and needs their request. Use `send_email_template_test` with the selected version and source hash; synthetic data tests appearance, while real attendee data tests personalization.\n\nFinish with the public registration URL, a registration QR code from `download_registration_qr`, and the event's portal link for managing attendees and making changes. Use the portal origin returned by tools or the connected Impulse environment. Clearly state whether the customized resources are published, that confirmation sends automatically on registration, and any details or runtime checks still outstanding. Share the registration URL, not a personalized attendee link.\n\nKeep billing and advanced setup out of the way unless the current allowance prevents registration or the user asks. If a tool returns a capacity notice, report its actual used, total, and remaining allowance. The Free allowance counts distinct attendees across the organization; it is not a time-limited trial. For MCP connections, only direct the user to the portal Billing page when a limit has been reached and they ask about their plan. Use the environment-specific Billing link in the server instructions.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}