New Capability: Google Docs Document Delivery
Date: March 6, 2026 Origin: ABS Company spec delivery session Impact: All three AI leaders can now produce formatted, shareable Google Docs from markdown
What Happened
During the ABS Company /spec session, Chris needed to share the implementation specification with Ryan Ginsberg (ryan@valuefirstteam.com) and Alexia (alexia@theabscompany.com) as a polished Google Doc — not raw markdown.
Infrastructure Unblocked
Three things were missing from the Google Workspace service account configuration:
- Drive scope —
https://www.googleapis.com/auth/drivewas not authorized in Google Workspace Admin Console (Security > API Controls > Domain-wide Delegation). Chris added it. - Docs scope —
https://www.googleapis.com/auth/documentswas also not authorized. Chris added it alongside the Drive scope. - Docs API — The Google Docs API had never been enabled in GCP project 515447210394. Chris enabled it.
The service account (v-operations@value-first-operations.iam.gserviceaccount.com) now has these authorized scopes:
- Gmail (send, read, compose) — authorized since Feb 16
- Calendar (read, write) — authorized since Feb 16
- Drive (full access) — authorized Mar 6
- Docs (full access) — authorized Mar 6
What Was Built
scripts/google/create-doc.js — Creates a formatted Google Doc from a markdown file.
The script converts markdown to HTML (headings, tables with styled borders, bold/italic/code, checkbox lists, code blocks, horizontal rules), then uploads via the Drive API with mimeType: application/vnd.google-apps.document conversion. Google's server-side HTML→Docs conversion produces native headings, formatted tables, and proper typography — not raw markdown text.
Usage
# Basic: create a formatted Google Doc from a markdown file
node scripts/google/create-doc.js --name "Document Title" --body-file /path/to/content.md
# With sharing: create and share with specific people
node scripts/google/create-doc.js --name "Title" --body-file /path/to/file.md --share "email1,email2"
# With folder placement
node scripts/google/create-doc.js --name "Title" --body-file /path/to/file.md --folder "FOLDER_ID"
# Inline content (short documents)
node scripts/google/create-doc.js --name "Title" --body "## Section\n\nContent here"
# Dry run (preview without creating)
node scripts/google/create-doc.js --name "Title" --body-file /path/to/file.md --dry-run
Full Pipeline Demonstrated
This session proved the complete document delivery pipeline:
/spec generates markdown spec
↓
create-doc.js converts to formatted Google Doc (with sharing)
↓
create-draft.js creates Gmail draft with doc link
↓
Chris reviews and sends
Artifacts created:
- Formatted Google Doc:
1JUipVMKmnwukNWMaXS1bSDGS7r9yZ0WreWQOj_Ow7DA - Gmail draft to Ryan + CC Alexia with doc link
How Each Leader Uses This
V (Operations)
- Implementation specs (
/spec→ Google Doc → email to implementer) - Architecture documents, project briefs, any deliverable that needs to leave the terminal
- Client-facing documentation that Chris sends on behalf of the team
Sage (Customer)
- Relationship briefs shared with team members before sessions
- Assessment reports delivered as polished documents to stakeholders
- Any intelligence output that needs to be readable outside the terminal
Pax (Finance)
- Revenue reconciliation reports shared with accountant (Mac Reed)
- 1099 compliance documentation
- Investment portfolio summaries for Advisory Committee review
Pattern: Any Markdown → Shareable Document
Any skill or command that produces markdown output can now feed create-doc.js to create a shareable, formatted Google Doc. The doc appears in Chris's Drive and can be shared with anyone.
Cleanup
The first attempt created a raw-markdown doc (ID: 1BgRw_15XTl1XI-Ye1g8i-Dj80o0JzD7kHm8xhSEnbv8) that should be deleted from Chris's Drive.
Summary
| Item | Before | After |
|---|---|---|
| Google Drive API access | Not authorized | Full Drive + Docs scopes |
| Document delivery | Terminal-only (markdown files) | Formatted Google Docs, shareable |
| Spec delivery pipeline | Manual copy/paste | /spec → Google Doc → Gmail draft |
| Service account scopes | Gmail + Calendar | Gmail + Calendar + Drive + Docs |