добавил AI инструменты 2026-03-14 22:11:23

This commit is contained in:
Sergey Krylov 2026-03-14 22:11:23 +03:00
parent 0c28405667
commit c7c32811bc
12 changed files with 599 additions and 9 deletions

5
Knowledges/.geminiignore Normal file
View File

@ -0,0 +1,5 @@
.obsidian/
.trash/
_assets/
.DS_Store
.gitignore

View File

@ -17,6 +17,6 @@
"repelStrength": 10,
"linkStrength": 1,
"linkDistance": 250,
"scale": 0.4775673225395386,
"close": true
"scale": 0.38932283228242287,
"close": false
}

View File

@ -22,7 +22,7 @@ Knowledges/
│ ├── Алгоритмы/
│ ├── Структуры данных/
│ └── Рефакторинг/
├── Шаблоны/ ← шаблоны (book_template, course_template)
├── Шаблоны/ ← шаблоны (book_template, course_template, movie_template)
└── _assets/ ← медиафайлы
```
@ -43,6 +43,13 @@ Frontmatter поля: `Тип`, `Статус`, `Название`, `Платф
- **Статус:** `Запланировано` | `В процессе` | `Пройден` | `Заброшен`
- **Платформа:** `YouTube` | `Stepik` | `Coursera` | `Udemy` | `Другое`
### Фильм (`Библиотека/Фильмы/<Название>.md`)
Frontmatter поля: `Тип`, `Статус`, `Название`, `Режиссёр`, `Актёры` (список), `Год`, `Жанр` (список), `Страна`, `Длительность` (минуты), `Постер`, `Просмотрено`, `Оценка` (1-10), `Теги` (список), `Ссылка`
- **Статус:** `Хочу посмотреть` | `Просмотрено` | `Заброшен`
- Постеры: `Библиотека/Фильмы/covers/<slug>.jpg`
### IT-заметки (`IT/<Раздел>/<Название>.md`)
Без frontmatter. Теги inline (`#тег`), wikilinks `[[Название]]`.
@ -60,6 +67,9 @@ Frontmatter поля: `Тип`, `Статус`, `Название`, `Платф
- Примеры: `добавлена книга: Clean Code`, `добавлен курс: Тиндер на Java`
- Стейджить только конкретные файлы, **никогда `git add -A` или `git add .`**
## Навык /obsidian
## Навыки
Для работы с vault подключён skill `obsidian` (`.claude/skills/obsidian/SKILL.md`). Он описывает полный workflow добавления заметок — использовать его как основу.
- `/obsidian` — общий workflow работы с vault (`.claude/skills/obsidian/SKILL.md`)
- `/add-book` — добавить книгу (`.claude/skills/add-book/SKILL.md`)
- `/add-course` — добавить курс (`.claude/skills/add-course/SKILL.md`)
- `/add-film` — добавить фильм (`.claude/skills/add-film/SKILL.md`)

35
Knowledges/GEMINI.md Normal file
View File

@ -0,0 +1,35 @@
# GEMINI.md — Инструкции по работе с Obsidian Vault
Этот файл содержит фундаментальные правила для Gemini CLI при работе в данном проекте. Эти правила имеют приоритет над общими инструкциями.
## 🛠 Общие принципы
- **Язык:** Все общение и содержимое заметок — на русском (если не указано иное).
- **Формат заметок:** Markdown с использованием Obsidian-специфичных элементов (Wikilinks `[[ ]]`, Callouts `> [!info]`).
- **Стилистика:** Лаконичный, технически грамотный стиль. Использование эмодзи в заголовках согласно существующим шаблонам.
## 📁 Структура и Правила
### 1. IT-заметки (`IT/`)
- **Путь:** `IT/<Категория>/<Название>.md`
- **Frontmatter:** НЕ ИСПОЛЬЗУЕТСЯ (согласно CLAUDE.md).
- **Теги:** Inline-теги в формате `#названиеега` (нижний регистр, подчеркивания).
- **Связи:** Максимальное использование `[[Wikilinks]]` для перекрестных ссылок между концепциями.
### 2. Библиотека (Книги/Курсы)
- **Путь:** `Библиотека/Книги/` или `Библиотека/Курсы/`.
- **Шаблоны:** Строгое соблюдение структуры из папки `Шаблоны/`.
- **Frontmatter:** Обязателен. Поля и значения (Статус, Тип, Оценка) брать строго из `CLAUDE.md`.
- **Даты:** Формат `DD.MM.YYYY`.
### 3. Медиа (`_assets/`)
- **Имена файлов:** Если я добавляю ссылки на изображения, они должны указывать на `_assets/img/` или `_assets/gif/`.
- **Поиск:** Я игнорирую эту папку при поиске текста (настроено в `.geminiignore`), чтобы работать быстрее.
## 📝 Рабочий процесс (Workflow)
1. **Research:** Перед созданием заметки я проверяю, нет ли уже похожей, чтобы избежать дублирования.
2. **Execution:** При создании новой заметки об алгоритме или паттерне, я стараюсь добавить примеры кода и визуальное описание (логику работы).
3. **Validation:** После внесения изменений я проверяю корректность отображения ссылок и заполнение всех обязательных полей frontmatter.
## 🚀 Команды и Git
- **Коммиты:** На русском, кратко, в императиве (например, `добавлен паттерн: Strategy`).
- **Безопасность:** Никогда не добавлять файлы `.obsidian/` или `.DS_Store` в индекс git.

