Разрабская ночь
13.4K subscribers
105 photos
5 videos
6 files
197 links
Небольшой блог о разработке
Download Telegram
Hermes (https://hermes-agent.nousresearch.com) возможно уже попадался вам на глаза и вы думали: чем эта штука лучше остальных, чем она выделяется? Я попробовал, оказалось постоянной памятью и самообучением. Сейчас вот учу агента на своих проектах чтоб он запомнил, что как делать надо
👍1
Итак, я сделал retrolunar2, пакетный менеджер с кросс-компиляцией, более удобным форматом пакетов, хорошим кешем с деревьями хешей и прочими удобствами https://github.com/lunardoesdev/retrolunar2
🔥1
Вот конкретное место в nix, которое плохо и непонтяно организовано, из-за чего я ковыряюсь со своими пакетными менеджерами https://github.com/NixOS/nixpkgs/blob/master/lib/systems/examples.nix . Чтобы создать свой таргет, вы можете... прописать некую конфигурацию. К модулям, которые вы не знаете где находятся. Теоретически вы можете задать какие-нибудь флаги для clang или gcc. А что если у вас другой компилятор? Что если вы хотите что-то собрать под ретроконсоли? А что если например вам хочется писать под обычные FHS системы без костылей вроде nixGL или nix-portable? И все это хочется делать так, чтобы работали стандартные описания пакетов nix с их же системой зависимостей, а не просто установить кросс-компилятор и собирать каждую зависимость вручную? Я не нашел ответов на эти вопросы. Если у вас есть ответы - расскажите в комментариях
еще один любопытный ии-харнесс (пока все еще нахожусь в поиске, hermes хорош но в плане многозадачности, потребления памяти и некоторых других вещей не очень) https://3code.capocasa.dev/
❤1
https://github.com/pkgforge-dev/Gapless-AppImage

AppImage made using quick-sharun, which makes it extremely easy to turn any binary into a portable package reliably without using containers or similar tricks.
This AppImage bundles everything and it should work on any Linux distro, including old and musl-based ones.
This AppImage doesn't require FUSE to run at all, thanks to the uruntime.
nim можно установить теперь через mise! Неожиданная приятная новость
в nix вот оно как выбор пакета в качестве libc меняет includedir и libdir https://github.com/NixOS/nixpkgs/blob/nixos-26.05/pkgs/by-name/ne/newlib/package.nix#L141
а вот где наконец-таки CC https://github.com/NixOS/nixpkgs/blob/nixos-26.05/pkgs/build-support/cc-wrapper/setup-hook.sh#L119
и вот где с горем пополам пакет cc попадает в export CC причем видимо без пакетов а через правильно именованный бинарник в тулчейне https://github.com/NixOS/nixpkgs/blob/nixos-26.05/pkgs/build-support/cc-wrapper/default.nix ... Вроде эта штука пытается делать что-то умное с определением названий бинарников и всяким таким, но судя по тому что здесь приходится делать изменения под каждый компилятор вроде aro - получается у них не очень. Или нет? Что думаете?
👍1
у hermes оказывается есть kanban доска для мультиагентной работы
🔥1
немного вещей больше для себя чтоб не забыть потыкать:
https://mcpagentmail.com/ - мультиагенты без бесконечных worktrees и мержинга с созданием помех друг другу
https://github.com/aardappel/goose/ - новый язык программирования, генерирует си, эффективен и экономит память если верить readme
https://github.com/dolthub/dolt - версионированный sql
https://beads.gascity.com/ - issue tracker для ИИ, чтоб применять вместо kanban. beads и mcpagentmail работают без git и без git worktrees, вдруг будет как-то поудобнее

В плане проектов я сейчас завершаю больше исследование по nixos и формирую удобные заготовки чтоб любой мог с помощью nix собирать стандартного описания nix-пакеты под android, linux (под нормальный FHS линукс а не только под nix), windows, emscripten, кроме того там будет отдельно видно как делать свою stdenv, среду для кросс-компиляции, которую можно опять-таки применять к любым nix пакетам и резольвить зависимости через nix а не отдельными костылями
❤2
epkg - еще один интересный пакетный менеджер, изолированно ставит пакеты из fedora, ubuntu и других, можно попробовать запустить что-нибудь графическое с выключенной изоляцией https://docs.openeuler.org/en/docs/26.09/tools/community_tools/epkg/epkg_package_manager_usage_guide.html#1-quick-start
Попробовал новый харнес jcode, он почему-то спавнит git процессы направо и налево, и они жрут процессор! Не знаю почему так.
делаю git gc в проекте, похоже это какой-то косяк самого git
удалил папку .git и вроде пока проблемы прошли. jcode мне понравился, если таких странных штук происходить не будет то в целом можно сказать что он хорош
👍1
удаляем /tmp из оперативки и используем /tmp на диске
# 1. Замаскировать юнит (чтобы systemd больше не монтировал tmpfs)
sudo systemctl mask tmp.mount

# 2. Перезагрузка — /tmp останется на диске (root-раздел)
sudo reboot

У меня вот постоянно забивается память из-за него, поэтому у себя убираю из оперативки /tmp
deepagents от авторов langchain уже похож на что-то полезное и удобное, это более высокоуровневый питон фреймворк позвооляющий опускать много деталей но при этом тестировать всякие мультиагентные подходы описываемые статьями на тему harness engineering. Да, под каждую задачу по сути придется писать python-код для ИИ агента, и мне кажется удобнее один python-файлик чем 10 файлов с ролями и скиллами разбросанные по локальным, глобальным и проектным конфигам. deepagents нужен для разработки комплексных харнесов для долгоживущих ботов работающих над длительными задачами в то время как langchain позволяет разрабатывать довольно минималистичных агентов.

https://docs.langchain.com/oss/python/deepagents/overview