Commit Graph

79 Commits

Author SHA1 Message Date
a21a77723c fix: оставить только один звуковой сигнал при ctx=60%
timeout возвращает код 124 при обрезке, что запускало fallback-цепочку.
Заменил || на ; true чтобы подавить код выхода timeout.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 15:57:37 +03:00
ac64bb1505 feat: раскрасить ctx по уровням и добавить звуковой сигнал при 60%
- зелёный <30%, жёлтый 30-50%, красный 50%+
- однократный звуковой сигнал (alarm-clock-elapsed.oga, 1s) при первом достижении 60%
- сброс флага алерта когда ctx опускается ниже 50%

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 13:13:34 +03:00
bae481172f fix: добавить exit 0 в конец statusline скрипта
Без него [ -n "$ctx_pct" ] && ... возвращал exit 1 когда ctx пустой,
и Claude Code прятал всю строку статуса.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 13:01:33 +03:00
01b69c341b feat: показывать заполнение контекста в статусной строке для всех моделей
ctx:35% отображается серым в конце строки у всех провайдеров.
Для Kimi (нет rate limits) это единственная полезная метрика.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 12:58:57 +03:00
08be1dfc08 feat: показывать оба лимита в статусной строке (5ч и 7д)
Вместо одного показываются оба: "4ч20м:1% 5д3ч:4%".
Для недельного добавлен формат дней: "5д3ч".

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 12:48:26 +03:00
6b80364344 fix: показывать реальное время до сброса лимита в статусной строке
Вместо захардкоженного "5h" теперь считается оставшееся время
из resets_at timestamp: "4ч40м:25%", "58м:80%" и т.д.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 12:47:00 +03:00
fb952ad371 docs: добавить секцию про сетевые скрипты в README
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 12:04:43 +03:00
dfaf835cb6 chore: удалить недоработанные скрипты ru-direct
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 11:45:33 +03:00
17c456ed4f feat: добавить скрипты управления сетью и kill switch
- ks-off.sh — временно отключить UFW kill switch перед сёрфингом без VPN
- ks-on.sh — восстановить kill switch (с проверкой что amn0 поднят)
- ru-direct.sh — роутинг всех российских IP напрямую через провайдера, минуя Amnezia
- ru-direct-undo.sh — откат ru-direct.sh, возврат к "всё через VPN"

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 11:44:40 +03:00
c1e68571f8 feat: показывать баланс DeepSeek при запуске и в статусной строке Claude Code
- Функция _deepseek_balance в ai-api-helpers: запрос к GET /user/balance
- Вывод баланса при проверке сохранённого и нового ключа в ai-deepseek
- Кеширование баланса в ~/.cache/ai-setup/deepseek_balance для статусной строки
- statusline-command.sh: если модель содержит deepseek — показывать  вместо usage

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 11:14:57 +03:00
2f48d038bd fix: убрать имя и хост из статусной строки, сократить путь до ~
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 10:21:18 +03:00
3dfd7ff034 feat: добавить настройку статусной строки Claude Code
Шаг 6.7 - копирует statusline-command.sh и прописывает statusLine
в settings.json. Показывает user@host, путь, git-ветку, модель и usage%.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 10:17:13 +03:00
25d42e8b50 feat: добавить установку Claude Notifier в ai-setup.sh
Шаг 6.8 - устанавливает claude-notifier через curl, идемпотентно.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 10:11:18 +03:00
704e30d3be feat: добавить авторегистрацию маркетплейса плагинов Claude Code
Шаг 6.7 в ai-setup.sh - регистрирует claude-plugins-official через
GitHub PAT (из env GITHUB_TOKEN или интерактивно). Идемпотентен.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 09:04:53 +03:00
6120f34199 feat: добавить TZ и документацию для skill'ов el-review
- Установить часовую зону Europe/Helsinki в ai-api-helpers.sh
- Добавить примеры вызова обоих skill'ов
- Документировать обработку ошибок (отсутствие веток, пустой дифф)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-06-06 08:45:36 +03:00
2f396ac27a docs: актуализация README, +ai-openrouter в AGENTS.md, перегруппировка вывода команд
- README: добавлены ai-openrouter, VLESS/Xray, effort mapping, Gemini skills
- README: команды сгруппированы (Claude Code → нативные)
- README: убрано предупреждение про отдельный Google-аккаунт
- AGENTS.md: ai-openrouter добавлен в список генерируемых скриптов
- ai-setup.sh: финальный вывод перегруппирован, предупреждение Gemini удалено

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 03:26:01 +07:00
Виталий Никитенко
2928298e6b fix(ai-setup): add plugin.json generation for gemini skills 2026-06-05 19:02:56 +07:00
Виталий Никитенко
7a3f14fa48 fix: update OpenRouter API base URL
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 18:17:47 +07:00
Виталий Никитенко
797e8448af feat: add ai-openrouter script with gpt-5.5, opus 4.8 and sonnet 4.6 models 2026-06-05 18:04:09 +07:00
Виталий Никитенко
14b800e6fb feat: новый VLESS сервер EURO-Reality-PQ (45.43.91.139:853)
xhttp + reality + post-quantum encryption, порт 853

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 13:44:37 +07:00
Виталий Никитенко
39caa4a3ee feat: реальный VLESS-тест + spiderX в конфиге
- Замена TCP-теста на реальный VLESS-тест (запуск xray + curl)
  Теперь ✓ работает только если VLESS-туннель действительно пропускает трафик
