athena-python-docx
Drop-in replacement for python-docx that connects to Athena's Keryx-backed Word document stack.
Quick start
from docx import Document
from docx.shared import Inches, Pt, RGBColor
# Open an existing Word document asset by its Athena asset_id
with Document("asset_abc123") as doc:
doc.add_heading("Market Analysis", level=1)
p = doc.add_paragraph()
r = p.add_run("Revenue grew ")
highlight = p.add_run("12.3% year-over-year")
highlight.bold = True
highlight.font.color.rgb = RGBColor(0x00, 0x80, 0x00)
p.add_run(".")
t = doc.add_table(rows=2, cols=2, style="TableGrid")
t.cell(0, 0).text = "Segment"
t.cell(0, 1).text = "Revenue"
t.cell(1, 0).text = "Enterprise"
t.cell(1, 1).text = "$4.3M"
doc.save()
API parity rule
This SDK mirrors python-docx's public API exactly. See CLAUDE.md for the full contract.
Development
uv venv
uv pip install -e ".[dev]"
uv run pytest tests/ -x
DocX Execution Lab
For fast local repros against real Athena document assets, use the
headless runner in scripts/docx_exec_lab.py. It executes an arbitrary
Python snippet with this checkout of athena-python-docx, captures
stdout/stderr/errors/timings, and can export the resulting .docx for
text assertions. scripts/docx_exec_lab_server.py adds a local UI with
an Olympus Word document embed preview pane. See DOCX_EXEC_LAB.md.
Environment variables
Required when connecting to DOCX Studio (set by the Athena backend in the execute_word_document_code executor sandbox):
ATHENA_DOCX_BASE_URL— DOCX Studio API base URLATHENA_DOCX_API_KEY— Athena API key or service-issued DOCX Studio token
License
MIT
Metadata
Release files for athena-python-docx 0.30.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| athena_python_docx-0.30.0.tar.gz | 1.0 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| athena_python_docx-0.30.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.4 MB
Release files / athena_python_docx-0.30.0.tar.gz
| Download URL | athena_python_docx-0.30.0.tar.gz |
|---|---|
| Size | 1.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5bbbccf65adc9463f26e760a2c0e9f12b024e84e79bd760a28dfa7d8d960c41d
|
|
BLAKE2b-256 checksum How to use checksums |
f47f3d56e14139db63cea842281f72b19e45cecfe8615a53d7c150483b665e01
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|
Release files / athena_python_docx-0.30.0-py3-none-any.whl
| Download URL | athena_python_docx-0.30.0-py3-none-any.whl |
|---|---|
| Size | 361.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c0a047bc538c3083f9ce4194ad5e67e54c1d616cc20e939a61d94f5dac224231
|
|
BLAKE2b-256 checksum How to use checksums |
5f9efe423b7eca637d17eca6937644b9d7ea694b40e9a866d533fabadea018ec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|