View File

@ -1,4 +0,0 @@
Claude code
Gemini CLI
Codex CLI
Qwen Code

View File

@ -0,0 +1,384 @@
# Claude Code — Инструкция по настройке
#ai_tools #claude #cli #productivity
---
## 🧠 Что такое Claude Code
CLI-инструмент от Anthropic для работы с кодом и задачами прямо в терминале. Читает контекст проекта, управляет файлами, запускает команды, работает с git. Ключевое отличие от веб-интерфейса — глубокая интеграция с файловой системой и инструментами разработки.
---
## 📁 Конфигурационные файлы
### CLAUDE.md — главный файл инструкций
Claude читает `CLAUDE.md` при каждом запуске и следует инструкциям как жёстким правилам.
| Путь | Область действия |
|------|-----------------|
| `~/.claude/CLAUDE.md` | Глобально — все проекты |
| `<project>/CLAUDE.md` | Только этот проект |
| `<subdir>/CLAUDE.md` | Только при работе в этой директории |
**Что писать в CLAUDE.md:**
- Структура проекта и соглашения
- Стиль коммитов и ветвления
- Какие команды запускать для тестов/сборки
- Какие файлы трогать нельзя
- Как форматировать код
- Архитектурные решения и их причины
```markdown
# CLAUDE.md пример
## Коммиты
- Язык: русский
- Стайл: краткий императив
## Запуск тестов
npm test -- --watch=false
## Нельзя трогать
- src/legacy/** (старый код, не рефакторить)
```
### GEMINI.md
Аналог `CLAUDE.md` для Google Gemini CLI. Та же идея — инструкции для AI при работе с проектом. Если используешь оба инструмента — можно держать оба файла с одинаковым содержимым.
### .claude/ директория
```
.claude/
├── settings.json ← настройки проекта (permissions, env)
├── settings.local.json ← локальные настройки (не коммитить)
├── commands/ ← кастомные slash-команды
├── skills/ ← кастомные skills
└── plugins/ ← плагины
```
### ~/.claude/ глобальная директория
```
~/.claude/
├── CLAUDE.md ← глобальные инструкции
├── settings.json ← глобальные настройки
├── keybindings.json ← кастомные горячие клавиши
├── commands/ ← глобальные команды
└── plugins/ ← глобальные плагины
```
---
## ⚙️ settings.json — настройки разрешений
```json
{
"permissions": {
"allow": [
"Bash(git *)",
"Bash(npm run *)",
"Read(**)",
"Edit(**)"
],
"deny": [
"Bash(rm -rf *)"
]
},
"env": {
"NODE_ENV": "development"
}
}
```
Режимы разрешений при запуске:
- `--dangerously-skip-permissions` — автоподтверждение всего (для CI/автоматизации)
- `--allowedTools "Bash,Read,Edit"` — разрешить только конкретные инструменты
- По умолчанию — Claude спрашивает подтверждение на опасные операции
---
## 🔌 Plugins
Плагины расширяют Claude Code компонентами: командами, агентами, хуками, skills, MCP-серверами.
### Структура плагина
```
my-plugin/
├── plugin.json ← манифест
├── commands/ ← slash-команды
├── agents/ ← субагенты
├── skills/ ← skills
└── hooks/ ← хуки
```
### plugin.json
```json
{
"name": "my-plugin",
"version": "1.0.0",
"description": "Описание плагина",
"commands": ["commands/*.md"],
"agents": ["agents/*.md"],
"skills": ["skills/*.md"],
"hooks": ["hooks/*.json"]
}
```
---
## 🤖 Agents (субагенты)
Субагенты — специализированные агенты для конкретных задач. Claude запускает их автоматически или по явному вызову.
### Встроенные типы агентов
- `general-purpose` — исследование, поиск, многошаговые задачи
- `Explore` — быстрый анализ кодовой базы
- `Plan` — проектирование архитектуры и планов реализации
- `claude-code-guide` — вопросы о самом Claude Code
### Кастомный агент (файл .md)
```markdown
---
name: code-reviewer
description: Ревью кода на качество и безопасность. TRIGGER when user asks to review code.
tools: Read, Grep, Glob
color: blue
---
Ты — строгий code reviewer. Проверяй:
- Безопасность (инъекции, XSS, утечки)
- Производительность (O(n²), лишние запросы)
- Читаемость и соответствие проектным соглашениям
```
### Когда использовать агентов
- Параллельные независимые задачи
- Изоляция контекста (чтобы не замусорить основной)
- Специализированная экспертиза
---
## 🛠️ MCP серверы (Model Context Protocol)
MCP — протокол подключения внешних инструментов к Claude. Позволяет Claude работать с браузером, базами данных, внешними API.
### Добавить MCP сервер
```bash
claude mcp add <name> <command> [args]
claude mcp add playwright npx @playwright/mcp
claude mcp add filesystem npx @modelcontextprotocol/server-filesystem /path
```
### .mcp.json в проекте
```json
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["@playwright/mcp"]
},
"postgres": {
"command": "npx",
"args": ["@modelcontextprotocol/server-postgres", "postgres://localhost/mydb"]
}
}
}
```
### Популярные MCP серверы
| Сервер | Что даёт |
|--------|----------|
| `@playwright/mcp` | Управление браузером, скриншоты, автоматизация |
| `@modelcontextprotocol/server-filesystem` | Расширенный доступ к файлам |
| `@modelcontextprotocol/server-postgres` | Работа с PostgreSQL |
| `@modelcontextprotocol/server-github` | GitHub API |
| `@modelcontextprotocol/server-slack` | Slack API |
| `context7` | Актуальная документация библиотек |
---
## ⚡ Skills (навыки)
Skills — переиспользуемые промпты с контекстом. Вызываются как `/skill-name`.
### Структура skill
```markdown
---
name: commit
description: Create a conventional commit message. Use when user wants to commit.
---
Проанализируй git diff и создай коммит сообщение по формату:
<type>(<scope>): <description>
Типы: feat, fix, docs, refactor, test, chore
```
### Размещение
- Проектные: `.claude/skills/<name>.md`
- Глобальные: `~/.claude/skills/<name>.md`
- В плагине: `<plugin>/skills/<name>/SKILL.md`
---
## 🪝 Hooks (хуки)
Хуки выполняют shell-команды в ответ на события Claude Code.
### События
| Событие | Когда срабатывает |
|---------|------------------|
| `PreToolUse` | Перед вызовом инструмента |
| `PostToolUse` | После вызова инструмента |
| `SessionStart` | При запуске сессии |
| `SessionEnd` | При завершении сессии |
| `UserPromptSubmit` | При отправке сообщения |
| `Stop` | Когда Claude завершил ответ |
### Пример хука
```json
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"hooks": [{
"type": "command",
"command": "npm run lint --fix"
}]
}
]
}
}
```
---
## 💬 Slash-команды
Кастомные команды, вызываемые через `/command-name`.
### Создание команды
Файл `.claude/commands/review-pr.md`:
```markdown
---
name: review-pr
description: Review a pull request
argument-hint: PR number
---
Просмотри PR #$ARGUMENTS:
1. `gh pr view $ARGUMENTS`
2. `gh pr diff $ARGUMENTS`
Дай оценку качества кода и укажи проблемы.
```
### Встроенные команды
- `/help` — справка
- `/clear` — очистить контекст
- `/compact` — сжать историю
- `/cost` — стоимость сессии
- `/doctor` — диагностика установки
- `/model` — сменить модель
- `/memory` — управление памятью
---
## 🧠 Память (Memory)
Claude может сохранять информацию между сессиями через файловую память.
### Типы памяти
| Тип | Что хранить |
|-----|-------------|
| `user` | Роль, предпочтения, уровень знаний |
| `feedback` | Исправления и корректировки поведения |
| `project` | Контекст работы, цели, дедлайны |
| `reference` | Ссылки на внешние ресурсы |
Память хранится в `~/.claude/projects/<project>/memory/*.md`
---
## 🚀 Оптимальная настройка под задачи
### Для разработки (backend/frontend)
**CLAUDE.md:**
```markdown
## Stack
Node.js + TypeScript + PostgreSQL
## Тесты
npm test -- --runInBand
## Линтинг
Всегда запускай eslint после изменений в src/
## Нельзя
- Прямые запросы к БД вне репозиториев
- console.log в production коде
```
**MCP:** `filesystem`, `postgres`
**Hooks:** PostToolUse → eslint/prettier
### Для работы с документацией/заметками
**CLAUDE.md:** структура vault, шаблоны, правила оформления
**Skills:** шаблонные команды добавления записей
**Memory:** предпочтения форматирования
### Для code review
**Agent:** специализированный reviewer агент
**MCP:** `github` для работы с PR
**Skill:** `/review-pr`
---
## 🔑 Горячие клавиши
| Комбинация | Действие |
|------------|----------|
| `Ctrl+C` | Прервать текущий ответ |
| `Ctrl+R` | История команд |
| `↑/↓` | Навигация по истории |
| `Shift+Tab` | Переключить режим авто-принятия |
Кастомизация в `~/.claude/keybindings.json`.
---
## 📋 Чеклист первой настройки
- [ ] Создать `~/.claude/CLAUDE.md` с глобальными предпочтениями
- [ ] В каждом проекте создать `CLAUDE.md` со структурой и правилами
- [ ] Настроить нужные MCP серверы (`.mcp.json`)
- [ ] Добавить часто используемые Skills
- [ ] Настроить хуки для автоматического линтинга/форматирования
- [ ] Задать permissions в `settings.json`
- [ ] Создать кастомные команды для повторяющихся задач
---
## 🔗 Ссылки
- [[Gemini CLI]] — аналог от Google
- [[Codex CLI]] — аналог от OpenAI

