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.29.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.29.0.tar.gz | 1.0 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| athena_python_docx-0.29.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.4 MB
Release files / athena_python_docx-0.29.0.tar.gz
| Download URL | athena_python_docx-0.29.0.tar.gz |
|---|---|
| Size | 1.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6f81c60211da0c071f6fef66bd0db91850fa4e61a5ecf6e1fe1ef98fdae2ab25
|
|
BLAKE2b-256 checksum How to use checksums |
b0511eb2b17ea3190f546b27ab72e33d8ddd829437491b93d7743816cc72f578
|
| 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.29.0-py3-none-any.whl
| Download URL | athena_python_docx-0.29.0-py3-none-any.whl |
|---|---|
| Size | 359.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
21eec501b78dd920f562a83dfd0fc1a6e55f8e39dd600475a967ed3e01fbbade
|
|
BLAKE2b-256 checksum How to use checksums |
6d767eeac9f32bba811845452d14d6d9f5b83850d37b0d9ccda5aaf785e85b8b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|