Contributing to nanobot
Description
Thank you for being here. nanobot is built with a simple belief: good tools should feel calm, clear, and humane. We care deeply about useful features, but we also believe in achieving more with less:
Installation
claude install-skill https://github.com/HKUDS/nanobot README
Contributing to nanobot
Thank you for being here.
nanobot is built with a simple belief: good tools should feel calm, clear, and humane. We care deeply about useful features, but we also believe in achieving more with less: solutions should be powerful without becoming heavy, and ambitious without becoming needlessly complicated.
This guide is not only about how to open a PR. It is also about how we hope to build software together: with care, clarity, and respect for the next person reading the code.
Maintainers
| Maintainer | Focus |
|---|---|
| @re-bin | Project lead, main branch |
| @chengyongru | nightly branch, experimental features |
Branching Strategy
We use a two-branch model to balance stability and exploration:
| Branch | Purpose | Stability |
|---|---|---|
main |
Stable releases | Production-ready |
nightly |
Experimental features | May have bugs or breaking changes |
Which Branch Should I Target?
**Target `nightly` if your PR includes:**
- undefined
**Target `main` if your PR includes:**
- undefined
**When in doubt, target `nightly`.** It is easier to move a stable idea from `nightly` to `main` than to undo a risky change after it lands in the stable branch.
How Does Nightly Get Merged to Main?
We don't merge the entire `nightly` branch. Instead, stable features are **cherry-picked** from `nightly` into individual PRs targeting `main`:
nightly ──┬── feature A (stable) ──► PR ──► main
├── feature B (testing)
└── feature C (stable) ──► PR ──► main
This happens approximately **once a week**, but the timing depends on when features become stable enough.
Quick Summary
| Your Change | Target Branch |
|---|---|
| New feature | nightly |
| Bug fix | main |
| Documentation | main |
| Refactoring | nightly |
| Unsure | nightly |
Development Setup
Keep setup boring and reliable. The goal is to get you into the code quickly:
# Clone the repository
git clone https://github.com/HKUDS/nanobot.git
cd nanobot
# Install with dev dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Lint code
ruff check nanobot/
# Format code
ruff format nanobot/
Code Style
We care about more than passing lint. We want nanobot to stay small, calm, and readable.
When contributing, please aim for code that feels:
- undefined
Related Agents
Openai Codex CLI
(55.8k ⭐) - Lightweight coding agent that runs in your terminal.
Development community Key exports from each phase
for summary in .planning/phases/*/*-SUMMARY.md; do echo "=== $summary ===" grep -A 10 "Key Files\|Exports\|Provides" "$summary" 2>/dev/null done
Development community Learn Claude Code -- 真の Agent のための Harness Engineering
[English](./README.md) | [中文](./README-zh.md) | [日本語](./README-ja.md)
Development community Learn Claude Code -- 真正的 Agent Harness 工程
[English](./README.md) | [中文](./README-zh.md) | [日本語](./README-ja.md)
Development community Contributing to pi
Thanks for wanting to contribute! This guide exists to save both of us time.
Development community Compliance Check
| You are a compliance expert specializing in regulatory requirements for software systems including G... | - | [wshobson/agents](https://github.com/wshobson/agents) |
Development community