- Добавлен spiderX в realitySettings (нужен для AmneziaVPN/tcp-vision)
- Парсер: автоопределение spiderX (пустая строка для tcp, / для xhttp)
- Убран вводящий в заблуждение TCP-check

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 13:40:05 +07:00
Виталий Никитенко
a4feeca0bb feat: индикация доступности VLESS серверов (TCP check)
При выборе Y скрипт проверяет TCP-коннект к IP:port каждого сервера
и показывает цветной статус:
- зелёный ✓ доступен
- красный ✗ недоступен

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 13:23:16 +07:00
Виталий Никитенко
a8f651056b fix: обработка последней строки без \n в servers.conf
while read ломается на последней строке без переноса — loop body не выполняется.
Добавлен || [[ -n "$line" ]] для обработки EOF без trailing newline.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 13:21:16 +07:00
Виталий Никитенко
5148ff29ca feat: новый VLESS сервер + поддержка tcp/vision flow
- Добавлен сервер 202.148.54.122 (AmneziaVPN) с flow=xtls-rprx-vision
- Парсер VLESS URL: автоопределение типа транспорта (xhttp/tcp)
  - Если flow указан → тип по умолчанию tcp
  - Если flow пустой → тип по умолчанию xhttp
- Генератор конфига: xhttpSettings только для xhttp-транспорта
- Поле flow в users теперь берётся из URL (ранее было пустым)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 13:17:59 +07:00
Виталий Никитенко
14142c0346 fix: откат настроек прокси в режиме direct (N)
При выборе N (direct mode) теперь корректно откатываются:
- Системный прокси (gsettings mode 'none')
- Firefox прокси (network.proxy.type = 0)
- IPv6 включается обратно (удаление 99-disable-ipv6.conf + sysctl)
- xray стопается и дизейблится

Раньше браузеры оставались настроенными на мёртвый прокси после переключения с Y на N.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 12:02:48 +07:00
Виталий Никитенко
a8d11a3f9f feat: multi-VLESS server selection + direct mode (stop xray)
- Добавлен home-configs/vless/servers.conf с двумя VLESS серверами
- При выборе Y: интерактивное меню выбора сервера (IP + имя)
- Парсер vless:// URL через python3 (извлекает все поля)
- Конфиг xray генерируется динамически, а не копируется статический
- При выборе N: xray стопается и дизейблится (systemctl stop+disable)
- Автоотключение IPv6 (sysctl + persist), автонастройка Firefox SOCKS5
- Автонастройка системного прокси через gsettings
- Зачистка старых drop-in оверрайдов и дефолтных конфигов xray

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 11:54:59 +07:00
8979313467 feat: optional built-in vless/xray with proxychains4 toggle
- ai-setup.sh now asks interactive Y/n prompt for vless mode
- On Y: installs xray + proxychains-ng, deploys configs, enables proxychains4 in all ai-* launchers
- On N: generates plain ai-* scripts without proxychains
- Templates moved to home-configs/xray/ and home-configs/proxychains/

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 08:38:03 +07:00
c68aff4725 fix: use _API_RET global var instead of bash return for HTTP codes > 255
bash return values are truncated to 0-255: 401 % 256 = 145, 429 % 256 = 173.
This caused _handle_api_response / _handle_openai_api_response to return 145
instead of 401, so the reauth prompt was never triggered and the script exited
silently with code 1.

