copywriting
Marketing copy for homepages, landing pages, pricing pages, and other conversion-focused web pages.
astro-aso
Query local Astro Mac app database for ASO insights. Use when the user asks about keyword rankings, historical ranking data, trend analysis, competitor keywords, app ratings, keyword opportunities, or ASO health metrics.
Full skill instructions
Query your local Astro Mac app database for App Store Optimization insights.
Invoke this skill when the user asks about:
Run commands via the bundled script:
node .claude/skills/astro-aso/scripts/astro-query.mjs <command> '<json-params>'
List all tracked apps in Astro.
node .claude/skills/astro-aso/scripts/astro-query.mjs list_apps '{}'
Search keyword rankings for apps.
| Param | Type | Required | Description |
|---|---|---|---|
| keyword | string | YES | Keyword to search |
| store | string | no | Filter by store (ios/mac) |
| appName | string | no | Filter by app name |
| appId | string | no | Filter by app ID |
node .claude/skills/astro-aso/scripts/astro-query.mjs search_rankings '{"keyword": "photo editor"}'
Get historical ranking data for a keyword.
| Param | Type | Required | Description |
|---|---|---|---|
| keyword | string | YES | Keyword to track |
| appName | string | no | Filter by app name |
| appId | string | no | Filter by app ID |
| daysBack | number | no | Days of history (default: 30) |
| store | string | no | Filter by store |
node .claude/skills/astro-aso/scripts/astro-query.mjs historical_rankings '{"keyword": "photo editor", "daysBack": 90}'
Get all tracked keywords for an app.
| Param | Type | Required | Description |
|---|---|---|---|
| appName | string | no* | App name to query |
| appId | string | no* | App ID to query |
| store | string | no | Filter by store |
*One of appName or appId required
node .claude/skills/astro-aso/scripts/astro-query.mjs app_keywords '{"appName": "My App"}'
Analyze keyword ranking trends over time.
| Param | Type | Required | Description |
|---|---|---|---|
| keyword | string | YES | Keyword to analyze |
| appName | string | no | Filter by app name |
| appId | string | no | Filter by app ID |
| period | string | no | week/month/year/all (default: month) |
| store | string | no | Filter by store |
node .claude/skills/astro-aso/scripts/astro-query.mjs keyword_trends '{"keyword": "photo editor", "period": "month"}'
Compare rankings between two dates.
| Param | Type | Required | Description |
|---|---|---|---|
| keyword | string | YES | Keyword to compare |
| date1 | string | YES | First date (ISO format) |
| date2 | string | YES | Second date (ISO format) |
| appName | string | no | Filter by app name |
| appId | string | no | Filter by app ID |
| store | string | no | Filter by store |
node .claude/skills/astro-aso/scripts/astro-query.mjs compare_rankings '{"keyword": "photo editor", "date1": "2024-01-01", "date2": "2024-02-01"}'
Get app ratings and review data.
| Param | Type | Required | Description |
|---|---|---|---|
| appName | string | no* | App name to query |
| appId | string | no* | App ID to query |
| store | string | no | Filter by store |
| daysBack | number | no | Days of history (default: 30) |
*One of appName or appId required
node .claude/skills/astro-aso/scripts/astro-query.mjs app_ratings '{"appName": "My App", "daysBack": 60}'
Find competing apps ranking for a keyword.
| Param | Type | Required | Description |
|---|---|---|---|
| keyword | string | YES | Keyword to analyze |
| store | string | no | Filter by store |
| limit | number | no | Max results (default: 10) |
node .claude/skills/astro-aso/scripts/astro-query.mjs keyword_competitors '{"keyword": "photo editor", "limit": 20}'
Get recommended keywords based on existing ones.
| Param | Type | Required | Description |
|---|---|---|---|
| keyword | string | YES | Base keyword |
| appName | string | no | Filter by app name |
| appId | string | no | Filter by app ID |
| store | string | no | Filter by store |
| limit | number | no | Max results (default: 10) |
node .claude/skills/astro-aso/scripts/astro-query.mjs keyword_recommendations '{"keyword": "photo"}'
Analyze competitive position for an app.
| Param | Type | Required | Description |
|---|---|---|---|
| appName | string | no* | App name to analyze |
| appId | string | no* | App ID to analyze |
| store | string | no | Filter by store |
| limit | number | no | Max competitors (default: 10) |
*One of appName or appId required
node .claude/skills/astro-aso/scripts/astro-query.mjs competitive_landscape '{"appName": "My App"}'
Find keyword opportunities (low difficulty, high popularity).
| Param | Type | Required | Description |
|---|---|---|---|
| appName | string | no* | App name to analyze |
| appId | string | no* | App ID to analyze |
| store | string | no | Filter by store |
| minPopularity | number | no | Min popularity score |
| maxDifficulty | number | no | Max difficulty score |
*One of appName or appId required
node .claude/skills/astro-aso/scripts/astro-query.mjs keyword_opportunities '{"appName": "My App", "maxDifficulty": 30}'
Detect sudden ranking changes and anomalies.
| Param | Type | Required | Description |
|---|---|---|---|
| appName | string | no* | App name to analyze |
| appId | string | no* | App ID to analyze |
| daysBack | number | no | Days to analyze (default: 7) |
| threshold | number | no | Change threshold (default: 10) |
| store | string | no | Filter by store |
*One of appName or appId required
node .claude/skills/astro-aso/scripts/astro-query.mjs ranking_anomalies '{"appName": "My App", "threshold": 15}'
Predict future rankings based on trends.
| Param | Type | Required | Description |
|---|---|---|---|
| keyword | string | YES | Keyword to predict |
| appName | string | no | Filter by app name |
| appId | string | no | Filter by app ID |
| store | string | no | Filter by store |
| daysForward | number | no | Days to predict (default: 7) |
node .claude/skills/astro-aso/scripts/astro-query.mjs ranking_predictions '{"keyword": "photo editor", "daysForward": 14}'
Find keywords with low competition.
| Param | Type | Required | Description |
|---|---|---|---|
| store | string | no | Filter by store |
| maxDifficulty | number | no | Max difficulty (default: 30) |
| minPopularity | number | no | Min popularity (default: 20) |
| limit | number | no | Max results (default: 20) |
node .claude/skills/astro-aso/scripts/astro-query.mjs low_competition_keywords '{"maxDifficulty": 25, "minPopularity": 30}'
Get overall ASO health analysis for an app.
| Param | Type | Required | Description |
|---|---|---|---|
| appName | string | no* | App name to analyze |
| appId | string | no* | App ID to analyze |
| store | string | no | Filter by store |
*One of appName or appId required
node .claude/skills/astro-aso/scripts/astro-query.mjs analyze_aso_health '{"appName": "My App"}'
All commands return JSON with either:
{ "success": true, "data": ... } on success{ "success": false, "error": "..." } on failureList all tracked apps:
node .claude/skills/astro-aso/scripts/astro-query.mjs list_apps '{}'
Get keywords for a specific app:
node .claude/skills/astro-aso/scripts/astro-query.mjs app_keywords '{"appName": "My App"}'
Analyze keyword trends:
node .claude/skills/astro-aso/scripts/astro-query.mjs keyword_trends '{"keyword": "productivity", "period": "month"}'
Find opportunities:
node .claude/skills/astro-aso/scripts/astro-query.mjs keyword_opportunities '{"appName": "My App", "maxDifficulty": 40}'
Marketing copy for homepages, landing pages, pricing pages, and other conversion-focused web pages.
Fast image generation with Flux 2 Klein, optimized for sub-second iteration and multi-reference brand styling.
Psychological principles and mental models for understanding customer behavior and influencing marketing decisions.
Plan searchable and shareable content that drives traffic, builds authority, and generates leads.
Build SEO-optimized pages at scale using templates, data, and proven playbook patterns.
Brainstorm and prioritize marketing strategies tailored to your SaaS stage, budget, and goals.
Optimize content for discovery, citation, and visibility across AI search platforms and LLM assistants.
Systematic improvement of existing marketing copy through seven focused editing passes.
Plan and optimize your website's page hierarchy, navigation, URL structure, and internal linking.
Design and optimize systems connecting marketing, sales, and customer success into a unified revenue engine.
Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
Convert websites into professional HyperFrames videos with guided storyboarding and brand-aligned composition.
Revolutionize Video Creation with AI-Generated Avatars and Voices
Social media on autopilot
Design custom logos instantly with AI.
Text-heavy marketing and design images
Boost Your SEO with Content and SEO Silos
Revolutionize Your Marketing with AI-Powered MarketingBlocks!
10X faster & free AI content creation for 100+ use cases
Tribescaler | Make Your Tweets Go Viral