Claude Info
Документация

ArkTS Syntax Assistant

SummerKaze/skill-arkts-syntax-assistant

Скилл для изучения ArkTS и разработки под OpenHarmony. Покрывает базовый синтаксис, миграцию с TypeScript, высокопроизводительное программирование и диагностику ошибок компиляции. Совместим с Claude Code, opencode, cursor.

Установка

terminal
bash
npx skills add https://github.com/SummerKaze/skill-arkts-syntax-assistant.git

README

ArkTS Syntax Assistant

English | 简体中文

GitHub License  GitHub Release  GitHub Repo stars 

Ассистент по изучению и разработке на ArkTS: справочник по синтаксису, руководство по миграции с TypeScript и практики высокопроизводительного программирования.

Многоплатформенный скилл-ассистент по синтаксису ArkTS, совместимый с claude-code, opencode, cursor, trea и другими AI-помощниками для написания кода. ArkTS — основной язык разработки приложений для OpenHarmony, построенный на базе TypeScript с усиленной статической типизацией для повышения стабильности и производительности программ.

Возможности

  • Изучение синтаксиса: охватывает базовый синтаксис ArkTS (объявления, типы, функции, классы, дженерики, модули и др.)
  • Миграция с TypeScript: подробное руководство по переходу с TS на ArkTS, включая ограничения синтаксиса, различия системы типов и несовместимые возможности
  • Высокопроизводительное программирование: лучшие практики оптимизации памяти, циклов, работы с массивами и обработки исключений
  • Устранение ошибок компиляции: диагностика и решение распространённых ошибок компиляции
  • Примеры кода: обширная база сравнительных примеров с правильными и неправильными вариантами написания

Поддержка инструментов разработки

Этот скилл помогает вашему AI-ассистенту легко писать код на ArkTS. Если вы также пишете и редактируете код самостоятельно и вам не хватает автодополнения по Tab в DevEco Studio — установите плагин поддержки ArkTS для VSCode (и аналогичных IDE):

Naily's ArkTS Support

[!NOTE]
Naily's ArkTS Support — плагин поддержки ArkTS для VSCode с подсветкой синтаксиса, умным автодополнением и другими функциями, обеспечивающими комфортную разработку на ArkTS прямо в VSCode.

Установка

Рекомендуемый способ: npx skills add (установка в одну команду)

npx skills add https://github.com/SummerKaze/skill-arkts-syntax-assistant.git

Самый простой и быстрый способ — скилл будет автоматически загружен и настроен.

Способ 1: установка через Release

  1. Перейдите на страницу Releases
  2. Скачайте архив последней версии
  3. Распакуйте в директорию скиллов Claude Code

Способ 2: клонирование репозитория

bash
cd ~/.claude/skills/
git clone https://github.com/SummerKaze/skill-arkts-syntax-assistant.git

Навигация по документации

Выберите нужный документ в зависимости от задачи:

СценарийДокумент
Изучение синтаксисаreferences/zh/introduction-to-arkts.md
Быстрый обзорreferences/zh/arkts-get-started.md
Миграция с TSreferences/zh/typescript-to-arkts-migration-guide.md
Контекст миграцииreferences/zh/arkts-migration-background.md
Оптимизация производительностиreferences/zh/arkts-high-performance-programming.md
Дополнительные примерыreferences/zh/arkts-more-cases.md

Быстрый старт

Использование скилла

В Claude Code этот скилл активируется автоматически при следующих задачах:

  • Изучение базового синтаксиса ArkTS
  • Миграция с TypeScript на ArkTS
  • Оптимизация производительности в ArkTS
  • Устранение ошибок компиляции или выполнения ArkTS
  • Языковые вопросы при разработке приложений для HarmonyOS/OpenHarmony

Быстрые ответы на частые вопросы

Q: Как обрабатывать возвращаемое значение JSON.parse?

ts
// Неправильно
let data = JSON.parse(str);

// Правильно
let data: Record<string, Object> = JSON.parse(str);

Q: Как определить тип объекта?

ts
// Синтаксис TS (не поддерживается в ArkTS)
type Person = { name: string, age: number }

// Синтаксис ArkTS
interface Person {
  name: string;
  age: number;
}

Q: Краткая шпаргалка по миграции с TypeScript на ArkTS

Синтаксис TSЗамена в ArkTS
var xlet x
any/unknownКонкретный тип
Объектный литерал {n: 42}Предварительное определение class/interface
Индексная сигнатура [index: T]: URecord<T, U>
Пересечение типов A & Binterface C extends A, B
Утверждение типа <Type>valuevalue as Type
Деструктуризация [a, b] = arrПоэлементный доступ arr[0], arr[1]
for..inЦикл for или for..of

Скрипты сборки

Проект включает скрипты быстрой сборки с установкой зависимостей:

ПлатформаСкриптНазначение
macOS/Linuxscripts/run.shВыполняет ohpm install + hvigorw assembleApp
Windowsscripts/run.ps1Выполняет ohpm install + hvigorw assembleApp

Способ использования:

bash
# macOS/Linux
bash scripts/run.sh

# Windows PowerShell
.\scripts\run.ps1

Ключевые особенности

  • Обязательная статическая типизация: все типы определяются на этапе компиляции, что снижает количество проверок во время выполнения
  • Запрет динамического изменения структуры объектов: структура объектов фиксируется при компиляции и не может быть изменена во время выполнения
  • Ограниченная семантика операторов: поведение ряда операторов ограничено в пользу более явного кода
  • Отсутствие структурной типизации: текущая версия не поддерживает structural typing

Запрещённые API

Следующие возможности запрещены в ArkTS:

  • Глобальные: eval
  • Object: __proto__, defineProperty, freeze, getPrototypeOf и др.
  • Reflect: apply, construct, defineProperty и др.
  • Proxy: все методы handler

История звёзд

Star History Chart

Лицензия

MIT

Copyright (c) 2025 SummerKaze

Похожие скиллы