Desktop app and extension

Mubarmij Agent — local work and pushing to Mubarmij with an API key | Mubarmij

Mubarmij Agent is a desktop coding agent that works on the project folder on your machine with any model provider, with the Mubarmij extension enabled by default. With one API key it pulls a project from your account into a folder, and after editing pushes it back to the same project within your plan's limits, then publishes it with your approval.

العربية

On this page
The Mubarmij Agent app: a local project linked to a Mubarmij project
The Mubarmij Agent app: a local project linked to a Mubarmij project

Download: the installer appears on the downloads page once its file is published (/en/docs/desktop/install). The app is built on the Abdo Code line and distributed to customers as a binary.

What Mubarmij Agent is

A coding agent on your machine: it reads and edits the files of the open folder and previews the result, with whatever model provider you configure in Settings. What sets it apart is that the «Mubarmij» extension is installed and enabled from the first launch: Mubarmij templates, sections, design system, publishing and domains, plus the bridge between your folder and the projects of your account. Removing the extension in Settings > Extensions is final.

Connecting the account with an API key

Create the key on the API keys page of your dashboard (it starts with mop_) and paste it into the app: Settings > Extensions > Mubarmij > «Account key». It is stored in the app's vault, never in the conversation or in a file. The scopes the bridge needs: projects:read to pull, projects:write to push, and publish to publish (not in the default set — pick it when creating the key if you want to publish from the app). See /en/docs/account/api-keys.

Once connected, the account tool (GET /api/v1/me) shows your plan and its limits: projects used and remaining, the maximum project size in bytes, and the stacks your contract includes — the same numbers the push enforces.

Pull: from Mubarmij to a folder

«Pull the project into a folder»: the app reads the project with its files (GET /api/v1/projects/{id}), writes them into the folder you choose, and keeps a small .mubarmij.json next to them with the project id and the files' fingerprint (filesDigest) at the time of the pull. Overwriting existing files needs your approval in the conversation. It works with your own projects only; someone else's project, even a published one, answers 404.

Push: from the folder to Mubarmij

«Push the folder to the project»: the app collects the folder's text files (HTML, CSS, JS, JSON, SVG, Markdown…), ignoring node_modules, .git, .env files and anything hidden, and sends them to PUT /api/v1/projects/{id} with expectedFilesDigest — the fingerprint of the revision it pulled. The server keeps a version of the old files before writing (visible under the project's versions) and writes the new ones with compare-and-swap.

  • 409 conflict: the project's files on Mubarmij changed since you pulled them (from the editor or another window). Pull again, then push — nobody's edit is erased.
  • 413 size: the files add up to more than your plan's limit. The app checks the limit locally before sending and says by how much.
  • 403 stack: a folder with a Next.js package.json on a plan that does not include it is refused with STACK_NOT_IN_PLAN before any write — not accepted and then refused at publish.
  • New project: if the folder has no project yet, the app creates one with a title you choose and pushes to it; creation passes the same project-count gate as the dashboard.

Plan limits as the push enforces them

From the tier contract in the code, not from the pricing page:

PlanProjectsProject sizeStack
«المجانية» (Free)11 MBstatic HTML only
«الأساسية» (Basic)210 MBstatic HTML and Next.js
«المميزة» (Premium)550 MBstatic HTML and Next.js
«الاحترافية» (Professional)unlimited50 MBstatic HTML and Next.js

Publishing

A push does not publish. Publishing is a separate step with explicit approval: the app reads the files as they are on Mubarmij, shows them, then sends expectedFiles to the publish route — if the files changed between the review and the publish, it is refused with 409 and nothing goes live. See /en/docs/workspace/publish.

FAQ

Do I need the Mubarmij provider for AI?

No. The bridge works with an API key and any model provider you configure in the app. The «Mubarmij» provider itself (/api/v1/chat/completions) is available on paid plans and uses the same key.

Does the app upload my secrets?

No. .env files, hidden files and dependency folders are never collected, and the key never appears in any text the server returns.

What if I also edited the project in the Mubarmij editor?

The next push answers 409 until you pull the current revision. That is the same «base revision» rule the editor applies between two windows.