AI-Assisted Coding With IoP
Use this guide when you want to vibe code with IoP while still getting production-shaped, reviewable Python interoperability code.
Start Here
Ask the tool to read the project guidance before it writes code:
You are helping me build an IoP application.
Read these files first:
- AGENTS.md
- docs/ai-coding.md
- docs/cookbooks/index.md
- docs/getting-started/first-steps.md
- docs/getting-started/register-component.md
- docs/production-graph.md
Use the Python Production graph workflow for new applications.
Do not put component startup logic in __init__(); use on_init().
Use the relevant cookbook for the task.
Show the migration and verification commands.
On the published docs site, open AGENTS.md from the repository root.
For your own IoP application repository, copy the reusable AGENTS.md template into the project root and adapt it to the local production. For healthcare projects, also read Healthcare AI-assisted coding.
Cookbooks
Use the IoP cookbooks for task-specific prompts and checklists:
- Hello-world production
- Add a BusinessOperation
- Add a BusinessProcess
- Add a PollingBusinessService
- Production settings and targets
- Remote migration
- HL7v2 native input
- HL7v2 to FHIR with fhir-converter
- FHIR submission with a Python client
Good Output Expectations
For a new IoP application, generated code should include:
- a
settings.pyfile with aProductionobject PRODUCTIONS = [prod]- clear component names such as
FileService,RouteProcess, orOrderOperation - message classes for data exchanged between components
target()settings for configurable outbound routingprod.connect(...)calls that wire services, processes, and operations- sample payloads or tests when behavior changes
- migration and verification commands
Useful Commands
# Fast pure-Python checks
python -m pytest src/tests/unit
# Validate a migration file without writing to IRIS
iop --migrate settings.py --dry-run
# Migrate a production
iop --migrate settings.py
# Build the documentation
mkdocs build
# Run the Docker-backed suite
docker build -t pytest-iris -f dockerfile-ci .
docker run -i --rm pytest-iris