Skip to main content

1c-assistant

Используй когда пользователь пишет /1c или /1c-help (команды справки по 1С), или задаёт вопросы про 1С ERP, 1С Бухгалтерию, ЗУП, BSL программирование, права и роли пользователей 1С, запросы к регистрам, управляемые формы, конфигуратор, начисление зарплаты, НДФЛ, НДС, проводки, печатные формы. Всегда отвечай только на русском языке.

Quellinformationen

Repository
RabbitAI-Lab/rabbit-plugins-upstream
Letzte Quellaktivität
26. Juli 2026 um 20:50
Erkannte Sprache von SKILL.md
Russisch
Sterne
0
Forks
0

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

Datei-Explorer
8 Dateien

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
1c-assistant
description
Используй когда пользователь пишет /1c или /1c-help (команды справки по 1С), или задаёт вопросы про 1С ERP, 1С Бухгалтерию, ЗУП, BSL программирование, права и роли пользователей 1С, запросы к регистрам, управляемые формы, конфигуратор, начисление зарплаты, НДФЛ, НДС, проводки, печатные формы. Всегда отвечай только на русском языке.
# Скилл: 1C AI Assistant Отвечает на вопросы по 1С через локальный RAG (Qdrant + bge-m3 + qwen3:14b). ## Триггеры **При `/1c` или `/1c-help` или "покажи состояние базы 1С"** — НЕМЕДЛЕННО выполнить: ```bash bash /home/alexandr/.openclaw/workspace/1c-assistant/1c-help.sh 1360549978 ``` Это всё. Больше ничего не делать, не генерировать текст. Скрипт сам отправит справку в Telegram. Активировать при ключевых словах: - **1С общее:** "1с", "1с erp", "1с бухгалтерия", "конфигуратор", "1с предприятие", "1с zup", "1с зуп" - **Разработка:** "bsl", "встроенный язык", "запрос 1с", "схема данных", "регистр", "управляемые формы", "общий модуль" - **Администрирование:** "права 1с", "роли 1с", "пользователи 1с", "рабочие места", "ограничение доступа" - **Документы/Справочники:** "справочник", "документ 1с", "реквизит", "табличная часть" ## Определение коллекции по теме | Тема | Коллекция | |------|-----------| | BSL код, синтаксис, диагностики, оптимизация | `kb_1c_code` | | Права, роли, пользователи, администрирование | `kb_1c_admin` | | Бухгалтерия, налоги, отчётность, счета | `kb_1c_buh` | | ЗУП, кадры, зарплата, отпуска, больничные | `kb_1c_zup` | | Печатные формы, шаблоны, макеты | `kb_1c_forms` | | Всё остальное (ERP, НСИ, настройка) | `kb_1c_erp` | ## Алгоритм выполнения ### 1. Определить коллекцию из таблицы выше ### 2. Вызвать RAG Query webhook ```bash QUESTION="<вопрос пользователя>" COLLECTION="<коллекция из таблицы>" curl -s -X POST https://n8nwint.ru/webhook/1c-rag-query \ -H "Content-Type: application/json" \ -d "$(jq -n \ --arg question "$QUESTION" \ --arg chat_id "1360549978" \ --arg collection "$COLLECTION" \ --arg model "qwen3:14b" \ '{question: $question, chat_id: $chat_id, collection: $collection, model: $model}' )" ``` Ответ придёт в Telegram (30-60 сек). Сообщить пользователю: "Запрос отправлен, ответ придёт в Telegram." ### 3. Если нужен синхронный ответ (не через Telegram) ```bash # Прямой запрос через Qdrant + Ollama QUESTION="<вопрос>" COLLECTION="<коллекция>" QDRANT="http://192.168.0.200:6333" OLLAMA="http://192.168.0.200:11434" QDRANT_KEY="zkpDII8FaBpzpRke8uWWcOEJDGXxKNsn" # 1. Получить embedding вопроса VECTOR=$(curl -s -X POST "$OLLAMA/api/embeddings" \ -H "Content-Type: application/json" \ -d "{\"model\": \"bge-m3\", \"prompt\": \"$QUESTION\"}" | jq '.embedding') # 2. Поиск в Qdrant CONTEXT=$(curl -s -X POST "$QDRANT/collections/$COLLECTION/points/search" \ -H "Content-Type: application/json" \ -H "api-key: $QDRANT_KEY" \ -d "{\"vector\": $VECTOR, \"limit\": 5, \"with_payload\": true}" \ | jq -r '.result[] | .payload.text' | head -c 3000) # 3. Ответ через Ollama curl -s -X POST "$OLLAMA/api/generate" \ -H "Content-Type: application/json" \ -d "$(jq -n \ --arg model "qwen3:14b" \ --arg prompt "Ты старший специалист по 1С с 10+ годами опыта. Отвечай структурированно, на русском языке.\n\nКонтекст из базы знаний:\n$CONTEXT\n\nВопрос: $QUESTION\n\nОтвет:" \ '{model: $model, prompt: $prompt, stream: false}' )" | jq -r '.response' ``` ## Загрузка изображений и скриншотов Когда пользователь просит добавить скриншот, фото, изображение: ```bash # Изображение с сервера bash /home/alexandr/.openclaw/workspace/1c-assistant/ingest_image.sh \ "/path/to/screenshot.png" \ "kb_devops" \ "Название скриншота" # Изображение по URL bash /home/alexandr/.openclaw/workspace/1c-assistant/ingest_image.sh \ "https://example.com/screenshot.png" \ "kb_python" \ "Название" ``` Что делает скрипт: 1. OCR через tesseract (rus+eng) — извлекает текст 2. Копирует в /tmp/mcp-serve/ — картинка становится доступна по URL 3. Отправляет в wf21 с `image_url` в payload 4. При RAG поиске — Telegram получит текстовый ответ + само фото Коллекции для изображений: те же что для текста (kb_python, kb_devops, kb_1c_code и т.д.) ## Загрузка PDF документов Когда пользователь просит загрузить PDF — спросить: 1. Путь к файлу на сервере ИЛИ URL к PDF 2. Коллекцию (из таблицы выше) 3. Название документа Использовать универсальный скрипт (автоматически определяет скан и запускает OCR): ```bash # PDF по пути на сервере bash /tmp/1c-assistant/scripts/ingest_pdf.sh \ "/home/alexandr/docs/guide.pdf" \ "kb_1c_buh" \ "Название документа" # PDF по URL bash /tmp/1c-assistant/scripts/ingest_pdf.sh \ "https://example.com/doc.pdf" \ "kb_1c_zup" \ "Название документа" ``` Скрипт: текстовый PDF → pdftotext; скан → tesseract OCR (rus+eng). Уведомление придёт в Telegram. ## Загрузка новых документов (text/url) ```bash # Добавить URL в базу знаний curl -s -X POST https://n8nwint.ru/webhook/1c-ingest \ -H "Content-Type: application/json" \ -d "$(jq -n \ --arg type "url" \ --arg collection "<коллекция>" \ --arg title "<название>" \ --arg url "<url>" \ --arg chat_id "1360549978" \ --arg version_1c "8.3" \ '{type: $type, collection: $collection, title: $title, url: $url, chat_id: $chat_id, version_1c: $version_1c}' )" # Добавить текст напрямую curl -s -X POST https://n8nwint.ru/webhook/1c-ingest \ -H "Content-Type: application/json" \ -d "$(jq -n \ --arg type "text" \ --arg collection "<коллекция>" \ --arg title "<название>" \ --arg text "<текст документа>" \ --arg chat_id "1360549978" \ --arg version_1c "8.3" \ '{type: $type, collection: $collection, title: $title, text: $text, chat_id: $chat_id, version_1c: $version_1c}' )" ``` ## Проверка состояния коллекций ```bash QDRANT="http://192.168.0.200:6333" QDRANT_KEY="zkpDII8FaBpzpRke8uWWcOEJDGXxKNsn" for coll in kb_1c_erp kb_1c_buh kb_1c_zup kb_1c_code kb_1c_admin kb_1c_forms; do count=$(curl -s "$QDRANT/collections/$coll" \ -H "api-key: $QDRANT_KEY" | jq '.result.points_count') echo "$coll: $count points" done ``` ## Эскалация | Ситуация | Действие | |----------|----------| | score < 0.7 (нет контекста) | Попробовать kb_1c_erp как fallback | | Все коллекции пустые | Ответить из знаний модели с пометкой "из общих знаний" | | Вопрос про разработку конфигурации | Передать Codex скилл | | Нужно добавить документацию | Использовать ingest webhook выше |
Auf GitHub ansehen