From 36ab747d3d87582cf7156eddd99df14711db79f8 Mon Sep 17 00:00:00 2001 From: code-server Date: Thu, 25 Jun 2026 15:25:02 +0000 Subject: [PATCH] code-server auto-sync 2026-06-25T15:25:02+00:00 --- projects/niikn/_kbtmp_claude.md | 25 +++++++++++++++++++++ projects/niikn/_kbtmp_readme.md | 22 +++++++++++++++++++ projects/niikn/_kbtmp_sync.ps1 | 31 +++++++++++++++++++++++++++ projects/niikn/_kbtmp_tpl_daily.md | 15 +++++++++++++ projects/niikn/_kbtmp_tpl_decision.md | 18 ++++++++++++++++ 5 files changed, 111 insertions(+) create mode 100644 projects/niikn/_kbtmp_claude.md create mode 100644 projects/niikn/_kbtmp_readme.md create mode 100644 projects/niikn/_kbtmp_sync.ps1 create mode 100644 projects/niikn/_kbtmp_tpl_daily.md create mode 100644 projects/niikn/_kbtmp_tpl_decision.md diff --git a/projects/niikn/_kbtmp_claude.md b/projects/niikn/_kbtmp_claude.md new file mode 100644 index 0000000..2b67948 --- /dev/null +++ b/projects/niikn/_kbtmp_claude.md @@ -0,0 +1,25 @@ +# Инструкции для Claude — База знаний НИИКН + +## Контекст +Это база знаний НИИКН. Здесь хранятся заметки, документы, решения и рабочие материалы института. С базой работает сотрудник через Claude Desktop. + +## Язык: русский + +## Структура (Obsidian vault) +- `projects/` — направления и проекты НИИКН +- `notes/` — рабочие заметки +- `daily/` — ежедневные заметки (формат `ГГГГ-ММ-ДД.md`) +- `decisions/` — принятые решения (формат `ГГГГ-ММ-ДД-тема.md`) +- `templates/` — шаблоны + +## Obsidian-конвенции +- Внутренние ссылки — `[[двойные скобки]]` +- Теги `#тема` для фильтрации +- Daily notes в формате `ГГГГ-ММ-ДД` +- Разделяй факты (`decisions/`) и рабочие заметки (`notes/`) + +## Как работать +- Перед правкой — прочитай текущее состояние файла +- Отвечай кратко, по делу, на русском +- Новые решения сохраняй в `decisions/`, рабочие заметки — в `notes/` +- Для новых файлов используй шаблоны из `templates/` diff --git a/projects/niikn/_kbtmp_readme.md b/projects/niikn/_kbtmp_readme.md new file mode 100644 index 0000000..ccd5119 --- /dev/null +++ b/projects/niikn/_kbtmp_readme.md @@ -0,0 +1,22 @@ +# База знаний НИИКН + +Рабочая база знаний НИИКН: заметки, документы, решения и материалы по работе института. + +## Как пользоваться + +1. **Через Claude Desktop** — попроси Claude создать заметку, найти информацию или подвести итог. Claude читает и пишет файлы в этой папке. +2. **Напрямую** — открыть `.md` файлы в любом редакторе (Obsidian, Блокнот, VS Code). + +## Структура + +- `projects/` — направления и проекты НИИКН +- `notes/` — рабочие заметки +- `daily/` — ежедневные заметки (формат `ГГГГ-ММ-ДД.md`) +- `decisions/` — принятые решения +- `templates/` — шаблоны + +## Синхронизация + +База автоматически синхронизируется с сервером (Gitea) каждые несколько минут — изменения сохраняются и доступны с других устройств. Вручную ничего делать не нужно. + +Срочная синхронизация — запустить `niikn-kb-sync.ps1` в корне папки. diff --git a/projects/niikn/_kbtmp_sync.ps1 b/projects/niikn/_kbtmp_sync.ps1 new file mode 100644 index 0000000..d130d1d --- /dev/null +++ b/projects/niikn/_kbtmp_sync.ps1 @@ -0,0 +1,31 @@ +# niikn-kb-sync.ps1 — автосинхронизация базы знаний НИИКН с Gitea +# Запускается Scheduled Task каждые ~7 минут. Тянет изменения с сервера, +# коммитит локальные правки и отправляет обратно. Лог: niikn-kb-sync.log +$ErrorActionPreference = "Continue" +$base = "C:\Users\msi\Documents\niikn-knowledge-base" +$git = "C:\Program Files\Git\cmd\git.exe" +$log = "$base\niikn-kb-sync.log" + +function Log($m) { "$([DateTime]::Now.ToString('yyyy-MM-dd HH:mm:ss')) $m" | Add-Content -Path $log -Encoding UTF8 } + +# mutex — не запускать второй экземпляр +$mtx = New-Object System.Threading.Mutex($false, "niikn-kb-sync") +if (-not $mtx.WaitOne(0)) { exit 0 } + +try { + Set-Location $base + # подтянуть с сервера (rebase, чтобы не плодить merge-коммиты) + & $git pull --rebase --autostash origin main 2>&1 | Out-Null + # есть ли локальные изменения? + $status = & $git status --porcelain + if ($status) { + & $git add -A 2>&1 | Out-Null + & $git commit -m "auto-sync $([DateTime]::Now.ToString('yyyy-MM-dd HH:mm'))" 2>&1 | Out-Null + Log "committed local changes" + } + # отправить (если есть что) + $push = & $git push origin main 2>&1 + if ($LASTEXITCODE -eq 0) { Log "sync ok" } else { Log "push issue: $push" } +} +catch { Log "ERROR: $_" } +finally { $mtx.ReleaseMutex() } diff --git a/projects/niikn/_kbtmp_tpl_daily.md b/projects/niikn/_kbtmp_tpl_daily.md new file mode 100644 index 0000000..5372451 --- /dev/null +++ b/projects/niikn/_kbtmp_tpl_daily.md @@ -0,0 +1,15 @@ +--- +дата: ГГГГ-ММ-ДД +теги: [daily] +--- + +# ГГГГ-ММ-ДД + +## Задачи на сегодня +- [ ] + +## Заметки + + +## Итоги дня + diff --git a/projects/niikn/_kbtmp_tpl_decision.md b/projects/niikn/_kbtmp_tpl_decision.md new file mode 100644 index 0000000..9688692 --- /dev/null +++ b/projects/niikn/_kbtmp_tpl_decision.md @@ -0,0 +1,18 @@ +--- +дата: ГГГГ-ММ-ДД +теги: [decision] +--- + +# Решение: <тема> + +## Контекст +Почему понадобилось это решение, какая задача или проблема. + +## Решение +Что решили. + +## Обоснование +Почему именно так, какие альтернативы рассматривали. + +## Последствия +Что меняется, что нужно сделать дальше.