Fix: use global _API_RET variable in both functions, read via ret=$_API_RET
in ai-deepseek and ai-kimi launchers.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-04 23:24:02 +07:00
Виталий Никитенко
81a7b024ee feat: add home-configs with auto-deployed Claude skills
- Move GLOBAL_RULES.md to home-configs/ as single source of truth
- Add el-review and el-review-heavy skills for GitLab-style branch diff review
- Update ai-setup.sh to deploy skills to ~/.claude/skills/
- Update README and tests for new paths
2026-06-04 19:02:37 +07:00
Виталий Никитенко
de7373210c fix(ai-kimi): add source fallback, simplify reauth, check claude presence
- source helpers with 2>/dev/null || true and quoted /home/nikitenko path
- remove redundant reauth flag and extra prompt
- check that claude is installed before exec
- apply same source fix to ai-deepseek for consistency
2026-06-03 10:05:45 +07:00
Виталий Никитенко
526b745cb3 refactor: switch ai-kimi to official Kimi API via Claude Code
- Replace native kimi CLI launcher with Claude Code + Kimi backend

- Update README description and permission flags

- Update test_isolated.sh and tests/test_fixes.sh for new ai-kimi logic
2026-06-02 20:03:15 +07:00
Виталий Никитенко
418a5ef6d5 fix: add npm fallback for Codex install when curl gets 403 from Cloudflare
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-02 10:05:19 +07:00
eeeab3dc2d Remove stale Claude-specific labels 2026-06-02 01:03:37 +07:00
1aff9a269f Add reusable skills global rule 2026-06-02 01:00:12 +07:00
3f9fe30cf0 Extract global rules into markdown file 2026-06-02 00:53:16 +07:00
eb5af7c62c Write native agent rules during setup 2026-06-01 17:27:45 +00:00
b1c585a34c Update AI setup rules and documentation 2026-06-01 16:56:26 +00:00
7814fdd5b2 Add global AI quality rules 2026-06-01 16:42:58 +00:00
db2af1f7c8 chore: игнорировать папку .antigravitycli целиком 2026-05-31 23:13:25 +07:00
4a3eaacfec chore: удалить .antigravitycli (битый симлинк служебного файла Antigravity CLI) 2026-05-31 23:13:05 +07:00
25a0512d34 fix: единый источник правил для всех ai-* агентов
- _build_ai_sys_prompt сохраняет в ~/.codex/AGENTS.md + ~/.kimi-code/AGENTS.md
- ai-gpt, ai-kimi: убран неработающий --system-prompt, используют нативные AGENTS.md
- ai-setup.sh: шаблоны синхронизированы под новое поведение

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-31 23:04:38 +07:00
2d1fc7fc67 docs: добавить глобальные правила в README.md 2026-05-31 22:42:25 +07:00
29f3b76dd2 fix: исправление проброса переменных окружения в ai-deepseek 2026-05-31 21:44:56 +07:00
93b9fbb43b feat: внедрена автогенерация глобальных правил ИИ-агентов и очистка AGENTS.md 2026-05-31 21:36:22 +07:00
2bde831f1a feat: add permission-skipping flags to all ai-* launchers
- ai-claude: --dangerously-skip-permissions
- ai-gpt: --dangerously-bypass-approvals-and-sandbox (Codex)
- ai-deepseek: --dangerously-skip-permissions
- ai-kimi: --yolo
- ai-gemini: --dangerously-skip-permissions (agy)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-31 20:34:34 +07:00
e50876f616 feat: configure ai-kimi with Artemox API 2026-05-31 20:02:38 +07:00
e5d6925911 Remove shell restart note from README 2026-05-31 12:36:02 +00:00
f1deb7c162 Ignore local Antigravity config 2026-05-31 12:33:33 +00:00
c888056a7a Fix: correct cleanup logic that accidentally deleted new ai-gpt and ai-kimi scripts 2026-05-31 19:22:08 +07:00
c6a1a788d4 Docs: rewrite README.md to be simple and concise 2026-05-31 19:15:26 +07:00