Cancel or Stay
This skill handles mobile service cancellations and retention offers for Juniper Mobile customers.
Identity proven by GitHub's verified organisation badge (RasaHQ)
- Agents
- Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode
- License
- Apache-2.0 (permissive)
- Pin
- f54ddf4pinned Oct 9, 2026
- Context cost
- about 530 tokenswhen the skill loads
- GitHub stars
- 41on rasahq/rasa-community-resources
- Scripts
- 1 script
What it does
“Cancellation and retention for the signed-in Juniper Mobile customer: record a request to cancel a service, and put at most one authorized offer in front of them when they have not refused. Activate for "cancel my mobile", "I want to leave", "give me my PAC code", "close my broadband", "what can you offer me to stay", "your colleague promised me a discount", "apply offer code ...", and for answers to an offer.”
Generated summary from the skill's own text
This skill handles mobile service cancellations and retention offers for Juniper Mobile customers. It records cancellation requests, respects customer refusals, and presents authorized retention offers when appropriate. The skill manages the entire flow from initial cancellation intent through offer acceptance or final confirmation of cancellation.
When to use it
- Customer requests to cancel mobile service or close broadband account
- Customer asks for retention offers or service terms before deciding
- Customer responds to retention offer questions from the engine
- Customer provides offer codes or references during cancellation flow
When not to
- Customer has explicitly refused further offers or contact
- Handling post-cancellation issues after customer confirmed closure
- Managing account services outside of cancellation or retention context
Install
These commands install from the publisher's repository and need no account.
skills CLI
npx skills add rasahq/rasa-community-resources --skill 'Cancel or Stay'Installs from the repository's default branch, which may have changed since the commit we checked.
GitHub CLI 2.90 or later
gh skill install rasahq/rasa-community-resources 'Cancel or Stay@f54ddf4e5d674e3e9175a7a469cf698fcfaf1295'Installs the commit we checked (f54ddf4).
Copy by hand
Download the folder at f54ddf4 and put it in .claude/skills/retention for Claude Code and in .agents/skills/retention for Codex, Cursor, Gemini CLI, GitHub Copilot and OpenCode.
Copy for your agent
A prompt for any coding agent. It installs this skill from GitHub at the pinned commit, copies the files as they are, and runs nothing unless you ask.
Prompt
Install the agent skill "Cancel or Stay" by Rasa. Source, pinned to commit f54ddf4e5d674e3e9175a7a469cf698fcfaf1295: https://github.com/rasahq/rasa-community-resources/tree/f54ddf4e5d674e3e9175a7a469cf698fcfaf1295/examples/mantle-text-telco-retention-gpt/skills/retention 1. Download that folder at exactly this commit. Do not use the default branch. 2. Copy every file unchanged, keeping the folder structure, into .claude/skills/retention/ for Claude Code and .agents/skills/retention/ for Codex, Cursor, Gemini CLI, GitHub Copilot and OpenCode. Create the folders if they do not exist. 3. Do not edit the files, and do not run any script in the folder unless I ask you to. 4. When you are done, list the files you copied and where you put them. Listing and checks: https://www.agentnative.dev/skills/rasa/cancel-or-stay
SKILL.md at the pin
---
name: Cancel or Stay
description: >
Cancellation and retention for the signed-in Juniper Mobile customer:
record a request to cancel a service, and put at most one authorized offer
in front of them when they have not refused. Activate for "cancel my
mobile", "I want to leave", "give me my PAC code", "close my broadband",
"what can you offer me to stay", "your colleague promised me a discount",
"apply offer code ...", and for answers to an offer.
import_tools:
- get_account_status
- withdraw_contact
tool_constraints:
- accept_retention_offer:
requires: session.retention.offer_ready
requires_confirmation:
enabled: true
utter_for_confirmation: utter_offer_or_cancel
---
Leaving is a valid outcome. The customer's services are
@memory.project.service_list. Today is @memory.project.today.
1. When the customer asks to cancel, call @tool.record_cancellation_request
for that service first, before anything else. It records a request with a
reference and sends it to the customer; it does not close anything. If
more than one service could fit, ask which.
2. Has the customer refused? "Stop", "no more offers", "not interested", "no
thanks", "just cancel it", "continue to cancellation", "/stop" or anything
like it is a refusal, and so is a no to an offer. After a refusal make no
offer at all for the rest of the conversation, on any service: no price,
no discount, no "before you go". Confirm what they asked for and stop.
3. If they have not refused, you may call @tool.get_retention_offer once for
the service. When it returns an offer, call @tool.accept_retention_offer
with its offer_id straight away. Do not describe the offer yourself: the
engine reads the offer, its terms and the way out back and asks which
they prefer. When it returns blocked, follow its next_step and offer
nothing.
4. If the customer answers the engine's question by choosing cancellation,
decline the confirmation. If no cancellation request is recorded for that
service yet, call @tool.record_cancellation_request now, in the same turn.
Then stop: no other offer, no other service's offer.
5. When accept_retention_offer returns succeeded, the customer has already
been sent the reference. Add only what they still need.
6. Only offers get_retention_offer returns exist, with exactly its terms. If
the customer names a price, a percentage, an offer code or a promise
someone made, you cannot apply it: say so plainly and do not put any
other number to them.
7. If they say to stop contacting them or stop the offer messages, call
@tool.withdraw_contact. It also answers step 2: no offers after it.
8. Never say a service or account is cancelled, closed or terminated. A
cancellation request is recorded; the cancellations team confirms the
closing date.
From rasahq/rasa-community-resources at f54ddf4, shown as plain text under its license: Apache-2.0 (permissive). The license text is in LICENSE.
View SKILL.md on GitHub at f54ddf4Files
- memory.yml989 B · 0330d6b1eb17
- responses.yml830 B · 8fa45e35a12f
- skill.md2.9 KB · 3872a9c23414
- tools.py4.9 KB · f3be1fdb7d24
4 files, 9.5 KB in total. Each file has a sha256 in the pin's manifest; the first 12 characters are shown.
Skill folder on GitHub at f54ddf4More from Rasa
Access Request
The skill lets agents handle access requests to Orchard Works systems by opening tickets with system and role details, routing them for owner approval, and…
Contains scripts
Claude Code, Codex, Cursor +3 · about 540 tokens · pinned 6 days ago
Access Reset
This skill lets the agent unlock employee accounts, reset passwords, or move authenticators to new phones after verification through the Orchard Works…
Contains scripts
Claude Code, Codex, Cursor +3 · about 540 tokens · pinned 6 days ago
Account Status
This skill retrieves a customer's account and service details, then manages contact preferences by withdrawing them from retention offers and marketing…
Claude Code, Codex, Cursor +3 · about 110 tokens · pinned 6 days ago
Application Enquiry
This skill helps applicants check the status of their Pine University applications (admission, aid, scholarships, enrollment) and records their enquiries with…
Contains scripts
Claude Code, Codex, Cursor +3 · about 720 tokens · pinned 6 days ago
Appointment Reminders
This skill manages appointment reminders for Cedar Clinic by sending text notifications, handling patient responses, and tracking delivery status.
Contains scripts
Claude Code, Codex, Cursor +3 · about 600 tokens · pinned 6 days ago
Book Advisor Appointment
This skill enables an agent to book a single appointment with a Northgate Bank advisor for mortgage, investment, business, or everyday banking services.
Contains scripts
Claude Code, Codex, Cursor +3 · about 620 tokens · pinned 6 days ago
Related in Marketing, sales and product
accelo-automation
This skill enables agents to automate Accelo project management tasks by discovering and executing operations through Composio's Accelo toolkit via Rube MCP.
by ComposioOfficial publisher
Agents not labelled yet · about 690 tokens · pinned 6 days ago
acculynx-automation
This skill automates Acculynx operations by discovering and executing available tools through the Rube MCP server.
by ComposioOfficial publisher
Agents not labelled yet · about 690 tokens · pinned 6 days ago
active-campaign-automation
This skill automates ActiveCampaign tasks by discovering and executing tools through Rube MCP and Composio's ActiveCampaign toolkit.
by ComposioOfficial publisher
Agents not labelled yet · about 710 tokens · pinned 6 days ago
adrapid-automation
This skill enables agents to automate Adrapid tasks through Composio's toolkit via Rube MCP.
by ComposioOfficial publisher
Agents not labelled yet · about 690 tokens · pinned 6 days ago
aeroleads-automation
This skill automates Aeroleads tasks by connecting to the Aeroleads toolkit via Composio's Rube MCP server.
by ComposioOfficial publisher
Agents not labelled yet · about 700 tokens · pinned 6 days ago
affinity-automation
This skill automates Affinity CRM operations by executing tools through Rube MCP and Composio's Affinity toolkit.
by ComposioOfficial publisher
Agents not labelled yet · about 690 tokens · pinned 6 days ago
Open roles at Rasa
No open roles at Rasa on the Agent Native jobs board right now.
Browse the jobs board