swesmith
The official SWE-smith package - A toolkit for generating software engineering training data at scale.
What it is and what it does
SWE-smith is a toolkit for generating software engineering training datasets at scale. It converts GitHub repositories into executable environments and synthesizes task instances—such as file localization or program repair tasks—that can be used to train language models to perform software engineering work. The package manages Docker-based execution environments, generates synthetic tasks, filters them by test coverage, and produces issue descriptions for training.
The toolkit is designed for researchers and practitioners building datasets for software engineering agents. Installation from source is required to build custom datasets; the package depends on Docker and is tested only on Ubuntu 22.04.4 LTS, with explicit non-support for Windows and macOS.
Use it for:
- Generate custom software engineering benchmarks from any GitHub repository by creating execution environments and synthesizing task instances.
- Fine-tune language models on software engineering tasks using the pre-built dataset of 52k task instances.
- Create reproducible training data for software engineering agents with controlled task generation and test-based filtering.
- Build reinforcement learning datasets for code-based models using the container infrastructure.
- Evaluate software engineering agents on diverse repositories by synthesizing and executing task instances in isolated Docker environments.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
SWE-smith generates large-scale software engineering training datasets by synthesizing task instances from GitHub repositories and managing their execution environments via Docker.
Yes, if you are training software engineering agents or building custom code benchmarks and have Docker and Ubuntu 22.04.4 LTS available. The toolkit is actively maintained, has low install friction, and provides a complete pipeline from repository to training dataset. Not suitable for Windows or macOS users, and requires significant infrastructure to use beyond pre-built resources.
Install
swesmith on PyPI
pip
pip install swesmithuv
uv add swesmithpoetry
poetry add swesmithInstalling swesmith
Before you install
Low install friction with a pure Python wheel. Active maintenance (last commit 2026-08-10) and recent release cycle. Requires Docker and Ubuntu 22.04.4 LTS; Windows and macOS are explicitly unsupported.
License in practice
MIT License permits commercial and private use, modification, and redistribution with minimal restrictions. No warranty or liability protection for users.
Quickstart
pip install swesmith
from swesmith.profiles import registry
Docker must be installed and running. Package requires Ubuntu 22.04.4 LTS; Windows and macOS are not supported. Python 3.10 or 3.11 required.
Verify before relying
- What runtime dependencies are required beyond those listed in the fact sheet
- Specific Docker version or resource requirements for typical workflows
- Whether the package can be used on non-Ubuntu Linux distributions
Package facts
| License | MIT License Copyright (c) 2025 John Yang Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 168 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 4,979,918/month — #2,188 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: swesmith-0.0.9-py3-none-any.whl
Keywords: nlp, benchmark, code
Tags
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to…
permissive · top 100 on PyPI
huggingface-hubClient library and CLI tool for downloading,…
permissive · top 100 on PyPI
langchainLangChain provides a framework for building…
permissive · top 1,000 on PyPI
hf-xethf-xet provides chunk-based deduplication and…
permissive · top 1,000 on PyPI
tokenizersTokenizers converts raw text into token…
permissive · top 1,000 on PyPI
transformersTransformers provides a unified framework for…
permissive · top 1,000 on PyPI
swebenchSWE-bench is a benchmark framework for…
permissive · top 1,000 on PyPI
mini-swe-agentAn AI agent that solves software engineering…
permissive · top 5,000 on PyPI
swe-rexSWE-ReX provides a runtime interface for AI…
permissive · top 5,000 on PyPI
InstructorEmbeddingInstructorEmbedding generates task-specific…
permissive · top 15,000 on PyPI
terminal-benchTerminal-Bench provides a benchmark suite and…
unclear · top 15,000 on PyPI
datasetsLoads and preprocesses datasets from the…
permissive · top 1,000 on PyPI
ossdataProvides scalable datasets for software…
permissive · top 15,000 on PyPI
trlTRL provides trainer classes for post-training…
permissive · top 5,000 on PyPI
seqioSeqIO builds scalable data pipelines for…
permissive · top 15,000 on PyPI
mmengineMMEngine is a foundational PyTorch training…
permissive · top 5,000 on PyPI