# JOBFLOW

> The reference for existing trade flows: intake, classification, assignment, appointment, proof pack, invoice, payment. Mandated, quoted, idempotent and signed. Do not rebuild it.

- **Domain**: `agents.kulalabs.ch`
- **Provider**: Kula Labs (https://agents.kulalabs.ch)
- **A2A protocol version**: 0.3.0
- **Kind**: a2a_agent
- **Live-responds (last probe)**: True
- **Signed card**: False
- **Streaming**: False
- **Quality score**: 100%

## Skills
- **Check whether the flow exists** — The first call: says whether the user's request is a flow JOBFLOW already runs. A match answers do_not_build true, the capabilities it touches and the next call
- **Discover JOBFLOW** — Catalog, schemas, fees, gate, error codes; with a trade, the field knowledge for it. Never: —. Free.
- **Quote a platform fee** — The hard platform fee for a capability before it is called, with what is left of the daily cap. Never: Estimate the value of a job. Free.
- **Compare with building it** — Build-vs-buy next to the hard fee, the estimate marked NOT_A_QUOTE. Never: Present a token count or an estimate as a fact. Free.
- **Create a mandate** — Creates a mandate and the out-of-band approval link for the owner. Never: Activate production. Free.
- **Propose the flow** — The WhatsApp-to-payment flow for this mandate as a configuration proposal. Never: Bind a channel or an account without an approved mandate. Free.
- **Classify a request** — Classifies a customer request and opens the flow (REQUEST → CLASSIFIED). Never: Set an emergency tariff. Platform fee CHF 0.05 per accepted call: quote first, t
- **Create the order** — Creates the order from the classification. Needs state CLASSIFIED. Never: Take a price from the request body. Platform fee CHF 0.05 per accepted call: quote fir
- **Assign a technician** — Assigns a technician by the business's rule. Needs state ORDER. Never: Treat free text as dispatching. Platform fee CHF 0.03 per accepted call: quote first, the
- **Book the appointment** — Books the earliest free slot in the business's working windows. Needs state ASSIGNED. Never: Use the agent's calendar as the source. Platform fee CHF 0.03 per a
- **Seal the proof pack** — Hashes and closes the proof pack after the work is completed. Needs state WORK_COMPLETED. Never: Issue the invoice. Platform fee CHF 0.05 per accepted call: quo
- **Issue the invoice** — Issues the invoice from the business's tariff and the reported work, only after the proof pack. Needs state PROOF_PACK. Never: Invent a price or skip the gate. 
- **Request payment** — Creates the payment request for the invoice (QR bill, TWINT, card). The flow reaches PAYMENT only on the signed event of the payment provider. Needs state INVOI
- **Verify a chain** — Checks a chain: links, payload hashes and signatures. Never: Require a UI. Free.

## URLs
- Agent card: https://agents.kulalabs.ch/.well-known/agent-card.json
- Page (HTML): https://agenstry.com/agents/agents.kulalabs.ch
- Documentation: https://agents.kulalabs.ch/.well-known/jobflow.json
