BAUCLI
Business-logic context for your databases — kept true to production.
BAUCLI runs on the developer's machine. It connects to Oracle, PostgreSQL, MySQL and
SQL Server, extracts the real structure and PL/SQL logic, and turns it into documentation
that is reviewed by people and consumed by AI — then writes it back where it belongs:
COMMENT ON in the database and context files in your repository.
Because the context is extracted from the live database on every sync, it does not drift away from what is actually deployed. That is the difference between documentation you trust and documentation you stopped reading.
It is the local component of the BAU platform (BEG Application Utilities), which stores the catalog, runs the AI drafting and holds the approval workflow.
Quick Start
# Install
pip install baucli
# or with all database drivers
pip install baucli[all]
# Activate license
baucli init --license BAU-XXXX-XXXX-XXXX-XXXX
# Add a database
baucli connect --name dev_oracle --engine oracle \
--host localhost --port 1521 --service XEPDB1 --user DEMO_HR \
--schemas DEMO_HR
# Sync objects to BAU Server
baucli sync
# Download AI context for your IDE
baucli context
Commands
| Command | Description |
|---|---|
baucli init --license <key> |
Activate license, receive API key |
baucli connect --name <alias> ... |
Add and test a database connection |
baucli sync [--db name | --all] |
Sync objects to BAU Server |
baucli context [--db name] |
Download AI context (CLAUDE.md) |
baucli status |
Show config, quota, pending deploys |
baucli deploy list |
List pending deploys |
baucli deploy approve <id> |
Approve a deploy |
baucli deploy apply <id> |
Download and apply deploy script |
baucli db list |
List configured databases |
baucli db remove <name> |
Remove a database |
baucli db default <name> |
Set default database |
Multi-Database Support
Configure multiple databases in ~/.baucli/config.json:
# Add Oracle dev
baucli connect --name dev_oracle --engine oracle --host localhost --port 1521 --service XEPDB1 --user HR
# Add PostgreSQL staging
baucli connect --name staging_pg --engine postgresql --host pg-staging --port 5432 --database erp --user app_user
# Add SQL Server production
baucli connect --name prod_mssql --engine mssql --host sql-prod --port 1433 --database erp --user bau_reader
# Sync specific database
baucli sync --db staging_pg
# Sync all
baucli sync --all
# Set default
baucli db default dev_oracle
Supported Databases
| Engine | Driver | Install |
|---|---|---|
| Oracle 19c+ | oracledb (thin mode) | pip install baucli (included) |
| PostgreSQL 14+ | psycopg | pip install baucli (included) |
| SQL Server 2019+ | python-tds | pip install baucli (included) |
| MySQL 8.0+ | mysql-connector | pip install baucli (included) |
Configuration
Config file: ~/.baucli/config.json
{
"license_key": "BAU-XXXX-XXXX-XXXX-XXXX",
"api_url": "https://begbrokerdev.begcloud.com/ords/bauctx/api/v1",
"api_key": "bau_cli_xxxx",
"tenant_code": "ACME_CORP",
"default_db": "dev_oracle",
"databases": {
"dev_oracle": {
"engine": "oracle",
"host": "localhost",
"port": 1521,
"service": "XEPDB1",
"user": "DEMO_HR",
"schemas": ["DEMO_HR"]
},
"staging_pg": {
"engine": "postgresql",
"host": "pg-staging.internal",
"port": 5432,
"database": "erp_hml",
"user": "app_user",
"schemas": ["public", "hr"]
}
},
"sync_interval_min": 30,
"context_output": "CLAUDE.md"
}
Passwords are stored separately in ~/.baucli/.credentials (restricted permissions).
Override config dir with BAUCLI_HOME=~/.baucli-tenant2 to keep multiple isolated profiles on the same machine.
Security
- Database credentials never leave the developer's machine
- Only extracted metadata and source code are sent to BAU Server via HTTPS
- API key uses SHA256 hash — plain token shown once at
baucli init - Passwords stored in
~/.baucli/.credentialswith mode 600 (or OS keychain when available) - BAU Server never executes DDL on your database
Requirements
- Python 3.9+
- Network access to BAU Server (HTTPS)
- Database access (read-only on DBA_SOURCE, DBA_TABLES, etc.)
License
Proprietary — BEG Support © 2025-2026 www.begcloud.com
Release files for baucli 1.0.77
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| baucli-1.0.77.tar.gz | 547.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| baucli-1.0.77-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.1 MB
Release files / baucli-1.0.77.tar.gz
| Download URL | baucli-1.0.77.tar.gz |
|---|---|
| Size | 547.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
739b6d3831413bb683894c9c7d9fd4d0626620709e0aad93dc57caceadf396a0
|
|
BLAKE2b-256 checksum How to use checksums |
4b54b60e866257d0a292fea7ff69988b46d69c6f0c6c1be62c848c6b23fa26d9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / baucli-1.0.77-py3-none-any.whl
| Download URL | baucli-1.0.77-py3-none-any.whl |
|---|---|
| Size | 560.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
05153d14abfc63c0584b97207eac9bb25638d7a12c3b1eca929b8860496c0a79
|
|
BLAKE2b-256 checksum How to use checksums |
c608710eeccf7a00b71daa687898e20affe366b3d53a4b1576fbb277301f7a00
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|