> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tenderly.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Simulator UI

> Создавайте симуляции одиночных транзакций или stateful-бандлы в дашборде Tenderly с декодированными трассировками, оценками газа, изменениями балансов и cheatcodes.

<Frame caption="Стартовая страница Simulator: точка входа для одиночных транзакций и симуляционных бандлов с описанием возможностей.">
  <img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/simulator-ui/14-project-simulator.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=67beaab414cb36050158bf19d0ed9be2" alt="Tenderly Simulator landing page showing the Simulate transaction button and three feature cards: Unlock the blockchain, Inspect and debug errors, Integrate in your dapp" width="1600" height="1000" data-path="images/simulator-ui/14-project-simulator.webp" />
</Frame>

Tenderly Simulator позволяет вам запускать транзакции на живом состоянии mainnet или testnet без их отправки в сеть. Вы можете симулировать от имени любого отправителя, переопределять хранилище контракта, пополнять адреса и манипулировать контекстом блока — всё это прямо из дашборда.

Builder одинаков независимо от того, запускаете ли вы одну транзакцию или пять. **Одиночная симуляция** — это бандл из одного шага. **[Симуляционный бандл](/simulator-ui/simulation-bundles)** — до пяти шагов с общим состоянием: каждый шаг видит изменения состояния, внесённые предыдущим шагом.

## Компоновка

Builder имеет три области:

**Session strip** проходит вверху. Он содержит значения по умолчанию, применяемые к каждому шагу: Network, Block (по умолчанию `Pending`) и адрес From по умолчанию. Нажмите **Configure**, чтобы задать значения gas, gas price и value по умолчанию.

**Bundle rail** — левая колонка. Каждая карточка шага показывает номер шага, метку (`New call`, пока не выбран контракт, затем `ContractName · functionName`) и значок статуса после запуска. Нажмите на шаг, чтобы сфокусироваться на нём. Перетаскивайте, чтобы изменить порядок. Используйте `C`, чтобы добавить шаг, `J`/`K`, чтобы перемещаться между шагами, и `F`, чтобы переключить режим фокуса.

**Focused step view** — правая колонка. До запуска отображается редактор шага. После запуска отображается результат этого шага: декодированный вывод, использованный газ, события, изменения состояния и переводы токенов.

## Одиночные симуляции

Чтобы запустить одиночную симуляцию, работайте с единственным шагом, который открывается по умолчанию.

**Decoded mode** позволяет выбирать контракт и функцию по имени:

| Поле           | Примечания                                                                                                                |
| -------------- | ------------------------------------------------------------------------------------------------------------------------- |
| **From**       | По умолчанию — session From. Переопределяется для каждого шага.                                                           |
| **Contract**   | Контракты проекта появляются первыми. Также сопоставляются публичные контракты и топ-токены по имени, символу или адресу. |
| **Function**   | Отфильтровано до не-event, не-constructor методов.                                                                        |
| **Parameters** | По одному типизированному входу на каждый ABI-аргумент.                                                                   |

**Raw mode** принимает целевой адрес и hex-полезную нагрузку с префиксом `0x` напрямую. Это полезно, когда у вас есть calldata из существующей транзакции или ручного кодирования.

Нажмите **Simulate** (или нажмите `⌘↵`), чтобы запустить. Правая панель заполняется результатом: сводка вызова функции, использованный газ, декодированный вывод и вкладки Events, State Changes, Fund Flow и Gas Profiler.

Вы также можете начать с существующей транзакции: нажмите **Re-Simulate** на любой странице деталей транзакции, чтобы загрузить её входы в builder. Симуляция по умолчанию запускается на блоке и метке времени оригинала.

Чтобы поделиться предзаполненной формой (например, из CI или тест-отчёта), нажмите **Copy draft link** в заголовке страницы или создайте ссылку самостоятельно. См. [Предзаполнение Simulator с помощью draft-ссылки](/simulator-ui/draft-links).

## Симуляционные бандлы

Бандл запускает до **пяти шагов** последовательно с общим состоянием. Используйте бандл, когда результат одной транзакции зависит от предыдущей, например approve, разрешающее последующий перевод. Шаги добавляются и переупорядочиваются в bundle rail, каждый с собственным переопределением From и cheatcodes, а весь бандл выполняется одним кликом **Simulate**.

