Install the "telnyx-freemium-upgrade" agent skill from https://github.com/LeoYeAI/openclaw-master-skills/tree/main/skills/telnyx-freemium-upgrade into .claude/skills/telnyx-freemium-upgrade/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "telnyx-freemium-upgrade", then confirm the skill loads.
Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
Type this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
skills CLI
$ npx skills add LeoYeAI/openclaw-master-skills --skill telnyx-freemium-upgrade -a codex
Project install goes to .agents/skills/; add -g for ~/.codex/skills/.
Install the "telnyx-freemium-upgrade" agent skill from https://github.com/LeoYeAI/openclaw-master-skills/tree/main/skills/telnyx-freemium-upgrade into .agents/skills/telnyx-freemium-upgrade/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "telnyx-freemium-upgrade", then confirm the skill loads.
Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
skills CLI
$ npx skills add LeoYeAI/openclaw-master-skills --skill telnyx-freemium-upgrade -a cursor
Project install goes to .agents/skills/; add -g for ~/.cursor/skills/.
Install the "telnyx-freemium-upgrade" agent skill from https://github.com/LeoYeAI/openclaw-master-skills/tree/main/skills/telnyx-freemium-upgrade into .cursor/skills/telnyx-freemium-upgrade/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "telnyx-freemium-upgrade", then confirm the skill loads.
Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
skills CLI
$ npx skills add LeoYeAI/openclaw-master-skills --skill telnyx-freemium-upgrade -a gemini-cli
Project install goes to .agents/skills/; add -g for ~/.gemini/skills/.
Install the "telnyx-freemium-upgrade" agent skill from https://github.com/LeoYeAI/openclaw-master-skills/tree/main/skills/telnyx-freemium-upgrade into .gemini/skills/telnyx-freemium-upgrade/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "telnyx-freemium-upgrade", then confirm the skill loads.
Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
Installs for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
skills CLI
$ npx skills add LeoYeAI/openclaw-master-skills --skill telnyx-freemium-upgrade -a github-copilot
Project install goes to .agents/skills/; add -g for ~/.copilot/skills/.
Install the "telnyx-freemium-upgrade" agent skill from https://github.com/LeoYeAI/openclaw-master-skills/tree/main/skills/telnyx-freemium-upgrade into .github/skills/telnyx-freemium-upgrade/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "telnyx-freemium-upgrade", then confirm the skill loads.
GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
skills CLI
$ npx skills add LeoYeAI/openclaw-master-skills --skill telnyx-freemium-upgrade -a opencode
OpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
Install the "telnyx-freemium-upgrade" agent skill from https://github.com/LeoYeAI/openclaw-master-skills/tree/main/skills/telnyx-freemium-upgrade into .opencode/skills/telnyx-freemium-upgrade/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "telnyx-freemium-upgrade", then confirm the skill loads.
OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
Facts
Skill name
telnyx-freemium-upgrade
GitHub stars
2.2k
Token cost
~5.5k tokens
SKILL.md length
2,291 words
Files
7 (incl. scripts)
Skills in repo
1,235
Repo updated
First seen
Licence
MIT
At a glance
Automatically upgrade Telnyx account from freemium to professional tier
Works in 2 steps: Check Local Cache → Check used_methods via Status Endpoint
SKILL.md covers Companion Skills, When to Activate, Verification Methods and Pre-flight Checks (ALWAYS do…, plus 7 more sections
Runs Shell and Python scripts from its folder; calls gh, python3 and bash; reaches cli.github.com and github.com; needs TELNYX_API_KEY and API_KEY
What it does
Telnyx Freemium Upgrade is an agent skill from LeoYeAI/openclaw-master-skills. Automatically upgrade Telnyx account from freemium to professional tier
Its SKILL.md is about 5.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including scripts (for example `_meta.json`, `scripts/check-gh-auth.sh` and `scripts/evaluate-upgrade.py`).
It works with GitHub. The repository describes itself as: 🧠 Curated collection of 1209+ best OpenClaw skills — weekly updated by MyClaw.ai. The licence is MIT.
Example prompts
“/telnyx-freemium-upgrade”
Requirements
Python 3
A Bash shell
A credential in TELNYX_API_KEY
Workflow steps
2 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit e5199b5. It shows what the files ask for, not the result of running them.
Tool permissions
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Runs code
Ships 5 files in scripts/ (Shell and Python), which the agent can run.
Shell commands in SKILL.md call:
gh
python3
bash
From the folder's file list and the shell code blocks in SKILL.md.
Network
Hosts in commands or code, which the agent is likely to contact:
cli.github.com
github.com
Also links to:
support.telnyx.com
From URLs in SKILL.md, links to its own repository left out.
Credentials
Names these keys or tokens, usually read from environment variables:
TELNYX_API_KEY
API_KEY
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Context cost
Telnyx Freemium Upgrade loads about 5.5k tokens when it runs. Until then it costs about 24 tokens; SKILL.md has 2,291 words of instructions outside code blocks.
Always· name and description, kept in context so the agent knows when to use it
~24
When it runs· the whole SKILL.md, loaded when a task matches
~5.5k
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
Safety
Auto-check passed
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
Download SKILL.mdSave it as .claude/skills/telnyx-freemium-upgrade/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.
name
telnyx-freemium-upgrade
description
Automatically upgrade Telnyx account from freemium to professional tier
Telnyx Professional Upgrade Skill
Companion Skills
This skill depends on telnyx-bot-signup for API key generation and refresh. If no Telnyx API key is available, or if the key needs to be refreshed after a successful upgrade, use telnyx-bot-signup to obtain one. The bot_signup endpoint handles both new and existing accounts — just provide the user's email.
Skill
When needed
Install
telnyx-bot-signup
No API key available, or key refresh needed post-upgrade
clawhub install telnyx-bot-signup
When to Activate
This skill triggers when the bot encounters a freemium-blocked operation. Activate when ANY of these conditions occur:
Automatic Triggers (API Error Codes)
Error Code
Context
Meaning
10039
SMS send
Destination not verified (freemium restriction)
D60
Voice call
Destination not verified (freemium restriction)
10038
Various
Feature not available on current plan (porting, short codes, number lookup, SIM, managed accounts, etc.)
Heuristic Triggers (Capacity Limits)
Phone number order fails after the first purchase (1 number limit)
Balance/credit check returns low available credit ($10 ceiling)
Inability to add funds / top up balance — freemium accounts cannot add balance or payment methods. If the bot encounters an error when trying to add funds, check account tier, or top up, and the account is freemium, this is a strong signal that an upgrade is needed.
Account shows as "inactive" or "deactivated" due to $0 balance on freemium tier
Explicit Triggers
User requests an upgrade: "upgrade my account", "I need professional tier"
Bot needs a non-freemium feature: "send SMS to unverified number", "port a number", "create a managed account"
User or bot tries to add balance/payment and is blocked by freemium restrictions
Verification Methods
Two verification methods are available. Each can only be used once per account.
Method
Flag
Browser?
Best for
GitHub
--github-token <TOKEN>
No (automated)
Users with gh CLI installed
LinkedIn
--linkedin
Yes (OAuth consent)
Users without GitHub, or after GitHub rejection
Method Selection Decision Tree
Which method to try?
├── Check ~/.telnyx/upgrade.json cache
│ ├── decision: APPROVED → Already upgraded, skip
│ ├── decision: PASS_TO_HUMAN → Under review, don't retry
│ └── decision: REJECTED or no cache → Continue
│
├── Check used_methods in cache or status endpoint
│ ├── github_oauth NOT used → Try GitHub first (automated, no browser)
│ ├── github_oauth used, linkedin_oauth NOT used → Try LinkedIn
│ └── Both used → Both methods exhausted, contact support
│
└── No preference → Try GitHub first (faster, no browser needed)
LinkedIn Verification Method
When to use: User has no GitHub account, GitHub method was REJECTED, or user prefers LinkedIn.
Flow:
1. python3 {baseDir}/scripts/evaluate-upgrade.py --linkedin
→ Returns { action: "open_url", url: "<linkedin_oauth_url>" }
2. Present the URL to the user:
"To verify your identity, please open this link and sign in with LinkedIn:
<url>
After authorizing, you can close the browser tab."
3. The script polls automatically. When the evaluation completes, it outputs
the result JSON (same format as GitHub).
4. Handle outcome: APPROVED / REJECTED / PASS_TO_HUMAN (same as GitHub)
Notification templates for LinkedIn URL:
Telegram:
🔗 Telnyx Account Upgrade — LinkedIn Verification
I need to verify your identity via LinkedIn to upgrade your Telnyx account. This is a one-time step.
👉 Open: <URL>
⏰ Link expires in 10 minutes
Sign in with your LinkedIn account when prompted. After authorizing, you can close the tab.
Slack:
:link: *Telnyx Account Upgrade — LinkedIn Verification*
I need to verify your identity via LinkedIn to upgrade your Telnyx account. This is a one-time step.
:point_right: <URL|Open LinkedIn Verification>
:timer_clock: Link expires in 10 minutes
Sign in with your LinkedIn account when prompted. After authorizing, you can close the tab.
Pre-flight Checks (ALWAYS do these first)
Before submitting a new evaluation:
1. Check Local Cache
Read ~/.telnyx/upgrade.json. If it exists:
decision: "APPROVED" → Skip evaluation entirely. The account is already upgraded. Retry the blocked operation directly.
decision: "PASS_TO_HUMAN" → Re-poll the status endpoint with the cached evaluation_id to check if a decision was made. Do NOT submit a new evaluation.
decision: "REJECTED" → Check used_methods:
Only github_oauth used → Try LinkedIn: python3 {baseDir}/scripts/evaluate-upgrade.py --linkedin
Only linkedin_oauth used → Try GitHub: python3 {baseDir}/scripts/evaluate-upgrade.py --github-token <TOKEN>
Both used → All methods exhausted. Contact support.
status: "polling_timeout" → Re-poll the cached evaluation_id. The evaluation may have completed server-side.
2. Check used_methods via Status Endpoint
If no cache or cache is stale, poll GET /v2/account/upgrade-request-status/{evaluation_id} (if you have an evaluation_id) or check the latest evaluation. Check which methods have been used and follow the decision tree above.
Token Type Detection and Handling
Run {baseDir}/scripts/check-gh-auth.sh to get token info. Handle based on token_type:
ghs_ (GitHub App Installation Token) → ABORT
These tokens represent a GitHub App, NOT a human user. Cannot verify human identity.
Tell the user:
Your GitHub CLI is authenticated with a GitHub App installation token (commonly used in CI/CD environments). This token type cannot access user profile data needed for identity verification.
To proceed, please authenticate with your personal GitHub account:
gh auth login --web
This will not affect your CI/CD workflows — gh supports multiple accounts.
STOP — wait for user to re-authenticate, then retry.
github_pat_ (Fine-grained PAT) → WARN and PROCEED
Fine-grained PATs have limited API access: /user/orgs returns empty, no GraphQL support. Evaluation will have degraded data.
Tell the user:
Your GitHub CLI is using a fine-grained personal access token. Some profile data (organizations, GraphQL contributions) may be unavailable, which could affect your evaluation. For best results, run gh auth login --web to use a standard OAuth token.
PROCEED with the token anyway — the evaluator handles partial data.
gho_ or ghp_ (OAuth / Classic PAT) → CHECK SCOPES and PROCEED
These are compatible token types. Check scopes and refresh if needed.
Scope Check and Refresh
Required scopes: user, read:org
If check-gh-auth.sh returns missing_scopes that is non-empty:
Run {baseDir}/scripts/refresh-gh-scopes.sh
Check the output:
success: true → scopes refreshed without browser interaction. Continue to submission.
requires_browser: true + success: false → the device_code, verification_uri, and pid fields are returned. Deliver the device code to the user via the Notification Decision Tree below.
After the user authorizes, run {baseDir}/scripts/wait-for-auth.sh to confirm the refresh completed:
success: true → scopes refreshed. Continue to submission.
success: false → device code expired or authorization was denied. Retry from step 1 (max 3 times).
You can also pass the PID directly: bash {baseDir}/scripts/wait-for-auth.sh --pid <PID>
Notification Decision Tree (Scope Refresh)
When the bot needs a scope refresh or token acquisition:
START: Bot needs GitHub scope refresh
│
├── Is `gh` installed?
│ ├── NO → Notify user: "Install gh: https://cli.github.com"
│ │ OR offer manual PAT creation via github.com/settings/tokens
│ │ INTERVENTION: MEDIUM
│ │
│ └── YES → Check token type (prefix)
│ │
│ ├── ghs_ (installation) → ABORT
│ │ Notify user: "Need personal GitHub auth, not CI/CD token"
│ │ INTERVENTION: MEDIUM
│ │
│ ├── github_pat_ (fine-grained) → WARN, proceed with degraded data
│ │ Cannot refresh scopes on PATs → proceed as-is
│ │ INTERVENTION: ZERO (but evaluation has less data)
│ │
│ └── gho_ / ghp_ (OAuth / classic PAT) → Check scopes
│ │
│ ├── Scopes OK → PROCEED directly to upgrade evaluation
│ │ INTERVENTION: ZERO
│ │
│ └── Scopes missing → Need refresh
│ │
│ └── Send device code to user's active channel
│ │
│ ├── User reachable on Telegram/Slack/etc?
│ │ ├── YES → Send code + link (see Cross-Channel Notification)
│ │ │ INTERVENTION: MINIMAL (user taps link, enters code)
│ │ │
│ │ └── NO (offline) → Save state + heartbeat
│ │ INTERVENTION: DEFERRED
Cross-Channel Notification (Minimal Intervention)
Parse the device code from refresh-gh-scopes.sh output (device_code and verification_uri fields).
Send to the user's active channel:
Telegram:
🔑 Telnyx Account Upgrade
I need to verify your GitHub identity to upgrade your Telnyx account from freemium to professional tier. This is a one-time step.
👉 Visit: https://github.com/login/device
📝 Enter code: <DEVICE_CODE>
⏰ Expires in 15 minutes
Tap the link above to open in your browser. You must be logged into GitHub.
Slack:
:key: *Telnyx Account Upgrade*
I need to verify your GitHub identity to upgrade your Telnyx account. This is a one-time step.
:point_right: <https://github.com/login/device|Open GitHub Device Authorization>
:pencil: Enter code: `<DEVICE_CODE>`
:timer_clock: Expires in 15 minutes
You must be logged into GitHub in your browser.
SMS (last resort):
Telnyx upgrade: enter code <DEVICE_CODE> at github.com/login/device within 15 min. Must be logged into GitHub.
Use the user's last active channel (check OpenClaw config at ~/.openclaw/openclaw.json). Priority: Telegram > Slack > SMS.
Deferred (User Offline)
If the user is unreachable:
Save state to ~/.telnyx/upgrade.json:
json
{
"pending_action": "scope_refresh",
"reason": "missing_scopes",
"required_scopes": ["user", "read:org"],
"queued_at": "<ISO_TIMESTAMP>",
"original_task": "<description of what triggered the upgrade>"
}
On user return (next message to bot), respond:
Before we continue, I need to upgrade your Telnyx account to use [requested feature]. This requires a one-time GitHub verification. Ready to proceed?
Proactive Upgrade (Optional)
On first Telnyx API interaction or skill load, the bot MAY proactively check the account tier:
If freemium and no prior attempt:
If gho_ token with user scope already present → start upgrade silently in background. Notify user only on completion.
If scopes missing but token compatible → offer: "I notice you're on Telnyx's freemium tier. Some features you might need require an upgrade. I can handle this now (takes ~2 min, needs GitHub verification) or we can do it later when you actually need it. Want me to proceed?"
If gh not installed or ghs_ token → queue for later, don't interrupt.
If prior APPROVED → no action needed.
If prior REJECTED → inform only when user hits a freemium wall.
If prior PASS_TO_HUMAN → re-poll silently.
Intent Analysis (Before API Call)
The bot can analyze the user's intent before making a Telnyx API call to proactively trigger the upgrade:
User says
Bot infers
Action
"Send SMS to +1-555-123-4567"
Will need non-freemium (unverified destination)
Check tier → pre-upgrade if needed
"Port my number from AT&T"
Will need non-freemium (porting blocked)
Check tier → pre-upgrade if needed
"Buy 5 phone numbers"
Will need non-freemium (1 number limit)
Check tier → pre-upgrade if needed
"Set up a SIP trunk"
Will need non-freemium (SIM/SIP blocked)
Check tier → pre-upgrade if needed
"Create a managed account"
Will need non-freemium (10038)
Check tier → pre-upgrade if needed
"Check my balance"
Freemium OK
No action
"Buy a phone number"
Freemium OK (1st number)
No action
API Key Resolution
The Telnyx API key is resolved in this order:
TELNYX_API_KEY environment variable — checked first
~/.config/telnyx/config.json — fallback (written by telnyx auth setup from the telnyx-cli skill)
If neither source has a key, hand off to the telnyx-bot-signup skill to generate one. The bot_signup endpoint works for both new and existing accounts — it sends a magic sign-in link to the user's email and produces a fresh API key. If telnyx-bot-signup is not installed:
No Telnyx API key found. Install the signup skill (clawhub install telnyx-bot-signup) or set the TELNYX_API_KEY environment variable.
Submission and Polling
GitHub Method
Once the GitHub token is ready:
Resolve the Telnyx API key (see API Key Resolution above).
Run {baseDir}/scripts/get-gh-token.sh to extract the GitHub token.
Run {baseDir}/scripts/evaluate-upgrade.py --github-token <TOKEN> --api-key <API_KEY>
The script handles: submission → polling (every 5s, max 120s) → caching → structured output.
LinkedIn Method
Resolve the Telnyx API key (see API Key Resolution above).
Run {baseDir}/scripts/evaluate-upgrade.py --linkedin --api-key <API_KEY>
The script outputs an open_url action with the LinkedIn OAuth URL.
Present the URL to the user (see notification templates above).
The script automatically polls for the evaluation to appear and complete.
Output is the same JSON format as the GitHub method.
Response Templates (Per Outcome)
APPROVED
Your Telnyx account has been upgraded to the professional tier! Retrying your request...
Then retry the original blocked operation. If the retry still fails with the same error, the API key needs to be refreshed to pick up professional-tier permissions. Use telnyx-bot-signup to generate a fresh key (same email, sign-in flow) rather than asking the user to visit the portal.
Show full SKILL.md (899 more words)Show less
REJECTED
Check the used_methods and next_steps fields in the script output:
GitHub only used → Offer LinkedIn:
Your GitHub-based upgrade was not approved. I can try verifying your identity via LinkedIn instead. This requires opening a link in your browser. Want me to proceed?
LinkedIn only used → Offer GitHub:
Your LinkedIn-based upgrade was not approved. I can try verifying your identity via GitHub instead. Want me to proceed?
Both methods used →
Your professional upgrade request was not approved via either verification method.
The original task requiring professional features cannot proceed at this time.
PASS_TO_HUMAN
Your upgrade application is under manual review by the Telnyx team. A support ticket has been created. I've set up automatic status checks — you'll be notified as soon as a decision is made.
In the meantime, freemium features remain available.
Set up a cron job to poll the status automatically. Use the OpenClaw cron system:
bash
openclaw cron add \
--name "telnyx-upgrade-poll" \
--every 3600000 \
--session isolated \
--message "Run: python3 <SKILL_SCRIPTS_DIR>/evaluate-upgrade.py --poll-only --evaluation-id <EVALUATION_ID> --api-key $TELNYX_API_KEY. If the decision is APPROVED, tell me the account has been upgraded and retry the original blocked operation. If REJECTED, tell me it was not approved and suggest contacting support. If still PASS_TO_HUMAN / under review, do nothing — the next poll will check again." \
--announce \
--channel last
Replace <EVALUATION_ID> with the cached evaluation ID and <SKILL_SCRIPTS_DIR> with the absolute path to this skill's scripts directory.
Polling schedule: Every 1 hour (3600000ms). Manual review typically resolves within minutes to hours, so hourly is a good balance between responsiveness and not hammering the API.
On resolution (APPROVED or REJECTED): The cron job's isolated session will announce the result to the user's last active channel. After announcing, remove the cron job:
bash
openclaw cron remove <jobId>
The bot should also update the local cache at ~/.telnyx/upgrade.json and, if APPROVED, retry the original blocked operation.
Cleanup: If the cron job runs 24 times (24 hours) with no resolution, it should self-disable and notify the user to contact Telnyx support directly:
Your upgrade application has been under review for over 24 hours. Please contact Telnyx support directly: https://support.telnyx.com
TIMEOUT / POLLING FAILURE
The upgrade evaluation is taking longer than expected. Your evaluation ID is: <EVALUATION_ID>
I'll check again later. Continuing with freemium features for now.
Cache the evaluation_id for later polling.
ERROR (API failure)
The upgrade evaluation encountered an error. This may be temporary — I'll retry shortly.
Retry up to 3 times with exponential backoff (1s, 2s, 4s). If still failing, report the error and suggest the user try again later.
ALREADY ATTEMPTED
Check used_methods to determine which methods remain:
github_oauth used, linkedin_oauth not used →
A GitHub-based upgrade evaluation was already submitted. Each verification method can only be used once. I can try LinkedIn verification instead — this requires opening a link in your browser. Want me to proceed?
linkedin_oauth used, github_oauth not used →
A LinkedIn-based upgrade evaluation was already submitted. Each verification method can only be used once. I can try GitHub verification instead. Want me to proceed?
Both used →
Both verification methods (GitHub and LinkedIn) have been used for this account. Please contact Telnyx support: https://support.telnyx.com
Error Handling Reference
#
Scenario
Detection
Handling
1
gh not installed
which gh fails
Report: "GitHub CLI (gh) is required. Install: https://cli.github.com". Alternatively, offer manual PAT creation via github.com/settings/tokens.
2
gh not authenticated
gh auth status fails
Run gh auth login --web --scopes user,read:org and guide user through browser flow
3
ghs_ token (CI/CD)
Token prefix = ghs_
ABORT with clear message (see Token Type Detection above). Cannot verify human identity. Must gh auth login --web.
4
github_pat_ token
Token prefix = github_pat_
WARN about degraded data, proceed anyway. Cannot refresh scopes on PATs.
5
API key invalid/expired
401 from gateway
Report to user, suggest checking API key
6
Already upgraded (prior APPROVED)
Cache or status endpoint check
Skip evaluation, proceed with original blocked operation
7
Attempt limit reached (429)
used_methods includes the method
Report that the method was already used. If the other method is available, suggest it. If both used, suggest support.
8
Network errors
HTTP 0 / connection failure
Retry up to 3 times with exponential backoff (1s, 2s, 4s). If persistent, notify user.
9
Evaluation already in progress (409)
Backend returns 409
Check cached evaluation_id, resume polling instead of submitting new evaluation
10
PASS_TO_HUMAN from previous session
Cache shows PASS_TO_HUMAN
Re-poll the cached evaluation_id silently. Notify user if decision changed.
11
User doesn't complete device code in time
gh auth refresh exits with error after 15 min
Generate new code, re-notify user via their active channel. Max 3 retries before giving up.
12
User on Telegram, away from machine
User's last channel = telegram
Send device code + verification URL to Telegram chat (see templates above)
13
User on Slack, away from machine
User's last channel = slack
Send device code via Slack DM using slack-send.sh (see templates above)
14
User on phone, NOT logged into GitHub
N/A — extra login step on phone
Device code link still works; user will see GitHub login before device page. One extra tap.
15
User completely offline
No channel responds to notification
Save state to ~/.telnyx/upgrade.json with pending_action: "scope_refresh". Set up heartbeat polling (every 30 min). On user return, first message = upgrade prompt.
16
Device code expires (15 min TTL)
gh auth refresh exits with error
Generate new code, re-notify user. Max 3 retries before giving up.
17
Multiple bots, same user
Backend returns 409/429
Handle gracefully — check status endpoint, resume polling existing evaluation
18
GitHub outage
API calls to GitHub fail with HTTP 5xx
Detect via error response. Notify user. Retry later via heartbeat.
19
User cancels authorization
gh auth refresh returns access_denied
Inform user: "Authorization was cancelled. Run again when ready."
20
Concurrent scope refresh + evaluation
Race condition
gh auth refresh is blocking — evaluation only starts after it returns. No race condition.
Telnyx Freemium Upgrade next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
Telnyx Freemium Upgrade compared with similar skills
Skill
Stars
Used in
Tokens
Auto-check
Licence
Repo updated
Telnyx Freemium Upgrade this skillLeoYeAI/openclaw-master-skills
Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.
Researches a GitHub repository over four rounds using the GitHub API and web search, then writes a structured markdown report with timeline, metrics and Mermaid diagrams.
Investigates a session where Superpowers went wrong, reads the transcripts on disk and produces an evidence-cited report, optionally prepared as a bug report for the maintainers.
Bumps the pinned v8 and rusty_v8 versions in Codex, validates the release-candidate path with the v8-canary check, and traces failures to upstream build changes.
Manages pipelines on a DevOps quality and efficiency platform through its OpenAPI: list workspaces and templates, create, update, run and cancel pipelines, and read run records.
Patches OpenClaw's Feishu extension so an edited document triggers an isolated agent session that reads the doc and replies inline, turning it into a live chat space.
Multi-context memory management system for OpenClaw agents with group-isolated storage, global shared memory, workspace organization, and group-specific skills isolation.
Runs a brand's AI-search visibility work end to end: diagnosing how AI platforms represent it, repositioning it, producing AI-optimized content and monitoring ongoing mentions.
Installs and authenticates the gws CLI, then automates Gmail, Drive, Sheets, Calendar, Docs, Chat and Tasks with ready-made recipes, persona bundles and security audits.
Runs four advisor roles, a fitness coach, nutritionist, data analyst and TCM practitioner, to build a health profile and track workouts, diet and wellness over time.
Automatically upgrade Telnyx account from freemium to professional tier. Telnyx Freemium Upgrade is an agent skill from LeoYeAI/openclaw-master-skills.
How do I install Telnyx Freemium Upgrade in Claude Code?
Run `npx skills add LeoYeAI/openclaw-master-skills --skill telnyx-freemium-upgrade -a claude-code`. Or copy the skill folder (skills/telnyx-freemium-upgrade in LeoYeAI/openclaw-master-skills) into .claude/skills/telnyx-freemium-upgrade in your project. Claude Code loads it when a task matches its description.
How do I install Telnyx Freemium Upgrade in Codex?
Run `npx skills add LeoYeAI/openclaw-master-skills --skill telnyx-freemium-upgrade -a codex`. Or copy the skill folder (skills/telnyx-freemium-upgrade in LeoYeAI/openclaw-master-skills) into .agents/skills/telnyx-freemium-upgrade in your project. Codex loads it when a task matches its description.
Can I use Telnyx Freemium Upgrade in Cursor, Gemini CLI or GitHub Copilot?
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add LeoYeAI/openclaw-master-skills --skill telnyx-freemium-upgrade -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/telnyx-freemium-upgrade, .gemini/skills/telnyx-freemium-upgrade, .github/skills/telnyx-freemium-upgrade and .opencode/skills/telnyx-freemium-upgrade in your project.
What does Telnyx Freemium Upgrade need to run?
Going by SKILL.md and its folder, Telnyx Freemium Upgrade needs a shell and Python for the scripts in its folder, the command-line tools its instructions call (gh, python3 and bash) and credentials named TELNYX_API_KEY and API_KEY. Our summary lists: Python 3; A Bash shell; A credential in TELNYX_API_KEY.
Does Telnyx Freemium Upgrade access the network?
SKILL.md names 3 domains. In commands or code: cli.github.com and github.com; the agent is likely to contact these when it follows the instructions. As links in the text: support.telnyx.com. This is read from the text; nothing was executed.
Is Telnyx Freemium Upgrade safe to install?
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
What licence does Telnyx Freemium Upgrade use?
Telnyx Freemium Upgrade is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
How many tokens does Telnyx Freemium Upgrade use?
About 5.5k tokens (SKILL.md is roughly 22k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
What are the alternatives to Telnyx Freemium Upgrade?
Skills that share tags, products or a category with Telnyx Freemium Upgrade: PR Babysitter (openinterpreter/openinterpreter, 69k stars), Greploop (onyx-dot-app/onyx, 32k stars), GitHub Deep Research (bytedance/deer-flow, 84k stars) and Diagnosing Superpowers Sessions (obra/superpowers, 297k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Who maintains Telnyx Freemium Upgrade?
LeoYeAI (a GitHub user) maintains it in LeoYeAI/openclaw-master-skills, which has 2,161 GitHub stars. The repository holds 1,235 skills in this directory. The repository was last updated on July 20, 2026.