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.
sql-source - Skill - OpenSmartRoute
Skillv1.0.0
sql-source
See CLAUDE.md "Critical Rules" for full SQL conventions.
Instruction file imported from stac-utils/pgstac (.github/instructions/sql-source.instructions.md). Copyright stays with the author.
SQL Source Files
See CLAUDE.md "Critical Rules" for full SQL conventions.
NEVER edit pgstac.sql — it is auto-generated
CREATE OR REPLACE FUNCTION, IF NOT EXISTS, SECURITY DEFINER
Grant permissions in 998_idempotent_post.sql, not inline
get_tstz_constraint() regex must handle fractional seconds (. in timestamps)
Do NOT schema-qualify PostGIS calls — PostGIS may be in public or postgis schema
SQL functions used by GENERATED columns must be self-contained (no cross-function deps) — pg_dump orders functions alphabetically and breaks dependency chains
Test: scripts/runinpypgstac --build test --pgtap --basicsql
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.