Cursor: Интеллектуальный редактор кода
-
aidar_i
- Полковник
- Сообщения: 3418
- Зарегистрирован: 24 дек 2016, 16:55
- Откуда: Уфа
- Имя: Айдар
- Благодарил (а): 23 раза
- Поблагодарили: 151 раз
- Контактная информация:
Cursor: Интеллектуальный редактор кода
Ссылка https://t-j.ru/how-to-use-cursor/
Попросил создать библиотеку, она с помощью командной строки создала папки и файлы библиотеки как положено и заполнила кодом, я обалдел от этого, обычно сидишь копируешь , вставляешь, а тут на тебе....
Программа платная, но есть в начале лимит на бесплатное использование, нужно регистрироваться. После окончания лимита, я заново регистрируюсь под другим адресом почты и снова пользуюсь.
Попросил создать библиотеку, она с помощью командной строки создала папки и файлы библиотеки как положено и заполнила кодом, я обалдел от этого, обычно сидишь копируешь , вставляешь, а тут на тебе....
Программа платная, но есть в начале лимит на бесплатное использование, нужно регистрироваться. После окончания лимита, я заново регистрируюсь под другим адресом почты и снова пользуюсь.
- Dev1
- Майор
- Сообщения: 1052
- Зарегистрирован: 12 июл 2016, 18:04
- Откуда: Гондурас
- Поблагодарили: 11 раз
Re: Cursor: Интеллектуальный редактор кода
Писал в телеге что классная штука этот курсор. Пользуюсь уже месяца 4, в основном для пайтона, яж не шарю
. Через сервис купил студенческую, она же про, пока работает.
Кому интересно мой рулес(чесна свиснул у кого то
и подделал под себя), не эталон, но как говорится почувстуйте разницу:
Вставляете рулес в курсор, он будет для всех общий, но можно и под каждый проект отдельно. Вроде нада перезапустить курсор. Открываете папку с проектом. Пишите в чате ии создай документацию проекта... типа того.
Кому интересно мой рулес(чесна свиснул у кого то
► Показать
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x 
-
aidar_i
- Полковник
- Сообщения: 3418
- Зарегистрирован: 24 дек 2016, 16:55
- Откуда: Уфа
- Имя: Айдар
- Благодарил (а): 23 раза
- Поблагодарили: 151 раз
- Контактная информация:
Re: Cursor: Интеллектуальный редактор кода
И молчал? Я один день посидел, хорошая штука, быстрая. Поделись своим опытом побольше, и что такое рулес), на счет студенческой тоже.Dev1 писал(а): 31 июл 2025, 17:48 Писал в телеге что классная штука этот курсор. Пользуюсь уже месяца 4, в основном для пайтона, яж не шарю. Через сервис купил студенческую, она же про, пока работает.
Кому интересно мой рулес(чесна свиснул у кого тои подделал под себя), не эталон, но как говорится почувстуйте разницу:
Вставляете рулес в курсор, он будет для всех общий, но можно и под каждый проект отдельно. Вроде нада перезапустить курсор. Открываете папку с проектом. Пишите в чате ии создай документацию проекта... типа того.
-
Александр
- Рядовой
- Сообщения: 91
- Зарегистрирован: 01 дек 2015, 15:49
- Откуда: Бобруйск
- Имя: Александр
- Поблагодарили: 3 раза
Re: Cursor: Интеллектуальный редактор кода
рулес, rules - правила/положения, в данном случае поведения помощника.
Хитро!
Хитро!
- Dev1
- Майор
- Сообщения: 1052
- Зарегистрирован: 12 июл 2016, 18:04
- Откуда: Гондурас
- Поблагодарили: 11 раз
Re: Cursor: Интеллектуальный редактор кода
А что молчать, я раз в телеге написал там помидорами закидали, ну и ладно
А так гайдов в ютубе смотрел много по улучшению работы в курсоре. Я усрусь тут все описывать
А так в месяц плата 20$, студенческая 25$ в год. Покупал тут, но почему то продавца забанили. Rules тут и полезный видосик. 
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x 
- Dev1
- Майор
- Сообщения: 1052
- Зарегистрирован: 12 июл 2016, 18:04
- Откуда: Гондурас
- Поблагодарили: 11 раз
Re: Cursor: Интеллектуальный редактор кода
По моделям нужно смотреть, они каждый день их крутят вертят, то нормально кодят то на следующий день тупые как пробки, особенно клод. Из клода пользовал 3,5-3,7, 4 очень умная но лимит месячный сьедает махом так как дорогая а в абонемент курсора даже за 20$ ограничения на токены. Ща пользуюсь джемини 2,5 про. Так же можно говорить модели обновить информацию по библиотеки с инета если она не может скрестить разные версии. Пробовал када шел тупняк у клода доделывать моделями от гпт 3о и 4о, убил 2 проекта.
Ну это у меня на пайтоне. модели от гпт очень хвастаются, пишут что код замечательный, все по феншую, но.... можно сделать еще лучше. И вот тут все и начнется, сначало вроде по ходу нормально, но потом модель все больше и больше теряет контекст и в итоге проекту кранты, у меня достаточно много кода. 2 проекта в помойку. С того времени делаю полные копии папок с проектом, чтоб если что можно было вернуться к рабочему состоянию.
Тут главное самому во время остановится 
пысы: если заметите чо ии стал человечно разговаривать это стало нормой. У меня как то по окончании проекта ии удалил папки которые я не просил, я написал об этом, в ответ ии написал: Упс, действительно, я удалил без вашего разрешения, извиняюсь, я сейчас же все верну как было
пысы: если заметите чо ии стал человечно разговаривать это стало нормой. У меня как то по окончании проекта ии удалил папки которые я не просил, я написал об этом, в ответ ии написал: Упс, действительно, я удалил без вашего разрешения, извиняюсь, я сейчас же все верну как было
Последний раз редактировалось Dev1 31 июл 2025, 19:23, всего редактировалось 1 раз.
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x 
-
aidar_i
- Полковник
- Сообщения: 3418
- Зарегистрирован: 24 дек 2016, 16:55
- Откуда: Уфа
- Имя: Айдар
- Благодарил (а): 23 раза
- Поблагодарили: 151 раз
- Контактная информация:
Re: Cursor: Интеллектуальный редактор кода
Да, ии кодировщики часто тупят, я с ними даже ругаюсь))))
Я, кроме здесь, больше нигде не сижу, а то отнимают много времени.
Я, кроме здесь, больше нигде не сижу, а то отнимают много времени.
- Dev1
- Майор
- Сообщения: 1052
- Зарегистрирован: 12 июл 2016, 18:04
- Откуда: Гондурас
- Поблагодарили: 11 раз
Re: Cursor: Интеллектуальный редактор кода
Как там успехи в кодинге с ИИ?
Вчера обновился и что то у меня такое очучение что ии прям логику подкрутили. Я в ахере(извиняюсь за мой французский) как они рассуждают. Причем модель неделю назад так не рассуждала
Мой пример:
► Показать
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x 
-
SSSR2000
- Сержант
- Сообщения: 112
- Зарегистрирован: 21 ноя 2022, 12:11
- Имя: Alex
- Благодарил (а): 4 раза
- Поблагодарили: 9 раз
Re: Cursor: Интеллектуальный редактор кода
Если в курсор загрузить проект на с++ (заблокировано одно из всплывающих окон, проект довольно большой) сможет он помочь, работает ли он вообще с с++?
- Dev1
- Майор
- Сообщения: 1052
- Зарегистрирован: 12 июл 2016, 18:04
- Откуда: Гондурас
- Поблагодарили: 11 раз
Re: Cursor: Интеллектуальный редактор кода
Сам курсов, ничего не понимает ) Это просто иде. Когда загрузите код вас попросят поставить расширение для языка С или С++, это для синтаксиса. А вот какая модель лучше справится с С++ это вопрос. Тут какая модель больше на С++ обучена. Пробуйте на разных моделях, только для каждой модели лучше создать отдельную папку под проект, так проще будет. И помните, чем конкретней вы обозначите ИИ что ей делать, тем качественней задача будет выполнена. 
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x 
Re: Cursor: Интеллектуальный редактор кода
может такой подход поможет кому-то
Код: Выделить всё
**Дата создания**: 2025-01-19 16:15:00 UTC+9
**Создано**: Kiro
**Статус**: Активный
# 🎯 Простыми словами: Что мы теперь можем делать
## 🚀 Наши возможности сейчас
### **Что у нас есть:**
#### 1. **Умная система правил для кода** ✅
- **Экспериментальные модули** (как `src/visualization/`) - можем писать код как хотим, без ограничений
- **Готовые модули** (как `src/trading/`) - автоматически применяются все стандарты качества
- **Переходные модули** - постепенно внедряем правила по мере готовности
#### 2. **План для умной документации** 📋
- Знаем как сделать правила документации для каждого типа модуля
- Есть готовые шаблоны и инструкции
- Понимаем как это внедрить
#### 3. **Организованная документация** 📚
- Все разложено по полочкам
- Легко найти нужную информацию
- Понятно что где лежит
## 🎯 От каких проблем мы ушли
### **БЫЛО (плохо):**
- 😤 **Cursor AI мешал экспериментировать** - требовал соблюдать правила даже для черновиков
- 📝 **Документация была одинаковая везде** - не учитывала специфику модулей
- 🗂️ **Документы лежали вперемешку** - сложно было найти нужное
- ⏰ **Тратили время на форматирование** вместо решения задач
### **СТАЛО (хорошо):**
- 🧪 **Можем свободно экспериментировать** в новых модулях
- 📚 **Документация будет специфичная** для каждого типа модуля
- 🗃️ **Все документы организованы** по смыслу
- ⚡ **Экономим время** - правила помогают, а не мешают
## 🚀 Чего добились
### **Конкретные результаты:**
#### 1. **Гибкая работа с кодом:**
- В `src/visualization/` можем писать как угодно - экспериментировать с архитектурой
- В `src/trading/` автоматически поддерживается высокое качество
- Можем легко переводить модули из экспериментальных в готовые
#### 2. **Готовый план для документации:**
- Для Bokeh графиков - будут специальные правила с примерами
- Для API - будут правила с описанием эндпоинтов
- Для торговых алгоритмов - будут правила с описанием стратегий
#### 3. **Порядок в документах:**
- Общие документы - в одной папке
- Первая проблема (стадии зрелости) - решена и задокументирована
- Вторая проблема (правила документации) - спланирована и готова к реализации
## 🔮 Возможности дальнейшего развития
### **Что можем делать дальше:**
#### 1. **Реализовать правила документации** (следующий шаг)
- Создать шаблоны для разных типов модулей
- Настроить автоматическое применение правил
- Получить качественную документацию везде
#### 2. **Добавлять новые модули легко:**
- Определяем тип модуля (API, аналитика, торговля)
- Выбираем стадию зрелости (экспериментальный/готовый)
- Применяем готовые шаблоны правил
#### 3. **Масштабировать на другие проекты:**
- Система работает для любых проектов
- Можем адаптировать под разные команды
- Принципы универсальны
## 🛠️ Наши действия при работе с модулями
### **Для НОВЫХ модулей:**
#### **Шаг 1: Определяем тип**
- **API модуль** → используем шаблон для API
- **Аналитика** → используем шаблон для аналитики
- **Торговля** → используем шаблон для торговых алгоритмов
- **Визуализация** → используем шаблон для Bokeh
#### **Шаг 2: Выбираем стадию**
- **Только начинаем** → experimental (свобода экспериментов)
- **Архитектура понятна** → stabilizing (мягкие правила)
- **Готов к продакшену** → production (все правила)
#### **Шаг 3: Применяем шаблоны**
- Копируем готовый шаблон правил
- Настраиваем под специфику модуля
- Начинаем работать
### **Для СУЩЕСТВУЮЩИХ модулей:**
#### **Если модуль мешают правила:**
1. Понижаем стадию до experimental
2. Свободно рефакторим архитектуру
3. Когда готово - повышаем стадию обратно
#### **Если нужны специальные правила:**
1. Создаем локальные правила в папке модуля
2. Переопределяем то что нужно
3. Остальное наследуется от общих правил
## 🔧 Развитие внутренних правил модуля
### **Простой алгоритм:**
#### **1. Понимаем что нужно:**
- Какие особенности у этого модуля?
- Что должно быть по-особенному?
- Какие стандарты важны именно здесь?
#### **2. Создаем локальные правила:**
```
src/мой_модуль/.cursor/
├── docs_local.md # Правила документации
└── module_config.json # Настройки модуля
```
#### **3. Пишем что нужно:**
- Специфичные требования для этого модуля
- Примеры кода характерные для модуля
- Особенности которых нет в других модулях
#### **4. Тестируем:**
- Проверяем что правила применяются
- Смотрим помогают ли они или мешают
- Корректируем если нужно
## 🎯 Практические примеры
### **Пример 1: Создаем новый модуль аналитики**
1. **Создаем** `src/analytics/`
2. **Определяем** - это аналитический модуль, стадия experimental
3. **Копируем** шаблон `docs_analytics.md`
4. **Настраиваем** под наши нужды (какие данные, какие отчеты)
5. **Начинаем работать** - правила помогают писать хорошую документацию
### **Пример 2: Улучшаем существующий API модуль**
1. **Видим** что документация API не очень
2. **Создаем** `src/api/.cursor/docs_local.md`
3. **Пишем** специфичные правила для наших эндпоинтов
4. **Получаем** автоматически лучшую документацию API
### **Пример 3: Рефакторим торговый модуль**
1. **Понижаем** стадию `src/trading/` до experimental
2. **Свободно меняем** архитектуру без ограничений
3. **Когда готово** - возвращаем стадию production
4. **Получаем** чистый код с соблюдением всех стандартов
## 🌟 Главная идея
### **Простыми словами:**
**Мы создали систему, которая:**
- **Не мешает** когда мы экспериментируем
- **Помогает** когда нужно качество
- **Адаптируется** под разные типы задач
- **Экономит время** на рутинных вещах
**Теперь Cursor AI:**
- Понимает **контекст** каждого модуля
- Применяет **правильные правила** в правильное время
- Помогает писать **качественную документацию**
- **Не блокирует** творческий процесс
## 🚀 Что дальше
### **Ближайшие планы:**
1. **Реализовать правила документации** (есть готовый план)
2. **Протестировать на реальных модулях**
3. **Собрать обратную связь и улучшить**
### **Долгосрочные возможности:**
- Расширить на другие проекты
- Добавить новые типы модулей
- Создать автоматизацию процессов
**Главное:** Теперь у нас есть **гибкая и умная система**, которая растет вместе с проектом и помогает команде работать эффективнее! 🎯
---
**Последнее редактирование**: 2025-01-19 16:15:00 UTC+9
**Редактировал**: Kiro
**Версия**: 1.0У вас нет необходимых прав для просмотра вложений в этом сообщении.
- Dev1
- Майор
- Сообщения: 1052
- Зарегистрирован: 12 июл 2016, 18:04
- Откуда: Гондурас
- Поблагодарили: 11 раз
Re: Cursor: Интеллектуальный редактор кода
А кто нибудь пробовал другие редакторы с ии? А то у мну накрылась подписка на курсор 
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x 
Re: Cursor: Интеллектуальный редактор кода
КИРО. пока 1 месяц бесплатный. но его предложения можно проганять другим ии типо посмотри а что тут можно улучшить.Dev1 писал(а): 20 окт 2025, 22:15 А кто нибудь пробовал другие редакторы с ии? А то у мну накрылась подписка на курсор![]()
Re: Cursor: Интеллектуальный редактор кода
по курсору можно развивать: mcp, rag управлять правилами. как будто пишешь программу с использованием разных вариантов и технологий для курсора, чтобы он не болел амнезией. может это позже в какое-то рабочее решение перейдет. пока по ощущения надо городитьто, чтобы курсор все знал и упрощать ему работу.
Re: Cursor: Интеллектуальный редактор кода
можно 2 сразу иметь - одна делает - вторая проверяет, делает замечания пишет их второй , вторая читает и исправляет.
если не силен в программировании и технологиях скорее курсор и киро могут дать мягко говоря не самое лучшее с точки зрения архитектуры и дизайна. и приходитя больше читать доки что они предлагают чем делать код.
если не силен в программировании и технологиях скорее курсор и киро могут дать мягко говоря не самое лучшее с точки зрения архитектуры и дизайна. и приходитя больше читать доки что они предлагают чем делать код.
Re: Cursor: Интеллектуальный редактор кода
Вот еще один метод. не надо делать lightrag - что требует хорошего пк и видеокарты.
Код: Выделить всё
Обход с инструментами и метаданные
Да, теоретически можно обойтись инструментами sequential-thinking, knowledge-graph-memory, и filesystem для работы с метаданными и реализации проекта с ИИ курсором (AI Cursor), но это зависит от конкретной реализации этих инструментов в вашем ИИ курсоре.
Использование инструментов для метаданных
filesystem: Этот инструмент критически важен для хранения и извлечения самих документов и любых файлов метаданных. Вы можете использовать его, чтобы читать, записывать и управлять файлами, содержащими метаданные.
sequential-thinking: Этот инструмент может быть использован для определения и выполнения пошагового процесса (сканирование, извлечение информации, создание метаданных, запись метаданных). Он обеспечивает логику для поэтапной работы.
knowledge-graph-memory: Это идеальный инструмент для хранения и связывания метаданных. Вместо простого списка он может хранить сущности (документы, темы, авторы) и отношения между ними (например, "документ X связан с темой Y"), что является по сути тем, чем являются метаданные, но в более структурированном виде.
Предложение: Используйте sequential-thinking для организации процесса: 1) Сканирование документов с помощью filesystem. 2) Извлечение ключевых данных. 3) Формирование метаданных в структуре графа через knowledge-graph-memory. 4) Запись сводных метаданных в файл (с помощью filesystem) для будущего использования.
Задание промпта для реализации проекта
Промпт должен быть поэтапным и четко определять роль каждого инструмента.
Пример промпта для части проекта:
"Используя sequential-thinking, выполни следующие шаги для всех файлов в папке [Укажите путь к папке] (через filesystem):
Сканирование: Поэтапно прочитай каждый документ.
Извлечение: Для каждого документа извлеки ключевые сущности: [Список сущностей: например, Название проекта, Цель, Ключевые слова, Связанные документы].
Формирование метаданных: Запиши извлеченные сущности и их связи в knowledge-graph-memory как метаданные.
Финальный отчет: После обработки всех документов, сгенерируй сводный файл метаданных (metadata.json или metadata.txt) со списком [ID Документа] и его [Ключевые слова и Связи], и сохрани его с помощью filesystem в [Путь для сохранения].
Цель: Наделить документы метаданными и создать основу для связи этой части проекта с другими."
Knowledge-Graph-Memory (MCP)
Обнуление/Очистка Knowledge-Graph-Memory MCP
Да, knowledge-graph-memory (в контексте MCP или других реализаций) обычно можно обнулить/очистить. Это необходимо для начала нового проекта или для исправления ошибок. Механизм очистки зависит от реализации (например, это может быть API-вызов к серверу памяти, удаление соответствующего файла базы данных или специальная команда в интерфейсе курсора), но концептуально эта возможность должна существовать.
Работа с Knowledge-Graph-Memory
В идеале, сам ИИ курсор должен работать с knowledge-graph-memory.
Вы, как пользователь, задаете промпт (как указано выше), который диктует, какую информацию нужно сохранить и как ее использовать.
Курсор, используя свой логический инструмент (sequential-thinking), преобразует ваш промпт в команды для инструмента knowledge-graph-memory (например, "создать сущность", "создать связь").
Сохранение метаданных в файл
Да, в этом есть большой смысл!
Связь между частями проекта: Сохранение сводных метаданных в файле (metadata.json, YAML, и т.д.) позволяет связать эту часть проекта с другими. В следующем промпте вы можете указать курсору "загрузи metadata.json из предыдущей части и используй его для поиска связанных документов в новой части".
Портативность и отладка: Это обеспечивает переносимость (метаданные можно перенести на другую систему) и отладку (вы можете проверить, правильно ли были извлечены и записаны метаданные).
Гибридный подход: Это комбинирует преимущества структурированного графа (knowledge-graph-memory) с простотой файловой системы (filesystem)- Dev1
- Майор
- Сообщения: 1052
- Зарегистрирован: 12 июл 2016, 18:04
- Откуда: Гондурас
- Поблагодарили: 11 раз
Re: Cursor: Интеллектуальный редактор кода
Пока пробую вскоде, кило-коде и qwen cli, gemini cli что то у меня не хочет цепляться к вскоду даже с впн. У кило-коде достаточно интересное управление ии, можно назначить несколько ии для выполнения определенных задач через оркестратор. 
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x 
Re: Cursor: Интеллектуальный редактор кода
возможно это будет полезно. Курсор обновился и он пошустрей работает. И это может помочь при создании проекта. Но и также может устареть.
Код: Выделить всё
**Дата создания**: 2025-11-02 13:50:00 UTC+9
**Создано**: KURSOR
**Статус**: Активный
# Объяснение: metadata_project и две системы KGM
## 📋 Краткое резюме
В проекте TradingSystem есть **ДВЕ разные, но связанные системы** для работы с графом знаний:
1. **MCP Knowledge Graph Memory** (через MCP протокол) - внешний граф
2. **metadata_project KGM** (локальная система) - локальный граф с файловым хранилищем
---
## 🔍 Детальное объяснение
### 1. MCP Knowledge Graph Memory (внешний граф)
**Что это:**
- Внешний MCP сервер `knowledge-graph-memory`
- Доступ через MCP инструменты: `mcp_knowledge-graph-memory_*`
- Хранится вне проекта (через MCP протокол)
**Использование:**
- Семантический поиск по проекту
- Хранение информации о компонентах (сущности, связи, наблюдения)
- Доступ из Cursor AI через MCP
**Инструменты:**
- `mcp_knowledge-graph-memory_read_graph()` - чтение графа
- `mcp_knowledge-graph-memory_search_nodes()` - поиск узлов
- `mcp_knowledge-graph-memory_create_entities()` - создание сущностей
- `mcp_knowledge-graph-memory_add_observations()` - добавление наблюдений
**Текущее состояние (из последнего запроса):**
- 13 сущностей (документы, скрипты, инструменты)
- 18 связей между компонентами
- 28 наблюдений о состоянии компонентов
---
### 2. metadata_project KGM (локальная система)
**Что это:**
- Локальная система управления метаданными с Event-Sourced архитектурой
- Хранится в `metadata_project/.meta/kgm/`
- Генерирует YAML метаданные из файлов проекта
- Интегрируется с MCP Knowledge Graph Memory
**Структура:**
```
metadata_project/
├── .meta/
│ ├── kgm/ # Локальный граф знаний
│ │ └── graph_data/
│ │ ├── nodes.json # Узлы графа
│ │ ├── edges.json # Связи графа
│ │ └── embeddings.json # Эмбеддинги
│ ├── tools/ # Инструменты обработки
│ │ ├── kgm_client.py # Клиент для работы с графом
│ │ ├── yaml_generator.py # Генератор YAML конфигов
│ │ └── metadata_extractor.py
│ ├── files/ # YAML метаданные
│ └── cache/ # Кэш
├── templates/
│ ├── python_template.yaml # Шаблон для Python (ПОЛНЫЙ формат)
│ └── docs_template.yaml # Шаблон для документации
└── scripts/
├── update_kgm_full.py # Полное обновление KGM
└── load_metadata_and_generate_embeddings.py
```
**Особенности:**
- ✅ Генерация YAML метаданных из файлов проекта
- ✅ Семантические эмбеддинги (paraphrase-multilingual-MiniLM-L12-v2, 384-dim)
- ✅ Векторный поиск (FAISS IndexFlatIP)
- ✅ 6 типов связей: documents, semantic, imports, functional, temporal, data_flow
- ✅ Автоматическое построение связей между компонентами
- ✅ Синхронизация с MCP Knowledge Graph Memory
**Основные инструменты (из .cursorrules.json):**
- `metadata_project/.meta/tools/yaml_generator.py` - ОСНОВНОЙ генератор YAML
- `metadata_project/templates/python_template.yaml` - ПОЛНЫЙ шаблон для Python
- `metadata_project/load_metadata_and_generate_embeddings.py` - генерация эмбеддингов
- `metadata_project/update_kgm_full.py` - полное обновление KGM
---
## 🔄 Взаимосвязь двух систем
### Как они работают вместе:
1. **metadata_project** анализирует файлы проекта → генерирует YAML метаданные
2. **metadata_project** создает локальный граф знаний (nodes.json, edges.json)
3. **metadata_project** синхронизируется с **MCP Knowledge Graph Memory**
4. **MCP Knowledge Graph Memory** предоставляет доступ через MCP протокол
5. Я (Cursor AI) использую **MCP Knowledge Graph Memory** для поиска и анализа
### Когда использовать какую систему:
**Используй MCP Knowledge Graph Memory когда:**
- Нужен быстрый поиск через MCP инструменты
- Нужно добавить информацию о компонентах
- Нужен доступ из Cursor AI
**Используй metadata_project когда:**
- Нужна генерация YAML метаданных из файлов
- Нужна полная загрузка графа для анализа
- Нужна синхронизация между системами
---
## 📚 Правила из .cursorrules.json
### Критические правила для metadata_project:
1. **ПРИ генерации YAML:**
- ВСЕГДА используй `metadata_project/.meta/tools/yaml_generator.py` (ОСНОВНОЙ генератор)
- ВСЕГДА используй `metadata_project/templates/python_template.yaml` как шаблон ПОЛНОГО формата
- НЕ создавай новые генераторы YAML - используй существующие
2. **ПЕРЕД созданием инструментов:**
- ВСЕГДА сканируй `metadata_project/.meta/tools/`, `scripts/`, `src/` на наличие готовых решений
- ТОЛЬКО если НЕТ готового решения - предложи создать новый инструмент
3. **Обязательные шаги для YAML генерации:**
- `mcp_knowledge-graph-memory_read_graph()` - полная загрузка графа
- `kgm_semantic_search.semantic_search()` - семантический поиск
- `kgm_semantic_search.cluster_documents()` - кластеризация
- `knowledge-graph-memory.analyze_dependencies()` - анализ зависимостей
---
## 🎯 Практическое применение для DDE системы
### Что я использую сейчас:
1. **MCP Knowledge Graph Memory** - для хранения информации о:
- `test_dde_ngx5.py` - тестовый скрипт
- `start_dde_monitoring.py` - точка входа
- `DDE_NGX5_TEST_RESULTS_UPDATE_2025-11-02.md` - результаты тестов
- Связи между компонентами DDE системы
2. **metadata_project** - можно использовать для:
- Генерации YAML метаданных для DDE модулей
- Полного анализа архитектуры DDE системы
- Семантического поиска связанных компонентов
---
## 📖 Документация
- `.cursorrules.json` - главные правила (строки 35-38, 52-57, 79-80, 492-554)
- `.cursor/rules/kgm_system.md` - описание KGM системы
- `.cursor/rules/kgm_workflow.md` - workflow для KGM
- `metadata_project/README.md` - документация metadata_project
- `metadata_project/KGM_SYSTEM_SUMMARY.md` - итоговый отчет по KGM
---
## 🗑️ Управление данными в MCP Knowledge Graph Memory
### Как обновлять или удалять связи в MCP Knowledge Graph Memory?
#### 1. Удаление связей (relations)
**Инструмент:** `mcp_knowledge-graph-memory_delete_relations()`
```python
# Удаление конкретной связи
mcp_knowledge-graph-memory_delete_relations(relations=[
{
"from": "старая_сущность",
"to": "другая_сущность",
"relationType": "old_relation_type"
}
])
# Удаление всех связей определенного типа
# (нужно сначала найти все такие связи через read_graph)
```
**Когда удалять связи:**
- ✅ Связь устарела (компоненты больше не связаны)
- ✅ Компонент удален из проекта
- ✅ Связь была создана по ошибке
- ✅ Рефакторинг привел к разрыву связи
- ⚠️ **НЕ удаляй** связи, если просто изменилась реализация, но логическая связь сохранилась
---
#### 2. Удаление сущностей (entities)
**Инструмент:** `mcp_knowledge-graph-memory_delete_entities()`
```python
# Удаление сущностей
mcp_knowledge-graph-memory_delete_entities(entityNames=[
"устаревший_компонент",
"удаленный_файл",
"неиспользуемый_модуль"
])
```
**Важно:** При удалении сущности автоматически удаляются все связанные с ней связи и наблюдения.
**Когда удалять сущности:**
- ✅ Файл или компонент удален из проекта
- ✅ Компонент переименован (сначала создай новую сущность с новым именем)
- ✅ Компонент больше не используется
- ⚠️ **НЕ удаляй**, если компонент временно неактивен (используй обновление статуса)
---
#### 3. Удаление наблюдений (observations)
**Инструмент:** `mcp_knowledge-graph-memory_delete_observations()`
```python
# Удаление конкретных наблюдений
mcp_knowledge-graph-memory_delete_observations(deletions=[
{
"entityName": "test_dde_ngx5.py",
"observations": [
"[2025-11-02] [S:Active] Устаревшее наблюдение",
"[2025-11-01] [S:Active] Старая информация"
]
}
])
```
**Когда удалять наблюдения:**
- ✅ Наблюдение устарело и больше не актуально
- ✅ Информация в наблюдении неверна
- ✅ Наблюдение дублируется в более новом наблюдении
- ⚠️ **НЕ удаляй** исторические наблюдения (они показывают развитие компонента)
---
#### 4. Обновление сущностей
**Инструмент:** `mcp_knowledge-graph-memory_update_entities()`
```python
# Обновление существующих сущностей
mcp_knowledge-graph-memory_update_entities(entities=[
{
"name": "test_dde_ngx5.py", # Текущее имя
"newName": "test_dde_ngx5_v2.py", # Новое имя (опционально)
"entityType": "test_script", # Новый тип (опционально)
"aliases": ["DDE Test", "NGX5 Test"] # Обновленные алиасы (опционально)
}
])
```
**Когда обновлять сущности:**
- ✅ Компонент переименован
- ✅ Изменился тип сущности
- ✅ Нужно обновить алиасы
- ✅ Нужно обновить метаданные
---
#### 5. Обновление связей
**Инструмент:** `mcp_knowledge-graph-memory_update_relations()`
```python
# Обновление существующих связей
mcp_knowledge-graph-memory_update_relations(relations=[
{
"from": "test_dde_ngx5.py",
"to": "dde_reader.py",
"relationType": "tests" # Тип связи для идентификации
# При обновлении можно создать новую связь с новым типом
}
])
```
**Когда обновлять связи:**
- ✅ Изменился тип связи между компонентами
- ✅ Нужно уточнить характер связи
- ⚠️ Обычно проще удалить старую и создать новую связь
---
### 🔄 Активное изменение данных в MCP Knowledge Graph Memory
**Да, я могу активно менять данные!** Это рекомендуется для поддержания актуальности графа.
#### Когда активно обновлять данные:
**✅ ОБЯЗАТЕЛЬНО обновлять:**
1. **При создании новых компонентов:**
- Добавляю новые сущности сразу после создания
- Создаю связи с существующими компонентами
- Добавляю первичные наблюдения
2. **При изменении статуса:**
- Обновляю наблюдения при изменении состояния (Active → Archived)
- Обновляю связи при рефакторинге
3. **При завершении задач:**
- Добавляю наблюдения о результатах тестирования
- Обновляю информацию о статусе компонента
4. **При обнаружении ошибок:**
- Удаляю неверные связи или наблюдения
- Исправляю неточную информацию
**⚠️ НЕ нужно обновлять:**
- Исторические наблюдения (они показывают развитие)
- Связи, которые остались актуальными после рефакторинга
- Информацию, которая не изменилась
---
### 🎯 Наилучшее использование обеих систем в связке
#### Рекомендуемый workflow:
**1. Для новых компонентов:**
```yaml
Шаг 1: Создать компонент (файл, модуль, документ)
Шаг 2: metadata_project → генерация YAML метаданных
Шаг 3: MCP Knowledge Graph Memory → добавление сущности
Шаг 4: MCP Knowledge Graph Memory → создание связей с существующими компонентами
Шаг 5: MCP Knowledge Graph Memory → добавление первичных наблюдений
```
**2. Для анализа архитектуры:**
```yaml
Шаг 1: MCP Knowledge Graph Memory → поиск связанных компонентов
Шаг 2: metadata_project → семантический поиск через локальный KGM
Шаг 3: Сопоставление результатов обеих систем
Шаг 4: Принятие решений на основе полной картины
```
**3. Для генерации YAML метаданных:**
```yaml
Шаг 1: MCP Knowledge Graph Memory → чтение полного графа
Шаг 2: metadata_project → анализ зависимостей через локальный KGM
Шаг 3: metadata_project → генерация YAML с полным пониманием архитектуры
Шаг 4: MCP Knowledge Graph Memory → обновление информации о новом YAML
```
**4. Для рефакторинга:**
```yaml
Шаг 1: MCP Knowledge Graph Memory → анализ зависимостей компонента
Шаг 2: metadata_project → семантический поиск похожих компонентов
Шаг 3: Выполнение рефакторинга
Шаг 4: MCP Knowledge Graph Memory → обновление связей и наблюдений
Шаг 5: metadata_project → пересоздание YAML метаданных
```
---
#### Практические рекомендации:
**Используй MCP Knowledge Graph Memory для:**
- ✅ Быстрого поиска и анализа компонентов
- ✅ Хранения информации о текущем состоянии
- ✅ Отслеживания прогресса работы
- ✅ Создания связей между компонентами
- ✅ Добавления наблюдений о состоянии
**Используй metadata_project для:**
- ✅ Генерации YAML метаданных из файлов
- ✅ Полного анализа архитектуры (с эмбеддингами)
- ✅ Семантического поиска по смыслу
- ✅ Кластеризации связанных компонентов
- ✅ Глубокого анализа зависимостей
**Синхронизация:**
- ✅ Регулярно обновляй MCP Knowledge Graph Memory на основе изменений в проекте
- ✅ Используй metadata_project для генерации метаданных, затем синхронизируй с MCP
- ✅ При значительных изменениях запускай полное обновление обеих систем
---
## 📋 Примеры использования для DDE системы
### Пример 1: Добавление нового компонента
```python
# 1. Создаю сущность в MCP Knowledge Graph Memory
mcp_knowledge-graph-memory_create_entities(entities=[
{
"name": "start_dde_monitoring.py",
"entityType": "entry_point",
"aliases": ["DDE Monitoring Starter", "DDE Real-time Monitor"]
}
])
# 2. Создаю связи
mcp_knowledge-graph-memory_create_relations(relations=[
{
"from": "start_dde_monitoring.py",
"to": "src/services/dde/dde_reader.py",
"relationType": "starts"
},
{
"from": "start_dde_monitoring.py",
"to": "test_dde_ngx5.py",
"relationType": "follows"
}
])
# 3. Добавляю наблюдения
mcp_knowledge-graph-memory_add_observations(observations=[
{
"entityName": "start_dde_monitoring.py",
"contents": [
"[2025-11-02] [S:Active] Главная точка входа для запуска DDE мониторинга",
"[2025-11-02] [S:Active] Поддерживает корректную остановку через Ctrl+C"
]
}
])
```
### Пример 2: Обновление после изменений
```python
# Если компонент изменился, обновляю наблюдения
mcp_knowledge-graph-memory_add_observations(observations=[
{
"entityName": "test_dde_ngx5.py",
"contents": [
"[2025-11-02] [S:Active] Тест выполнен успешно: 5/6 тестов пройдено",
"[2025-11-02] [S:Active] Найдено 95 записей NGX5"
]
}
])
# Если нужно удалить устаревшее наблюдение
mcp_knowledge-graph-memory_delete_observations(deletions=[
{
"entityName": "test_dde_ngx5.py",
"observations": [
"[2025-11-02] [S:Active] Тест выполнен: 3/6 тестов пройдено (50%)" # Устарело
]
}
])
```
### Пример 3: Использование обеих систем вместе
```python
# 1. MCP Knowledge Graph Memory - поиск связанных компонентов
related = mcp_knowledge-graph-memory_find_related_nodes(
node_name="test_dde_ngx5.py"
)
# 2. metadata_project - семантический поиск похожих компонентов
similar = metadata_project_search_similar(query="DDE testing")
# 3. Сопоставление результатов и принятие решений
# Используя информацию из обеих систем
```
---
## 💡 Как задавать промпты и настраивать правила для максимальной пользы
### 📝 Формулировка эффективных промптов
#### 1. Контекстный промпт с использованием KGM
**✅ ХОРОШИЙ пример:**
```
Проанализируй через KGM граф связи между DDE Reader и Redis Publisher.
Используй MCP Knowledge Graph Memory для поиска всех компонентов,
которые зависят от dde_reader.py. Затем проверь, что все связи актуальны.
```
**❌ ПЛОХОЙ пример:**
```
Проверь dde_reader
```
**Почему:**
- ✅ Указывает конкретные инструменты (KGM, MCP)
- ✅ Определяет цель (анализ связей)
- ✅ Уточняет ожидаемый результат
---
#### 2. Промпт с использованием обеих систем
**✅ ХОРОШИЙ пример:**
```
Создай новый компонент для обработки DDE данных:
1. Используй metadata_project для генерации YAML метаданных
2. Добавь сущность в MCP Knowledge Graph Memory
3. Создай связи с существующими компонентами DDE системы
4. Обнови документацию
```
**❌ ПЛОХОЙ пример:**
```
Создай обработчик DDE
```
**Почему:**
- ✅ Четкий пошаговый план
- ✅ Указывает, какие инструменты использовать
- ✅ Включает обновление документации
---
#### 3. Промпт с указанием правил
**✅ ХОРОШИЙ пример:**
```
Согласно .cursorrules.json и локальным правилам .cursor/rules:
- Используй metadata_project/.meta/tools/yaml_generator.py для генерации YAML
- Используй metadata_project/templates/python_template.yaml как шаблон
- Добавь метаданные с текущим временем UTC+9
- Обнови MCP Knowledge Graph Memory с новой информацией
```
**❌ ПЛОХОЙ пример:**
```
Создай YAML для нового файла
```
**Почему:**
- ✅ Ссылается на конкретные правила
- ✅ Указывает точные пути к инструментам
- ✅ Уточняет требования к метаданным
---
### ⚙️ Настройка правил для текущего чата
#### 1. Использование @ упоминаний
**Пример:**
```
@DDE_METADATA_PROJECT_EXPLANATION_2025-11-02.md добавь информацию о...
@.cursorrules.json следуй правилам из этого файла
@.cursor/rules/kgm_system.md используй рекомендации из этого правила
```
**Зачем:**
- ✅ Я сразу получаю контекст из указанных файлов
- ✅ Понимаю, на какие правила опираться
- ✅ Вижу структуру документа, который нужно обновить
---
#### 2. Явное указание инструментов
**Пример:**
```
Можешь использовать KGM граф и поиск по нему.
Тебе доступны инструменты MCP:
- knowledge-graph-memory
- filesystem
Используй их для анализа и работы с файлами.
```
**Зачем:**
- ✅ Я знаю, какие MCP инструменты доступны
- ✅ Понимаю, что нужно использовать KGM для анализа
- ✅ Могу выбрать правильные инструменты для задачи
---
#### 3. Указание приоритетов
**Пример:**
```
ПРИОРИТЕТ #1: Запустить DDE Reader в реальном времени
ПРИОРИТЕТ #2: Протестировать Bokeh UI
ПРИОРИТЕТ #3: Интегрировать с Order Executor
Делай в соответствии с @.cursorrules.json и локальными правилами .cursor\rules
```
**Зачем:**
- ✅ Понимаю порядок выполнения задач
- ✅ Могу планировать работу эффективно
- ✅ Следую установленным правилам
---
### 🎯 Рекомендации по написанию промптов
#### Структура эффективного промпта:
```markdown
1. КОНТЕКСТ (что нужно сделать)
- Используй @ упоминания для файлов
- Укажи связанные компоненты
- Ссылайся на документацию
2. ИНСТРУМЕНТЫ (что использовать)
- MCP инструменты (knowledge-graph-memory, filesystem)
- KGM граф для анализа
- metadata_project для генерации YAML
3. ПРАВИЛА (как делать)
- @.cursorrules.json - главные правила
- @.cursor/rules/ - локальные правила
- Следовать шаблонам из docs/13_TEMPLATES/
4. РЕЗУЛЬТАТ (что ожидается)
- Конкретные файлы для создания/обновления
- Документация для обновления
- Обновление KGM графа
```
---
### 📋 Примеры промптов для разных задач
#### Пример 1: Создание нового компонента
```
Создай новый модуль для обработки DDE данных:
КОНТЕКСТ:
- @src/services/dde/dde_reader.py - существующий DDE Reader
- @docs/DDE_NGX5_TEST_RESULTS_UPDATE_2025-11-02.md - результаты тестов
ИНСТРУМЕНТЫ:
- Используй KGM граф для поиска связанных компонентов
- Используй metadata_project для генерации YAML метаданных
ПРАВИЛА:
- Следуй @.cursorrules.json
- Используй metadata_project/.meta/tools/yaml_generator.py
- Используй metadata_project/templates/python_template.yaml
РЕЗУЛЬТАТ:
- Новый модуль с метаданными
- Обновление KGM графа с новой сущностью
- Обновление документации
```
---
#### Пример 2: Анализ архитектуры
```
Проанализируй архитектуру DDE системы:
КОНТЕКСТ:
- @docs/DDE_NEXT_STEPS_EXECUTION_2025-11-02.md - план выполнения
- Все компоненты DDE системы
ИНСТРУМЕНТЫ:
- MCP Knowledge Graph Memory для чтения графа
- metadata_project для семантического поиска
- KGM для анализа связей
ПРАВИЛА:
- Используй оба источника данных (MCP и metadata_project)
- Сопоставь результаты
- Предложи рекомендации на основе полной картины
РЕЗУЛЬТАТ:
- Анализ текущей архитектуры
- Выявление недостающих связей
- Рекомендации по улучшению
```
---
#### Пример 3: Обновление документации
```
Обнови документацию о DDE системе:
КОНТЕКСТ:
- @docs/DDE_METADATA_PROJECT_EXPLANATION_2025-11-02.md - текущий документ
- Изменения в DDE системе
ИНСТРУМЕНТЫ:
- KGM граф для поиска связанных документов
- MCP filesystem для чтения файлов
ПРАВИЛА:
- Следуй шаблонам из docs/13_TEMPLATES/
- Добавь метаданные с текущим временем UTC+9
- Обнови "Последнее редактирование"
РЕЗУЛЬТАТ:
- Обновленный документ с актуальной информацией
- Обновленные метаданные
- Обновление KGM графа
```
---
### 🛠️ Настройка правил в .cursorrules.json
#### Что можно настроить:
**1. Приоритеты использования инструментов:**
```json
"tool_selection_strategy": {
"for_analysis": "codebase_search + grep + kgm_semantic_search",
"for_semantic_search": "kgm_semantic_search.semantic_search",
"for_kgm_analysis": "knowledge-graph-memory + kgm_semantic_search"
}
```
**2. Автоматическое применение правил:**
```json
"module_rules": {
"location": ".cursor/rules/",
"auto_apply": true,
"pattern_based": "fileMatch паттерны применяются автоматически"
}
```
**3. Критические ограничения:**
```json
"critical_constraints": [
"НЕ удаляй файлы без явного подтверждения",
"НЕ меняй файлы в папке 14_SECRETS/",
"ВСЕГДА используй mcp_filesystem для работы с файлами"
]
```
---
### 🎓 Лучшие практики для пользователя
#### 1. Всегда указывай контекст:
```
❌ Плохо: "Добавь функцию"
✅ Хорошо: "@dde_reader.py добавь функцию чтения нового типа данных,
используй существующий паттерн из read_market_data_file"
```
#### 2. Используй @ упоминания:
```
❌ Плохо: "Создай тест"
✅ Хорошо: "@test_dde_ngx5.py создай аналогичный тест для нового компонента,
следуй структуре существующего теста"
```
#### 3. Указывай правила:
```
❌ Плохо: "Обнови документацию"
✅ Хорошо: "Согласно @.cursorrules.json и локальным правилам .cursor/rules,
обнови документацию с метаданными UTC+9"
```
#### 4. Используй KGM для анализа:
```
❌ Плохо: "Найди зависимости"
✅ Хорошо: "Используй MCP Knowledge Graph Memory для поиска всех компонентов,
которые зависят от dde_reader.py. Затем используй metadata_project
для семантического поиска похожих компонентов"
```
#### 5. Указывай ожидаемый результат:
```
❌ Плохо: "Сделай интеграцию"
✅ Хорошо: "Интегрируй DDE с Order Executor:
1. Настрой подписку на Redis каналы
2. Реализуй обработку новых сделок
3. Обнови документацию
4. Добавь информацию в KGM граф"
```
---
### 📊 Чеклист эффективного промпта
**Перед отправкой промпта проверь:**
- [ ] ✅ Указан контекст через @ упоминания
- [ ] ✅ Указаны инструменты (MCP, KGM, metadata_project)
- [ ] ✅ Указаны правила (@.cursorrules.json, .cursor/rules)
- [ ] ✅ Четко описан ожидаемый результат
- [ ] ✅ Указан приоритет (если задач несколько)
- [ ] ✅ Указаны связанные компоненты
- [ ] ✅ Указана необходимость обновления документации
---
### 🔄 Интеграция с текущей работой
**Для DDE системы рекомендую:**
1. **Всегда начинать с KGM анализа:**
```
Используй MCP Knowledge Graph Memory для поиска всех компонентов DDE системы
и их связей. Затем используй metadata_project для семантического поиска.
```
2. **Всегда обновлять KGM после изменений:**
```
После создания/изменения компонента:
- Добавь/обнови сущность в MCP Knowledge Graph Memory
- Создай/обнови связи с существующими компонентами
- Добавь наблюдения о текущем состоянии
```
3. **Всегда использовать обе системы для анализа:**
```
Для полного понимания архитектуры:
- MCP Knowledge Graph Memory → быстрый поиск и связи
- metadata_project → глубокий анализ с эмбеддингами
- Сопоставление результатов → полная картина
```
---
**Последнее редактирование**: 2025-11-02 14:20:00 UTC+9
**Редактировал**: KURSOR
**Версия**: 2.1
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость