Настройка локальной AI-системы продуктивности: Obsidian + Claude Code | AiManual
AiManual Logo Ai / Manual.
16 Янв 2026 Гайд

Второй мозг на Obsidian и Claude Code: пошаговая настройка локальной AI-системы продуктивности

Пошаговый гайд по созданию локальной AI-системы продуктивности на Obsidian и Claude Code. Интеграция, плагины, автоматизация заметок.

Зачем вам эта система, если вы уже используете ChatGPT?

Потому что ChatGPT забывает. Он не помнит, о чем вы говорили вчера. Он не видит структуру ваших мыслей. Он не знает, какие проекты у вас в работе. Он - таксист, который каждый раз везет вас по новому маршруту, даже если вы едете домой.

Ваш второй мозг должен помнить всё. И понимать контекст. И предлагать решения, основанные на вашей личной истории, а не на общих шаблонах.

Obsidian хранит. Claude Code думает. Вместе они создают систему, которая работает на вас 24/7, не отправляя ваши данные в облако.

Если вы думаете, что это просто "еще один способ вести заметки", вы ошибаетесь. Это архитектура для мышления. И она требует настройки.

Проблема: ваши заметки мертвы

Откройте папку с заметками. Посмотрите на файлы, созданные месяц назад. Они лежат там, как экспонаты в музее. Вы их создали, но они не работают на вас. Не связываются между собой. Не предлагают идеи. Не напоминают о важном.

Типичный сценарий: вы читаете статью о новой технологии. Делаете заметку. Через неделю сталкиваетесь с задачей, где эта технология идеально подходит. Но вы об этом не вспоминаете. Потому что заметка спит.

Claude Code может разбудить эти заметки. Заставить их общаться друг с другом. Создавать новые связи. Но для этого нужна правильная структура.

Архитектура: как заставить AI понимать ваш мозг

Нельзя просто скормить Claude Code все ваши заметки и сказать "анализируй". Он утонет в хаосе. Нужны слои, как в рабочем процессе создателя Claude Code.

Слой Что содержит Кто использует
Мета-слой Структура vault, шаблоны, MOC Система
Контекстный слой Текущие проекты, активные задачи Claude Code + вы
Архивный слой Завершенные проекты, справочная информация Только Claude Code (по запросу)

Мета-слой - это скелет. Без него система превращается в кучу костей. Контекстный слой - это то, над чем вы работаете прямо сейчас. Архивный - всё остальное.

💡
Главная ошибка: давать AI доступ ко всему сразу. Он потратит 80% контекста на анализ старых заметок, которые не имеют отношения к текущей задаче. Слои решают эту проблему.

Шаг 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 может предлагать радикальные изменения структуры

Самое важное: система должна расти вместе с вами. Если сегодня вы изучаете машинное обучение, завтра - дизайн, послезавтра - менеджмент, ваш второй мозг должен адаптироваться. Не загоняйте себя в жесткие рамки.

🚀
Через месяц после настройки задайте Claude Code вопрос: "Какие идеи из моих старых заметок я забыл, но они актуальны для текущих проектов?" Если он найдет хотя одну полезную связь - система работает.

А если хочется больше мощности?

Локальная система хороша, но иногда нужна серьезная вычислительная мощность. Если ваш второй мозг начинает думать медленно (особенно при анализе тысяч заметок), посмотрите в сторону аппаратных решений.

Но помните: идеальная система - та, которую вы используете каждый день. Не та, которая требует обслуживания больше, чем приносит пользы.

Начните с простого. Добавляйте сложность постепенно. И дайте системе время научиться думать как вы.