[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6AERHHKTZ98FNFQYWBX3TDK":3,"skill-same:01M6AERHHKTZ98FNFQYWBX3TDK":69},{"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":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":45,"commitSha":46,"skillDirectory":47,"forksCount":48,"repositoryHtmlUrl":49,"repositoryHomepageUrl":50,"ownerHtmlUrl":51,"ownerBlogUrl":52,"ownerDescription":53,"updatedAt":54,"install":55,"resources":68},"01M6AERHHKTZ98FNFQYWBX3TDK","python-patterns",null,"Python development principles and decision-making. Framework selection, async patterns, type hints, project structure. Teaches thinking, not copying.","davila7\u002Fclaude-code-templates","davila7","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F6216945?v=4","01M6ADEWWFPS191NFM0Y1EX1JH","Daniel Avila","01M6ADJHGM78PHQRD3XZTFDVKK",33602,"MIT","https:\u002F\u002Fgithub.com\u002Fdavila7\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fdevelopment\u002Fpython-patterns\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"python patterns","patterns","python","framework selection","principles","type","project","decision-making","structure","thinking","selection","async","edit","write","read","decision","framework","development","python development","project structure","2026-11-10 10:12:30",false,"---\nname: python-patterns\ndescription: Python development principles and decision-making. Framework selection, async patterns, type hints, project structure. Teaches thinking, not copying.\nallowed-tools: Read, Write, Edit, Glob, Grep\n---\n\n# Python Patterns\n\n> Python development principles and decision-making for 2025.\n> **Learn to THINK, not memorize patterns.**\n\n---\n\n## ⚠️ How to Use This Skill\n\nThis skill teaches **decision-making principles**, not fixed code to copy.\n\n- ASK user for framework preference when unclear\n- Choose async vs sync based on CONTEXT\n- Don't default to same framework every time\n\n---\n\n## 1. Framework Selection (2025)\n\n### Decision Tree\n\n```\nWhat are you building?\n│\n├── API-first \u002F Microservices\n│   └── FastAPI (async, modern, fast)\n│\n├── Full-stack web \u002F CMS \u002F Admin\n│   └── Django (batteries-included)\n│\n├── Simple \u002F Script \u002F Learning\n│   └── Flask (minimal, flexible)\n│\n├── AI\u002FML API serving\n│   └── FastAPI (Pydantic, async, uvicorn)\n│\n└── Background workers\n    └── Celery + any framework\n```\n\n### Comparison Principles\n\n| Factor | FastAPI | Django | Flask |\n|--------|---------|--------|-------|\n| **Best for** | APIs, microservices | Full-stack, CMS | Simple, learning |\n| **Async** | Native | Django 5.0+ | Via extensions |\n| **Admin** | Manual | Built-in | Via extensions |\n| **ORM** | Choose your own | Django ORM | Choose your own |\n| **Learning curve** | Low | Medium | Low |\n\n### Selection Questions to Ask:\n1. Is this API-only or full-stack?\n2. Need admin interface?\n3. Team familiar with async?\n4. Existing infrastructure?\n\n---\n\n## 2. Async vs Sync Decision\n\n### When to Use Async\n\n```\nasync def is better when:\n├── I\u002FO-bound operations (database, HTTP, file)\n├── Many concurrent connections\n├── Real-time features\n├── Microservices communication\n└── FastAPI\u002FStarlette\u002FDjango ASGI\n\ndef (sync) is better when:\n├── CPU-bound operations\n├── Simple scripts\n├── Legacy codebase\n├── Team unfamiliar with async\n└── Blocking libraries (no async version)\n```\n\n### The Golden Rule\n\n```\nI\u002FO-bound → async (waiting for external)\nCPU-bound → sync + multiprocessing (computing)\n\nDon't:\n├── Mix sync and async carelessly\n├── Use sync libraries in async code\n└── Force async for CPU work\n```\n\n### Async Library Selection\n\n| Need | Async Library |\n|------|---------------|\n| HTTP client | httpx |\n| PostgreSQL | asyncpg |\n| Redis | aioredis \u002F redis-py async |\n| File I\u002FO | aiofiles |\n| Database ORM | SQLAlchemy 2.0 async, Tortoise |\n\n---\n\n## 3. Type Hints Strategy\n\n### When to Type\n\n```\nAlways type:\n├── Function parameters\n├── Return types\n├── Class attributes\n├── Public APIs\n\nCan skip:\n├── Local variables (let inference work)\n├── One-off scripts\n├── Tests (usually)\n```\n\n### Common Type Patterns\n\n```python\n# These are patterns, understand them:\n\n# Optional → might be None\nfrom typing import Optional\ndef find_user(id: int) -> Optional[User]: ...\n\n# Union → one of multiple types\ndef process(data: str | dict) -> None: ...\n\n# Generic collections\ndef get_items() -> list[Item]: ...\ndef get_mapping() -> dict[str, int]: ...\n\n# Callable\nfrom typing import Callable\ndef apply(fn: Callable[[int], str]) -> str: ...\n```\n\n### Pydantic for Validation\n\n```\nWhen to use Pydantic:\n├── API request\u002Fresponse models\n├── Configuration\u002Fsettings\n├── Data validation\n├── Serialization\n\nBenefits:\n├── Runtime validation\n├── Auto-generated JSON schema\n├── Works with FastAPI natively\n└── Clear error messages\n```\n\n---\n\n## 4. Project Structure Principles\n\n### Structure Selection\n\n```\nSmall project \u002F Script:\n├── main.py\n├── utils.py\n└── requirements.txt\n\nMedium API:\n├── app\u002F\n│   ├── __init__.py\n│   ├── main.py\n│   ├── models\u002F\n│   ├── routes\u002F\n│   ├── services\u002F\n│   └── schemas\u002F\n├── tests\u002F\n└── pyproject.toml\n\nLarge application:\n├── src\u002F\n│   └── myapp\u002F\n│       ├── core\u002F\n│       ├── api\u002F\n│       ├── services\u002F\n│       ├── models\u002F\n│       └── ...\n├── tests\u002F\n└── pyproject.toml\n```\n\n### FastAPI Structure Principles\n\n```\nOrganize by feature or layer:\n\nBy layer:\n├── routes\u002F (API endpoints)\n├── services\u002F (business logic)\n├── models\u002F (database models)\n├── schemas\u002F (Pydantic models)\n└── dependencies\u002F (shared deps)\n\nBy feature:\n├── users\u002F\n│   ├── routes.py\n│   ├── service.py\n│   └── schemas.py\n└── products\u002F\n    └── ...\n```\n\n---\n\n## 5. Django Principles (2025)\n\n### Django Async (Django 5.0+)\n\n```\nDjango supports async:\n├── Async views\n├── Async middleware\n├── Async ORM (limited)\n└── ASGI deployment\n\nWhen to use async in Django:\n├── External API calls\n├── WebSocket (Channels)\n├── High-concurrency views\n└── Background task triggering\n```\n\n### Django Best Practices\n\n```\nModel design:\n├── Fat models, thin views\n├── Use managers for common queries\n├── Abstract base classes for shared fields\n\nViews:\n├── Class-based for complex CRUD\n├── Function-based for simple endpoints\n├── Use viewsets with DRF\n\nQueries:\n├── select_related() for FKs\n├── prefetch_related() for M2M\n├── Avoid N+1 queries\n└── Use .only() for specific fields\n```\n\n---\n\n## 6. FastAPI Principles\n\n### async def vs def in FastAPI\n\n```\nUse async def when:\n├── Using async database drivers\n├── Making async HTTP calls\n├── I\u002FO-bound operations\n└── Want to handle concurrency\n\nUse def when:\n├── Blocking operations\n├── Sync database drivers\n├── CPU-bound work\n└── FastAPI runs in threadpool automatically\n```\n\n### Dependency Injection\n\n```\nUse dependencies for:\n├── Database sessions\n├── Current user \u002F Auth\n├── Configuration\n├── Shared resources\n\nBenefits:\n├── Testability (mock dependencies)\n├── Clean separation\n├── Automatic cleanup (yield)\n```\n\n### Pydantic v2 Integration\n\n```python\n# FastAPI + Pydantic are tightly integrated:\n\n# Request validation\n@app.post(\"\u002Fusers\")\nasync def create(user: UserCreate) -> UserResponse:\n    # user is already validated\n    ...\n\n# Response serialization\n# Return type becomes response schema\n```\n\n---\n\n## 7. Background Tasks\n\n### Selection Guide\n\n| Solution | Best For |\n|----------|----------|\n| **BackgroundTasks** | Simple, in-process tasks |\n| **Celery** | Distributed, complex workflows |\n| **ARQ** | Async, Redis-based |\n| **RQ** | Simple Redis queue |\n| **Dramatiq** | Actor-based, simpler than Celery |\n\n### When to Use Each\n\n```\nFastAPI BackgroundTasks:\n├── Quick operations\n├── No persistence needed\n├── Fire-and-forget\n└── Same process\n\nCelery\u002FARQ:\n├── Long-running tasks\n├── Need retry logic\n├── Distributed workers\n├── Persistent queue\n└── Complex workflows\n```\n\n---\n\n## 8. Error Handling Principles\n\n### Exception Strategy\n\n```\nIn FastAPI:\n├── Create custom exception classes\n├── Register exception handlers\n├── Return consistent error format\n└── Log without exposing internals\n\nPattern:\n├── Raise domain exceptions in services\n├── Catch and transform in handlers\n└── Client gets clean error response\n```\n\n### Error Response Philosophy\n\n```\nInclude:\n├── Error code (programmatic)\n├── Message (human readable)\n├── Details (field-level when applicable)\n└── NOT stack traces (security)\n```\n\n---\n\n## 9. Testing Principles\n\n### Testing Strategy\n\n| Type | Purpose | Tools |\n|------|---------|-------|\n| **Unit** | Business logic | pytest |\n| **Integration** | API endpoints | pytest + httpx\u002FTestClient |\n| **E2E** | Full workflows | pytest + DB |\n\n### Async Testing\n\n```python\n# Use pytest-asyncio for async tests\n\nimport pytest\nfrom httpx import AsyncClient\n\n@pytest.mark.asyncio\nasync def test_endpoint():\n    async with AsyncClient(app=app, base_url=\"http:\u002F\u002Ftest\") as client:\n        response = await client.get(\"\u002Fusers\")\n        assert response.status_code == 200\n```\n\n### Fixtures Strategy\n\n```\nCommon fixtures:\n├── db_session → Database connection\n├── client → Test client\n├── authenticated_user → User with token\n└── sample_data → Test data setup\n```\n\n---\n\n## 10. Decision Checklist\n\nBefore implementing:\n\n- [ ] **Asked user about framework preference?**\n- [ ] **Chosen framework for THIS context?** (not just default)\n- [ ] **Decided async vs sync?**\n- [ ] **Planned type hint strategy?**\n- [ ] **Defined project structure?**\n- [ ] **Planned error handling?**\n- [ ] **Considered background tasks?**\n\n---\n\n## 11. Anti-Patterns to Avoid\n\n### ❌ DON'T:\n- Default to Django for simple APIs (FastAPI may be better)\n- Use sync libraries in async code\n- Skip type hints for public APIs\n- Put business logic in routes\u002Fviews\n- Ignore N+1 queries\n- Mix async and sync carelessly\n\n### ✅ DO:\n- Choose framework based on context\n- Ask about async requirements\n- Use Pydantic for validation\n- Separate concerns (routes → services → repos)\n- Test critical paths\n\n---\n\n> **Remember**: Python patterns are about decision-making for YOUR specific context. Don't copy code—think about what serves your application best.\n","# Python Patterns\n\n> Python development principles and decision-making for 2025.\n> **Learn to THINK, not memorize patterns.**\n\n---\n\n## ⚠️ How to Use This Skill\n\nThis skill teaches **decision-making principles**, not fixed code to copy.\n\n- ASK user for framework preference when unclear\n- Choose async vs sync based on CONTEXT\n- Don't default to same framework every time\n\n---\n\n## 1. Framework Selection (2025)\n\n### Decision Tree\n\n```\nWhat are you building?\n│\n├── API-first \u002F Microservices\n│   └── FastAPI (async, modern, fast)\n│\n├── Full-stack web \u002F CMS \u002F Admin\n│   └── Django (batteries-included)\n│\n├── Simple \u002F Script \u002F Learning\n│   └── Flask (minimal, flexible)\n│\n├── AI\u002FML API serving\n│   └── FastAPI (Pydantic, async, uvicorn)\n│\n└── Background workers\n    └── Celery + any framework\n```\n\n### Comparison Principles\n\n| Factor | FastAPI | Django | Flask |\n|--------|---------|--------|-------|\n| **Best for** | APIs, microservices | Full-stack, CMS | Simple, learning |\n| **Async** | Native | Django 5.0+ | Via extensions |\n| **Admin** | Manual | Built-in | Via extensions |\n| **ORM** | Choose your own | Django ORM | Choose your own |\n| **Learning curve** | Low | Medium | Low |\n\n### Selection Questions to Ask:\n1. Is this API-only or full-stack?\n2. Need admin interface?\n3. Team familiar with async?\n4. Existing infrastructure?\n\n---\n\n## 2. Async vs Sync Decision\n\n### When to Use Async\n\n```\nasync def is better when:\n├── I\u002FO-bound operations (database, HTTP, file)\n├── Many concurrent connections\n├── Real-time features\n├── Microservices communication\n└── FastAPI\u002FStarlette\u002FDjango ASGI\n\ndef (sync) is better when:\n├── CPU-bound operations\n├── Simple scripts\n├── Legacy codebase\n├── Team unfamiliar with async\n└── Blocking libraries (no async version)\n```\n\n### The Golden Rule\n\n```\nI\u002FO-bound → async (waiting for external)\nCPU-bound → sync + multiprocessing (computing)\n\nDon't:\n├── Mix sync and async carelessly\n├── Use sync libraries in async code\n└── Force async for CPU work\n```\n\n### Async Library Selection\n\n| Need | Async Library |\n|------|---------------|\n| HTTP client | httpx |\n| PostgreSQL | asyncpg |\n| Redis | aioredis \u002F redis-py async |\n| File I\u002FO | aiofiles |\n| Database ORM | SQLAlchemy 2.0 async, Tortoise |\n\n---\n\n## 3. Type Hints Strategy\n\n### When to Type\n\n```\nAlways type:\n├── Function parameters\n├── Return types\n├── Class attributes\n├── Public APIs\n\nCan skip:\n├── Local variables (let inference work)\n├── One-off scripts\n├── Tests (usually)\n```\n\n### Common Type Patterns\n\n```python\n# These are patterns, understand them:\n\n# Optional → might be None\nfrom typing import Optional\ndef find_user(id: int) -> Optional[User]: ...\n\n# Union → one of multiple types\ndef process(data: str | dict) -> None: ...\n\n# Generic collections\ndef get_items() -> list[Item]: ...\ndef get_mapping() -> dict[str, int]: ...\n\n# Callable\nfrom typing import Callable\ndef apply(fn: Callable[[int], str]) -> str: ...\n```\n\n### Pydantic for Validation\n\n```\nWhen to use Pydantic:\n├── API request\u002Fresponse models\n├── Configuration\u002Fsettings\n├── Data validation\n├── Serialization\n\nBenefits:\n├── Runtime validation\n├── Auto-generated JSON schema\n├── Works with FastAPI natively\n└── Clear error messages\n```\n\n---\n\n## 4. Project Structure Principles\n\n### Structure Selection\n\n```\nSmall project \u002F Script:\n├── main.py\n├── utils.py\n└── requirements.txt\n\nMedium API:\n├── app\u002F\n│   ├── __init__.py\n│   ├── main.py\n│   ├── models\u002F\n│   ├── routes\u002F\n│   ├── services\u002F\n│   └── schemas\u002F\n├── tests\u002F\n└── pyproject.toml\n\nLarge application:\n├── src\u002F\n│   └── myapp\u002F\n│       ├── core\u002F\n│       ├── api\u002F\n│       ├── services\u002F\n│       ├── models\u002F\n│       └── ...\n├── tests\u002F\n└── pyproject.toml\n```\n\n### FastAPI Structure Principles\n\n```\nOrganize by feature or layer:\n\nBy layer:\n├── routes\u002F (API endpoints)\n├── services\u002F (business logic)\n├── models\u002F (database models)\n├── schemas\u002F (Pydantic models)\n└── dependencies\u002F (shared deps)\n\nBy feature:\n├── users\u002F\n│   ├── routes.py\n│   ├── service.py\n│   └── schemas.py\n└── products\u002F\n    └── ...\n```\n\n---\n\n## 5. Django Principles (2025)\n\n### Django Async (Django 5.0+)\n\n```\nDjango supports async:\n├── Async views\n├── Async middleware\n├── Async ORM (limited)\n└── ASGI deployment\n\nWhen to use async in Django:\n├── External API calls\n├── WebSocket (Channels)\n├── High-concurrency views\n└── Background task triggering\n```\n\n### Django Best Practices\n\n```\nModel design:\n├── Fat models, thin views\n├── Use managers for common queries\n├── Abstract base classes for shared fields\n\nViews:\n├── Class-based for complex CRUD\n├── Function-based for simple endpoints\n├── Use viewsets with DRF\n\nQueries:\n├── select_related() for FKs\n├── prefetch_related() for M2M\n├── Avoid N+1 queries\n└── Use .only() for specific fields\n```\n\n---\n\n## 6. FastAPI Principles\n\n### async def vs def in FastAPI\n\n```\nUse async def when:\n├── Using async database drivers\n├── Making async HTTP calls\n├── I\u002FO-bound operations\n└── Want to handle concurrency\n\nUse def when:\n├── Blocking operations\n├── Sync database drivers\n├── CPU-bound work\n└── FastAPI runs in threadpool automatically\n```\n\n### Dependency Injection\n\n```\nUse dependencies for:\n├── Database sessions\n├── Current user \u002F Auth\n├── Configuration\n├── Shared resources\n\nBenefits:\n├── Testability (mock dependencies)\n├── Clean separation\n├── Automatic cleanup (yield)\n```\n\n### Pydantic v2 Integration\n\n```python\n# FastAPI + Pydantic are tightly integrated:\n\n# Request validation\n@app.post(\"\u002Fusers\")\nasync def create(user: UserCreate) -> UserResponse:\n    # user is already validated\n    ...\n\n# Response serialization\n# Return type becomes response schema\n```\n\n---\n\n## 7. Background Tasks\n\n### Selection Guide\n\n| Solution | Best For |\n|----------|----------|\n| **BackgroundTasks** | Simple, in-process tasks |\n| **Celery** | Distributed, complex workflows |\n| **ARQ** | Async, Redis-based |\n| **RQ** | Simple Redis queue |\n| **Dramatiq** | Actor-based, simpler than Celery |\n\n### When to Use Each\n\n```\nFastAPI BackgroundTasks:\n├── Quick operations\n├── No persistence needed\n├── Fire-and-forget\n└── Same process\n\nCelery\u002FARQ:\n├── Long-running tasks\n├── Need retry logic\n├── Distributed workers\n├── Persistent queue\n└── Complex workflows\n```\n\n---\n\n## 8. Error Handling Principles\n\n### Exception Strategy\n\n```\nIn FastAPI:\n├── Create custom exception classes\n├── Register exception handlers\n├── Return consistent error format\n└── Log without exposing internals\n\nPattern:\n├── Raise domain exceptions in services\n├── Catch and transform in handlers\n└── Client gets clean error response\n```\n\n### Error Response Philosophy\n\n```\nInclude:\n├── Error code (programmatic)\n├── Message (human readable)\n├── Details (field-level when applicable)\n└── NOT stack traces (security)\n```\n\n---\n\n## 9. Testing Principles\n\n### Testing Strategy\n\n| Type | Purpose | Tools |\n|------|---------|-------|\n| **Unit** | Business logic | pytest |\n| **Integration** | API endpoints | pytest + httpx\u002FTestClient |\n| **E2E** | Full workflows | pytest + DB |\n\n### Async Testing\n\n```python\n# Use pytest-asyncio for async tests\n\nimport pytest\nfrom httpx import AsyncClient\n\n@pytest.mark.asyncio\nasync def test_endpoint():\n    async with AsyncClient(app=app, base_url=\"http:\u002F\u002Ftest\") as client:\n        response = await client.get(\"\u002Fusers\")\n        assert response.status_code == 200\n```\n\n### Fixtures Strategy\n\n```\nCommon fixtures:\n├── db_session → Database connection\n├── client → Test client\n├── authenticated_user → User with token\n└── sample_data → Test data setup\n```\n\n---\n\n## 10. Decision Checklist\n\nBefore implementing:\n\n- [ ] **Asked user about framework preference?**\n- [ ] **Chosen framework for THIS context?** (not just default)\n- [ ] **Decided async vs sync?**\n- [ ] **Planned type hint strategy?**\n- [ ] **Defined project structure?**\n- [ ] **Planned error handling?**\n- [ ] **Considered background tasks?**\n\n---\n\n## 11. Anti-Patterns to Avoid\n\n### ❌ DON'T:\n- Default to Django for simple APIs (FastAPI may be better)\n- Use sync libraries in async code\n- Skip type hints for public APIs\n- Put business logic in routes\u002Fviews\n- Ignore N+1 queries\n- Mix async and sync carelessly\n\n### ✅ DO:\n- Choose framework based on context\n- Ask about async requirements\n- Use Pydantic for validation\n- Separate concerns (routes → services → repos)\n- Test critical paths\n\n---\n\n> **Remember**: Python patterns are about decision-making for YOUR specific context. Don't copy code—think about what serves your application best.\n",{"name":5,"description":7,"allowed-tools":44},"Read, Write, Edit, Glob, Grep","main","2b749c82b5d11fac39d9a6e021ce3f5b8a541bd1","cli-tool\u002Fcomponents\u002Fskills\u002Fdevelopment\u002Fpython-patterns",3963,"https:\u002F\u002Fgithub.com\u002Fdavila7\u002Fclaude-code-templates","https:\u002F\u002Faitmpl.com","https:\u002F\u002Fgithub.com\u002Fdavila7","https:\u002F\u002Fdanielavila.me","Building AI dev tools with LLMs","2026-11-15 01:32:48",{"source":8,"skillName":5,"commands":56,"prompt":66,"zipAvailable":67},[57,60,63],{"tool":58,"command":59},"npx","npx skills add davila7\u002Fclaude-code-templates --skill python-patterns",{"tool":61,"command":62},"bunx","bunx skills add davila7\u002Fclaude-code-templates --skill python-patterns",{"tool":64,"command":65},"pnpm","pnpm dlx skills add davila7\u002Fclaude-code-templates --skill python-patterns","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fdavila7\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fdevelopment\u002Fpython-patterns\u002FSKILL.md",true,[],[70,102,128,161,196,220],{"skillNo":71,"name":72,"nameZh":6,"description":73,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":74,"categories":75,"keywords":81,"publishedAt":39},"01M70NHBTQ8BV0A2SCAZXEPHCX","wealthville-pool-scoring","Score DeFi liquidity pools before providing liquidity. Returns a 0-100 pool score and an Enter\u002FHold\u002FExit\u002FReduce\u002FAvoid verdict with calibrated confidence for ~68,800 Solana pools and 575 EVM pools, plus a public miss-inclusive track record. Use when asked whether a pool is worth LPing into, which pools look best right now, or how accurate the scores have actually been.","https:\u002F\u002Fgithub.com\u002Fdavila7\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fweb-data\u002Fwealthville-pool-scoring\u002FSKILL.md",[76],{"categoryNo":77,"categoryName":78,"taxonomyType":79,"taxonomyTypeDesc":80},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101],"scoring","pool","wealthville pool scoring","liquidity","which","for","exit","now","use","when","reduce","with","record","track","verdict","evm","solana","how","public","look",{"skillNo":103,"name":104,"nameZh":6,"description":105,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":106,"categories":107,"keywords":109,"publishedAt":39},"01M70MB6VR8ERJ4EM8D5KHBMEV","technical-debt-auditor","Scans a codebase and produces a quantified technical debt report with a prioritized remediation plan. Analyzes dead code, TODO\u002FFIXME\u002FHACK markers, dependency staleness, complexity hotspots, code duplication signals, test coverage gaps, unused exports, and outdated patterns. Use this skill when the user asks to audit their codebase for tech debt, wants a health check of their code quality, says things like \"where should I focus refactoring\", \"find code smells\", \"audit my codebase\", \"what technical debt do we have\", \"prioritize cleanup work\", or asks about code quality metrics. Also trigger when the user mentions \"code rot\", \"legacy cleanup\", \"refactoring priorities\", or wants to understand the overall health of a project before a major effort. Trigger even if the user doesn't say \"technical debt\" explicitly — any request to systematically assess code quality and identify improvement priorities belongs here.","https:\u002F\u002Fgithub.com\u002Fdavila7\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fdevelopment\u002Ftechnical-debt-auditor\u002FSKILL.md",[108],{"categoryNo":77,"categoryName":78,"taxonomyType":79,"taxonomyTypeDesc":80},[110,111,112,113,114,115,116,117,25,118,119,91,120,121,122,123,124,125,126,127],"technical debt","debt","technical","technical debt auditor","auditor","coverage","complexity","markers","cleanup","unused","code","todo","work","plan","focus","signals","audit","dependency",{"skillNo":129,"name":130,"nameZh":6,"description":131,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":132,"categories":133,"keywords":143,"publishedAt":39},"01M70KPYH9QNHCNME5GJQGE22K","readonly-sql-guard","Make an agent's database access provably read-only. Use when an agent runs caller-supplied SQL against a production\u002FERP\u002Fanalytics database (a \"query\" MCP tool, text-to-SQL, an admin console), or when reviewing DB-access code for write\u002FDDL\u002Fside-effect\u002Ftransaction-escape risks. Checks what a statement CALLS, not just its shape.","https:\u002F\u002Fgithub.com\u002Fdavila7\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fdatabase\u002Freadonly-sql-guard\u002FSKILL.md",[134,137,138],{"categoryNo":135,"categoryName":136,"taxonomyType":79,"taxonomyTypeDesc":80},"01JBSEEDCAT000000000000010","后端与接口",{"categoryNo":77,"categoryName":78,"taxonomyType":79,"taxonomyTypeDesc":80},{"categoryNo":139,"categoryName":140,"taxonomyType":141,"taxonomyTypeDesc":142},"01JBSEEDCAT000000000000033","数据分析师","PROFESSION","适用职业",[144,145,146,147,148,149,150,87,151,152,153,154,155,156,157,90,158,159,91,160],"readonly","guard","sql guard","sql","readonly sql guard","erp","effect","read-only","db","just","tool","calls","only","MCP","access","database","query",{"skillNo":162,"name":163,"nameZh":6,"description":164,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":165,"licenseFileUrl":166,"sourceHtmlUrl":167,"categories":168,"keywords":172,"publishedAt":39},"01M6AFY6F7CC2BBZP1QD6VTNVC","web-artifacts-builder","Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn\u002Fui). Use for complex artifacts requiring state management, routing, or shadcn\u002Fui components - not for simple single-file HTML\u002FJSX artifacts.","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fdavila7\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Futilities\u002Fweb-artifacts-builder\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fdavila7\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Futilities\u002Fweb-artifacts-builder\u002FSKILL.md",[169],{"categoryNo":170,"categoryName":171,"taxonomyType":79,"taxonomyTypeDesc":80},"01JBSEEDCAT000000000000009","前端开发",[173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,87,195],"artifacts builder","web","web artifacts builder","artifacts","builder","state","routing","state management","component","css","frontend","ui","Tools","file","components","shadcn","react","Tailwind","suite","jsx","html","single-file","ui components",{"skillNo":197,"name":198,"nameZh":6,"description":199,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":165,"licenseFileUrl":200,"sourceHtmlUrl":201,"categories":202,"keywords":207,"publishedAt":39},"01M6AFWF33SFV9Z3SF4PEEE4BF","webapp-testing","Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.","https:\u002F\u002Fgithub.com\u002Fdavila7\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fsecurity\u002Fwebapp-testing\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fdavila7\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fsecurity\u002Fwebapp-testing\u002FSKILL.md",[203,206],{"categoryNo":204,"categoryName":205,"taxonomyType":79,"taxonomyTypeDesc":80},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":170,"categoryName":171,"taxonomyType":79,"taxonomyTypeDesc":80},[208,209,210,211,212,174,213,183,184,214,215,216,217,87,218,93,219],"webapp testing","testing","webapp","browser","playwright","applications","debugging","toolkit","logs","screenshots","local","behavior",{"skillNo":221,"name":222,"nameZh":6,"description":223,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":165,"licenseFileUrl":224,"sourceHtmlUrl":225,"categories":226,"keywords":234,"publishedAt":39},"01M6AF67Q67JJJ5V51JR2P52KA","discernment-nudge","After you give a substantive answer or draft that the user may act on — advice or recommendations, drafted artifacts such as goals, plans, pitches, proposals, or emails, estimates or projections, analysis or interpretation of data, factual claims they may rely on, or a multi-step argument — invoke this skill BEFORE finalizing your reply and then, if it applies, append 2-3 short follow-up questions, each tied to something specific in what you just produced, that help the user check key facts, probe the reasoning or assumptions, and notice missing context. Do this at most once per conversation. Skip it when the user asked a trivial how-to or simple lookup, wants a purely educational explanation, asked you only to format, convert, or assemble a file from content they provided, is writing code they will run, is doing creative writing or casual chat, or already asked you to double-check, cite, or review — the skill file explains these boundaries and the exact output format.","https:\u002F\u002Fgithub.com\u002Fdavila7\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fproductivity\u002Fdiscernment-nudge\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fdavila7\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fproductivity\u002Fdiscernment-nudge\u002FSKILL.md",[227,230,231],{"categoryNo":228,"categoryName":229,"taxonomyType":79,"taxonomyTypeDesc":80},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":77,"categoryName":78,"taxonomyType":79,"taxonomyTypeDesc":80},{"categoryNo":232,"categoryName":233,"taxonomyType":141,"taxonomyTypeDesc":142},"01JBSEEDCAT000000000000036","内容创作者",[235,236,237,238,239,240,241,242,176,243,186,120,244,245,246,247,248,156,249,91,250,251,252,253,254,99,255],"discernment nudge","nudge","interpretation","help","run","reasoning","data","writing","lookup","content","review","conversation","short","up","invoke","you","analysis","claims","argument","assemble","recommendations"]