Зачем вам эта система, если вы уже используете ChatGPT?
Потому что ChatGPT забывает. Он не помнит, о чем вы говорили вчера. Он не видит структуру ваших мыслей. Он не знает, какие проекты у вас в работе. Он - таксист, который каждый раз везет вас по новому маршруту, даже если вы едете домой.
Ваш второй мозг должен помнить всё. И понимать контекст. И предлагать решения, основанные на вашей личной истории, а не на общих шаблонах.
Obsidian хранит. Claude Code думает. Вместе они создают систему, которая работает на вас 24/7, не отправляя ваши данные в облако.
Если вы думаете, что это просто "еще один способ вести заметки", вы ошибаетесь. Это архитектура для мышления. И она требует настройки.
Проблема: ваши заметки мертвы
Откройте папку с заметками. Посмотрите на файлы, созданные месяц назад. Они лежат там, как экспонаты в музее. Вы их создали, но они не работают на вас. Не связываются между собой. Не предлагают идеи. Не напоминают о важном.
Типичный сценарий: вы читаете статью о новой технологии. Делаете заметку. Через неделю сталкиваетесь с задачей, где эта технология идеально подходит. Но вы об этом не вспоминаете. Потому что заметка спит.
Claude Code может разбудить эти заметки. Заставить их общаться друг с другом. Создавать новые связи. Но для этого нужна правильная структура.
Архитектура: как заставить AI понимать ваш мозг
Нельзя просто скормить Claude Code все ваши заметки и сказать "анализируй". Он утонет в хаосе. Нужны слои, как в рабочем процессе создателя Claude Code.
| Слой | Что содержит | Кто использует |
|---|---|---|
| Мета-слой | Структура vault, шаблоны, MOC | Система |
| Контекстный слой | Текущие проекты, активные задачи | Claude Code + вы |
| Архивный слой | Завершенные проекты, справочная информация | Только Claude Code (по запросу) |
Мета-слой - это скелет. Без него система превращается в кучу костей. Контекстный слой - это то, над чем вы работаете прямо сейчас. Архивный - всё остальное.
Шаг 1: Готовим Obsidian к интеграции
Сначала нужно превратить Obsidian из блокнота в базу знаний. Это не про красивые темы и иконки. Это про структуру.
1 Устанавливаем обязательные плагины
Без этих плагинов интеграция с Claude Code будет мучительной:
- Dataview - превращает заметки в базу данных. Позволяет делать запросы типа "покажи все заметки о Python, созданные на прошлой неделе"
- Templater - автоматическое создание заметок с предзаполненными полями
- QuickAdd - быстрый захват идей без отрыва от работы
- Excalidraw - для диаграмм и схем (Claude Code понимает их структуру)
- Advanced URI - позволяет открывать заметки по ссылкам из внешних приложений
// Пример Dataview запроса для Claude Code
// Находит все незавершенные задачи с высоким приоритетом
table priority, status, created
from "projects"
where status != "done" and priority = "high"
sort created desc
2 Создаем структуру vault
Не делайте папки по датам. Это бесполезно для AI. Создавайте по функциям:
vault/
├── 00-META/ # Системные файлы
│ ├── templates/ # Шаблоны
│ ├── dashboards/ # Дашборды Dataview
│ └── maps.md # Карта всего vault
├── 01-PROJECTS/ # Активные проекты
│ ├── project-a/
│ └── project-b/
├── 02-AREAS/ # Сферы ответственности
│ ├── health/
│ ├── learning/
│ └── work/
├── 03-RESOURCES/ # Справочные материалы
│ ├── books/
│ ├── articles/
│ └── courses/
└── 04-ARCHIVE/ # Завершенное
└── 2024-q1/
Почему цифры в начале? Чтобы папки сортировались в нужном порядке. 00-META всегда первая - это первое, что видит Claude Code при анализе структуры.
Шаг 2: Настраиваем Claude Code для работы с локальными файлами
Теперь нужно научить Claude Code читать ваш vault. Не просто открывать файлы, а понимать их взаимосвязи.
3 Создаем контекстный файл для Claude
В папке 00-META создаем файл claude-context.md:
# Контекст для Claude Code
## Структура vault
- Активные проекты: [[01-PROJECTS]]
- Текущие задачи: см. дашборд [[00-META/dashboards/active-tasks]]
- Важные ссылки: [[00-META/maps]]
## Правила работы с заметками
1. Все новые заметки создаются через шаблоны
2. Ссылки между заметками обязательны
3. Каждая задача имеет статус и приоритет
4. Диаграммы создаются в Excalidraw
## Текущий фокус
- Проект: [[01-PROJECTS/ai-system]]
- Срок: до 15 ноября
- Блокеры: интеграция с API
## Частые запросы
- "Какие задачи по проекту X не выполнены?"
- "Найди все заметки о технологии Y"
- "Создай план на неделю"
Этот файл - как личный AI-директор для Claude. Он объясняет, как устроен ваш мир.
4 Настраиваем MCP сервер для Obsidian
Model Context Protocol (MCP) позволяет Claude Code напрямую взаимодействовать с Obsidian. Вам нужен сервер, который преобразует запросы Claude в операции с файлами.
# Пример простого MCP сервера для Obsidian
# obsidian_mcp_server.py
import json
import os
from pathlib import Path
class ObsidianMCP:
def __init__(self, vault_path):
self.vault_path = Path(vault_path)
def search_notes(self, query: str) -> list:
"""Ищет заметки по содержимому"""
results = []
for file in self.vault_path.rglob("*.md"):
if file.is_file():
try:
content = file.read_text(encoding='utf-8')
if query.lower() in content.lower():
results.append({
'path': str(file.relative_to(self.vault_path)),
'title': file.stem,
'preview': content[:200]
})
except:
continue
return results
def create_note(self, title: str, content: str, folder: str = "") -> dict:
"""Создает новую заметку"""
if folder:
note_path = self.vault_path / folder / f"{title}.md"
(self.vault_path / folder).mkdir(exist_ok=True)
else:
note_path = self.vault_path / f"{title}.md"
note_path.write_text(content, encoding='utf-8')
return {'status': 'created', 'path': str(note_path)}
# Запуск сервера
if __name__ == "__main__":
vault_path = "/path/to/your/obsidian/vault"
server = ObsidianMCP(vault_path)
# Здесь должна быть реализация MCP сервера
# (используйте библиотеку mcp или реализуйте свой сервер)
Не пытайтесь писать MCP сервер с нуля, если не знакомы с протоколом. Используйте готовые решения или библиотеки. Но понимание архитектуры важно - так вы сможете расширять функциональность.
Шаг 3: Автоматизируем рутину
Теперь, когда Claude Code может читать и писать в Obsidian, автоматизируем скучные задачи.
5 Ежедневный обзор с AI
Каждое утро Claude Code анализирует ваш vault и готовит дайджест:
# Скрипт для ежедневного обзора
# daily_review.py
import datetime
from obsidian_mcp_server import ObsidianMCP
def generate_daily_review(vault_path):
obsidian = ObsidianMCP(vault_path)
today = datetime.date.today()
# Находим просроченные задачи
overdue = obsidian.search_notes("status:todo due:before:today")
# Находим задачи на сегодня
today_tasks = obsidian.search_notes(f"due:{today}")
# Находим недавние заметки
recent_notes = []
for note in obsidian.search_notes("created:last3days"):
recent_notes.append(note)
# Формируем отчет
report = f"# Ежедневный обзор {today}\n\n"
report += f"## Просроченные задачи ({len(overdue)})\n"
for task in overdue[:5]: # Показываем только 5
report += f"- [[{task['path']}]]\n"
report += f"\n## Задачи на сегодня ({len(today_tasks)})\n"
for task in today_tasks:
report += f"- [[{task['path']}]]\n"
report += f"\n## Недавние заметки ({len(recent_notes)})\n"
for note in recent_notes[:3]:
report += f"- [[{note['path']}]]: {note['preview']}...\n"
# Сохраняем отчет
obsidian.create_note(
title=f"Daily Review {today}",
content=report,
folder="00-META/reviews"
)
return report
# Запускаем
if __name__ == "__main__":
report = generate_daily_review("/path/to/vault")
print(report)
6 Автоматическое связывание заметок
Claude Code анализирует новые заметки и предлагает связи с существующими:
# Автоматическое связывание
# auto_linker.py
def find_related_notes(new_note_content, existing_notes):
"""Находит связанные заметки по ключевым словам"""
# Извлекаем ключевые слова из новой заметки
keywords = extract_keywords(new_note_content)
related = []
for note in existing_notes:
score = calculate_relevance_score(note['content'], keywords)
if score > 0.7: # Порог релевантности
related.append({
'note': note,
'score': score,
'reason': f"Совпадение по ключевым словам: {keywords}"
})
return sorted(related, key=lambda x: x['score'], reverse=True)[:5]
def suggest_links(new_note_path, related_notes):
"""Предлагает ссылки для добавления в заметку"""
suggestions = []
for rel in related_notes:
suggestions.append({
'action': 'add_link',
'from': new_note_path,
'to': rel['note']['path'],
'context': rel['reason']
})
# Формируем промпт для Claude Code
prompt = f"""В заметке [[{new_note_path}]] я предлагаю добавить ссылки:
"""
for sug in suggestions:
prompt += f"- [[{sug['to']}]]: {sug['context']}\n"
prompt += "\nДобавь эти ссылки в соответствующие разделы заметки."
return prompt
Главные ошибки, которые сломают вашу систему
Ошибка 1: Давать Claude Code доступ ко всему vault сразу. Он потратит весь контекст на анализ архивных заметок. Используйте слои.
Ошибка 2: Создавать сложные шаблоны, которые никто не использует. Начните с простого: заголовок, дата, теги, содержание. Усложняйте постепенно.
Ошибка 3: Пытаться автоматизировать всё сразу. Сначала настройте базовый workflow: захват идей → обработка Claude → сохранение в Obsidian. Потом добавляйте автоматизацию.
Ошибка 4: Игнорировать производительность. Если у вас тысячи заметок, поиск по всему vault будет медленным. Используйте индексы, разделяйте на подвалты.
Что делать, когда система заработала?
Не останавливайтесь на базовой настройке. Экспериментируйте:
- Добавьте несколько AI-агентов для разных задач: один для анализа, другой для творчества, третий для критики
- Настройте экспорт в разные форматы: недельные отчеты, презентации, документацию
- Интегрируйте с другими инструментами: календарь, трекер задач, email
- Создайте "зеркало" vault для экспериментов, где Claude Code может предлагать радикальные изменения структуры
Самое важное: система должна расти вместе с вами. Если сегодня вы изучаете машинное обучение, завтра - дизайн, послезавтра - менеджмент, ваш второй мозг должен адаптироваться. Не загоняйте себя в жесткие рамки.
А если хочется больше мощности?
Локальная система хороша, но иногда нужна серьезная вычислительная мощность. Если ваш второй мозг начинает думать медленно (особенно при анализе тысяч заметок), посмотрите в сторону аппаратных решений.
Но помните: идеальная система - та, которую вы используете каждый день. Не та, которая требует обслуживания больше, чем приносит пользы.
Начните с простого. Добавляйте сложность постепенно. И дайте системе время научиться думать как вы.