Thanks for your interest in contributing to AgentOS. AgentOS is an open-source project licensed under Apache 2.0, and contributors of all skill levels are welcome. Whether you are fixing a typo, improving tests, or building a major feature, your help is appreciated.
Follow these steps to get a local development environment running:
-
Clone the repository:
git clone https://github.com/<org>/agentos.git cd agentos
-
Create a virtual environment:
python -m venv venv
-
Activate the virtual environment:
-
macOS/Linux:
source venv/bin/activate -
Windows (PowerShell):
.\venv\Scripts\Activate.ps1
-
-
Install development dependencies:
pip install -e ".[dev]" -
Copy environment variables template and add API keys:
cp .env.example .env
-
Run the test suite:
pytest
-
Run the web platform:
python examples/run_web_builder.py
The main Python package lives in src/agentos/.
Key modules include:
core- foundational agent abstractions and runtime behaviorproviders- model/provider integrations and routinggovernance- safety, policy, budget, and guardrail logicsandbox- evaluation and scenario testing frameworkrag- retrieval-augmented generation componentsscheduler- scheduled jobs and orchestrationevents- event bus and trigger mechanismsplugins- extension interfaces and plugin managementauth- authentication, authorization, and org usageworkflows- multi-step workflow definitions and runnersmarketplace- agent/template registry and manifestsembed- embedded SDK and widget supporttemplates- prebuilt assistant and domain templatesweb- web app integration and serving layer
-
Check open issues, especially those labeled
good first issue. -
Fork the repository and create a feature branch:
git checkout -b feat/your-change
-
Follow conventional commit messages:
feat(module): descriptionfix(module): descriptiontest(module): descriptiondocs: description
-
Write or update tests for any new behavior.
-
Run quality checks before submitting:
pytest ruff check . -
Open a pull request with a clear description of:
- what changed
- why it changed
- how it was tested
If you are new to the project, start by visiting the GitHub Issues tab and filtering for good first issue.
Great places to begin include:
- adding or improving tests
- improving docstrings and inline documentation
- adding new tool or API usage examples
- polishing and expanding developer documentation
Please follow these code standards:
- Python 3.11+ compatibility is required
- type hints are required for new and updated code
- linting is enforced with
ruff - docstrings are expected on all public functions
Keeping style consistent makes code easier to review and maintain.
Questions are welcome. Please use GitHub Discussions for architecture questions, contributor guidance, and general support.