{"id":"db9a862e-ed9b-4b6f-9935-61704784f1d7","shortId":"EaDJST","kind":"skill","title":"Shard slow pytest suites by historic timings before CI bottlenecks pile up with pytest-split","tagline":"Lets an agent split a large pytest suite into timing-balanced shards so parallel CI lanes finish faster and with less variance.","description":"# Shard slow pytest suites by historic timings before CI bottlenecks pile up with pytest-split\n\nLets an agent split a large pytest suite into timing-balanced shards so parallel CI lanes finish faster and with less variance.\n\n## Prerequisites\n\nPython, pytest, pytest-split\n\n## Installation\n\nUse the upstream install or setup path that matches your environment:\n- pip install pytest-split\n\nRequirements and caveats from upstream:\n- [![PyPI](https://img.shields.io/pypi/v/pytest-split?style=flat-square)](https://pypi.python.org/pypi/pytest-split/)\n- [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pytest-split?style=flat-square)](https://pypi.python.org/pypi/pytest-split/)\n- [![PyPI - License](https://img.shields.io/pypi/l/pytest-split?style=flat-square)](https://pypi.python.org/pypi/pytest-split/)\n\nBasic usage or getting-started notes:\n- For example, some test suites may be fragile considering the order in which the tests are executed.\n- sh\n- First we have to store test durations from a complete test suite run.\n\n- Source: https://github.com/jerry-git/pytest-split\n- Extracted from upstream docs: https://raw.githubusercontent.com/jerry-git/pytest-split/HEAD/README.md\n\n## Documentation\n\n- https://github.com/jerry-git/pytest-split\n\n## Source\n\n- [Agent Skill Exchange](https://agentskillexchange.com/skills/shard-slow-pytest-suites-by-historic-timings-before-ci-bottlenecks-pile-up-with-pytest-split/)","tags":["shard","slow","pytest","suites","historic","timings","before","bottlenecks","pile","with","split","skills"],"capabilities":["skill","source-agentskillexchange","skill-shard-slow-pytest-suites-by-historic-timings-before-ci-bottlenecks-pile-up-with-pytest-split","topic-agent-skills","topic-ai-agents","topic-ai-tools","topic-awesome-list","topic-claude-code","topic-codex","topic-cursor","topic-llm","topic-mcp","topic-npx-skills","topic-openclaw","topic-skills-catalog"],"categories":["skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/agentskillexchange/skills/shard-slow-pytest-suites-by-historic-timings-before-ci-bottlenecks-pile-up-with-pytest-split","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add agentskillexchange/skills","source_repo":"https://github.com/agentskillexchange/skills","install_from":"skills.sh"}},"qualityScore":"0.454","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 8 github stars · SKILL.md body (1,425 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:12:28.328Z","embedding":null,"createdAt":"2026-05-18T13:19:23.871Z","updatedAt":"2026-05-18T19:12:28.328Z","lastSeenAt":"2026-05-18T19:12:28.328Z","tsv":"'/jerry-git/pytest-split':163,174 '/jerry-git/pytest-split/head/readme.md':170 '/pypi/l/pytest-split?style=flat-square)](https://pypi.python.org/pypi/pytest-split/)':121 '/pypi/pyversions/pytest-split?style=flat-square)](https://pypi.python.org/pypi/pytest-split/)':116 '/pypi/v/pytest-split?style=flat-square)](https://pypi.python.org/pypi/pytest-split/)':110 '/skills/shard-slow-pytest-suites-by-historic-timings-before-ci-bottlenecks-pile-up-with-pytest-split/)':181 'agent':19,58,176 'agentskillexchange.com':180 'agentskillexchange.com/skills/shard-slow-pytest-suites-by-historic-timings-before-ci-bottlenecks-pile-up-with-pytest-split/)':179 'balanc':28,67 'basic':122 'bottleneck':10,49 'caveat':104 'ci':9,32,48,71 'complet':156 'consid':137 'doc':167 'document':171 'durat':153 'environ':96 'exampl':130 'exchang':178 'execut':145 'extract':164 'faster':35,74 'finish':34,73 'first':147 'fragil':136 'get':126 'getting-start':125 'github.com':162,173 'github.com/jerry-git/pytest-split':161,172 'histor':6,45 'img.shields.io':109,115,120 'img.shields.io/pypi/l/pytest-split?style=flat-square)](https://pypi.python.org/pypi/pytest-split/)':119 'img.shields.io/pypi/pyversions/pytest-split?style=flat-square)](https://pypi.python.org/pypi/pytest-split/)':114 'img.shields.io/pypi/v/pytest-split?style=flat-square)](https://pypi.python.org/pypi/pytest-split/)':108 'instal':85,89,98 'lane':33,72 'larg':22,61 'less':38,77 'let':17,56 'licens':118 'match':94 'may':134 'note':128 'order':139 'parallel':31,70 'path':92 'pile':11,50 'pip':97 'prerequisit':79 'pypi':107,111,117 'pytest':3,15,23,42,54,62,81,83,100 'pytest-split':14,53,82,99 'python':80,112 'raw.githubusercontent.com':169 'raw.githubusercontent.com/jerry-git/pytest-split/head/readme.md':168 'requir':102 'run':159 'setup':91 'sh':146 'shard':1,29,40,68 'skill':177 'skill-shard-slow-pytest-suites-by-historic-timings-before-ci-bottlenecks-pile-up-with-pytest-split' 'slow':2,41 'sourc':160,175 'source-agentskillexchange' 'split':16,20,55,59,84,101 'start':127 'store':151 'suit':4,24,43,63,133,158 'test':132,143,152,157 'time':7,27,46,66 'timing-balanc':26,65 'topic-agent-skills' 'topic-ai-agents' 'topic-ai-tools' 'topic-awesome-list' 'topic-claude-code' 'topic-codex' 'topic-cursor' 'topic-llm' 'topic-mcp' 'topic-npx-skills' 'topic-openclaw' 'topic-skills-catalog' 'upstream':88,106,166 'usag':123 'use':86 'varianc':39,78 'version':113","prices":[{"id":"ef9d2ec1-e1bf-4e41-9513-1641496e032a","listingId":"db9a862e-ed9b-4b6f-9935-61704784f1d7","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"agentskillexchange","category":"skills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:19:23.871Z"}],"sources":[{"listingId":"db9a862e-ed9b-4b6f-9935-61704784f1d7","source":"github","sourceId":"agentskillexchange/skills/shard-slow-pytest-suites-by-historic-timings-before-ci-bottlenecks-pile-up-with-pytest-split","sourceUrl":"https://github.com/agentskillexchange/skills/tree/main/skills/shard-slow-pytest-suites-by-historic-timings-before-ci-bottlenecks-pile-up-with-pytest-split","isPrimary":false,"firstSeenAt":"2026-05-18T13:19:23.871Z","lastSeenAt":"2026-05-18T19:12:28.328Z"}],"details":{"listingId":"db9a862e-ed9b-4b6f-9935-61704784f1d7","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"agentskillexchange","slug":"shard-slow-pytest-suites-by-historic-timings-before-ci-bottlenecks-pile-up-with-pytest-split","github":{"repo":"agentskillexchange/skills","stars":8,"topics":["agent-skills","ai-agents","ai-tools","awesome-list","claude-code","codex","cursor","llm","mcp","npx-skills","openclaw","skills-catalog"],"license":"mit","html_url":"https://github.com/agentskillexchange/skills","pushed_at":"2026-05-18T19:02:17Z","description":"The open catalog of AI agent skills — 2,000+ security-scanned skills for Claude Code, Cursor, Codex, and more.","skill_md_sha":"a6de4b6aad627859c045311ad9743508f968633f","skill_md_path":"skills/shard-slow-pytest-suites-by-historic-timings-before-ci-bottlenecks-pile-up-with-pytest-split/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/agentskillexchange/skills/tree/main/skills/shard-slow-pytest-suites-by-historic-timings-before-ci-bottlenecks-pile-up-with-pytest-split"},"layout":"multi","source":"github","category":"skills","frontmatter":{"name":"Shard slow pytest suites by historic timings before CI bottlenecks pile up with pytest-split","description":"Lets an agent split a large pytest suite into timing-balanced shards so parallel CI lanes finish faster and with less variance."},"skills_sh_url":"https://skills.sh/agentskillexchange/skills/shard-slow-pytest-suites-by-historic-timings-before-ci-bottlenecks-pile-up-with-pytest-split"},"updatedAt":"2026-05-18T19:12:28.328Z"}}