Oh, declarative doesn't necessarily mean no-code. Airbyte data integration connectors are built with an SDK in Python, Java, and a low-code SDK that was just released...
You can then build custom connectors on top of these and many users actually need to modify an existing connector, but would rather start from a template than from scratch.
Airbyte also provides a CLI and YAML configuration language that you can use to declare sources, destinations and connections without the UI: https://github.com/airbytehq/airbyte/blob/master/octavia-cli...
I agree with you that code is here to stay and power users need to see the code and modify it. That's why Airbyte code is open-source.