View File

@ -0,0 +1,70 @@
# 🤖 Gemini CLI: Руководство по эффективной работе
Эта заметка содержит рекомендации по настройке и использованию Gemini CLI в Obsidian Vault для максимальной производительности.
## 🛠 Конфигурационные файлы проекта
Для того чтобы я работал быстро и соблюдал ваши стандарты, в корне проекта должны быть следующие файлы:
### 1. `GEMINI.md` (Персональный устав)
Это мой **главный приоритет**. Всё, что написано здесь, перекрывает мои стандартные инструкции.
- **Для чего:** Хранит правила форматирования, структуру папок, стилистику тегов и правила именования файлов.
- **Польза:** Избавляет вас от необходимости каждый раз объяснять, что «даты должны быть в формате DD.MM.YYYY».
### 2. `CLAUDE.md` (Общие правила)
Если вы используете Claude или другие AI-инструменты, этот файл служит мостом между нами.
- **Для чего:** Описание структуры проекта и общих соглашений, принятых в команде/проекте.
- **Польза:** Я читаю его, чтобы не конфликтовать с другими ассистентами.
### 3. `.geminiignore` (Оптимизация контекста)
Аналог `.gitignore`, но для меня.
- **Для чего:** Исключение из моего «поля зрения» медиа-файлов (`_assets/`), папок настроек (`.obsidian/`) и временных файлов.
- **Польза:** **Критически ускоряет поиск** по базе и экономит токены, не давая мне «читать» картинки и бинарные файлы.
---
## 👥 Субагенты и их специализация
Я могу делегировать сложные задачи специализированным агентам. Это экономит контекст и повышает точность.
| Агент | Когда вызывать | Что делает |
| :--- | :--- | :--- |
| **`codebase_investigator`** | "Проверь структуру заметок" | Глубоко анализирует зависимости, ищет пробелы в знаниях и архитектурные ошибки. |
| **`generalist`** | "Обнови поле 'Оценка' во всех книгах" | Идеален для массовых операций (Batch processing) и выполнения монотонных задач. |
| **`cli_help`** | "Как использовать команду /bug?" | Отвечает на вопросы по самому инструменту Gemini CLI. |
---
## 🧩 Навыки (Skills) и Плагины
Навыки — это мои «прошивки» для специфических действий.
- **Локальные навыки (`.claude/skills/`):** Я могу использовать ваши кастомные навыки (например, `add-book`, `add-course`). Чтобы я их применил, просто скажите: "Используй навык add-book".
- **MCP (Model Context Protocol):** Я поддерживаю подключение внешних инструментов. Если у вас настроены MCP-серверы, я могу напрямую взаимодействовать с вашей файловой системой, базами данных или сторонними API.
- **Skill Creator:** Вы можете попросить меня: *"Создай навык для импорта заметок из Telegram"*, и я сгенерирую новый файл навыка, который смогу использовать в будущем.
---
## ⚡️ Функции (Tools) для Obsidian
Вот список моих «рук», которыми я работаю в вашем Vault:
1. **`grep_search`**: Молниеносный поиск текста внутри заметок (с поддержкой регулярных выражений).
2. **`glob`**: Поиск файлов по шаблону (например, `**/Алгоритмы/*.md`).
3. **`replace`**: Хирургическое редактирование части заметки без перезаписи всего файла.
4. **`write_file`**: Создание новых заметок или полная перезапись существующих.
5. **`run_shell_command`**: Выполнение команд терминала (git, curl, скрипты на python/js).
6. **`web_fetch` / `google_web_search`**: Доступ в интернет для поиска информации о книгах, технологиях и новостях IT.
---
## 💡 Лайфхаки для работы с Gemini CLI
- **Параллелизм:** Я могу выполнять несколько поисков одновременно. Просите меня: *"Найди все книги 2024 года И проверь наличие заметок по Python"*.
- **Plan Mode:** Для больших задач (например, реструктуризация всей папки `IT/`) просите меня: *"Зайди в Plan Mode"*. Я сначала составлю план, вы его утвердите, и только потом я начну вносить изменения.
- **Validation:** Всегда просите меня проверить результат: *"Добавь книгу и проверь, не битая ли обложка"*.
- **Git:** Я умею делать красивые коммиты. Просто скажите: *"Закоммить изменения"*, и я сам составлю сообщение на основе того, что сделал.
---
*Последнее обновление: [[11.03.2026]]*
*Теги: #ai #gemini #cli #инструкция #настройка*