О построении, переупорядочивании, значках результатов и о том, как бандлы отображаются в истории симуляций, см. [Simulation Bundles](/simulator-ui/simulation-bundles).

<Frame caption="Форма New Simulation: session strip вверху (Network, Block), параметры транзакции слева и секции cheatcodes ниже.">
  <img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/simulator-ui/18-new-simulation-form.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=45969741ec81c6596930bf3482cc2afb" alt="New Simulation builder showing session strip with network and block selectors, transaction parameters (From, Contract, Function), and collapsed cheatcode sections for Override gas, Fund address, Increase block, Override timestamp, State overrides, and Optional Access Lists" width="1600" height="1000" data-path="images/simulator-ui/18-new-simulation-form.webp" />
</Frame>

## Cheatcodes

У каждого шага есть набор cheatcodes (дополнений, выполняемых непосредственно перед выполнением шага). Они применяются как к одиночным симуляциям (в качестве элементов управления уровня шага), так и к каждому шагу в бандле.

| Cheatcode                 | Что делает                                                                                                                            |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| **Override gas & value**  | Задать пользовательский лимит газа и значение ETH для этого шага.                                                                     |
| **Fund address**          | Пополнить любой адрес балансами токенов до выполнения этого шага. Добавляйте несколько записей на шаг.                                |
| **Increase block**        | Продвинуть номер блока на фиксированную величину перед этим шагом.                                                                    |
| **Override timestamp**    | Задать пользовательскую метку времени блока для этого шага.                                                                           |
| **State overrides**       | Переопределить слоты хранилища контракта, баланс или байт-код перед этим шагом. Добавляйте переопределения для нескольких контрактов. |
| **Optional Access Lists** | Прикрепить access list EIP-2930 для эффективности газа при вызовах, охватывающих несколько контрактов.                                |

<Frame caption="Шаг с раскрытыми Fund address, Override timestamp и State overrides. State overrides здесь задаёт слот ward DAI, чтобы mint успешно выполнился.">
  <img src="https://mintcdn.com/tenderly/XsEZlaGXYskrtN68/images/simulator-ui/sim-bundle-cheatcodes-expanded.webp?fit=max&auto=format&n=XsEZlaGXYskrtN68&q=85&s=79591d61108ff410c2944c9f78adf7d3" alt="Step editor showing Fund address, Override timestamp, and State overrides cheatcodes expanded" width="1600" height="1000" data-path="images/simulator-ui/sim-bundle-cheatcodes-expanded.webp" />
</Frame>

Подробное описание переопределений состояния, включая расчёт слота хранилища, см. в [Симуляция с State Overrides](/simulator-ui/state-overrides).

## Смотрите также

* [Simulation Bundles](/simulator-ui/simulation-bundles): многошаговые симуляции с общим состоянием, включая руководство по 3-шаговому DAI mint, approve и transferFrom.
* [Simulation Mode](/simulator-ui/simulation-mode): постоянная импресонация кошелька, которая следует за вами по дашборду и накапливает состояние между запусками.
* [Симуляция с State Overrides](/simulator-ui/state-overrides): как переопределять хранилище, баланс и байт-код.
* [Simulation Parameters](/simulator-ui/parameters): полное описание значений сессии по умолчанию, выбора блока и индекса транзакции, адресов From и полей cheatcodes.
* [Предзаполнение Simulator с помощью draft-ссылки](/simulator-ui/draft-links): создайте base64url-ссылку, открывающую Simulator с предзаполненной формой, для обмена из CI или инструментов.
* [Редактирование исходного кода контракта](/simulator-ui/editing-contract-source): протестируйте исправление ошибки, запустив симуляцию на изменённом исходном коде.
* [Bundled Simulations (API)](/simulations/bundled-simulations): запускайте бандлы программно через эндпоинт `simulate-bundle`.
* [Virtual Environments](/virtual-environments/overview): когда вам нужно полное постоянное окружение RPC вместо stateless-бандла.
