Hi - I answer from the OpenSmartRoute documentation: routing, the API, plans and quotas, self-hosting. Ask away, or open a support ticket if you need a person.
Grounded in the docs - follow a source before acting on it.
api-contract-docs - Skill - OpenSmartRoute
Skillv1.0.0
api-contract-docs
When changing the public API contract, update docs and both OpenAPI specs
Instruction file imported from pricewatcha/pricewatcha-api (.cursor/rules/api-contract-docs.mdc). Copyright stays with the author.
Public API contract updates
Canonical guides live in docs/. Do not edit README.md by hand.
After any semantic change to endpoints, query params, or response fields:
Edit the matching file under docs/ (and docs/changelog.md).
Run python scripts/build_readme.py.
Update openapi/openapi.yaml (GitHub contract). Query params need a description.
Update ../price_tracker/app/api/v1/openapi_spec.py (live GET /openapi.json).
Run ../price_tracker/scripts/sync_api_docs.sh and commit app/api_docs/.
If an MCP tool is affected: mcp-server/src/tools/*.ts and mcp/tools.schema.json.
Checks: python scripts/build_readme.py --check and python scripts/verify_openapi_query_descriptions.py.
Use it
Copy one of these into your project. Installing also returns the manifest and these snippets.
# after Install: the listing is in your workspace's routing pool - a plan picks it for its slot
curl -s -X POST https://api.opensmartroute.ai/api/v1/route -H 'Authorization: Bearer $OSR_API_KEY' -H 'Content-Type: application/json' -d '{"text": "...", "plan": true}'
Manifest
An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.