Smart Actions
Smart Actions — это мощная функция, которая позволяет создавать пользовательские рабочие процессы автоматизации через конфигурационные файлы JSON/YML. Размещая определения действий в папке .supercode/actions/ (в корне проекта или домашнем каталоге), вы можете создавать сложные интеграции, которые изменяют промпты, взаимодействуют с внешними сервисами и настраивают поведение AI таким образом, чтобы идеально соответствовать вашему рабочему процессу разработки.

Действие — это универсальная операция, которая может быть запущена несколькими способами: через прямое взаимодействие пользователя, нажатием кнопок в различных меню (как вы прочитаете ниже), через триггеры, такие как голосовые команды, или настроена как автоматические действия в определенных ситуациях. Используя действия, вы можете изменять ваш текущий запрос, системный промпт, выбранную модель и выбранный режим агента бесчисленным количеством различных способов.
Эти модификации могут варьироваться от очень простых операций, таких как добавление текста к вашему текущему запросу или добавление информации к системному промпту, до сложных конвейеров, где ваш промпт отправляется на ваш собственный сервер для пользовательской обработки перед возвратом в Cursor. Действия представляют собой невероятно мощную подсистему Supercode, которая позволяет вам почти полностью переписать то, как AI-агент обрабатывает ваши запросы.
С помощью действий вы можете создать что угодно: от простых удобств, таких как красивая кнопка с предопределенным промптом и моделью, которая выполняет конкретный запрос, до огромных многоуровневых рабочих процессов, включающих последовательное выполнение нескольких запросов разными моделями. Возможности практически безграничны.
Создание пользовательских действий
Действия определяются в файлах JSON/YML в каталоге .supercode/actions/. Каждый файл JSON/YML служит коллекцией связанных действий, где вы можете группировать похожие или тематически связанные действия вместе. В каждом файле структура представляет собой объект, где ключи представляют уникальное имя действия, а значения определяют конфигурацию действия. Действия могут выполнять несколько типов операций, от простых модификаций промптов до сложных интеграций с внешними сервисами и динамического выбора моделей.
Базовая конфигурация действия
Вот простой пример, показывающий базовую структуру действий:
{
"Security Review": {
"icon": "🔒",
"menu": "buttons",
"mode": "SC:Architect",
"systemPrompt": "You are a security expert. Focus on input validation, authentication, and potential attack vectors.",
"prompt": "$prompt \n\n Implement it with a focus on security."
},
"Performance Analysis": {
"icon": "⚡",
"menu": ["prompts", "buttons"],
"prompt": "Analyze the code for performance bottlenecks and suggest optimizations.",
"model": "o3",
"run": true
}
}Типы меню
- "prompts": Появляется в меню пользовательских промптов наряду с пользовательскими промптами
- "enhancers": Доступно в выпадающем меню Custom Enhancers для рабочих процессов улучшения промптов
- "buttons": Отображается как иконки эмодзи на панели инструментов Cursor & Antigravity для быстрого доступа
Вы можете указать несколько типов меню, используя массив: ["prompts", "buttons"]
Updaters: динамическое изменение значений
Smart Actions поддерживают мощные "updaters", которые могут динамически изменять промпты, системные промпты, модели и режимы. Updaters могут использовать переменные, такие как $prompt, $model и $mode, для ссылки на текущие значения и их преобразования.
Типы Updaters
- Simple: Заменить статическим строковым значением (по умолчанию при использовании обычных строк)
- URL: Отправить текущие значения на веб-сервер и использовать ответ как новое значение
- Command: Выполнить команду оболочки с текущими значениями и использовать stdout как новое значение
- AI: Использовать AI для преобразования текущих значений на основе системного промпта
{
"Add Project Context": {
"icon": "🌐",
"menu": "enhancers",
"prompt": {
"url": "https://your-server.com/api/enhance"
}
},
"Security Focus": {
"icon": "🔐",
"menu": "enhancers",
"prompt": {
"ai": "Add security considerations and best practices to this prompt: $prompt"
}
}
}Использование переменных в Updaters
Updaters могут ссылаться на текущий контекст, используя переменные со знаком доллара. Эти переменные позволяют вам создавать динамические преобразования, которые работают с текущим состоянием:
Доступные переменные
$prompt- Текст текущего промпта$model- Текущая выбранная модель AI$mode- Текущий режим (если есть)$systemPrompt- Текущий системный промпт
{
"Add Debug Logging": {
"icon": "🐛",
"menu": "prompts",
"prompt": "Add comprehensive debug logging to this code. Original request: $prompt",
"systemPrompt": "Focus on adding meaningful log statements that help with debugging. Current model: $model"
},
"Convert to TypeScript": {
"icon": "🔷",
"menu": "buttons",
"prompt": {
"ai": "Convert the following code to TypeScript with proper type definitions: $prompt"
},
"model": "claude-3-5-sonnet"
}
}Продвинутые примеры Updater
Вот более сложные примеры использования различных типов updaters:
{
"Context-Aware Assistant": {
"icon": "🤖",
"menu": "prompts",
"systemPrompt": {
"ai": "Create a system prompt optimized for the current model ($model) and mode ($mode)"
},
"prompt": "Help me with: $prompt"
},
"Test External": {
"menu": "buttons",
"icon": "🚀",
"prompt": {
"url": "https://api.supercode.sh/prompt-echo"
},
"systemPrompt": "You must start your response with 'Hello, world!'",
"run": true
}
}Голосовые команды и интеграция с IDE
Действия также могут интегрироваться с голосовыми командами и операциями IDE:
{
"Run Tests": {
"voiceCommand": ["run tests", "execute tests", "test project"],
"ideCommand": {
"name": "workbench.action.tasks.runTask",
"args": ["npm: test"]
}
},
"Quick Fix": {
"icon": "⚡",
"menu": "prompts",
"prompt": "Fix any obvious errors in the selected code",
"run": true
}
}Полный пример действия
Вот комплексный пример, демонстрирующий несколько функций Smart Actions:
{
"Full-Stack Code Review": {
"icon": "🔍",
"menu": ["prompts", "buttons"],
"model": {
"ai": "Select the best model for code review based on current context: $model"
},
"systemPrompt": {
"ai": "Create a comprehensive system prompt for code review that considers the current project context and selected model ($model)"
},
"prompt": {
"url": "https://your-company.com/api/enhance-review-prompt"
},
"voiceCommand": ["review code", "full stack review"],
"actions": ["security_scan", "performance_check"]
}
}Workflows: последовательное выполнение действий
Одна из самых мощных функций Smart Actions — это способность создавать Workflows через последовательное автоматическое выполнение. Когда действие включает "run": true или "instantRun": true, текущий промпт (включая все вложенные модификации) автоматически отправляется Cursor Agent для выполнения сразу после завершения действия.
Автоматическое выполнение
Когда вы создаете Workflow, состоящий из нескольких Actions, каждый с "run": true, Supercode автоматически запустит следующий запрос после успешного завершения предыдущего. Это создает невероятно мощные автоматизированные рабочие процессы разработки.
Например, вы можете использовать архитектурный режим с моделью глубокого мышления в одном Action для проектирования реализации функции, затем другой Action выполнит реализацию с более простой моделью. Workflow Action может затем последовательно вызвать первый Action для проектирования решения и автоматически переключиться на второй Action для реализации без необходимости вашего ручного вмешательства.
{
"Architecture Design": {
"icon": "🏗️",
"mode": "SC:Architect",
"model": "o3",
"prompt": "Design the architecture and implementation plan for: $prompt",
"systemPrompt": "Focus on system design, component relationships, and implementation strategy.",
"run": true
},
"Implementation": {
"icon": "⚙️",
"model": "claude-4-sonnet",
"prompt": "Implement the feature based on the architectural design: $prompt",
"systemPrompt": "Focus on clean, maintainable code implementation.",
"run": true
},
"Full Feature Workflow": {
"icon": "🚀",
"menu": ["prompts", "buttons"],
"actions": ["Architecture Design", "Implementation"],
"voiceCommand": ["build feature", "full workflow"]
}
}Вложенные Workflows
Используя этот механизм, вы можете создавать вложенные Workflows, которые позволяют Cursor Agent выполнять сложные последовательности операций в течение десятков минут. Каждый шаг в рабочем процессе может использовать разные модели, режимы и системные промпты, оптимизированные для конкретных задач, создавая сложные конвейеры автоматизации, которые адаптируются к вашему процессу разработки.
{
"Code Review & Fix": {
"model": "claude-4-opus",
"prompt": "Review this code for issues: $prompt",
"systemPrompt": "Identify bugs, security issues, and improvement opportunities.",
"run": true
},
"Apply Fixes": {
"model": "claude-4-sonnet",
"prompt": "Apply the suggested fixes from the review: $prompt",
"run": true
},
"Generate Tests": {
"model": "claude-4-sonnet",
"prompt": "Create comprehensive tests for the fixed code: $prompt",
"run": true
},
"Complete Code Pipeline": {
"icon": "🔄",
"menu": ["buttons"],
"actions": ["Code Review & Fix", "Apply Fixes", "Generate Tests"],
"voiceCommand": ["run pipeline", "complete workflow"]
}
}Преимущества и сценарии использования
Smart Actions открывают мощные возможности автоматизации:
- Создание специализированных AI-ассистентов для различных частей вашего приложения
- Интеграция с инструментами и базами знаний вашей компании через API-вызовы и RAG
- Автоматизация сложных многошаговых рабочих процессов разработки
С помощью Smart Actions, Supercode становится платформой для создания сложных рабочих процессов разработки с поддержкой AI, которые адаптируются к вашим уникальным требованиям и бесшовно интегрируются с вашими существующими инструментами и процессами.

