opencrabs 0.3.22

The autonomous, self-improving AI agent. Single Rust binary. Every channel. Install with: cargo install opencrabs
Documentation
# Russian phantom-detection configuration
# Phrases are lower-case. Matched against lowercased response text.

intent_phrases = [
    "давайте проверю",
    "давайте посмотрим",
    "давайте исправим",
    "давайте обновим",
    "давайте создадим",
    "давайте изменим",
    "давайте добавим",
    "давайте удалим",
    "давайте запустим",
    "давайте проверим",
    "давайте прочитаем",
    "давайте найдём",
    "давайте найдём",
    "давайте изучим",
    "давайте исследуем",
    "я проверю",
    "я обновлю",
    "я исправлю",
    "я создам",
    "я изменю",
    "я добавлю",
    "я удалю",
    "я запущу",
    "я прочитаю",
    "я найду",
    "я изучу",
    "я исследую",
    "я посмотрю",
    "сейчас проверю",
    "сейчас обновлю",
    "сейчас исправлю",
    "сейчас создам",
    "сейчас изменю",
    "сейчас добавлю",
    "сейчас удалю",
    "сейчас запущу",
    "сейчас прочитаю",
    "сейчас найду",
    "сейчас изучу",
    "теперь проверю",
    "теперь обновлю",
    "теперь исправлю",
    "теперь создам",
    "теперь изменю",
    "теперь добавлю",
    "теперь удалю",
    "теперь запущу",
    "теперь прочитаю",
    "теперь найду",
    "попробую проверить",
    "попробую обновить",
    "попробую исправить",
    "попробую создать",
    "попробую изменить",
    "давай проверю",
    "давай обновлю",
    "давай исправлю",
    "давай создадим",
    "давай изменим",
    "давай добавим",
    "давай удалим",
    "давай запустим",
    "давай прочитаем",
    "давай найдём",
    "давай изучим",
]

action_verbs = [
    "проверил",
    "обновил",
    "исправил",
    "создал",
    "изменил",
    "добавил",
    "удалил",
    "запустил",
    "прочитал",
    "нашёл",
    "изучил",
    "исследовал",
    "посмотрел",
    "запушил",
    "задеплоил",
    "смерджил",
    "закоммитил",
    "отредактировал",
    "написал",
    "собрал",
    "протестировал",
    "проверил",
]

completion_claims = [
    "обновил файл",
    "изменил файл",
    "исправил файл",
    "создал файл",
    "написал файл",
    "всё о��новлено",
    "всё исправлено",
    "всё готово",
    "изменения применены",
    "файл обновлён",
    "файл создан",
    "файл изменён",
    "код обновлён",
    "код исправлен",
    "баг исправлен",
    "ошибка исправлена",
    "закоммичено",
    "запушено",
    "задеплоено",
    "смерджено",
    "сделано",
    "готово",
]

line_start_re = "(?im)^[\\s\\-*•>]*(?:(?:ладно|хорошо|ну|ок|окей|так)\\s*,?\\s+)?(?:сейчас|теперь)?(?:давайте|давай|я)\\s+\\w"

gerund_re = "(?im)(?:^|[.!?]\\s+)\\s*(?:сейчас|теперь)\\s+(?:обновляю|исправляю|создаю|изменяю|добавляю|удаляю|запускаю|читаю|ищу|изучаю|проверяю)\\b"

trailing_colon_re = "(?im)(?:^|\\n)\\s*(?:давайте|давай|я|сейчас)\\s+\\w[^:\\n]{0,80}:\\s*$"

now_imperative_re = "(?m)^[\\s\\-*]*(?:сейчас|теперь)\\s+(?:давайте|давай|я)?\\s+\\w"

numbered_steps_re = "(?m)^\\s*\\d+\\.\\s+(?:обновить|исправить|создать|изменить|добавить|удалить|проверить|прочитать|запустить)"

past_tense_standalone_re = "(?m)^[\\s\\-*]*(?:обновил|исправил|создал|изменил|добавил|удалил|запустил|прочитал|нашёл|изучил|запушил|задеплоил|смерджил|закоммитил)[.!]"

path_re = "(?:^|[\\s`(])(?:\\./)?[a-zA-Zа-яА-Я_][\\w\\-]*/[\\w\\-/]*\\.\\w{1,6}(?:[\\s`),:;]|$)"

ext_re = "(?:^|[\\s`(])[\\w\\-]+\\.(?:rs|py|ts|tsx|js|jsx|go|sh|toml|yaml|yml|json|md)(?:[\\s`),:;]|$)"

backtick_code_re = "`[a-zA-Z_]\\w+`"