SLINK Arabic-first AI, automation, agents and private networks
Developers API reference

About

We build the agent
that runs the product.

SLINK is an Arabic-first assistant, automation and agent platform. It runs on our own infrastructure in Riyadh, ships as native iOS and Android apps, and exposes every capability it has as an API you can call. EVΛL, our private coding agent, maintains it — continuously, and without a person in the loop.

What we make

Six products, one account.

Each is a product in its own right. Together they are the reason a customer never has to open a console, paste an API key or configure DNS: one button, one consent, and the capability is on. If a feature cannot ship that way, it does not ship.

The difference

EVΛL runs SLINK.

EVΛL is an exclusive coding agent with direct responsibility for SLINK: it watches the product, measures its performance, finds defects and fixes them automatically — with no human hand on the keyboard for routine work. It has an eye on the running app, a hand on the simulator, and a ship gate it is not permitted to go around.

01It reads the running system — containers, logs, health checks, the live database — before it says anything about it.
02It presses the product it changed. A statement about behaviour that was never pressed is not a statement we accept.
03Every change passes the same gate: unit tests, a staging deploy, live verification, then promotion with automatic rollback.
04Anything irreversible stops and asks the owner on his phone. Permission is granted per action and is never inherited.
$ ops/stage.sh        # tests · staging · live checks
  358 passed in 92s
  57/57 checks passed

$ ops/promote.sh      # merge · restart · verify
  promoted e7a9211 -> ab4c802
  Live is healthy.

This is what companies ask us about first — not that an agent can write code, but that one is accountable for a production system and is held to a gate it cannot bypass.

Both

Two models. One turn.

Both is not two answers side by side. It is a division of labour inside a single turn: one model leads the conversation and writes the plan, the other executes that plan against real files and real tests, and the first reports back in your language. You talk to one thing; two models did the work.

01

GPT leads

Holds the conversation and asks for what is missing.

02

Writes the plan

Goal · Steps · Acceptance criteria, in English Markdown.

03

Claude executes

Edits the files, runs the tests, returns what it did.

04

Reports back

In Arabic: what shipped, what is left, what failed.

01Lead. GPT takes the conversation, because it is stronger in Arabic dialogue. It asks for what is missing before deciding anything.
02Plan. It writes the plan in English Markdown — Goal, Steps, Acceptance criteria — and does not implement it itself.
03Execute. The plan is handed to Claude Code, which edits the files, runs the tests and returns what it did.
04Report. The lead comes back in Arabic: what shipped, what is left and what did not work.
# The hand-off, verbatim

## Goal
Make the composer show who is executing.

## Steps
1. One icon carries the provider mark.
2. The sheet groups: who · model · permission.
3. Remove the segmented control.

## Acceptance criteria
- Both targets compile.
- The icon changes with the selection.

Making it yours

Both is configured, not fixed. You choose the model on each side and the permission the executing side runs under.

SettingOptionsWhat it changes
Lead modelGPT · Codex · the o-seriesWho talks to you, and who writes the plan.
Executing modelOpus · Sonnet · HaikuWho edits the files and runs the tests.
PermissionPlan only · Ask on risk · Automatic · Full accessWhich tools exist at all for this turn — not what the agent intends to do.
ProjectAny repository, or noneThe working directory this turn is allowed to touch.

Permission is enforced by the tool list, not by instruction. Under “Plan only” the write tools are not present at all, so there is nothing to disobey.

Coming to the SLINK app

An agency of your own.

Both is two models. The next step is as many as the work needs: a customer picks several models, gives each a role, a permission and a brief, and runs them as a team. We build the roster around the business — a trading desk does not need what a retailer needs.

One example roster, to make it concrete:

ModelRoleBrief
GPT — OpenAIResearcherTracks the day’s significant trading news and summarises what moved, and why.
Claude — AnthropicBot engineerBuilds the trading bot and its features, operates it, and keeps improving it.
DeepSeekPrice sniperWatches for sudden price gaps and flags the ones worth acting on.
Gemini — GoogleReportingOwns results and reporting — and later, the sales desk.

An example, not a product listing. The roster, the models and the briefs are chosen per customer. Families are named rather than versions: a version number is stale within weeks, and the seat is picked by family.

ResearcherMarket news, summarised daily
Bot engineerBuilds and operates the bot
Price sniperWatches for sudden gaps
ReportingResults, and later the sales desk

Any model on OpenRouter can take a seat — 382 of them. The role sets the brief and the permission; the model is a separate choice, and you change it without rewriting anything.

Six roles

Senior · Architect · Designer · Consultant · Researcher · Reviewer. The role sets the brief; the model is a separate choice.

Three permission tiers

Plan, automatic or full. Each tier is a different tool list, enforced where the tool is called.

382 models, one key

Any model on OpenRouter can take a seat. Batch-only variants are filtered out, because they cannot answer inside a live loop.

Up to 24 agents

A hard limit, refused clearly rather than silently trimmed.

Keys and APIs

Everything the apps do, you can do.

The apps are clients of the same public API. No private endpoint makes the product work: an API key gets you the same surface the phone has.

REST167 public endpoints, documented and live at api.slink.w9li.dev/docs, with an OpenAPI schema you can generate a client from.
KeysIssued per account, scoped and revocable. They are never shown to an end user — that is a rule here, not a default.
HooksWebhooks for the events that matter, so your systems hear about work the moment it finishes.
SSEStreaming responses, so a long turn shows its work instead of going quiet.
curl https://api.slink.w9li.dev/assist \
  -H "Authorization: Bearer $SLINK_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Summarise today's orders"}'

MCP

Two servers your tools can speak to.

Model Context Protocol is how other agents reach SLINK without us writing a bespoke integration for each one. We publish two servers: one for the product, one for the code.

SLINK — the product

Ten tools over the account itself.

slink_askslink_inboxslink_agendaslink_ordersslink_sendslink_automationsslink_create_automationslink_memoryslink_remember

EVΛL — the code

Nine tools over projects and sessions.

code_projectscode_sessionscode_changescode_filecode_grepcode_scoutcode_teamsearchfetch

Integrations

Thirty-five services, one consent each.

A connector is finished when the customer can turn it on with a single button and a single consent screen. If it needs a console, a developer portal or a pasted key, it is not ready to ship.

Saudi commerce and government services are first-class here rather than an afterthought: Salla, Zid, Moyasar, Tabby, Tamara, Wathq and Etimad.

Marks shown are the official ones, used to name a connected service. Twenty of the thirty-five publish a mark under a free licence; the rest appear by name, because a drawing that looks like a logo is worse than the plain word. If you own one of these services — or any other — and want your mark here, or a deeper integration than a connector, we are open to talking. Write to platform@w9li.com.

By the numbers

Where the platform stands.

6products on one account
35services integrated
19MCP tools published
382models an agency can draw on
350+tests on every ship
57live checks before promotion

Work with us

If you are building, start at the docs.

The fastest way to understand what SLINK does is to call it. The reference is public, the schema is downloadable and the MCP servers are documented. If you want an agency built around your business, tell us what the work is — not which models you think you need.