Scripting
ИИ: Скрипты и виджеты
Бесплатно · Встроенные покупки · Предназначено для iPad. Не проверялось для macOS.
Создавайте, автоматизируйте и персонализируйте свой iPhone
Scripting — это мощная платформа для разработки, которая позволяет писать, тестировать и запускать скрипты на TypeScript или JavaScript прямо на вашем iPhone или iPad.
Будь вы творческий энтузиаст или просто хотите автоматизировать повседневные задачи — Scripting открывает безграничные возможности для персонализации вашего устройства.
Основные возможности
• Создание мощных скриптов
Создавайте собственные виджеты, элементы управления в Центре управления, экраны Dynamic Island, пользовательские клавиатуры, команды Siri и расширения общего доступа — всё это с помощью ваших скриптов.
• Доступ к нативным API
Используйте обширный набор нативных API iOS (Календарь, Уведомления, Bluetooth, Здоровье и другие), чтобы глубоко взаимодействовать с устройством и создавать персональные автоматизации.
• Разработка нативного интерфейса с TSX и SwiftUI
Создавайте красивые и отзывчивые интерфейсы, используя синтаксис TSX и компоненты SwiftUI. Разрабатывайте интерактивные инструменты, виджеты и клавиатуры с нативной производительностью.
• Интеграция с искусственным интеллектом
Подключите собственный API-ключ, чтобы общаться с любыми AI-сервисами. Позвольте ИИ выполнять ваши скрипты, искать в локальных базах знаний, генерировать код и автоматически решать сложные задачи.
• Плавный процесс разработки
Используйте CLI-инструмент с VSCode, чтобы запускать и просматривать свои скрипты в реальном времени прямо на iPhone или iPad. Разработка никогда не была такой удобной.
• Мобильный редактор кода
Программируйте где угодно с помощью современного мобильного редактора. Улучшенная поддержка TypeScript включает автодополнение, подсветку синтаксиса, диагностику ошибок и интеллектуальные подсказки кода.
Почему стоит выбрать Scripting?
Scripting дарит вам полную свободу творчества —
создавайте уникальные сценарии, автоматизируйте повседневные задачи и интегрируйте ИИ в свои рабочие процессы.
Преобразуйте свои идеи в реальные инструменты и откройте новые возможности вашего устройства.
Privacy Policy: https://scripting.fun/privacy_policy/
Terms of Use: https://scripting.fun/terms/
еще - Added the AlarmManager API, allowing scripts to create and manage alarms
- Added support for AI features such as memory and skills
- Added support for writing and executing Python scripts
- Fixed various bugs
3.0.0 20 апр.
Added JWT API
Introduced a new JWT API.
Interaction Improvements
Improved overall interactions and usability.
Bug Fixes
Various bug fixes.
2.4.9 10 мар.
## Assistant Interaction Improvements
Improved interaction and usability on the Assistant page.
## Added Intent.view API for Shortcuts UI
Introduced the Intent.view method, allowing UI to be presented directly within the Shortcuts app.
## Fixed Observable Listener Trigger Issue
Fixed an issue where listeners were not triggered after Observable updates during UI interactions.
2.4.8 14 февр.
## Added SQLite APIs
Introduced new SQLite-related APIs.
## Added Screen Orientation Support
Added screen rotation support along with related APIs.
## Improved Assistant Interaction
Enhanced the interactions and usability of Assistant-related pages.
## Bug Fixes
Fixed various bugs.
2.4.7 5 февр.
- Added several new APIs
- Optimized the Assistant’s internal request handling and settings interface interactions
- Fixed some issues
2.4.6 15 янв.
- New features
- Fixes some issues
2.4.5 5 янв.
- Added new APIs related to Liquid Glass
- Fixed several bugs and stability issues
2.4.4 07.12.2025
- Added new features
- Fixed some issues
2.4.3 22.11.2025
# Новые возможности
Запросы headless-браузера
Метод fetch теперь имитирует поведение безголового браузера, обеспечивая более точную обработку веб-запросов, перенаправлений и cookie.
Улучшения Request / Response
Добавлено новое свойство handleRedirect для управления перенаправлениями.
Старое свойство shouldAllowRedirect удалено.
В Response добавлено новое свойство cookies для получения списка cookie из ответа.
Фоновые сетевые задачи
Добавлены новые API для загрузки и выгрузки данных в фоновом режиме:
BackgroundURLSession
URLSessionDownloadTask
URLSessionUploadTask
BackgroundKeeper
Добавлен BackgroundKeeper, который позволяет запрашивать разрешение на фоновое выполнение задач, чтобы продолжать их после сворачивания приложения.
Метаданные AVPlayer
Добавлены методы loadCommonMetadata() и loadMetadata(), а также новый класс AVMetadataItem для доступа к детальной информации о текущем воспроизводимом медиаресурсе.
API буфера обмена
Добавлен новый Pasteboard API для чтения и записи данных в буфер обмена.
Старый Clipboard API признан устаревшим и удалён.
Система жестов
Реализованы новые модификаторы и API для обработки жестов:
Модификаторы: gesture, highPriorityGesture, simultaneousGesture, defersSystemGestures, lineSpacing.
API жестов: Gesture, DragGesture, LongPressGesture, MagnifyGesture, RotateGesture, TapGesture.
Эти дополнения делают обработку жестов и макета ближе к поведению нативного SwiftUI.
Инструменты UIImage
В класс UIImage добавлены новые методы для удобного преобразования изображений:
Методы экземпляра: toJPEGBase64String(), toPNGBase64String(), toJPEGData(), toPNGData().
Статический метод: fromBase64String() для создания изображения из строки Base64.
Система виджетов
Виджеты теперь разделены на два типа:
User Widgets — для завершённых и опубликованных виджетов.
Test Widgets — для виджетов, находящихся в разработке.
Это разделение предотвращает взаимное влияние при обновлении.
Добавлены новые методы Widget.reloadUserWidgets() и Widget.reloadTestWidgets() для раздельного обновления виджетов.
ControlWidget
Добавлен новый элемент управления Button, который позволяет открывать приложение и запускать указанный скрипт.
Окружение CustomKeyboard
В среде CustomKeyboard теперь доступен Safari API.
---
# Улучшения
Импорт базы знаний
Исправлена ошибка, из-за которой невозможно было импортировать документы из внешних каталогов в базу знаний.
Отображение виджетов
Исправлена ошибка, из-за которой локальные изображения не отображались корректно.
Открытие текстовых файлов
Исправлена ошибка, из-за которой при нажатии на текстовый файл редактор открывался несколько раз подряд.
---
# Исправления
Health API
Исправлена ошибка, из-за которой Health.queryStatistics и Health.queryStatisticsCollection неправильно считывали данные.
Исправлена проблема в классе HealthStatistics, когда методы количества возвращали некорректные значения при использовании параметра source.
Виджеты (iOS 26)
Исправлена ошибка, из-за которой при нажатии на виджет для запуска скрипта действие выполнялось дважды.
Закрытие окон после Script.exit()
Исправлена ошибка, из-за которой окна Safari, DocumentPicker, Photos и QuickLook не закрывались автоматически после вызова Script.exit().
2.4.2 22.10.2025
# Новые функции
**База знаний**
Теперь вы можете импортировать несколько файлов одновременно, выбрав целую директорию.
**Инструмент помощника**
Добавлен встроенный инструмент для поиска по базам знаний, позволяющий помощнику обращаться к связанным базам знаний при выполнении задач.
**Виджет управления (iOS 18+)**
Добавлен ControlWidget, позволяющий размещать элементы управления (кнопки и переключатели) в Центре управления и назначать скрипты для обработки их логики.
**Пользовательская клавиатура**
Добавлен API `CustomKeyboard` для создания и отображения собственной клавиатурной панели, обработки событий ввода и программной вставки текста.
**Bluetooth API**
Добавлены API `BluetoothCentralManager` и `BluetoothPeripheralManager`. Реализуйте полный цикл взаимодействия по Bluetooth: сканирование, подключение, чтение/запись характеристик GATT, подписка на уведомления, реклама, предоставление пользовательских сервисов и характеристик.
**Модификатор представления layoutPriority**
Добавлена поддержка модификатора `layoutPriority`, позволяющего управлять распределением пространства между дочерними элементами при ограничениях макета. Поведение соответствует `layoutPriority(_:)` в SwiftUI.
**Свойство modifiers и система ViewModifiers**
Добавлено новое свойство `modifiers`, а также класс `ViewModifiers` и вспомогательная функция `modifiers()` для последовательного и цепочного применения модификаторов.
Система поддерживает многократное применение одного и того же модификатора (например, повторные вызовы `padding()` или `background()`) и гарантирует их выполнение в порядке, указанном в цепочке, как в SwiftUI.
**Отрисовка SVG**
Добавлен компонент для рендеринга SVG, обеспечивающий плавное отображение векторной графики.
**Пользовательские шрифты**
Теперь поддерживаются шрифты, установленные через систему или сторонние приложения.
---
# Улучшения
**Request API**
Добавлено поле `allowInsecureRequest` в `RequestInit` / `Request` для управления разрешением небезопасных запросов.
**Location API**
`Location.requestCurrent` теперь по умолчанию возвращает кэшированные данные о местоположении, если они доступны.
Добавлен новый необязательный параметр `options.forceRequest` для получения актуального местоположения.
**Сервер разработчика**
Dev-сервер теперь запоминает последний подключённый адрес для более быстрого повторного соединения.
**Улучшения хранилища**
Методы `set`, `get`, `contains`, `remove`, `setData` и `getData` теперь поддерживают необязательный параметр `options.shared`, позволяющий работать с общим хранилищем, доступным во всех скриптах, что облегчает совместное использование данных.
---
# Исправления
**Вызовы инструментов помощника**
Исправлена ошибка, при которой помощник мог неправильно интерпретировать параметры инструментов, что повышает надёжность выполнения.
**Photos API**
Исправлена ошибка, из-за которой свайп вниз для закрытия окна `Photos.pickPhotos` не завершал promise.
**Разрешения HealthKit**
Исправлена ошибка, при которой запрос разрешений на доступ к данным Health не вызывал диалог авторизации.
**Расширенные настройки скрипта**
Исправлена ошибка, возникавшая при переименовании скрипта в разделе расширенных настроек, которая могла привести к сбою при обновлении после сохранения.
---
# Изменения
**Поставщики API**
Удалён поставщик API `Pollinations.AI`.
2.4.1 09.10.2025
Новые возможности
- Локальная база знаний (iOS 18+)
Добавлены локальные базы знаний для расширения возможностей Assistant с помощью RAG (генерация с поисковым дополнением).
- Пресеты чата
Создавайте пресеты с заранее определёнными инструментами, правилами и базами знаний для более быстрых и персонализированных чатов.
- Интеграция со Spotlight
Поиск и запуск скриптов напрямую через Spotlight.
- Интеграция с приложением Файлы
Открывайте файлы .js, .jsx, .tsx и .json в Scripting через приложение Файлы.
- Метаданные скриптов
script.json теперь поддерживает поля version, description, localizedNames, localizedDescriptions, author, contributors и другие.
Модуль Script также получил новое свойство metadata для хранения этой информации.
- API перевода (iOS 18+)
Новые API Translation и translationHost для построения многоязычных рабочих процессов.
- Уведомления
В Notification.schedule добавлен новый параметр tapAction:
- runScript: запуск скрипта по нажатию
- openURL: открытие указанного URL по нажатию (старый параметр avoidRunningCurrentScriptOnTapped устарел)
- Параметры взаимодействия с виджетами
Конфигурация виджета теперь поддерживает --Открыть URL-- в разделе -При взаимодействии-, что позволяет открывать URL по нажатию на виджет.
- Storage API
Добавлены методы keys() и clear().
Операции Storage теперь ограничены текущим скриптом, чтобы избежать конфликтов ключей.
Ключи автоматически мигрируются внутри системы, разработчикам не требуется никаких действий.
- SSH в виджетах
Функциональность SSH теперь доступна внутри виджетов.
Улучшения
- Оптимизировано взаимодействие с Assistant для более плавной работы.
- Улучшён импорт скриптов — они теперь автоматически компилируются и открываются в редакторе.
- В редакторе добавлены новые действия контекстного меню: Удалить всё и Копировать всё.
- Request API: добавлен обработчик shouldAllowRedirect в Request / RequestInit.
- Data API: добавлены новые методы compressed() и decompressed().
- Запросы OpenAI теперь используют новый Response API.
Исправления
- Исправлена проблема, при которой цвет текста не менялся при смене темы в Widget.preview.
- Исправлена опечатка в API safeAreaInset.
- Исправлен баг, при котором переименование скрипта в группе могло привести к его исчезновению.
- Исправлено несколько ошибок API для повышения стабильности.
2.4.0 14.09.2025
Новые API
- Унифицированный формат скриптов: Скрипты теперь экспортируются с расширением .scripting. Простое нажатие на любой файл .scripting автоматически запускает Scripting и импортирует скрипт.
- Расширенные возможности SSH: Новые API, включая SSHClient и SFTPClient, обеспечивают безопасные удаленные подключения и передачу файлов.
- Обновленный API напоминаний: Класс Reminder добавил свойство dueDateComponents, устаревшие dueDate и dueDateIncludesTime.
Улучшения помощника
- Оптимизирована производительность текстового рендеринга для ответов больших языковых моделей, обеспечивая более плавный и отзывчивый вывод.
- Новый поставщик API OpenRouter, который позволяет просматривать доступные модели и быстро добавлять их после ввода ключа API.
Исправления ошибок
- Исправлены проблемы с импортом удаленных скриптов и обновлением конфигураций удаленных ресурсов.
- Исправлена проблема, когда Reminder.dueDate возвращает null, и добавлено свойство dueDateComponents в класс Reminder. Предыдущие свойства dueDate и dueDateIncludesTime устарели.
2.3.7 10.08.2025
# Новые функции
## Удалённый импорт скриптов
- Импортируйте скрипты напрямую из репозитория GitHub или любого удалённого сервера, упрощая общий доступ.
## Улучшенный API данных
- Свойство Data.size для получения длины объекта Data в байтах.
- Методы Data.append() и Data.slice() для более гибкой обработки двоичных данных.
# Производительность и оптимизация
- Оптимизированные запросы к API OpenAI.
- Уменьшен объём памяти в Live Activities и Widgets.
- Виджеты больше не компилируют скрипты автоматически в среде виджетов.
# Улучшения пользовательского интерфейса
- Взаимодействие с помощником оптимизировано для более быстрых и интуитивно понятных ответов.
- При перезапуске приложение теперь возвращается к последней просмотренной вкладке «Главная», чтобы вы могли продолжить работу с того места, где остановились.
# Обновления API
## WebViewController.evaluateJavaScript
- Теперь для отправки значения требуется использовать return в вашем скрипте.
– Возвращает Promise, что позволяет обрабатывать асинхронные результаты напрямую.
## WebViewController.addMessageHandler
– Теперь возвращает Promise, который разрешается после успешной регистрации обработчика.
# Исправление ошибок
– Исправлена ошибка, из-за которой текст не обновлялся корректно при переключении тем на странице предварительного просмотра виджета.
2.3.6 29.07.2025
Исправлена ошибка, из-за которой невозможно было подключиться к базовому URL с портом пользовательского поставщика API.
Улучшен редактор кода: добавлен показ дополнительной информации из комментариев и исправлена ошибка автоматической вставки пробелов при открытии пустого редактора.
2.3.5 18.07.2025
Улучшения взаимодействия с ассистентом
- Поддержка извлечения содержимого локальных файлов или веб‑страниц в виде обычного текста с отправкой вместе с сообщением
- Возможность напрямую выбирать и выполнять скрипты в окне вывода ассистента, при этом результаты прикрепляются к беседе
- Улучшенный интерфейс для пользовательских провайдеров API: после ввода базового URL и ключа API можно одним нажатием получить и отобразить все доступные модели
Поддержка новых API
- Модуль OAuth2: упрощённая реализация полного потока аутентификации OAuth2
- createOAuthCallbackURLScheme: новый метод класса Script для упрощения настройки схемы URL обратного вызова совместно с модулем OAuth2
- Модуль MessageUI: вызов системного интерфейса сообщений для быстрой отправки SMS или электронной почты
- Модуль Crypto: полное обновление с поддержкой MD5, SHA1, SHA256, SHA384, SHA512, HMAC‑MD5, HMAC‑SHA1, HMAC‑SHA224, HMAC‑SHA256, HMAC‑SHA384, HMAC‑SHA512 и AES‑GCM шифрования/дешифрования (устаревший модуль MD5 удалён)
- Расширения класса Data: добавлены методы toHexString и fromHexString для удобного преобразования между шестнадцатеричными строками и двоичными данными
Оптимизация Share Extension
- После сохранения скрипта через iOS Share Sheet добавлена опция немедленного открытия приложения Scripting
- При выборе открытия приложение автоматически обновится и загрузит только что сохранённый скрипт
Улучшение совместимости с iOS 17
- Исправлена проблема, из‑за которой некоторые иконки не отображались на iOS 17
- Устранена ошибка, при которой при запуске приложения на странице скрипта иногда появлялся пустой экран
2.3.4 17.07.2025
Улучшенная интеграция с HealthKit
Новый Health API для доступа к данным iOS HealthKit
Встроенные примерные скрипты для распространённых задач по здоровью:
Step Count: виджет для отображения количества шагов за день
Record Body Mass: инструмент на странице и помощник для записи веса
Read Basic Physical Data: помощник для получения роста, даты рождения, пола и т.д.
Read Body Mass: помощник для извлечения исторических данных о весе
Record Food Intake: помощник для записи ежедневного потребления пищи
Read Food Intake: помощник для запроса истории питания
Умные уведомления
Правильная настройка важных уведомлений (Time Sensitive), чтобы критические оповещения не заглушались
Улучшения компонентов Charts
Расширенный API Charts с дополнительными свойствами для большей гибкости и более насыщенной визуализации
2.3.3 09.07.2025
Улучшения системы уведомлений
Добавлены новые типы триггеров: CalendarNotificationTrigger, LocationNotificationTrigger и TimeIntervalNotificationTrigger. Параметры triggerTime и repeatsType в Notification.schedule устарели. Используйте новый параметр trigger.
Добавлен вспомогательный класс DateComponents для удобного создания календарных триггеров.
Метод Notification.getAllPendings теперь возвращает массив объектов NotificationRequest.
Метод Notification.getAllDelivereds теперь возвращает объекты NotificationInfo с новым свойством request. Старые поля считаются устаревшими — используйте request для доступа к данным.
Улучшения виджетов и поддержка предпросмотра
Добавлен модификатор widgetBackground для настройки фона виджетов в режиме Tinted (iOS 18+).
Новая функция Widget.preview, которую можно вызвать в index.tsx, позволяет просматривать виджет прямо во время настройки.
Обновления документации
Обновлена документация, включая полные справочные материалы и примеры использования для API Charts.
2.3.2 26.06.2025
Добавлены модификаторы представления widgetAccentable и widgetAccentedRenderingMode для поддержки режима Tinted в iOS 18+
Компонент Image теперь поддерживает DynamicImageSource, позволяя отображать разные изображения в зависимости от светлой или тёмной темы системы в виджетах
Улучшено взаимодействие с выбором документов и фотографий
Исправлены различные ошибки для повышения стабильности и производительности
2.3.1 18.06.2025
- В Assistant.requestStructuredData добавлена поддержка выбора провайдера API и модели
- Новая настройка позволяет выбирать, выполнять ли инструменты в одном ответе ассистента параллельно или последовательно
- Сообщения ассистента теперь поддерживают расширенный рендеринг HTML и диаграмм Mermaid
- Добавлены новые модификаторы представления: scrollTargetLayout, scrollTargetBehavior, scrollContentBackground, truncationMode, allowsTightening, flipsForRightToLeftLayoutDirection, containerRelativeFrame, safeAreaPadding
- В модуль уведомлений добавлены методы для корректного управления уведомлениями текущего скрипта
- Исправлены ошибки, из-за которых некоторые методы уведомлений работали некорректно
- Улучшена интерактивность и устранены ошибки, вызывавшие сбои приложения
2.3.0 15.06.2025
Новые функции
* Поддержка перетаскивания
Добавлен новый модификатор представления `onDropContent`, позволяющий скриптам принимать файлы, перетаскиваемые из других приложений.
* Улучшенный API для градиентов
Введен новый инструмент для работы с градиентами, повышающий читаемость и удобство сопровождения кода.
* Расширенная запись в файл
Добавлены методы `FileManager.appendText` и `FileManager.appendData` для добавления текста или бинарных данных в конец существующего файла.
* Новый API AbortController
Устаревший класс `CancelToken` заменён на современные `AbortController` и `AbortSignal` для лучшей обработки отмены задач.
* Улучшения ярлыков
Добавлены новые ярлыки: "Запустить TypeScript-код" и "Запустить скрипт для аудио". Скрипты, запускаемые через ярлык "Run Script", теперь могут использовать API Live Activity и управления воспроизведением аудио.
Улучшения
* Обновление документации
Добавлена подробная документация по модификаторам представлений, помогающая разработчикам лучше понимать и использовать возможности по компоновке и стилям.
* Оптимизация памяти
Улучшено использование памяти при выполнении скриптов в виджетах и AppIntents, что повышает производительность.
2.2.2 26.05.2025
Улучшения Assistant
- Исправлена проблема при одновременном вызове нескольких инструментов, обеспечена стабильная работа
- Оптимизирован внешний вид и взаимодействие в окне чата
- Интеграция бесплатного API от pollinations.ai (поддержка моделей deepseek и deepseek-reasoner); благодарим pollinations.ai за поддержку
Управление скриптами и совместимость
- Улучшена логика группировки скриптов для удобного управления
- Добавлен поиск скриптов на странице Dev Server для быстрого доступа и редактирования
- Исправлены проблемы отображения на iPad
Системные события и поддержка PDF
- Добавлена поддержка событий жизненного цикла приложения scenePhase
- Добавлены API PDFDocument и PDFPage для работы с PDF-файлами
Графики и уведомления
- ChartMarkProps расширен свойствами foregroundStyleBy, symbolBy, symbolSizeBy, positionBy, lineStyleBy для гибкой настройки визуализации
- В Notification.schedule добавлен параметр avoidRunningCurrentScriptWhenTapped для контроля запуска скрипта при нажатии на уведомление
2.2.1 17.05.2025
Улучшения помощника
* Поддержка вызова нескольких инструментов в одном ответе
* Предпросмотр HTML и диаграмм Mermaid, рендеринг блочных формул LaTeX
* Временный редактор для выполнения TS/JS-кода прямо в чате
* Улучшено оформление и взаимодействие окна чата
* Новые шаблоны подсказок для быстрого вставления часто используемых инструкций
Новые системные API
* Vision API: извлечение текста из изображений или сканирование документов
* Crypto API: доступ к распространённым криптографическим функциям
Улучшения рабочего пространства
* Поддержка группировки скриптов для лучшей организации
* Поддержка горячих клавиш для внешних клавиатур и macOS
Стабильность и производительность
* Улучшено взаимодействие на странице управления закладками файлов
* Повышена производительность NavigationLink и исправлены проблемы с наследованием модификаторов
* Исправлен сбой при вызове `new CalendarEvent()` на некоторых версиях системы
* Различные исправления ошибок и оптимизация производительности
2.2.0 08.05.2025
Fixed an issue that caused the app to crash on iOS 18.4
2.1.7 13.04.2025
- Added Custom Role Mode for the Assistant: You can now define custom roles for the AI, not just limited to code generation.
- Assistant tools can now be mentioned directly in the input box for quicker access.
- All scripts are now saved in the "scripts" folder under Documents for better organization.
- Fixed an issue where file bookmarks were not working properly.
- Corrected various documentation errors.
2.1.6 11.04.2025
- Assistant Tool теперь основан на скриптах и может быть создан через Assistant
- Сохраняйте скрипты в Scripting прямо из других приложений, например, браузеров
- Предпросмотр виджетов теперь поддерживает взаимодействие и обновление интерфейса в реальном времени
- Новые API для URL-схем и поддержка `singleMode` в `Script.run`
- `StrokeStyle` теперь поддерживает `lineWidth`, `lineCap` и `lineJoin`
- Новый API Wake Lock предотвращает переход устройства в спящий режим во время выполнения
- Исправлена ошибка разбора параметров из Shortcuts в macOS и другие мелкие баги
2.1.5 08.04.2025
- Added the AlarmManager API, allowing scripts to create and manage alarms
- Added support for AI features such as memory and skills
- Added support for writing and executing Python scripts
- Fixed various bugs
еще Версия 3.0.0 20 апр.
Сбор данных не ведется Разработчик не ведет сбор данных в этом приложении.