Proponer una pull request
Las pull requests son bienvenidas, de una errata a una nueva herramienta. Esta página da el camino a seguir; Desarrollo describe en detalle el repositorio y sus controles. Necesita una cuenta de GitHub, git, uv y just.
Paso a paso
Sección titulada «Paso a paso»-
Haga un fork y clónelo. En GitHub, pulse Fork y clone su copia. Con la CLI de GitHub, en un solo comando:
Ventana de terminal gh repo fork mathbeal/avenir-mcp --clonecd avenir-mcp -
Instale y compruebe el punto de partida.
Ventana de terminal uv sync # Python 3.14 y las herramientas de desarrollo bloqueadasjust check # todo debe pasar antes de cambiar nada -
Cree una rama con el nombre del cambio:
Ventana de terminal git switch -c feat/subidas-suscripciones -
Escriba primero la prueba, véala fallar y escriba el código que la hace pasar. Las pruebas solo usan datos inventados — nunca YNAB, nunca su presupuesto. Amplíe el presupuesto de demostración en
evals/demo_budget.pysi un ejemplo necesita cifras nuevas. -
Ejecute los controles hasta que pasen todos:
Ventana de terminal just fix # formatojust check # ruff, pylint, mypy, pytest (100 % de cobertura), vocabulario, bloqueojust hygiene # erratas, auditoría de workflowsjust secrets # gitleaks sobre cada commit (con Docker) -
Actualice la documentación. Si cambió una herramienta, sus argumentos o sus respuestas, ejecute
uv run python -m docsgeny haga commit de lo que escribe. Una página escrita a mano se cambia en inglés, francés y español a la vez;just docsconstruye el sitio y falla ante un enlace roto. -
Haga commit con un prefijo que indique el tipo de cambio — el changelog se genera a partir de él:
Ventana de terminal git commit -s -m "feat: list subscriptions whose price went up"-sfirma el commit: usted certifica el Developer Certificate of Origin — escribió el cambio, o tiene derecho a proponerlo bajo licencia MIT. -
Suba la rama y abra la pull request.
Ventana de terminal git push -u origin feat/subidas-suscripcionesgh pr create --fillO ábrala desde el enlace que muestra GitHub. Rellene la plantilla: qué y por qué, cómo se comprobó, la lista de control, y
Closes #<issue>.
Qué pasa después
Sección titulada «Qué pasa después»| Etapa | Qué esperar |
|---|---|
| CI | los mismos controles que just check y just hygiene, en Linux, macOS y Windows, la construcción de la documentación, el MCP Inspector, commits firmados y un título que empieza por el tipo de cambio; CI passed y MCP Inspector deben estar en verde. En una primera contribución, un mantenedor aprueba antes la ejecución. |
| Revisión | comentarios sobre el código; suba nuevos commits a la misma rama para responder |
| Fusión | agrupada en un solo commit en main, con el título de su pull request como mensaje |
| Versión | su cambio aparece en el changelog de la siguiente versión |
Qué hace aceptar una pull request
Sección titulada «Qué hace aceptar una pull request»- Un cambio por pull request, lo bastante pequeño para revisarlo de una vez.
- Pruebas escritas primero, que cubren cada línea y cada rama.
- Ninguna dependencia nueva de ejecución sin un motivo escrito en la pull request.
- Escrituras seguras: una herramienta que modifica el presupuesto previsualiza, espera la confirmación y se puede deshacer — vea Seguridad por diseño.
- Ningún dato financiero real, en ningún sitio: código, pruebas, documentación, capturas.
- Cada commit firmado (
git commit -s).
El contrato completo está en AGENTS.md, que se aplica tanto a las personas como a los agentes de código.
Proyecto no oficial. «We are not affiliated, associated, or in any way officially connected with YNAB or any of its subsidiaries or affiliates.» No estamos afiliados, asociados ni conectados oficialmente con YNAB. YNAB y You Need A Budget son marcas registradas de YNAB. avenir-mcp se ofrece tal cual, sin garantía, y no es asesoramiento financiero. Aviso legal