> For the complete documentation index, see [llms.txt](https://docs.rome.builders/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rome.builders/ar/almntjat/rome-cli.md).

# Rome CLI + MCP

واجهة سطر أوامر المطوّر في Rome وخادم MCP — حقائق سلسلة موثّقة، ونمط البناء المناسب، والإجراءات الفريدة لـ Rome (تمويل، نشر، تحقق) لمستخدم بشري أو وكيل ذكاء اصطناعي.

`rome` يمرّر مُنشئًا — إنسانًا أو وكيل ذكاء اصطناعي — عبر دورة البناء على Rome كاملة: حقائق السلسلة الموثوقة، النمط الصحيح، استدعاءات العقود، مسار تمويل البداية، النشر/الإرسال، التشخيص عبر الآلتين الافتراضيتين، وبوابة اجتياز تعمل في كلا المسارين. نواة قدرة واحدة، وواجهتان متناسقتان — واجهة سطر أوامر (`rome <command>`) و [MCP](https://modelcontextprotocol.io) خادم (`rome mcp`) — بحيث يشترك الوكيل والإنسان في نموذج ذهني واحد.

## التثبيت

أولًا من المستودع (نشر npm معلّق):

```bash
# تشغيل لمرة واحدة، بدون تثبيت:
npx github:rome-protocol/rome-cli#v0.11.0 facts chain hadrian

# تثبيت دائم — استنساخ + ربط:
git clone --branch v0.11.0 https://github.com/rome-protocol/rome-cli
cd rome-cli && npm install && npm install -g .
```

أمر `npm install -g github:rome-protocol/rome-cli` لا **وليس** يعمل اليوم — إذ يجهّز npm تبعيات الحزمة من git من دون node\_modules خاصة بها ([rome-cli#25](https://github.com/rome-protocol/rome-cli/issues/25)). استخدم تشغيل npx لمرة واحدة أو clone + link، وثبّت وسمًا كما أعلاه: يحتفظ npx بالنسخة التي جلبها أولًا، لذا قد يستمر `npx github:rome-protocol/rome-cli` غير المثبّت في التشغيل بنسخة قديمة، بينما يجلب الوسم المثبّت دائمًا تلك النسخة.

## طبقتان فوق نواة واحدة

**القراءة — التأريض + التشخيص.** لا مفاتيح؛ على كلٍّ من واجهة سطر الأوامر وخادم MCP.

| الأمر                                                    | ما الذي يعيده                                                                                                  |
| -------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| `rome facts chain·tokens·contracts·gas·balance·programs` | حقائق حيّة عن السلسلة من السجل + RPC — من دون معرّفات أو عناوين أو محددات مزيفة                                |
| `rome cookbook patterns·cpi-recipe·errors`               | أي مثال يناسب هدفك · قواعد حسابات CPI التي يخطئ فيها الوكلاء · فكّ خطأ Rome → السبب + الإصلاح                  |
| `rome call <chain> <addr> <sig> [args]`                  | اقرأ عقدًا (`eth_call`) — المعاملات متعددة القيم تُكتب مفصولة بفواصل ضمن وسيط واحد: `"0xOwner…,0xSpender…"`    |
| `rome doctor <chain>`                                    | فحص مسبق — هل السلسلة حيّة؟ هل RPC قابل للوصول؟ هل البرنامج مضبوط؟ هل المحفظة ممولة؟                           |
| `rome tx <chain> <hash>`                                 | شخّص معاملة — إيصال EVM + معاملة/معاملات التسوية على Solana + رابط Via (لا يملك Rome `debug_traceTransaction`) |
| `rome preset foundry\|hardhat <chain>`                   | إعداد شبكة Rome جاهز لسلسلة أدواتك + الخصائص الخاصة                                                            |

**الإجراءات — توقيع على السلسلة.** على واجهة سطر الأوامر فقط، والمفتاح من البيئة، **أبدًا** على MCP.

| الأمر                                                                      | ما الذي يفعله                                                                                                                                                                                                                                                                                  |
| -------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rome deploy <chain> <artifact>`                                           | نشر عقد مُترجَم، مع التعامل مع خصائص غاز Rome الخاصة                                                                                                                                                                                                                                           |
| `rome send <chain> <addr> <sig>`                                           | الكتابة إلى عقد عبر مسار الكتابة الصحيح في Rome                                                                                                                                                                                                                                                |
| `rome fund <chain> --from <src> --amount <usdc>`                           | جسر USDC → غاز Rome (CCTP) — مسار البداية «من المنزل»                                                                                                                                                                                                                                          |
| `rome bridge <chain> --from <src> --amount <usdc> [--intent gas\|wrapper]` | جسر USDC **في** كغاز أو wUSDC                                                                                                                                                                                                                                                                  |
| `rome bridge <chain> --to <dest> --amount <usdc>`                          | جسر wUSDC **إلى الخارج** — احرق على Rome؛ وتطالب به على الوجهة (Rome يدعم الوارد، لا المطالبة الصادرة)                                                                                                                                                                                         |
| `rome activate <chain>`                                                    | يلزم تمويل PDA لمرة واحدة قبل **أول جسر إلى الخارج** (الوارد سهل — لا يحتاج شيئًا)                                                                                                                                                                                                             |
| `rome verify <chain> [--path …]`                                           | بوابة التحقق **التي تراعي المسار**، واحدة لكل طريق دخول: `solidity` — العقد نفسه يجيب على مسار EVM *و* مسار Solana · `solana-program` — استدعاء على مسار EVM يقود برنامج Solana الخاص بك عبر CPI · `من-home` — ادخل عبر الجسر → نفّذ على Rome → اخرج عبر الجسر، مع إثبات الرحلة ذهابًا وإيابًا |

## ربطه بوكيل ذكاء اصطناعي (MCP)

أنت لا تشغّل أو تستضيف أي شيء — عميل MCP لديك يطلق `rome mcp` (خادم stdio) عند الطلب. سجّله مرة واحدة:

```json
{ "mcpServers": { "rome": { "command": "npx", "args": ["-y", "github:rome-protocol/rome-cli#v0.11.0", "mcp"] } } }
```

(مع تثبيت clone + link، `{ "command": "rome", "args": ["mcp"] }` يعمل أيضًا — صيغة npx فقط لا تحتاج تثبيتًا مسبقًا.)

ثم يستدعي الوكيل أدوات مثل `facts_chain`, `cookbook_cpi_recipe`, `doctor`, `tx`، و `preset` — مؤسَّس على السجل الحي + RPC، لذا يتوقف عن تخمين العناوين والمحددات. سطح MCP هو **للقراءة فقط ولا يحتوي على مفاتيح** — آمن للربط بأي وكيل؛ فلا يمكنه أبدًا التوقيع أو نقل الأموال. تبقى إجراءات التوقيع على واجهة سطر الأوامر، مع تزويد المفتاح عبر البيئة.

## حلقة تأريض الوكيل

1. `rome cookbook patterns <what I'm building>` → أي مستودع أمثلة + أي بنية معمارية
2. `rome facts chain <chain>` → RPC، معرّف البرنامج، رمز الغاز (من دون ترميز ثابت)
3. …اكتب الشيفرة بناءً على تلك القيم نفسها تمامًا…
4. `rome verify <chain> --path <your way in>` → أثبت أنه يعمل، أيًّا كان المسار الذي دخلت منه

## تعرّف أكثر

* المستودع + الأدلة الكاملة: [`rome-protocol/rome-cli`](https://github.com/rome-protocol/rome-cli)
* [النظام البيئي والمستودعات](/ar/albda/ecosystem.md) · [ابنِ تطبيقًا ثنائي المسار](/ar/adlh-almtw-ryn/dual-lane-app.md) · [من المنزل: الوصول إلى Rome من سلسلة أخرى](/ar/adlh-almtw-ryn/from-home.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.rome.builders/ar/almntjat/rome-cli.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
