/install 1c-assistant
Скилл: 1C AI Assistant
Отвечает на вопросы по 1С через локальный RAG (Qdrant + bge-m3 + qwen3:14b).
Триггеры
При /1c или /1c-help или "покажи состояние базы 1С" — НЕМЕДЛЕННО выполнить:
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
QUESTION="\x3Cвопрос пользователя>"
COLLECTION="\x3Cколлекция из таблицы>"
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)
# Прямой запрос через Qdrant + Ollama
QUESTION="\x3Cвопрос>"
COLLECTION="\x3Cколлекция>"
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+ годами опыта. Отвечай структурированно, на русском языке.\
\
Контекст из базы знаний:\
$CONTEXT\
\
Вопрос: $QUESTION\
\
Ответ:" \
'{model: $model, prompt: $prompt, stream: false}'
)" | jq -r '.response'
Загрузка изображений и скриншотов
Когда пользователь просит добавить скриншот, фото, изображение:
# Изображение с сервера
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" \
"Название"
Что делает скрипт:
- OCR через tesseract (rus+eng) — извлекает текст
- Копирует в /tmp/mcp-serve/ — картинка становится доступна по URL
- Отправляет в wf21 с
image_urlв payload - При RAG поиске — Telegram получит текстовый ответ + само фото
Коллекции для изображений: те же что для текста (kb_python, kb_devops, kb_1c_code и т.д.)
Загрузка PDF документов
Когда пользователь просит загрузить PDF — спросить:
- Путь к файлу на сервере ИЛИ URL к PDF
- Коллекцию (из таблицы выше)
- Название документа
Использовать универсальный скрипт (автоматически определяет скан и запускает OCR):
# 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)
# Добавить URL в базу знаний
curl -s -X POST https://n8nwint.ru/webhook/1c-ingest \
-H "Content-Type: application/json" \
-d "$(jq -n \
--arg type "url" \
--arg collection "\x3Cколлекция>" \
--arg title "\x3Cназвание>" \
--arg url "\x3Curl>" \
--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 "\x3Cколлекция>" \
--arg title "\x3Cназвание>" \
--arg text "\x3Cтекст документа>" \
--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}'
)"
Проверка состояния коллекций
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 \x3C 0.7 (нет контекста) | Попробовать kb_1c_erp как fallback |
| Все коллекции пустые | Ответить из знаний модели с пометкой "из общих знаний" |
| Вопрос про разработку конфигурации | Передать Codex скилл |
| Нужно добавить документацию | Использовать ingest webhook выше |
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install 1c-assistant - After installation, invoke the skill by name or use
/1c-assistant - Provide required inputs per the skill's parameter spec and get structured output
What is 1c Assistant?
Используй когда пользователь пишет /1c или /1c-help (команды справки по 1С), или задаёт вопросы про 1С ERP, 1С Бухгалтерию, ЗУП, BSL программирование, права... It is an AI Agent Skill for Claude Code / OpenClaw, with 41 downloads so far.
How do I install 1c Assistant?
Run "/install 1c-assistant" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is 1c Assistant free?
Yes, 1c Assistant is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does 1c Assistant support?
1c Assistant is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created 1c Assistant?
It is built and maintained by wint71rus (@wint71rus); the current version is v1.0.0.