View File

@ -0,0 +1,90 @@
# Opencode
Opencode — это AI-ассистент для программиста, работающий в командной строке (CLI).
## Возможности
### Основные инструменты
| Инструмент | Описание |
|-----------|----------|
| **Read** | Чтение файлов |
| **Write** | Создание/перезапись файлов |
| **Edit** | Редактирование файлов |
| **Glob** | Поиск файлов по паттерну |
| **Grep** | Поиск по содержимому |
| **Bash** | Выполнение shell-команд |
| **WebSearch** | Поиск в интернете |
| **WebFetch** | Получение содержимого URL |
| **CodeSearch** | Поиск кода/документации по API |
| **Task** | Вызов агентов |
### Агенты (Task)
- **general** — универсальный агент для сложных задач
- **explore** — быстрый поиск по кодовой базе
### Скилы (Skills)
Скилы — это заранее определённые инструкции для конкретных задач.
## Файлы конфигурации
### CLAUDE.md / ANTHROPIC.md
Главный файл инструкций для AI.
### GEMINI.md
Файл для Google Gemini CLI (если используется параллельно)
### .claude/settings.json
Настройки проекта (permissions).
### .claude/skills/
Директория со скилами.
## Настройка под задачи
### 1. Создай CLAUDE.md
В корне проекта с описанием, структурой, командами.
### 2. Определи скилы
- `.claude/skills/add-book/`
- `.claude/skills/add-course/`
- `.claude/skills/obsidian/`
### 3. Настрой permissions
В `.claude/settings.json`.
## Best Practices
1. **Всегда проверяй на дубликаты** перед созданием новых записей
2. **Используй WebSearch** для актуальной информации
3. **Не выполняй bash без подтверждения**
4. **Проверяй результаты**
5. **Используй скилы** для автоматизации рутины
## Текущие ограничения
- Нет доступа к удалённым серверам по SSH
- Ограниченные права (только пользователь ksv741)
- Некоторые команды могут требовать подтверждения
## Примеры команд
```
# Поиск файла
glob **/*.ts
# Поиск по содержимому
grep "function" --include="*.js"
# Выполнение агента
Task: explore - найди где обрабатываются ошибки
```