[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71NM5SA44EA7VRXSC03KD8Z":3,"skill-same:01M71NM5SA44EA7VRXSC03KD8Z":62},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":35,"linkOnly":36,"markdownContent":37,"markdownBody":38,"frontMatter":39,"refName":40,"commitSha":41,"skillDirectory":42,"forksCount":43,"repositoryHtmlUrl":44,"repositoryHomepageUrl":6,"ownerHtmlUrl":45,"ownerBlogUrl":6,"ownerDescription":46,"updatedAt":47,"install":48,"resources":61},"01M71NM5SA44EA7VRXSC03KD8Z","ln-773-cors-configurator",null,"Configures CORS policy for development and production environments. Use when setting up cross-origin access for APIs.","vitalikpestov\u002FSkills-Catalog","vitalikpestov","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F13882997?v=4","01M71N4QG0CWRXX4R24JQZXDDQ","Vitalik Pestov","01M71N4QGMSYRW607DDSE0CQMM",2,"MIT","https:\u002F\u002Fgithub.com\u002Fvitalikpestov\u002FSkills-Catalog\u002Fblob\u002Fmain\u002F_AI-Automation\u002Fclaude-code-skills-levnikolaevich\u002Fplugins\u002Fproject-bootstrap\u002Fskills\u002Fln-773-cors-configurator\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34],"ln 773 cors configurator","ln","configurator","cors","setting","development","for","policy","up","use","access","when","cross-origin","Production","environments","origin","2026-11-10 10:56:23",false,"---\nname: ln-773-cors-configurator\ndescription: \"Configures CORS policy for development and production environments. Use when setting up cross-origin access for APIs.\"\nlicense: MIT\n---\n\n# ln-773-cors-configurator\n\n**Type:** L3 Worker\n**Category:** 7XX Project Bootstrap\n\nConfigures Cross-Origin Resource Sharing (CORS) policy with security-first approach.\n\n---\n\n## Overview\n\n| Aspect | Details |\n|--------|---------|\n| **Input** | Context Store from ln-770 |\n| **Output** | CORS configuration with environment-specific policies |\n| **Stacks** | .NET (ASP.NET Core CORS), Python (FastAPI CORSMiddleware) |\n\n---\n\n## Phase 1: Receive Context\n\nAccept Context Store from coordinator.\n\n**Required Context:**\n- `STACK`: .NET or Python\n- `PROJECT_ROOT`: Project directory path\n- `ENVIRONMENT`: Development or Production\n\n**Idempotency Check:**\n- .NET: Grep for `AddCors` or `UseCors`\n- Python: Grep for `CORSMiddleware`\n- If found: Return `{ \"status\": \"skipped\" }`\n\n---\n\n## Phase 2: Analyze Project Structure\n\nDetermine frontend configuration.\n\n**Detection Steps:**\n1. Check for frontend in same repository (`\u002Ffrontend`, `\u002Fclient`, `\u002Fweb`)\n2. Read `.env` or `appsettings.json` for CORS_ORIGINS\n3. Identify common frontend ports (3000, 5173, 4200)\n\n**Detected Frontend Origins:**\n\n| Framework | Default Port | Origin |\n|-----------|--------------|--------|\n| React (CRA) | 3000 | http:\u002F\u002Flocalhost:3000 |\n| Vite | 5173 | http:\u002F\u002Flocalhost:5173 |\n| Angular | 4200 | http:\u002F\u002Flocalhost:4200 |\n| Next.js | 3000 | http:\u002F\u002Flocalhost:3000 |\n\n---\n\n## Phase 3: Decision Points\n\n### Q1: Allowed Origins\n\n| Environment | Strategy |\n|-------------|----------|\n| **Development** | Allow localhost origins (configurable) |\n| **Production** | Explicit origins from environment variables only |\n\n**Security Warning:** Never use `*` (wildcard) with credentials.\n\n### Q2: Allowed Methods\n\n| Method | Default | Notes |\n|--------|---------|-------|\n| GET | ✓ Yes | Read operations |\n| POST | ✓ Yes | Create operations |\n| PUT | ✓ Yes | Update operations |\n| DELETE | ✓ Yes | Delete operations |\n| PATCH | Optional | Partial updates |\n| OPTIONS | ✓ Yes | Preflight requests (automatic) |\n\n### Q3: Credentials Support\n\n| Scenario | AllowCredentials | Notes |\n|----------|------------------|-------|\n| Cookie-based auth | ✓ Yes | Required for cookies |\n| JWT in header | ✗ No | Not needed |\n| OAuth2 | Depends | Check documentation |\n\n**Warning:** AllowCredentials = true prohibits `*` origin.\n\n### Q4: Preflight Cache Duration\n\n| Environment | MaxAge | Rationale |\n|-------------|--------|-----------|\n| Development | 0 | Immediate config changes |\n| Production | 86400 (24h) | Reduce preflight requests |\n\n---\n\n## Phase 4: Generate Configuration\n\n### .NET Output Files\n\n| File | Purpose |\n|------|---------|\n| `Extensions\u002FCorsExtensions.cs` | CORS service registration |\n| `appsettings.json` (update) | Origins configuration |\n| `appsettings.Development.json` (update) | Dev origins |\n\n**Generation Process:**\n1. Use MCP ref for current ASP.NET Core CORS API\n2. Generate CorsExtensions with:\n   - Development policy (permissive)\n   - Production policy (restrictive)\n   - Environment-based policy selection\n3. Update appsettings with CORS:Origins\n\n**Registration Code:**\n```csharp\nbuilder.Services.AddCorsPolicy(builder.Configuration);\n\u002F\u002F ...\napp.UseCors(builder.Environment.IsDevelopment() ? \"Development\" : \"Production\");\n```\n\n### Python Output Files\n\n| File | Purpose |\n|------|---------|\n| `middleware\u002Fcors_config.py` | CORS middleware configuration |\n| `.env` (update) | CORS_ORIGINS variable |\n\n**Generation Process:**\n1. Use MCP ref for FastAPI CORSMiddleware\n2. Generate cors_config.py with:\n   - Origin parsing from environment\n   - Method and header configuration\n   - Credentials handling\n3. Update .env with CORS_ORIGINS\n\n**Registration Code:**\n```python\nfrom middleware.cors_config import configure_cors\nconfigure_cors(app)\n```\n\n---\n\n## Phase 5: Validate\n\n**Validation Steps:**\n\n1. **Syntax check:**\n   - .NET: `dotnet build --no-restore`\n   - Python: `python -m py_compile middleware\u002Fcors_config.py`\n\n2. **CORS test:**\n   ```bash\n   # Test preflight request\n   curl -X OPTIONS http:\u002F\u002Flocalhost:5000\u002Fapi\u002Ftest \\\n     -H \"Origin: http:\u002F\u002Flocalhost:3000\" \\\n     -H \"Access-Control-Request-Method: POST\" \\\n     -v\n   ```\n\n3. **Verify headers:**\n   - `Access-Control-Allow-Origin`: Should match request origin\n   - `Access-Control-Allow-Methods`: Should list allowed methods\n   - `Access-Control-Allow-Credentials`: true (if enabled)\n   - `Access-Control-Max-Age`: Cache duration\n\n---\n\n## Security Checklist\n\nBefore completing, verify:\n\n- [ ] No wildcard `*` origin in production\n- [ ] Explicit allowed methods (not `AllowAnyMethod` in prod)\n- [ ] Credentials only if needed\n- [ ] Origins from environment variables in production\n- [ ] Preflight caching enabled in production\n\n---\n\n## Return to Coordinator\n\n```json\n{\n  \"status\": \"success\",\n  \"files_created\": [\n    \"Extensions\u002FCorsExtensions.cs\"\n  ],\n  \"packages_added\": [],\n  \"registration_code\": \"builder.Services.AddCorsPolicy(configuration);\",\n  \"message\": \"Configured CORS with Development and Production policies\"\n}\n```\n\n---\n\n## Reference Links\n\n- [ASP.NET Core CORS](https:\u002F\u002Flearn.microsoft.com\u002Faspnet\u002Fcore\u002Fsecurity\u002Fcors)\n- [FastAPI CORS](https:\u002F\u002Ffastapi.tiangolo.com\u002Ftutorial\u002Fcors\u002F)\n- [MDN CORS](https:\u002F\u002Fdeveloper.mozilla.org\u002Fdocs\u002FWeb\u002FHTTP\u002FCORS)\n\n---\n\n## Critical Rules\n\n- **Never use wildcard `*` origin with credentials** — security violation per CORS spec\n- **Production origins from environment variables only** — no hardcoded URLs in code\n- **Separate Development and Production policies** — permissive locally, restrictive in production\n- **Idempotent** — if `AddCors`\u002F`UseCors` or `CORSMiddleware` exists, return `status: \"skipped\"`\n- **Enable preflight caching in Production** — MaxAge 86400 (24h) to reduce OPTIONS requests\n\n## Definition of Done\n\n- [ ] Context Store received (stack, project root, environment)\n- [ ] Frontend origins detected (port\u002Fframework auto-detection)\n- [ ] User decisions collected (origins, methods, credentials, cache duration)\n- [ ] CORS configuration generated with environment-specific policies\n- [ ] Security checklist verified (no wildcard + credentials, explicit methods, env-based origins)\n- [ ] Syntax validated (`dotnet build` or `py_compile`)\n- [ ] Structured JSON response returned to ln-770 coordinator\n\n---\n\n**Version:** 2.0.0\n**Last Updated:** 2026-01-10\n","# ln-773-cors-configurator\n\n**Type:** L3 Worker\n**Category:** 7XX Project Bootstrap\n\nConfigures Cross-Origin Resource Sharing (CORS) policy with security-first approach.\n\n---\n\n## Overview\n\n| Aspect | Details |\n|--------|---------|\n| **Input** | Context Store from ln-770 |\n| **Output** | CORS configuration with environment-specific policies |\n| **Stacks** | .NET (ASP.NET Core CORS), Python (FastAPI CORSMiddleware) |\n\n---\n\n## Phase 1: Receive Context\n\nAccept Context Store from coordinator.\n\n**Required Context:**\n- `STACK`: .NET or Python\n- `PROJECT_ROOT`: Project directory path\n- `ENVIRONMENT`: Development or Production\n\n**Idempotency Check:**\n- .NET: Grep for `AddCors` or `UseCors`\n- Python: Grep for `CORSMiddleware`\n- If found: Return `{ \"status\": \"skipped\" }`\n\n---\n\n## Phase 2: Analyze Project Structure\n\nDetermine frontend configuration.\n\n**Detection Steps:**\n1. Check for frontend in same repository (`\u002Ffrontend`, `\u002Fclient`, `\u002Fweb`)\n2. Read `.env` or `appsettings.json` for CORS_ORIGINS\n3. Identify common frontend ports (3000, 5173, 4200)\n\n**Detected Frontend Origins:**\n\n| Framework | Default Port | Origin |\n|-----------|--------------|--------|\n| React (CRA) | 3000 | http:\u002F\u002Flocalhost:3000 |\n| Vite | 5173 | http:\u002F\u002Flocalhost:5173 |\n| Angular | 4200 | http:\u002F\u002Flocalhost:4200 |\n| Next.js | 3000 | http:\u002F\u002Flocalhost:3000 |\n\n---\n\n## Phase 3: Decision Points\n\n### Q1: Allowed Origins\n\n| Environment | Strategy |\n|-------------|----------|\n| **Development** | Allow localhost origins (configurable) |\n| **Production** | Explicit origins from environment variables only |\n\n**Security Warning:** Never use `*` (wildcard) with credentials.\n\n### Q2: Allowed Methods\n\n| Method | Default | Notes |\n|--------|---------|-------|\n| GET | ✓ Yes | Read operations |\n| POST | ✓ Yes | Create operations |\n| PUT | ✓ Yes | Update operations |\n| DELETE | ✓ Yes | Delete operations |\n| PATCH | Optional | Partial updates |\n| OPTIONS | ✓ Yes | Preflight requests (automatic) |\n\n### Q3: Credentials Support\n\n| Scenario | AllowCredentials | Notes |\n|----------|------------------|-------|\n| Cookie-based auth | ✓ Yes | Required for cookies |\n| JWT in header | ✗ No | Not needed |\n| OAuth2 | Depends | Check documentation |\n\n**Warning:** AllowCredentials = true prohibits `*` origin.\n\n### Q4: Preflight Cache Duration\n\n| Environment | MaxAge | Rationale |\n|-------------|--------|-----------|\n| Development | 0 | Immediate config changes |\n| Production | 86400 (24h) | Reduce preflight requests |\n\n---\n\n## Phase 4: Generate Configuration\n\n### .NET Output Files\n\n| File | Purpose |\n|------|---------|\n| `Extensions\u002FCorsExtensions.cs` | CORS service registration |\n| `appsettings.json` (update) | Origins configuration |\n| `appsettings.Development.json` (update) | Dev origins |\n\n**Generation Process:**\n1. Use MCP ref for current ASP.NET Core CORS API\n2. Generate CorsExtensions with:\n   - Development policy (permissive)\n   - Production policy (restrictive)\n   - Environment-based policy selection\n3. Update appsettings with CORS:Origins\n\n**Registration Code:**\n```csharp\nbuilder.Services.AddCorsPolicy(builder.Configuration);\n\u002F\u002F ...\napp.UseCors(builder.Environment.IsDevelopment() ? \"Development\" : \"Production\");\n```\n\n### Python Output Files\n\n| File | Purpose |\n|------|---------|\n| `middleware\u002Fcors_config.py` | CORS middleware configuration |\n| `.env` (update) | CORS_ORIGINS variable |\n\n**Generation Process:**\n1. Use MCP ref for FastAPI CORSMiddleware\n2. Generate cors_config.py with:\n   - Origin parsing from environment\n   - Method and header configuration\n   - Credentials handling\n3. Update .env with CORS_ORIGINS\n\n**Registration Code:**\n```python\nfrom middleware.cors_config import configure_cors\nconfigure_cors(app)\n```\n\n---\n\n## Phase 5: Validate\n\n**Validation Steps:**\n\n1. **Syntax check:**\n   - .NET: `dotnet build --no-restore`\n   - Python: `python -m py_compile middleware\u002Fcors_config.py`\n\n2. **CORS test:**\n   ```bash\n   # Test preflight request\n   curl -X OPTIONS http:\u002F\u002Flocalhost:5000\u002Fapi\u002Ftest \\\n     -H \"Origin: http:\u002F\u002Flocalhost:3000\" \\\n     -H \"Access-Control-Request-Method: POST\" \\\n     -v\n   ```\n\n3. **Verify headers:**\n   - `Access-Control-Allow-Origin`: Should match request origin\n   - `Access-Control-Allow-Methods`: Should list allowed methods\n   - `Access-Control-Allow-Credentials`: true (if enabled)\n   - `Access-Control-Max-Age`: Cache duration\n\n---\n\n## Security Checklist\n\nBefore completing, verify:\n\n- [ ] No wildcard `*` origin in production\n- [ ] Explicit allowed methods (not `AllowAnyMethod` in prod)\n- [ ] Credentials only if needed\n- [ ] Origins from environment variables in production\n- [ ] Preflight caching enabled in production\n\n---\n\n## Return to Coordinator\n\n```json\n{\n  \"status\": \"success\",\n  \"files_created\": [\n    \"Extensions\u002FCorsExtensions.cs\"\n  ],\n  \"packages_added\": [],\n  \"registration_code\": \"builder.Services.AddCorsPolicy(configuration);\",\n  \"message\": \"Configured CORS with Development and Production policies\"\n}\n```\n\n---\n\n## Reference Links\n\n- [ASP.NET Core CORS](https:\u002F\u002Flearn.microsoft.com\u002Faspnet\u002Fcore\u002Fsecurity\u002Fcors)\n- [FastAPI CORS](https:\u002F\u002Ffastapi.tiangolo.com\u002Ftutorial\u002Fcors\u002F)\n- [MDN CORS](https:\u002F\u002Fdeveloper.mozilla.org\u002Fdocs\u002FWeb\u002FHTTP\u002FCORS)\n\n---\n\n## Critical Rules\n\n- **Never use wildcard `*` origin with credentials** — security violation per CORS spec\n- **Production origins from environment variables only** — no hardcoded URLs in code\n- **Separate Development and Production policies** — permissive locally, restrictive in production\n- **Idempotent** — if `AddCors`\u002F`UseCors` or `CORSMiddleware` exists, return `status: \"skipped\"`\n- **Enable preflight caching in Production** — MaxAge 86400 (24h) to reduce OPTIONS requests\n\n## Definition of Done\n\n- [ ] Context Store received (stack, project root, environment)\n- [ ] Frontend origins detected (port\u002Fframework auto-detection)\n- [ ] User decisions collected (origins, methods, credentials, cache duration)\n- [ ] CORS configuration generated with environment-specific policies\n- [ ] Security checklist verified (no wildcard + credentials, explicit methods, env-based origins)\n- [ ] Syntax validated (`dotnet build` or `py_compile`)\n- [ ] Structured JSON response returned to ln-770 coordinator\n\n---\n\n**Version:** 2.0.0\n**Last Updated:** 2026-01-10\n",{"name":5,"license":15,"description":7},"main","fbfb242f793fdf040f3a1a6b100896c188c228c8","_AI-Automation\u002Fclaude-code-skills-levnikolaevich\u002Fplugins\u002Fproject-bootstrap\u002Fskills\u002Fln-773-cors-configurator",1,"https:\u002F\u002Fgithub.com\u002Fvitalikpestov\u002FSkills-Catalog","https:\u002F\u002Fgithub.com\u002Fvitalikpestov","Listing on crypto exchanges","2026-06-15 22:12:56",{"source":8,"skillName":5,"commands":49,"prompt":59,"zipAvailable":60},[50,53,56],{"tool":51,"command":52},"npx","npx skills add vitalikpestov\u002FSkills-Catalog --skill ln-773-cors-configurator",{"tool":54,"command":55},"bunx","bunx skills add vitalikpestov\u002FSkills-Catalog --skill ln-773-cors-configurator",{"tool":57,"command":58},"pnpm","pnpm dlx skills add vitalikpestov\u002FSkills-Catalog --skill ln-773-cors-configurator","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fvitalikpestov\u002FSkills-Catalog\u002Fblob\u002Fmain\u002F_AI-Automation\u002Fclaude-code-skills-levnikolaevich\u002Fplugins\u002Fproject-bootstrap\u002Fskills\u002Fln-773-cors-configurator\u002FSKILL.md",true,[],[63,107,131,148,170,203],{"skillNo":64,"name":65,"nameZh":6,"description":66,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":67,"categories":68,"keywords":85,"publishedAt":106},"01M71V1MC994P553631JZSWVYD","solana-dev","Use when user asks to \"build a Solana dapp\", \"write an Anchor program\", \"create a token\", \"debug Solana errors\", \"set up wallet connection\", \"test my Solana program\", \"deploy to devnet\", or \"explain Solana concepts\" (rent, accounts, PDAs, CPIs, etc.). End-to-end Solana development playbook covering wallet connection, Anchor\u002FPinocchio programs, Codama client generation, LiteSVM\u002FMollusk\u002FSurfpool testing, and security checklists. Integrates with the Solana MCP server for live documentation search. Prefers framework-kit (@solana\u002Fclient + @solana\u002Freact-hooks) for UI, wallet-standard-first connection (incl. ConnectorKit), @solana\u002Fkit for client\u002FRPC code, and @solana\u002Fweb3-compat for legacy boundaries.","https:\u002F\u002Fgithub.com\u002Fvitalikpestov\u002FSkills-Catalog\u002Fblob\u002Fmain\u002F_Web3\u002Fsolana-dev\u002Fskill\u002FSKILL.md",[69,74,77,80],{"categoryNo":70,"categoryName":71,"taxonomyType":72,"taxonomyTypeDesc":73},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",{"categoryNo":75,"categoryName":76,"taxonomyType":72,"taxonomyTypeDesc":73},"01JBSEEDCAT000000000000009","前端开发",{"categoryNo":78,"categoryName":79,"taxonomyType":72,"taxonomyTypeDesc":73},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":81,"categoryName":82,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105],"dev","solana dev","solana","Wallet","search","testing","solana cli","kit","MCP","web3","react","create","server","write","playbook","live","security","ui","concepts","toolchain","2026-11-10 13:02:02",{"skillNo":108,"name":109,"nameZh":6,"description":110,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":111,"categories":112,"keywords":113,"publishedAt":106},"01M71TYQPHE2YGKTT7DG9QCW3K","generating-trading-signals","Generate trading signals using technical indicators (RSI, MACD, Bollinger Bands, etc.).\nCombines multiple indicators into composite signals with confidence scores.\nUse when analyzing assets for trading opportunities or checking technical indicators.\nTrigger with phrases like \"get trading signals\", \"check indicators\", \"analyze for entry\",\n\"scan for opportunities\", \"generate buy\u002Fsell signals\", or \"technical analysis\".","https:\u002F\u002Fgithub.com\u002Fvitalikpestov\u002FSkills-Catalog\u002Fblob\u002Fmain\u002F_Trading-Finance\u002Fgenerating-trading-signals\u002FSKILL.md",[],[114,115,116,117,118,119,25,120,121,122,123,124,28,30,125,126,127,128,129,130],"generating trading signals","signals","trading signals","trading","get","technical indicators","scan","rsi","trigger","python","technical","Bash","analysis","code","io","check","analyze",{"skillNo":132,"name":133,"nameZh":6,"description":134,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":135,"categories":136,"keywords":137,"publishedAt":106},"01M71TY4CR3GKGQ3M12X9WN95Y","prediction-monitor","Prediction Monitor - Auto-activating skill for ML Deployment.\nTriggers on: prediction monitor, prediction monitor\nPart of the ML Deployment skill category.","https:\u002F\u002Fgithub.com\u002Fvitalikpestov\u002FSkills-Catalog\u002Fblob\u002Fmain\u002F_Trading-Finance\u002FAI Predictions\u002Fprediction-monitor\u002FSKILL.md",[],[138,139,140,25,141,142,99,143,144,145,146,147,125],"prediction","monitor","prediction monitor","deployment","read","edit","triggers","grep","auto","ml",{"skillNo":149,"name":150,"nameZh":6,"description":151,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":152,"categories":153,"keywords":154,"publishedAt":106},"01M71TXD9MYXZC39HCPP909HTZ","strategy-advisor","High-level strategic thinking and business decision guidance for planning and direction-setting.\nUse when: making strategic decisions, evaluating business options, setting direction, analyzing\ntrade-offs, or when user mentions strategy, business planning, competitive analysis, or long-term planning.","https:\u002F\u002Fgithub.com\u002Fvitalikpestov\u002FSkills-Catalog\u002Fblob\u002Fmain\u002F_Product-Apps\u002Fstrategy-advisor\u002FSKILL.md",[],[155,156,157,158,23,159,160,161,162,25,163,164,165,28,166,167,30,168,126,169],"strategy advisor","strategy","advisor","competitive","thinking","planning","direction","trade-offs","long","decision","strategic","business","apps","decisions","trade",{"skillNo":171,"name":172,"nameZh":6,"description":173,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":174,"sourceHtmlUrl":175,"categories":176,"keywords":183,"publishedAt":106},"01M71TWHBT2R1P1FNWTW67ZREP","app-paywall-pilot","Design, audit, debug, and implement App Store-compliant mobile paywalls, subscription flows, pricing screens, trials, offers, feature gates, and subscription lifecycle UX. Use when the user asks to audit my paywall, fix App Store 3.1.2 rejection, improve trial-to-paid, choose plans\u002Fprices\u002Ftrials, review RevenueCat\u002FAdapty\u002FApphud\u002FSuperwall setup, calculate LTV\u002FROAS, or build paywall implementation.","https:\u002F\u002Fgithub.com\u002Fvitalikpestov\u002FSkills-Catalog\u002Fblob\u002Fmain\u002F_Product-Apps\u002Ffrom-dosesync\u002Fapp-paywall-pilot\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fvitalikpestov\u002FSkills-Catalog\u002Fblob\u002Fmain\u002F_Product-Apps\u002Ffrom-dosesync\u002Fapp-paywall-pilot\u002FSKILL.md",[177,180],{"categoryNo":178,"categoryName":179,"taxonomyType":72,"taxonomyTypeDesc":73},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":181,"categoryName":182,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000032","设计师",[184,185,186,187,188,189,190,191,192,193,194,195,30,196,197,198,199,200,201,202],"app","paywall","app paywall pilot","paid","paywalls","prices","choose","flows","fix","improve","design","app store","review","audit","ux","subscription","mobile","my","calculate",{"skillNo":204,"name":205,"nameZh":6,"description":206,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":207,"licenseFileUrl":208,"sourceHtmlUrl":209,"categories":210,"keywords":213,"publishedAt":106},"01M71TWET8GFKEB7ZHJPMQX29V","figma","Use the Figma MCP server to fetch design context, screenshots, variables, and assets from Figma, and to translate Figma nodes into production code. Trigger when a task involves Figma URLs, node IDs, design-to-code implementation, or Figma MCP setup and troubleshooting.","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fvitalikpestov\u002FSkills-Catalog\u002Fblob\u002Fmain\u002F_Product-Apps\u002Ffigma\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fvitalikpestov\u002FSkills-Catalog\u002Fblob\u002Fmain\u002F_Product-Apps\u002Ffigma\u002FSKILL.md",[211,212],{"categoryNo":78,"categoryName":79,"taxonomyType":72,"taxonomyTypeDesc":73},{"categoryNo":181,"categoryName":182,"taxonomyType":83,"taxonomyTypeDesc":84},[205,214,215,216,217,122,194,94,28,30,218,219,127,220,98,221,222,223,224,225],"fetch","ids","mcp setup","translate","mcp server","Variables","task","Nodes","figma mcp","code implementation","node","assets"]