11# Contributing to oya
22
3- Thanks for your interest — ** oya is a community project** and we'd love your help.
3+ Thanks for your interest - ** oya is a community project** and we'd love your help.
44It's early, so there's high-leverage work across providers, agent DX, streaming,
55the Studio, docs, and examples. This is also the open-source core that
66[ oya.ai] ( https://oya.ai ) is built on, so improvements here reach a lot of people.
77
88New contributors are welcome. If it's your first PR to an open-source project,
9- that's fine — say so and we'll help you through it.
9+ that's fine - say so and we'll help you through it.
1010
1111## Ways to contribute
1212
13- - ** Report a bug** — open a [ bug report] ( https://github.com/OyaAIProd/oya/issues/new?template=bug_report.yml ) .
14- - ** Request a feature** — open a [ feature request] ( https://github.com/OyaAIProd/oya/issues/new?template=feature_request.yml ) ,
13+ - ** Report a bug** - open a [ bug report] ( https://github.com/OyaAIProd/oya/issues/new?template=bug_report.yml ) .
14+ - ** Request a feature** - open a [ feature request] ( https://github.com/OyaAIProd/oya/issues/new?template=feature_request.yml ) ,
1515 or start a [ Discussion] ( https://github.com/OyaAIProd/oya/discussions ) for
1616 anything design-shaped.
17- - ** Improve docs or examples** — often the best first PR.
18- - ** Pick up an issue** — look for [ ` good first issue ` ] ( https://github.com/OyaAIProd/oya/labels/good%20first%20issue )
17+ - ** Improve docs or examples** - often the best first PR.
18+ - ** Pick up an issue** - look for [ ` good first issue ` ] ( https://github.com/OyaAIProd/oya/labels/good%20first%20issue )
1919 and [ ` help wanted ` ] ( https://github.com/OyaAIProd/oya/labels/help%20wanted ) .
20- - ** Answer questions** and help others in Discussions — this counts, and it's how
20+ - ** Answer questions** and help others in Discussions - this counts, and it's how
2121 people become maintainers.
2222
2323For anything beyond a small fix, ** open an issue or Discussion before you write a
24- lot of code** so we can align on the approach — it saves everyone a painful review.
24+ lot of code** so we can align on the approach - it saves everyone a painful review.
2525
2626## Ground rules
2727
2828- Be kind and constructive. All participation is governed by our
2929 [ Code of Conduct] ( ./CODE_OF_CONDUCT.md ) .
3030- Governance and how decisions get made are described in [ GOVERNANCE.md] ( ./GOVERNANCE.md ) .
31- - Report security issues ** privately** — see [ SECURITY.md] ( ./SECURITY.md ) , never a
31+ - Report security issues ** privately** - see [ SECURITY.md] ( ./SECURITY.md ) , never a
3232 public issue.
3333
3434## Setup
@@ -67,7 +67,7 @@ Don't weaken it.
6767 the LLM-output tolerance of the reference: ` {param: handle} ` maps, ` null `
6868 positional placeholders, the ` else ` branch alias, projection-name coercion.
6969- The executor, sandbox, and planner are ** async** (a deliberate divergence from
70- the synchronous Python — real skills do I/O).
70+ the synchronous Python - real skills do I/O).
7171- Projection levels are enforced by a ** static check before execution**
7272 (` src/checker.ts ` ) plus the projected view (` src/view.ts ` ). New node kinds must
7373 declare their disclosure requirement in ` src/projection/validation.ts ` .
@@ -84,7 +84,7 @@ Don't weaken it.
84844 . Write a ** conventional, present-tense subject** (e.g. ` add anthropic provider ` ,
8585 ` fix branch alias coercion ` ). The PR title becomes the squash-merge commit.
86865 . Open the PR and fill in the template. ** Link the issue it closes** (` Closes #NN ` ).
87- 6 . Keep the PR focused and responsive to review — small, well-described PRs merge
87+ 6 . Keep the PR focused and responsive to review - small, well-described PRs merge
8888 fast.
8989
9090CI (` .github/workflows/ci.yml ` ) runs build → typecheck → test on every PR; it must
@@ -93,7 +93,7 @@ maintainers keep `main` releasable at all times.
9393
9494### Review & merge
9595
96- A maintainer will review — expect a first response within a few days. We may ask
96+ A maintainer will review - expect a first response within a few days. We may ask
9797for changes; that's normal and not a rejection. Once approved and green, a
9898maintainer squash-merges. Notable changes (public API, the Plan IR, projection
9999semantics) follow the extra process in [ GOVERNANCE.md] ( ./GOVERNANCE.md ) .
0 commit comments