A proof-of-concept Go application that extracts document content, suggestions (proposed edits), and comments from Google Docs using the Google Docs API and Google Drive API.
sudo snap install bauer
First time installation
brew install britneywwc/bauer/bauer
Upgrade to a newer version or later
brew update
brew upgrade bauer
N.B. You need to install Copilot CLI which is used by Bauer.
- Install Copilot CLI
- Create
credentials.jsonfile and copy the structure from the default file - Get credentials from Google Cloud service or Bitwarden (internally)
- Fill up
credentials.jsonwith Google Cloud credentials (see Generating Google Cloud credentials). - Share copy document with service account
- Install bauer using the instructions above
- Check that
copilotandbauerare installed - Get document ID from Google Document & share the document with the service account
- Run Bauer
bauer --doc-id <your-document-id> --credentials ./credentials.json- Optional parameters
| Flag | Type | Default | Description |
|---|---|---|---|
--chunk-size |
int | 1 |
Total number of chunks to create (default: 1, or 5 if --page-refresh is set) |
--dry-run |
bool | false |
Run extraction and planning only; skip Copilot execution and PR creation |
--output-dir |
string | bauer-output |
Output directory for generated files |
--model |
string | gpt-5-mini-high |
Copilot model to use for code generation |
--page-refresh |
bool | false |
Whether this is a page refresh, or the default copy update |
bauer --doc-id <your-document-id> --credentials ./credentials.jsonbauer --doc-id <your-document-id> \
--credentials ./credentials.json \
--dry-runbauer --doc-id <your-document-id> \
--credentials ./credentials.json \
--chunk-size 5 \
--output-dir ./resultsbauer --doc-id <your-document-id> \
--credentials ./credentials.json \
--model "claude-sonnet-4.5"bauer --doc-id <your-document-id> \
--credentials ./credentials.json \
--page-refresh- Install
go - Install
task - Install Copilot CLI
- Modify the Taskfile with your document ID and credentials path for convenience
- Run the project with task
task run
For more information refer to ARCHITECTURE.md
- Automatically open PR with changes applied to the document using Google Docs API
- Improve prompt templates for better results (this requires a lot of trial and error)
for code improvements, you can also refer to our todo list
On the long term, BAUer should evolve into a full-fledged API service, with the following features:
- Automatic Jira ticket hooks to trigger workflows
- Unified service account with domain wide delegation
- Calling LLMs - with varying implementation complexity - via: - calling LLM APIs directly - spinning up ephemeral Copilot CLI instances - self-hosted LLMs (can use open source models such as Llama, openAI OSS, deepseek, etc)
- Automatic PR creations and reviewer assignments