Pain001 可在 macOS、Linux 與 Windows 上以 Python 3.10、3.11 與 3.12 執行(每個版本皆在 CI 測試)。按需安裝即可;所有選用功能皆為額外相依(extra),基礎安裝保持精簡。
01. PyPI#
| 所需功能 | 命令 |
|---|---|
| 核心 CLI 與 Python 函式庫 | pip install pain001 |
| REST API 微服務(FastAPI + Uvicorn) | pip install "pain001[api]" |
| Parquet 資料匯入(PyArrow) | pip install "pain001[parquet]" |
PGP 加密輸入檔(.gpg / .asc) | pip install "pain001[gpg]" |
| 供 API 使用的 Redis 非同步工作佇列 | pip install "pain001[redis]" |
| OpenTelemetry 追蹤 | pip install "pain001[otel]" |
| 內建精簡 MCP / LSP 伺服器 | pip install "pain001[mcp]" / "pain001[lsp]" |
附屬套件需另行安裝,版本各自獨立管理:
驗證安裝並瀏覽電文目錄:
02. Docker#
多架構映像檔(linux/amd64、linux/arm64)發佈於 GitHub Container Registry。容器以專用非 root 使用者執行。
# Generate XML from a local CSV
# Launch the REST API
03. 高度管控環境#
銀行與財資環境常禁止動態載入外掛。針對此情境提供兩項控管:
PAIN001_DISABLE_PLUGINS=1停用所有第三方外掛探索;僅執行內建載入器。pain001 plugins list/pain001 plugins show <name>讓每個探索到的外掛在首次使用前都可稽核。
一切皆在本機執行。套件中沒有任何套件會回傳資料、呼叫 SaaS API,或將付款資料移出主機。
04. 三個命令產生第一個檔案#
--dry-run 會依 JSON Schema、XSD 以及(搭配 --scheme 時)SEPA 或跨境規則手冊驗證,且不寫出任何輸出。結束代碼 0 表示該檔案通過了上述檢查:結構描述驗證,以及選用時的清算規則手冊驗證。您銀行本身的設定規範與通路規則屬於另一回事,仍須經過銀行測試。移除 --dry-run 即會寫出 XML。
