Files
TE/CLAUDE.md
Евгений Храмов d59ad3c677 Исправлена сборка плагина и удалён нерабочий код
- Исправлен маппинг статусов Logseq → PPDB (теперь отправляет TODO/DOING/DONE вместо new/in_progress/completed)
- Удалён нерабочий код setupConfig (использовал несуществующий API)
- Исправлена сборка: теперь создаётся index.html + assets/ вместо одного index.js
- Исправлено чтение свойств блоков (проверка source-id/sourceId/source_id)
- Добавлен скрипт deploy.sh для деплоя в ~/.logseq/plugins/
2026-01-16 00:27:24 +03:00

2.5 KiB
Raw Blame History

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Описание проекта

TODO Everywhere — Logseq плагин для синхронизации задач из внешних источников (PPDB, Gitea) в Logseq.

Команды сборки

npm install          # Установка зависимостей
npm run build        # Сборка для продакшена (dist/index.js)
npm run dev          # Режим разработки с автопересборкой

Архитектура

Плагин состоит из одного файла src/index.ts, который:

  1. Настройка config.edn (setupConfig) — при первой установке автоматически добавляет Datalog-запросы для PPDB и Gitea в конфиг Logseq
  2. Синхронизация PPDB (syncPPDBTasks) — получает задачи через /api/logseq/tasks и создаёт страницу PPDB - TODO
  3. Синхронизация Gitea (syncGiteaTasks) — получает issues через Gitea API и создаёт страницы Gitea - {name} - TODO
  4. Запись в страницу (writeToPage) — конвертирует данные в формат Logseq блоков с TODO/DOING/DONE статусами

Ключевые интерфейсы

  • PPDBTask — структура задачи из PPDB API (включает logseq_priority и logseq_status)
  • GiteaIssue — структура issue из Gitea API
  • GiteaSource — настройки подключения к Gitea репозиторию

Конвертация данных

  • Приоритеты: critical/high → [#A], normal → [#B], low → [#C]
  • Статусы: new → TODO, in_progress → DOING, completed/rejected → DONE
  • Gitea labels определяют приоритет и тип (bug/feature)

Настройки плагина

Настройки хранятся через logseq.settings и включают:

  • ppdbUrl, ppdbApiKey — подключение к PPDB
  • giteaSources — JSON массив Gitea репозиториев
  • configVersion — версия конфига для отслеживания миграций

Связанный API

PPDB endpoint /api/logseq/tasks (в проекте ppdb-site) требует LOGSEQ_API_KEY в переменных окружения.