# 应用主权

App Sovereignty 让任何 Solana 应用都能启动其专属的 EVM 环境，配备自定义链 ID、自定义 Gas 代币，以及流向应用本身而非共享协议的 Gas 收入。

## 概览

Rome 上的每个应用都会获得一个主权式 EVM 实例：

* **自有链 ID** — 你的应用就是一条独立链
* **自有 Gas 代币** — 可为任意 SPL 代币（你的项目代币、USDC、SOL）
* **Gas 收入** — 所有交易费用都归入你的金库
* **完整的 EVM 工具链** — 你的用户使用 MetaMask 连接，你的开发者使用 Hardhat/Foundry
* **单一状态** — EVM 用户与 Solana 用户共享同一应用状态和流动性

## 工作原理

1. **注册你的链** — 通过 [注册门户](https://register.devnet.romeprotocol.xyz)
2. **部署基础设施** — Rome Proxy + Hercules（单一状态模式），或添加 OP-Geth 以实现完整的 Ethereum RPC 兼容性
3. **部署合约** — 使用 Hardhat 或 Foundry 进行标准 Solidity 部署
4. **用户连接** — 使用你的链 ID 的 MetaMask，或任意 EVM 钱包

## Gas 代币定价

自定义 Gas 代币通过 Meteora DAMM V1 池进行定价。Proxy 配置指定一个 `price_manager` ，该组件读取池子，在你的 Gas 代币与 SOL 之间进行转换，以支付底层 Solana 交易费用。

```yaml
# 自定义 Gas 代币的 Proxy 配置
price_manager:
  type: "meteora_damm_v1_pool"
  pool_address: "YOUR_METEORA_POOL_ADDRESS"
```

## 部署模式

| 模式      | 组件                                | 使用场景                         |
| ------- | --------------------------------- | ---------------------------- |
| 单一状态    | Proxy + Hercules                  | 更简单、延迟更低、可直接与 Solana 交互      |
| OP-Geth | Proxy + Hercules + OP-Geth + Rhea | 完整的 Ethereum RPC 兼容性，支持区块浏览器 |

## 使用场景：预测市场上线 EVM 链

```
Orra（Solana 预测市场）希望吸引 EVM 用户：
  1. Rome 为 Orra 部署主权式 EVM，并将 ORRA 代币作为 Gas
  2. EVM 用户连接 MetaMask，桥接 USDC，购买预测份额
  3. 在底层：rUSDC（ERC-20）→ 解包为 SPL → Orra CPI → 购买份额
  4. Orra 从每笔 EVM 交易中赚取以 ORRA 代币计价的 Gas 费用
  5. 单一状态：Solana 用户与 EVM 用户看到相同的市场、相同的流动性
```

## 状态

**已上线** — 与合作伙伴共同提供的活跃产品。

## 接下来

* [架构](/zh/ru-men/architecture.md) — Rome EVM 在底层的工作方式
* [快速开始](/zh/ru-men/quickstart.md) — 部署你的第一个合约
* [部署 Solidity](/zh/kai-fa-zhe-zhi-nan/deploy-solidity.md) — 面向 Hardhat 和 Foundry 的部署指南


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.rome.builders/zh/chan-pin/app-sovereignty.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
