mirror of
https://github.com/arsvendg/Stirling-PDF.git
synced 2026-07-14 10:34:06 +02:00
Added the create agent. Use [these prompts](https://github.com/Stirling-Tools/Stirling-PDF-SaaS/blob/main/docgen/backend/default_templates/sample_prompts.md) to test or try your own :) Here’s the one I use ``` Hey, I need to generate an employee expense report for reimbursement. Company: Summit Consulting Partners Company address: 88 Riverside Plaza, Suite 1400, New York, NY 10069 Accounting department email: [email protected] Employee details: * Employee Name: Michael Tran * Employee ID: EMP-1047 * Department: Client Services * Report Date: January 20th, 2026 * Reporting Period: January 5th, 2026 – January 16th, 2026 * Manager Approver: Laura Simmons Trip purpose: Client onsite meetings with Atlantic Energy Solutions in Boston, MA. Expense items: * Flight (NYC to Boston roundtrip) — $325.40 — January 5th, 2026 — Airline ticket * Hotel (3 nights at Harborview Hotel) — $822.75 — January 5th-8th, 2026 * Taxi from airport to hotel — $48.00 — January 5th, 2026 * Client dinner (3 attendees) — $186.20 — January 6th, 2026 * Parking at JFK Airport — $72.00 — January 5th-8th, 2026 * Breakfast (per diem not used) — $18.50 — January 7th, 2026 * Uber to client office — $22.10 — January 7th, 2026 * Printing + presentation materials — $46.90 — January 8th, 2026 * Lunch with client — $39.75 — January 8th, 2026 * Office supplies (notebooks, pens) — $27.60 — January 10th, 2026 * Mileage reimbursement (client visit in NJ, 42 miles @ $0.67/mile) — $28.14 — January 14th, 2026 * Team lunch meeting (internal) — $64.30 — January 15th, 2026 Reimbursement method should be direct deposit. Add a notes section stating: "All receipts attached. Expenses are business-related and comply with company travel policy." ``` --------- Co-authored-by: Anthony Stirling <[email protected]>
78 lines
1.8 KiB
TOML
78 lines
1.8 KiB
TOML
[project]
|
|
name = "engine"
|
|
version = "0.1.0"
|
|
description = "AI Document Engine"
|
|
requires-python = ">=3.13"
|
|
dependencies = [
|
|
"fastapi>=0.116.0",
|
|
"jinja2>=3.1.0",
|
|
"pgvector>=0.3.6",
|
|
"psycopg[binary]>=3.2",
|
|
"pydantic>=2.0.0",
|
|
"pydantic-ai>=1.67.0",
|
|
"pydantic-ai-slim[voyageai]>=1.67.0",
|
|
"pydantic-settings>=2.0.0",
|
|
"python-dotenv>=1.2.1",
|
|
"sqlite-vec>=0.1.6",
|
|
"uvicorn>=0.35.0",
|
|
"opentelemetry-sdk>=1.39.0",
|
|
"posthog>=3.0.0",
|
|
]
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"anyio>=4.0.0",
|
|
"datamodel-code-generator[ruff]>=0.26.0",
|
|
"pytest>=8.0.0",
|
|
"pyright>=1.1.408",
|
|
"referencing>=0.35.0",
|
|
"ruff>=0.14.10",
|
|
]
|
|
|
|
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["src"]
|
|
exclude = [
|
|
"tests",
|
|
]
|
|
|
|
[tool.ruff]
|
|
line-length = 120
|
|
target-version = "py313"
|
|
|
|
[tool.ruff.lint]
|
|
select = [
|
|
"E",
|
|
"F",
|
|
"I",
|
|
"N",
|
|
"W",
|
|
"RUF100",
|
|
"UP",
|
|
"PYI", # flake8-pyi: flags deprecated typing constructs
|
|
"FA", # flake8-future-annotations: flags missing future annotations imports
|
|
"BLE", # flake8-blind-except: flags bare `except Exception`
|
|
]
|
|
|
|
[tool.pyright]
|
|
pythonVersion = "3.13"
|
|
|
|
reportImportCycles = "warning"
|
|
reportUnnecessaryCast = "warning"
|
|
reportUnnecessaryTypeIgnoreComment = "warning"
|
|
reportUnusedImport = "warning"
|
|
reportUnknownParameterType = "warning"
|
|
reportDeprecated = "warning"
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
# ``tests`` is on the path so test modules can import shared helpers (e.g.
|
|
# ``from conftest import build_app_settings``) without packaging the tests dir.
|
|
pythonpath = ["src", "tests"]
|
|
# Use importlib import mode so test directories don't need __init__.py files
|
|
# and duplicate basenames (e.g. multiple test_routes.py) collect cleanly.
|
|
addopts = "--import-mode=importlib"
|