AGENTS.md · pyodide/pyodide
AGENTS.md from pyodide/pyodide: 108 lines covering Brief overview, Communication style, Development workflow, Coding best practices and more.
Template by pyodide
Chalk Labs
Need help deploying AGENTS.md · pyodide/pyodide?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode, Claude Code. Read the repository before you give any tool access to your data.
curl -fsSL https://raw.githubusercontent.com/pyodide/pyodide/main/AGENTS.md -o AGENTS.md
Read it and adapt it to your project before use.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: prompt-engineering
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
What's in it
An AGENTS.md file: instructions coding agents (Codex, Cursor, Copilot, Gemini CLI and others) read before working in a repo.
- For
- Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode, Claude Code
- Length
- 108 lines
- File
AGENTS.md
Sections
- Brief overview
- Communication style
- Development workflow
- Coding best practices
- Project context
- Contribution Areas
- Development Environment
- Project Structure
- Key Technologies
- Building the project
- Package Management
- Contributing
- Core C Code Development
- Testing and Debugging
- Documentation Structure
- Tooling and Dependencies
- Content and Style
- Building the Documentation
First lines (shown under the repo's MPL-2.0 license)
## Brief overview These are general guidelines for working in this workspace. ## Communication style - Be direct and concise in your responses. - Provide clear explanations for your actions. ## Development workflow - Use the `docs/` directory for all documentation. - Follow the existing structure of the project when adding new files. - Use the `Makefile` to build the project. ## Coding best practices - Follow the coding style of the existing code. - Write tests for new features. ## Project context - This project is a Python distribution for the browser and Node.js based on WebAssembly. - The project is hosted on GitHub at https://github.com/pyodide/pyodide. ## Contribution Areas - **Compiler:** Work on the CPython compilation to WebAssembly, including LLVM and Emscripten. - **Python:** Improve the Python interpreter, including standard library compatibility, performance, and size. - **Package Support:** Add support for new packages, including those with C, C++, Fortran, or Rust extensions. - **Packaging and Distribution:** Improve the packaging and distribution of Pyodide and its packages. - **Browser Integration:** Enhance the interaction between the Python and JavaScript runtimes. - **JS Runtimes:** Improve support for different JavaScript runtimes, such as Node.js, Deno, and Bun. - **Tooling:** Improve the build system, package installer, and testing infrastructure. - **Documentation:** Improve the existing documentation and add new content. - **Application Development:** Build new applications using Pyodide. ## Development Environment - The development environment is Linux-based. - For Windows users, WSL or GitHub Codespaces is recommended. - Follow the instructions in the documentation to build Pyodide from source. ## Project Structure - **cpython/:** Contains the CPython source code, patches, and build scripts. - **src/:** Contains the JavaScript and Python APIs, as well as the Foreign Function Interface (FFI). - **packages/:** Contains the recipes for building Python packages. - **pyodide-build/:** Contains the build system for Pyodide. pyodide-build is a submodule and we do not directly modify the source code in this repository. All the pyodide-build-related changes should be dealt separately in pyodide-build repository. ## Key Technologies - **WebAssembly:** The compilation target for the CPython interpreter and native extensions. - **Emscripten:** The compiler toolchain used to build WebAssembly modules for the browser. - **LLVM:** The underlying compiler infrastructure used by Emscripten. ## Building the project - Use `make` to build the project. - For a streamlined build process, use the provided Docker image. - When building from source, follow the specific instructions for your operating system (Linux, macOS). ## Package Management - Python packages are built using recipes defined in `meta.yaml` files. - To add a new package, create a recipe and add it to the `pyodide-recipes` repository. - Use `pyodide build` to build individual packages from source. ## Contributing - Follow the development workflow outlined in `docs/development/contributing.md`. - Adhere to the Code of Conduct. - Use `prek` (faster alternative to `pre-commit`) to ensure code style consistency. ## Core C Code Development - When modifying the core C code in `src/core`, follow the guidelines in `docs/development/core.md`. - Use the provided error handling macros for consistency. - Follow the specified function structure for clarity and correct resource management. ## Testing and Debugging - Use `pytest` for the Python test suite and `npm test` for the JavaScript tests. - Refer to `docs/development/debugging.md` for tips on debugging, including how to handle linker errors and build with symbols. ## Documentation Structure - All documentation is located in the `docs/` directory. - The documentation is organized into three main sections: `usage`, `development`, and `project`. - New documentation should be added to the appropriate section. ## Tooling and Dependencies - The documentation is built using Sphinx. - The required Python packages for building the documentation are listed in `docs/requirements-doc.txt`. - When adding new dependencies, update `docs/requirements-doc.txt`. ## Content and Style - The main entry point for the documentation is `docs/index.rst`. - We only use markdown except for the index.rst file. - JavaScript and TypeScript documentation is handled via `sphinx-js`. ## Building the Documentation - The `Makefile` and `make.bat` files in the `docs/` directory are used to build the documentation. - Use `make help` to see available build targets.
Signals
- Stars
- 14,904
- Forks
- 1,057
- Open issues
- 347
- Last commit (this folder)
- Apr 8, 2026 (6 months ago)
- Last release
- Sep 14, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MPL-2.0
- Repository
- github.com/pyodide/pyodide
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get AGENTS.md · pyodide/pyodide running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
AGENTS.md · pyodide/pyodide. Agent Mart. https://agentmart.dev/templates/pyodide-pyodide-agents-md (last updated 2026-10-24)