[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6NTBWMCJKD62QCS9DAVAEHM":3,"skill-same:01M6NTBWMCJKD62QCS9DAVAEHM":63},{"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":36,"linkOnly":37,"markdownContent":38,"markdownBody":39,"frontMatter":40,"refName":41,"commitSha":42,"skillDirectory":43,"forksCount":14,"repositoryHtmlUrl":44,"repositoryHomepageUrl":6,"ownerHtmlUrl":45,"ownerBlogUrl":46,"ownerDescription":47,"updatedAt":48,"install":49,"resources":62},"01M6NTBWMCJKD62QCS9DAVAEHM","chaos-engineering",null,"Failure injection patterns, blast radius control, steady state hypothesis, and gameday planning for resilience testing.","rubicanjr\u002FFinCognis","rubicanjr","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F234912519?v=4","01M6NT156NND8J474G34SB3923","Rubi","01M6NT15B70RWXE1N3YV0BZY8A",0,"MIT","https:\u002F\u002Fgithub.com\u002Frubicanjr\u002FFinCognis\u002Fblob\u002Fmain\u002Fskills\u002Fchaos-engineering\u002Fskill.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35],"chaos","engineering","chaos engineering","radius","for","steady state","control","resilience testing","patterns","gameday","testing","injection","hypothesis","state","blast radius","planning","resilience","2026-11-10 10:12:30",false,"---\nname: chaos-engineering\ndescription: Failure injection patterns, blast radius control, steady state hypothesis, and gameday planning for resilience testing.\n---\n\n# Chaos Engineering\n\nSystematic resilience testing to discover weaknesses before they cause outages.\n\n## Steady State Hypothesis\n\n```yaml\n# Define BEFORE injecting chaos - what \"normal\" looks like\nsteady_state_hypothesis:\n  title: \"API serves traffic within SLO\"\n  probes:\n    - name: \"API response time p95 \u003C 500ms\"\n      type: http\n      url: \"https:\u002F\u002Fapi.example.com\u002Fhealth\"\n      threshold: 500\n\n    - name: \"Error rate \u003C 1%\"\n      type: prometheus\n      query: \"rate(http_requests_total{status=~'5..'}[5m]) \u002F rate(http_requests_total[5m])\"\n      threshold: 0.01\n\n    - name: \"Order processing queue depth \u003C 100\"\n      type: cloudwatch\n      metric: \"ApproximateNumberOfMessagesVisible\"\n      threshold: 100\n\n    - name: \"Database connections \u003C 80% capacity\"\n      type: prometheus\n      query: \"pg_stat_activity_count \u002F pg_settings_max_connections\"\n      threshold: 0.8\n```\n\n## Failure Injection Patterns\n\n```python\n# Using Chaos Toolkit (chaostoolkit.org)\n# experiment.json\n\n{\n  \"title\": \"Database failover resilience\",\n  \"description\": \"Verify app handles primary DB failover gracefully\",\n\n  \"steady-state-hypothesis\": {\n    \"title\": \"API responds normally\",\n    \"probes\": [\n      {\n        \"name\": \"api-health\",\n        \"type\": \"probe\",\n        \"provider\": {\n          \"type\": \"http\",\n          \"url\": \"https:\u002F\u002Fapi.example.com\u002Fhealth\",\n          \"timeout\": 5\n        },\n        \"tolerance\": {\"status\": 200}\n      }\n    ]\n  },\n\n  \"method\": [\n    {\n      \"name\": \"failover-primary-db\",\n      \"type\": \"action\",\n      \"provider\": {\n        \"type\": \"python\",\n        \"module\": \"chaosaws.rds.actions\",\n        \"func\": \"failover_db_cluster\",\n        \"arguments\": {\n          \"db_cluster_identifier\": \"prod-cluster\"\n        }\n      },\n      \"pauses\": {\"after\": 60}\n    }\n  ],\n\n  \"rollbacks\": [\n    {\n      \"name\": \"verify-db-recovered\",\n      \"type\": \"probe\",\n      \"provider\": {\n        \"type\": \"python\",\n        \"module\": \"chaosaws.rds.probes\",\n        \"func\": \"cluster_status\",\n        \"arguments\": {\n          \"db_cluster_identifier\": \"prod-cluster\"\n        }\n      },\n      \"tolerance\": \"available\"\n    }\n  ]\n}\n```\n\n## Blast Radius Control\n\n```python\n# ALWAYS limit the impact of chaos experiments\n\nclass BlastRadiusController:\n    \"\"\"Control and limit chaos experiment impact.\"\"\"\n\n    def __init__(self, config: dict):\n        self.max_affected_percentage = config.get('max_affected_pct', 5)\n        self.max_duration_seconds = config.get('max_duration_s', 300)\n        self.excluded_services = config.get('excluded', ['auth', 'payments'])\n        self.kill_switch_url = config.get('kill_switch_url')\n\n    def can_inject(self, target: str, scope: str) -> bool:\n        # Never chaos-test critical services without explicit approval\n        if target in self.excluded_services:\n            return False\n\n        # Never inject during peak hours\n        hour = datetime.now().hour\n        if 9 \u003C= hour \u003C= 17:  # Business hours (adjust per timezone)\n            return False\n\n        # Never affect more than N% of instances\n        if self.get_affected_percentage(target, scope) > self.max_affected_percentage:\n            return False\n\n        return True\n\n    def get_affected_percentage(self, target: str, scope: str) -> float:\n        total = self.get_total_instances(target)\n        affected = self.get_affected_instances(target, scope)\n        return (affected \u002F total) * 100 if total > 0 else 100\n\n    async def emergency_stop(self) -> None:\n        \"\"\"Kill switch: immediately halt all chaos experiments.\"\"\"\n        await httpx.post(self.kill_switch_url, json={\"action\": \"stop_all\"})\n```\n\n## Common Chaos Experiments\n\n```yaml\n# Experiment catalog - start with these\n\nlevel_1_basic:\n  - name: \"Kill a single pod\"\n    tool: \"kubectl delete pod \u003Cname>\"\n    validates: \"Pod auto-recovery, health checks\"\n    blast_radius: \"1 pod\"\n\n  - name: \"CPU stress on one node\"\n    tool: \"stress-ng --cpu 4 --timeout 60\"\n    validates: \"Autoscaling, request routing\"\n    blast_radius: \"1 node\"\n\n  - name: \"Inject 500ms network latency\"\n    tool: \"tc qdisc add dev eth0 root netem delay 500ms\"\n    validates: \"Timeout handling, circuit breakers\"\n    blast_radius: \"1 container\"\n\nlevel_2_intermediate:\n  - name: \"Kill entire availability zone\"\n    tool: \"Chaos Toolkit \u002F AWS FIS\"\n    validates: \"Multi-AZ failover, data replication\"\n    blast_radius: \"1 AZ\"\n\n  - name: \"DNS resolution failure\"\n    tool: \"iptables -A OUTPUT -p udp --dport 53 -j DROP\"\n    validates: \"DNS caching, fallback resolution\"\n    blast_radius: \"1 service\"\n\n  - name: \"Disk fill to 95%\"\n    tool: \"fallocate -l 50G \u002Ftmp\u002Fdisk_fill\"\n    validates: \"Disk space alerts, log rotation\"\n    blast_radius: \"1 node\"\n\nlevel_3_advanced:\n  - name: \"Split brain network partition\"\n    tool: \"Toxiproxy \u002F Linux iptables\"\n    validates: \"Consensus protocols, data consistency\"\n    blast_radius: \"Cluster segment\"\n\n  - name: \"Clock skew injection\"\n    tool: \"timedatectl set-time +5min\"\n    validates: \"Certificate validation, token expiry\"\n    blast_radius: \"1 node\"\n```\n\n## Gameday Checklist\n\n```markdown\n## Pre-Gameday (1 week before)\n- [ ] Define steady state hypothesis with measurable probes\n- [ ] Identify blast radius and set hard limits\n- [ ] Ensure kill switch is tested and accessible\n- [ ] Notify on-call team and stakeholders\n- [ ] Verify rollback procedures are documented and tested\n- [ ] Set up monitoring dashboards for the experiment\n- [ ] Run experiment in staging first\n\n## During Gameday\n- [ ] Verify steady state BEFORE injecting chaos\n- [ ] Start with smallest blast radius, escalate gradually\n- [ ] Monitor dashboards continuously during experiment\n- [ ] Document observations in real-time (shared doc)\n- [ ] If SLO violated: trigger kill switch immediately\n- [ ] Time-box each experiment (max 5 minutes per injection)\n\n## Post-Gameday\n- [ ] Verify system returned to steady state\n- [ ] Document findings: what broke, what recovered, what surprised\n- [ ] Create action items for discovered weaknesses\n- [ ] Update runbooks based on learnings\n- [ ] Share results with broader engineering team\n- [ ] Schedule fixes and re-test\n```\n\n## Checklist\n\n- [ ] Define steady state hypothesis before every experiment\n- [ ] Never run chaos in production without a tested kill switch\n- [ ] Start in staging, graduate to production with reduced blast radius\n- [ ] Exclude critical services (auth, payments) unless specifically targeting them\n- [ ] Time-box experiments (max 5 minutes injection, 30 minutes observation)\n- [ ] Run during low-traffic windows, never during peak\n- [ ] Document every experiment: hypothesis, method, observations, findings\n- [ ] Automate recurring experiments in CI\u002FCD pipeline\n\n## Anti-Patterns\n\n- Chaos without hypothesis: random breaking is not engineering\n- No kill switch: unable to stop experiment when things go wrong\n- Running in production first: always validate in staging\n- Affecting too many instances: never exceed 5% without explicit approval\n- Chaos during incidents: only inject chaos on healthy systems\n- Not fixing findings: experiments without follow-up action items are wasted\n","# Chaos Engineering\n\nSystematic resilience testing to discover weaknesses before they cause outages.\n\n## Steady State Hypothesis\n\n```yaml\n# Define BEFORE injecting chaos - what \"normal\" looks like\nsteady_state_hypothesis:\n  title: \"API serves traffic within SLO\"\n  probes:\n    - name: \"API response time p95 \u003C 500ms\"\n      type: http\n      url: \"https:\u002F\u002Fapi.example.com\u002Fhealth\"\n      threshold: 500\n\n    - name: \"Error rate \u003C 1%\"\n      type: prometheus\n      query: \"rate(http_requests_total{status=~'5..'}[5m]) \u002F rate(http_requests_total[5m])\"\n      threshold: 0.01\n\n    - name: \"Order processing queue depth \u003C 100\"\n      type: cloudwatch\n      metric: \"ApproximateNumberOfMessagesVisible\"\n      threshold: 100\n\n    - name: \"Database connections \u003C 80% capacity\"\n      type: prometheus\n      query: \"pg_stat_activity_count \u002F pg_settings_max_connections\"\n      threshold: 0.8\n```\n\n## Failure Injection Patterns\n\n```python\n# Using Chaos Toolkit (chaostoolkit.org)\n# experiment.json\n\n{\n  \"title\": \"Database failover resilience\",\n  \"description\": \"Verify app handles primary DB failover gracefully\",\n\n  \"steady-state-hypothesis\": {\n    \"title\": \"API responds normally\",\n    \"probes\": [\n      {\n        \"name\": \"api-health\",\n        \"type\": \"probe\",\n        \"provider\": {\n          \"type\": \"http\",\n          \"url\": \"https:\u002F\u002Fapi.example.com\u002Fhealth\",\n          \"timeout\": 5\n        },\n        \"tolerance\": {\"status\": 200}\n      }\n    ]\n  },\n\n  \"method\": [\n    {\n      \"name\": \"failover-primary-db\",\n      \"type\": \"action\",\n      \"provider\": {\n        \"type\": \"python\",\n        \"module\": \"chaosaws.rds.actions\",\n        \"func\": \"failover_db_cluster\",\n        \"arguments\": {\n          \"db_cluster_identifier\": \"prod-cluster\"\n        }\n      },\n      \"pauses\": {\"after\": 60}\n    }\n  ],\n\n  \"rollbacks\": [\n    {\n      \"name\": \"verify-db-recovered\",\n      \"type\": \"probe\",\n      \"provider\": {\n        \"type\": \"python\",\n        \"module\": \"chaosaws.rds.probes\",\n        \"func\": \"cluster_status\",\n        \"arguments\": {\n          \"db_cluster_identifier\": \"prod-cluster\"\n        }\n      },\n      \"tolerance\": \"available\"\n    }\n  ]\n}\n```\n\n## Blast Radius Control\n\n```python\n# ALWAYS limit the impact of chaos experiments\n\nclass BlastRadiusController:\n    \"\"\"Control and limit chaos experiment impact.\"\"\"\n\n    def __init__(self, config: dict):\n        self.max_affected_percentage = config.get('max_affected_pct', 5)\n        self.max_duration_seconds = config.get('max_duration_s', 300)\n        self.excluded_services = config.get('excluded', ['auth', 'payments'])\n        self.kill_switch_url = config.get('kill_switch_url')\n\n    def can_inject(self, target: str, scope: str) -> bool:\n        # Never chaos-test critical services without explicit approval\n        if target in self.excluded_services:\n            return False\n\n        # Never inject during peak hours\n        hour = datetime.now().hour\n        if 9 \u003C= hour \u003C= 17:  # Business hours (adjust per timezone)\n            return False\n\n        # Never affect more than N% of instances\n        if self.get_affected_percentage(target, scope) > self.max_affected_percentage:\n            return False\n\n        return True\n\n    def get_affected_percentage(self, target: str, scope: str) -> float:\n        total = self.get_total_instances(target)\n        affected = self.get_affected_instances(target, scope)\n        return (affected \u002F total) * 100 if total > 0 else 100\n\n    async def emergency_stop(self) -> None:\n        \"\"\"Kill switch: immediately halt all chaos experiments.\"\"\"\n        await httpx.post(self.kill_switch_url, json={\"action\": \"stop_all\"})\n```\n\n## Common Chaos Experiments\n\n```yaml\n# Experiment catalog - start with these\n\nlevel_1_basic:\n  - name: \"Kill a single pod\"\n    tool: \"kubectl delete pod \u003Cname>\"\n    validates: \"Pod auto-recovery, health checks\"\n    blast_radius: \"1 pod\"\n\n  - name: \"CPU stress on one node\"\n    tool: \"stress-ng --cpu 4 --timeout 60\"\n    validates: \"Autoscaling, request routing\"\n    blast_radius: \"1 node\"\n\n  - name: \"Inject 500ms network latency\"\n    tool: \"tc qdisc add dev eth0 root netem delay 500ms\"\n    validates: \"Timeout handling, circuit breakers\"\n    blast_radius: \"1 container\"\n\nlevel_2_intermediate:\n  - name: \"Kill entire availability zone\"\n    tool: \"Chaos Toolkit \u002F AWS FIS\"\n    validates: \"Multi-AZ failover, data replication\"\n    blast_radius: \"1 AZ\"\n\n  - name: \"DNS resolution failure\"\n    tool: \"iptables -A OUTPUT -p udp --dport 53 -j DROP\"\n    validates: \"DNS caching, fallback resolution\"\n    blast_radius: \"1 service\"\n\n  - name: \"Disk fill to 95%\"\n    tool: \"fallocate -l 50G \u002Ftmp\u002Fdisk_fill\"\n    validates: \"Disk space alerts, log rotation\"\n    blast_radius: \"1 node\"\n\nlevel_3_advanced:\n  - name: \"Split brain network partition\"\n    tool: \"Toxiproxy \u002F Linux iptables\"\n    validates: \"Consensus protocols, data consistency\"\n    blast_radius: \"Cluster segment\"\n\n  - name: \"Clock skew injection\"\n    tool: \"timedatectl set-time +5min\"\n    validates: \"Certificate validation, token expiry\"\n    blast_radius: \"1 node\"\n```\n\n## Gameday Checklist\n\n```markdown\n## Pre-Gameday (1 week before)\n- [ ] Define steady state hypothesis with measurable probes\n- [ ] Identify blast radius and set hard limits\n- [ ] Ensure kill switch is tested and accessible\n- [ ] Notify on-call team and stakeholders\n- [ ] Verify rollback procedures are documented and tested\n- [ ] Set up monitoring dashboards for the experiment\n- [ ] Run experiment in staging first\n\n## During Gameday\n- [ ] Verify steady state BEFORE injecting chaos\n- [ ] Start with smallest blast radius, escalate gradually\n- [ ] Monitor dashboards continuously during experiment\n- [ ] Document observations in real-time (shared doc)\n- [ ] If SLO violated: trigger kill switch immediately\n- [ ] Time-box each experiment (max 5 minutes per injection)\n\n## Post-Gameday\n- [ ] Verify system returned to steady state\n- [ ] Document findings: what broke, what recovered, what surprised\n- [ ] Create action items for discovered weaknesses\n- [ ] Update runbooks based on learnings\n- [ ] Share results with broader engineering team\n- [ ] Schedule fixes and re-test\n```\n\n## Checklist\n\n- [ ] Define steady state hypothesis before every experiment\n- [ ] Never run chaos in production without a tested kill switch\n- [ ] Start in staging, graduate to production with reduced blast radius\n- [ ] Exclude critical services (auth, payments) unless specifically targeting them\n- [ ] Time-box experiments (max 5 minutes injection, 30 minutes observation)\n- [ ] Run during low-traffic windows, never during peak\n- [ ] Document every experiment: hypothesis, method, observations, findings\n- [ ] Automate recurring experiments in CI\u002FCD pipeline\n\n## Anti-Patterns\n\n- Chaos without hypothesis: random breaking is not engineering\n- No kill switch: unable to stop experiment when things go wrong\n- Running in production first: always validate in staging\n- Affecting too many instances: never exceed 5% without explicit approval\n- Chaos during incidents: only inject chaos on healthy systems\n- Not fixing findings: experiments without follow-up action items are wasted\n",{"name":5,"description":7},"main","70e1c350500ee750987420bbae48837afa906b7e","skills\u002Fchaos-engineering","https:\u002F\u002Fgithub.com\u002Frubicanjr\u002FFinCognis","https:\u002F\u002Fgithub.com\u002Frubicanjr","linktr.ee\u002Ffinanskodu","Industrial Engineer & CIO @FinansKodu. Architecting AI-driven financial agents and autonomous workflows. 🏗️ Building systems, not just prompts.","2026-06-09 13:50:15",{"source":8,"skillName":5,"commands":50,"prompt":60,"zipAvailable":61},[51,54,57],{"tool":52,"command":53},"npx","npx skills add rubicanjr\u002FFinCognis --skill chaos-engineering",{"tool":55,"command":56},"bunx","bunx skills add rubicanjr\u002FFinCognis --skill chaos-engineering",{"tool":58,"command":59},"pnpm","pnpm dlx skills add rubicanjr\u002FFinCognis --skill chaos-engineering","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Frubicanjr\u002FFinCognis\u002Fblob\u002Fmain\u002Fskills\u002Fchaos-engineering\u002Fskill.md",true,[],[64,85,94,113,142,161],{"skillNo":65,"name":66,"nameZh":6,"description":67,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":68,"categories":69,"keywords":75,"publishedAt":36},"01M6NWS9DAXJTADT4T5MB49X8W","workflow-router","Goal-based workflow orchestration - routes tasks to specialist agents based on user goals","https:\u002F\u002Fgithub.com\u002Frubicanjr\u002FFinCognis\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow-router\u002FSKILL.md",[70],{"categoryNo":71,"categoryName":72,"taxonomyType":73,"taxonomyTypeDesc":74},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[76,77,78,79,80,81,82,83,84],"workflow router","workflow","router","orchestration","goals","goal","user","workflow orchestration","tasks",{"skillNo":86,"name":87,"nameZh":6,"description":88,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":89,"categories":90,"keywords":91,"publishedAt":36},"01M6NWS3RETSC0SHP16HP66E14","wiring","Wiring Verification","https:\u002F\u002Fgithub.com\u002Frubicanjr\u002FFinCognis\u002Fblob\u002Fmain\u002Fskills\u002Fwiring\u002FSKILL.md",[],[87,92,93],"verification","false",{"skillNo":95,"name":96,"nameZh":6,"description":97,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":98,"categories":99,"keywords":103,"publishedAt":36},"01M6NWS0XW9CVQZBDA1EGW0TWC","websocket-patterns","Connection management, room patterns, reconnection strategies, message buffering, and binary protocol design.","https:\u002F\u002Fgithub.com\u002Frubicanjr\u002FFinCognis\u002Fblob\u002Fmain\u002Fskills\u002Fwebsocket-patterns\u002Fskill.md",[100],{"categoryNo":101,"categoryName":102,"taxonomyType":73,"taxonomyTypeDesc":74},"01JBSEEDCAT000000000000015","视觉设计",[104,27,105,106,107,108,109,110,111,112],"websocket","websocket patterns","design","protocol","management","message","strategies","binary","connection",{"skillNo":114,"name":115,"nameZh":6,"description":116,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":117,"categories":118,"keywords":123,"publishedAt":36},"01M6NWRDQDX9ZNETAWRRMQWV52","visual-verdict","Screenshot comparison QA for frontend development. Takes a screenshot of the current implementation, scores it across multiple visual dimensions, and returns a structured PASS\u002FREVISE\u002FFAIL verdict with concrete fixes. Use when implementing UI from a design reference or verifying visual correctness.","https:\u002F\u002Fgithub.com\u002Frubicanjr\u002FFinCognis\u002Fblob\u002Fmain\u002Fskills\u002Fvisual-verdict\u002FSKILL.md",[119,122],{"categoryNo":120,"categoryName":121,"taxonomyType":73,"taxonomyTypeDesc":74},"01JBSEEDCAT000000000000009","前端开发",{"categoryNo":71,"categoryName":72,"taxonomyType":73,"taxonomyTypeDesc":74},[124,125,126,127,128,129,130,131,132,23,133,134,135,106,136,137,138,139,140,141],"visual","verdict","visual verdict","ui","across","revise","comparison","correctness","implementing","fixes","dimensions","frontend","development","qa","screenshot","returns","use","frontend development",{"skillNo":143,"name":144,"nameZh":6,"description":145,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":146,"categories":147,"keywords":148,"publishedAt":36},"01M6NWR8HSNRS7MNDK2J02QYMN","verification-loop","Comprehensive verification system covering build, types, lint, tests, security, and diff review before a PR.","https:\u002F\u002Fgithub.com\u002Frubicanjr\u002FFinCognis\u002Fblob\u002Fmain\u002Fskills\u002Fverification-loop\u002FSKILL.md",[],[149,150,92,151,152,153,154,155,156,157,158,159,160],"verification loop","loop","lint","review","security","pr","system","diff","build","tests","diff review","types",{"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":15,"licenseFileUrl":6,"sourceHtmlUrl":165,"categories":166,"keywords":167,"publishedAt":36},"01M6NWR4HHSFR0VR5EXFRWA747","vector-db-patterns","Embedding strategies, ANN algorithms, hybrid search, RAG chunking strategies, and reranking for semantic search and retrieval.","https:\u002F\u002Fgithub.com\u002Frubicanjr\u002FFinCognis\u002Fblob\u002Fmain\u002Fskills\u002Fvector-db-patterns\u002Fskill.md",[],[168,169,170,171,27,172,173,174,175,110,176,177,178,179,180,23,181,182],"vector db patterns","vector db","db","vector","semantic search","search","embedding strategies","algorithms","chunking","semantic","retrieval","embedding","Hybrid Search","hybrid","rag"]