About

Built for the calls
nobody was answering.

Kasper is a phone system that talks back — in Baghdadi, southern and Mosuli Arabic before it does anything else, and in English because it also has to.

Mission

Nobody should lose a customer to a phone nobody answered.

Kasper lets a business run its customer contact operation with AI agents instead of — or alongside — the people it already has. An agent has a personality, a set of rules, its own knowledge and a set of things it is allowed to do. Customers reach it by phone, by WhatsApp, on your website or by email, and it talks to them properly.

The part that matters is what happens in the language your customers actually speak. Most systems built for this were designed somewhere else and translated afterwards; this one was built for Baghdadi, southern and Mosuli Arabic first, and works in English because it also has to.

See how it works
Story

This is the second version, and the first one is why.

An earlier Kasper has been answering real calls for a while. It worked, and then it became the kind of thing you cannot safely change — which is a more useful story than the one about a garage.

The first build grew the way products do when they are working. By the end it had one folder holding 1,663 files with no subdirectories inside it, because a rule capped every file at five hundred lines and there was nowhere to put the pieces. Two hundred and thirty-three of those filenames began with the same word.

The database was one table with a JSON column, a leftover from an earlier migration, with around twenty hand-written indexes underneath it doing the work foreign keys would have done. The helpdesk was a separate Ruby application, with a search cluster and a second database, reached through six API calls and about sixty files of proxying and re-skinning.

None of that was visible to a customer, and all of it was visible to anyone trying to change something. The AI settings existed in sixteen different screens; three of them existed three times over, so editing a greeting in one place did not change it in another. Fixing one thing broke another, reliably enough that people stopped fixing things.

So the product is being rebuilt from nothing, with the design kept and the foundation replaced — real relational tables, enforced boundaries between modules, one home for each concern, and a rule that says an uncovered line is a design problem rather than an acceptable gap. The parts a customer liked are the parts that were kept.

What we hold to

Six things, in the order they win.

These are ranked rather than listed, and the ranking is used: when two of them conflict, the higher one decides.

  1. The agent has to be right

    It answers from your knowledge or it does not answer. General world knowledge is refused rather than merely discouraged, and there is a gate that fails closed and a check after generation — because “usually right” is the failure mode this product was rebuilt to remove.

  2. Everything has one home

    One place to change a price, one place a setting lives, one place a rule is written. The previous version put AI settings in sixteen screens, and the cost of that was not tidiness — it was that changing a greeting did not change it everywhere.

  3. Changes do not break other things

    Regressions are caught by tests rather than by customers. Every module is covered on all four metrics, every bug fix ships with the test that would have caught it, and a test that cannot fail is treated as a defect.

  4. It has to look like it was made on purpose

    Both themes, both directions, every breakpoint, every state of every control. Photographed and diffed on every change, because a design that drifts is a design nobody decided.

  5. One person can understand any part of it

    Boundaries between packages are enforced by a check rather than by convention, and nothing imports across a layer it should not. That is what makes a small team able to change a big product.

  6. We say what we do not know

    This site has a status page that reports “not measured” rather than green, a security page that names what we are not certified for, and no testimonials, because we have not been given any. That is not modesty — it is the same rule the agent follows.

Want to work on this?

There is no jobs board and no application form. If building voice software that has to work in Iraqi Arabic sounds like your kind of problem, write to us and say what you would want to work on — that reaches a person, and it is a shorter route than any portal would be.