ru
Feedback

Не попадитесь на канал ботавода! Telemetrio находит и помечает такие каналы 👉 Хотите видеть метку — оформите подписку

devdigest // dot net

devdigest // dot net

Открыть в Telegram

Главные новости из мира .NET Все каналы проекта: https://t.me/devdigestplatform/163

Больше
3 894
Подписчики
Нет данных24 часа
-27 дней
-530 дней

Загружаем данные

Привлечение подписчиков
окт. '26
октябрь '26
+21
в 0 каналах
сентябрь '26
+32
в 0 каналах
Get PRO
август '26
+14
в 0 каналах
Get PRO
июль '26
+22
в 0 каналах
Get PRO
июнь '26
+33
в 0 каналах
Get PRO
май '26
+33
в 1 каналах
Get PRO
апрель '26
+26
в 0 каналах
Get PRO
март '26
+25
в 0 каналах
Get PRO
февраль '26
+546
в 1 каналах
Get PRO
январь '26
+40
в 1 каналах
Get PRO
декабрь '25
+20
в 0 каналах
Get PRO
ноябрь '25
+34
в 0 каналах
Get PRO
октябрь '25
+29
в 1 каналах
Get PRO
сентябрь '25
+17
в 1 каналах
Get PRO
август '25
+602
в 1 каналах
Get PRO
июль '25
+120
в 0 каналах
Get PRO
июнь '25
+34
в 2 каналах
Get PRO
май '25
+28
в 0 каналах
Get PRO
апрель '25
+77
в 0 каналах
Get PRO
март '25
+55
в 3 каналах
Get PRO
февраль '25
+28
в 0 каналах
Get PRO
январь '25
+57
в 3 каналах
Get PRO
декабрь '24
+61
в 2 каналах
Get PRO
ноябрь '24
+60
в 2 каналах
Get PRO
октябрь '24
+70
в 3 каналах
Get PRO
сентябрь '24
+60
в 2 каналах
Get PRO
август '24
+56
в 2 каналах
Get PRO
июль '24
+37
в 2 каналах
Get PRO
июнь '24
+31
в 1 каналах
Get PRO
май '24
+44
в 1 каналах
Get PRO
апрель '24
+57
в 2 каналах
Get PRO
март '24
+53
в 1 каналах
Get PRO
февраль '24
+61
в 2 каналах
Get PRO
январь '24
+78
в 1 каналах
Get PRO
декабрь '23
+85
в 0 каналах
Get PRO
ноябрь '23
+134
в 1 каналах
Get PRO
октябрь '23
+33
в 0 каналах
Get PRO
сентябрь '23
+41
в 0 каналах
Get PRO
август '23
+47
в 0 каналах
Get PRO
июль '23
+60
в 0 каналах
Get PRO
июнь '23
+1 237
в 0 каналах
Get PRO
май '23
+1 172
в 0 каналах
Get PRO
апрель '23
+32
в 0 каналах
Get PRO
март '23
+52
в 0 каналах
Get PRO
февраль '23
+29
в 0 каналах
Get PRO
январь '23
+42
в 0 каналах
Get PRO
декабрь '22
+40
в 0 каналах
Get PRO
ноябрь '22
+49
в 0 каналах
Get PRO
октябрь '22
+64
в 0 каналах
Get PRO
сентябрь '22
+65
в 0 каналах
Get PRO
август '22
+87
в 0 каналах
Get PRO
июль '22
+215
в 0 каналах
Get PRO
июнь '22
+51
в 0 каналах
Get PRO
май '22
+28
в 0 каналах
Get PRO
апрель '22
+34
в 0 каналах
Get PRO
март '22
+33
в 0 каналах
Get PRO
февраль '22
+31
в 0 каналах
Get PRO
январь '22
+45
в 0 каналах
Get PRO
декабрь '21
+37
в 0 каналах
Get PRO
ноябрь '21
+100
в 0 каналах
Get PRO
октябрь '21
+48
в 0 каналах
Get PRO
сентябрь '21
+98
в 0 каналах
Get PRO
август '21
+188
в 0 каналах
Get PRO
июль '21
+41
в 0 каналах
Get PRO
июнь '21
+42
в 0 каналах
Get PRO
май '21
+49
в 0 каналах
Get PRO
апрель '21
+87
в 0 каналах
Get PRO
март '21
+152
в 0 каналах
Get PRO
февраль '21
+69
в 0 каналах
Get PRO
январь '21
+57
в 0 каналах
Get PRO
декабрь '20
+3 468
в 0 каналах
Дата
Привлечение подписчиков
Упоминания
Каналы
29 октября0
28 октября0
27 октября+1
26 октября+1
25 октября0
24 октября0
23 октября+1
22 октября+1
21 октября+1
20 октября0
19 октября0
18 октября0
17 октября+2
16 октября0
15 октября+1
14 октября0
13 октября+1
12 октября+1
11 октября+2
10 октября+3
09 октября0
08 октября+1
07 октября0
06 октября+1
05 октября0
04 октября0
03 октября+1
02 октября+1
01 октября+2
Посты канала
🎥 NBomber Studio 0.10.0: теги, новый вид Session Details и обновлённый интерфейс Вышла версия 0.10.0 NBomber Studio, инструмента для анализа результатов нагрузочных тестов на .NET-фреймворке NBomber. В релизе появилась поддержка тегов, переработан экран Session Details и в целом обновлён интерфейс. Отдельно исправлено поведение фильтров: теперь Studio корректно восстанавливает их состояние при переключении между представлениями. Команда показала изменения в шестиминутном обзорном видео. 👉🏻 Канал | 💬 Чат | 📕 Каталог

2
⚡️ Azure Functions на .NET получили ~1700 managed-коннекторов: SharePoint-триггер и Teams-клиент через DI В Azure Functions появились managed connectors из Azure Connector Namespace — около 1700 сервисов: Microsoft 365, Teams, SharePoint, OneDrive, Dataverse и сторонние системы. Public preview, для .NET isolated, Python и Node.js. Два примитива. Connector trigger: функция запускается событием сервиса, в C# это [Function("OnNewFile")] с параметром [ConnectorTrigger] типа SharePointOnlineOnNewFileItemsTriggerPayload. Typed client: SharePointOnlineClient и TeamsClient регистрируются как singleton в DI, авторизуются через DefaultAzureCredential по runtime URL подключения, дальше обычные вызовы вроде GetFileContentAsync и PostCardToConversationAsync. Регистрацию вебхуков, OAuth-токены и подключения берёт на себя Connector Namespace — писать свой код под каждый сервис не нужно. Пример из поста — приём RFP: SharePoint «файл создан» → Content Understanding с prebuilt-layout → правила на C# → Adaptive Card в Teams. Граница с Logic Apps проведена так: Functions — когда важна своя логика и code-first, Logic Apps — когда это в основном оркестрация коннекторов в визуальном дизайнере. Цен и лимитов в анонсе нет. Сколько у вас сейчас Logic Apps, которые существуют только потому, что нужен был один коннектор? 👉🏻 Канал | 💬 Чат | 📕 Каталог
801
3
⚡️ Марк Симанн: как делать большой редизайн кода и не утонуть в merge-конфликтах Тим Оттингер написал, что крупные редизайны в командах почти не случаются: пока ты перекраиваешь модуль, коллеги параллельно правят тот же код, и всё заканчивается конфликтами. Марк Симанн отвечает: это решается не смелостью, а порядком действий — Strangler Fig на уровне кода. Шаг первый: новый дизайн пишется рядом со старым, в новых файлах, которые никто ещё не использует. Такое можно пушить хоть каждый день — конфликтовать нечему. Шаг второй: проблемный код мигрируется по одному месту за раз, каждый вызов заменяется простым обращением к новому API, а гранулярность выбираете сами. Валидировать дизайн стоит заранее на локальной ветке, которую не шарят: показать команде сам дизайн, а коммиты «удушения» отложить — или переделать их на свежем снимке, если кодовая база сильно уехала. Инструменты старые: Feature Flag, Strangler Fig Фаулера, явное версионирование, отдельные коммиты для тестов и для кода под тестом. Ничего нового — но именно такой порядок снимает страх, который обычно и хоронит рефакторинг. Подвох один: если старый и новый код живут вместе дольше квартала, миграция застревает навсегда — назначайте дату, после которой старое удаляют принудительно. 👉🏻 Канал | 💬 Чат | 📕 Каталог
869
4
⚡️ Durable Task: пять сценариев от Microsoft, где он окупается — и чего он не даёт Тамир Дрешер из Microsoft разобрал на пяти сценариях, где Durable Task .NET SDK (v1.26.0 с Durable Task Scheduler) окупается, а где создаёт иллюзию надёжности: согласование счетов, провижининг Azure-тенантов, повторные списания по подписке, всплески вебхуков для срочных новостей и инцидент-воркфлоу с AI-ассистентом. Ключевая мысль про модель исполнения: replay — не восстановление приостановленного CLR-стека, а повторное выполнение кода оркестратора против истории. Отсюда правила: TaskOrchestrator<TInput, TOutput> детерминирован, всё внешнее — через CallActivityAsync, ожидание — WaitForExternalEvent и CreateTimer, бесконечные циклы — через ContinueAsNew. Из платёжного сценария: проверка раз в шесть часов, не больше 15 попыток; из провижининга — бюджет на поллинг 45 минут и отдельные состояния «ресурс готов» и «тенант активирован». Главное предупреждение: durable-история не даёт exactly-once для внешних эффектов. Идемпотентность на стороне приложения и сверка остаются на вас, а компенсация — не кнопка «отменить». Код в статье намеренно неполный и не компилировался — это про архитектуру, не про copy-paste. Где хостить сам Durable Task Scheduler и во что он обходится — тема для соседнего //azure. 👉🏻 Канал | 💬 Чат | 📕 Каталог
953
5
⚡️ Stack Overflow 2026: C# на 8-м месте с 27.1%, Rider — самая любимая IDE при 7% использования Вышел Stack Overflow Developer Survey 2026 — 30 903 ответа из 169 стран. Для .NET-мира цифры такие: C# — восьмой язык с 27.1%, TypeScript шестой с 43.8%. Среди веб-фреймворков ASP.NET Core четвёртый с 19.9%, старый ASP.NET — 13.9%, Blazor — 6.7%; в списке «хотел бы использовать» ASP.NET Core третий с 13.8%. Редакторы: VS Code у 70.9%, а Visual Studio уступила третье место Notepad++ — 27.6% против 27.8%, разница в 30 человек. Rider используют всего 7%, но по «admired» он первый — 56.9%, выше VS Code (55.7%) и Visual Studio (47.8%). Cursor — 14.9%, Zed — 11.4%. Агенты: Claude Code 65.5%, GitHub Copilot 58.7%, Codex 29.5%; 73% пользуются ассистентами ежедневно, но доверяют им «во многих задачах, включая важные решения» лишь 6.6%, а 48% — только там, где результат легко проверить. Облака: AWS 41.8%, Azure 25.1%, GCP 24.5%. В чём сидите вы — Rider, VS, VS Code? И есть ли у вас в команде кто-то, кто сознательно отказался от агентов? 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 355
6
⚡️ Одна подмена в ILLink.Substitutions.xml выкинула Azure.Identity из NativeAOT-бинарника: минус 25% Andrew Lock обновил Microsoft.Diagnostics.Runtime (ClrMD) с 3.2 до 4.1 — и NativeAOT-бинарник потолстел на 437 КБ (+12.4% для win-x64). Виновник нашёлся через Sizoscope: тип InteractiveBrowserCredential тянул за собой Azure.Identity, Microsoft.Identity.Client, MSAL Extensions и System.Text.Json. Почему линкер их не вырезал: свойство IsSymweb сравнивает host у Uri в рантайме, и доказать статически, что конструктор недостижим, невозможно. Решение — ILLink.Substitutions.xml, где тело get_IsSymweb() подменяется на stub с value false. Нюанс: как EmbeddedResource для NativeAOT это не работает — таргеты ILCompiler не подхватывают ILLinkSubstitutionsXmls при PublishAot, пришлось передавать через IlcArg --substitution. Результат: win-x64 3.956 → 2.949 МБ, linux-x64 4.459 → 3.466 МБ, минус 22–25%. Две оговорки от автора. Подмена безопасна только потому, что в его коде ветка с Symweb никогда не срабатывает — это не универсальный рецепт. И если искать кандидатов на trimming с помощью LLM, каждое её утверждение надо перепроверять: оказалось, что бóльшая часть выигрыша относительно старой сборки пришла от перехода с .NET 8 на .NET 10, а не от подмен. 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 370
7
⚡️ AWS выпустила инструмент для автоматического переноса .NET-приложений с Azure на AWS Amazon сделала общедоступной новую функцию AWS Transform, которая сама переписывает .NET-приложения, написанные под Azure, на сервисы AWS. Агент модернизации находит в коде вызовы Azure SDK и заменяет их на эквиваленты из AWS SDK: Azure Functions превращаются в AWS Lambda, Blob Storage в Amazon S3, Queue Storage в Amazon SQS, а Cosmos DB в DynamoDB (пока в превью). Перед запуском разработчик видит отчёт с найденными зависимостями и планом замены и может поправить его вручную. Функция уже работает в восьми регионах AWS, включая Франкфурт и Лондон. 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 088
8
⚡️ .NET 11 RC2 вышел с go-live лицензией — GA обещан в ноябре .NET 11 Release Candidate 2 доступен с go-live лицензией: его можно ставить в прод с поддержкой Microsoft. Финальный релиз — в ноябре, точной даты нет. Работает в Visual Studio 2026 Insiders и VS Code с C# Dev Kit. Что добавили. В библиотеках — CborReader читает данные по частям, экспериментальные CompositeMLKem (классический и постквантовый KEM вместе дают общий секрет) и Hpke API, EnvelopedCms шифрует через ML-KEM (пока чистый ML-KEM и не на Windows). У SocketsHttpHandler появился InitialHttp2MaxConcurrentStreams — число параллельных стримов на новом HTTP/2-соединении до прихода SETTINGS от сервера. В SDK — быстрый wildcard-матчинг в MSBuild: по замерам Microsoft полная оценка проекта на 10–13% быстрее, аллокаций меньше на 16–34%. В NuGet — опция --min-publish-age-hours для источников: пакеты моложе N часов не берутся, а если подходящей версии не осталось, restore падает с NU1020 — простая защита от свежезалитого вредоносного пакета. В F# — runtime async и reraise внутри computation expressions. В MAUI — шаблон --ui csharp, где Shell и страницы описаны на C# без XAML. В ASP.NET Core виртуализация QuickGrid (AnchorMode, ItemComparer) вышла из experimental. Если вы ещё на .NET 8 — самое время прогнать тесты на RC2: до GA остался один цикл, и ломать API уже не будут. 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 160
9
⚡️ C# Dev Kit 11 переписали в один Native AOT-процесс: загрузка решения 84 с → 3 с Microsoft пересобрала C# Dev Kit для VS Code: шесть managed-процессов свели в один CSDevKit, скомпилированный Native AOT. Версия прыгнула с 3.3 сразу на 11.0 — теперь номер совпадает с релизом .NET. Цифры из замеров Microsoft. Aspire (407 проектов): активный файл готов за 0.47 с вместо 84.1 с, всё решение — за 3.0 с; сборка без изменений 34.4 с → 0.88 с, после правки одного файла 36.1 с → 2.1 с. Orleans (155 проектов): решение 50.3 с → 2.3 с. Память серверного процесса: Aspire 2072 МБ → 316 МБ, Roslyn 2000 → 379 МБ. Roslyn language service по-прежнему живёт в отдельном процессе и почти не менялся. Кэши проектов строятся при первой загрузке — Microsoft предлагает коммитить их в репозиторий, чтобы свежие клоны и worktree получали быстрый тулинг сразу. Сверху — редактор MSBuild-файлов (completion, диагностика, go-to-definition для .csproj/.props/.targets, версии пакетов и уязвимости в CodeLens) и «C# Doctor», который находит недостающие SDK, упавший restore и уязвимые пакеты. Пока только в pre-release канале расширения, stable «готовится» без даты. Microsoft оговаривает, что результат зависит от структуры решения — но даже если у вас выйдет впятеро скромнее, это уже другой класс инструмента. 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 265
10
⚡️ F# Weekly #42, 2026 Вышел свежий выпуск дайджеста F# Weekly. Главная новость — F# 11 в составе .NET 11 Release Candidate 2, а вместе с ним улучшения производительности компилятора: F# 11 заметно экономнее расходует память. Из новостей Microsoft — анонс dotnetup, нового менеджера инструментария .NET, и выход .NET 11 RC 2. Среди заметных проектов недели — MVUish.Avalonia, лёгкая MVU-библиотека для Avalonia, F#-обёртка SpectreTuff над Spectre.Console, REPL SageFs с горячей перезагрузкой и живым тестированием, а также fsharp-skills — набор инструкций для ИИ-агентов, работающих с кодом на F#. В номере также свежие релизы Fable 5.22, FsUnit 8.0, Expecto 11.1.1, Farmer 1.9.33 и других библиотек. 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 265
11
⚡️ Вышел NBomber 6.7.0 Инструмент нагрузочного тестирования для .NET NBomber обновился до версии 6.7.0. Главное: переработанный HTML-отчёт со сводкой по тестовому прогону, вкладками Summary/Charts/Thresholds и подробной таблицей порогов. Писать сценарии стало проще, появился отдельный профиль нагрузки для прогрева перед основным тестом, а также теги для сессий и сценариев. Интеграции с InfluxDB, Datadog, OpenTelemetry и другими системами передают больше метрик, а в кластерном режиме исправлена ошибка, из-за которой узлы могли зависать при сбоях. 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 841
12
⚡️ У NuGet-пакетов Microsoft с 23 сентября новый сертификат подписи С 23 сентября Microsoft подписывает NuGet-пакеты новым author-signing сертификатом. Если у вас настроен dotnet nuget verify или NuGet-клиент с trusted signers, которые проверяют конкретный отпечаток сертификата Microsoft, — на первом же пакете с новой подписью получите NU3034: установка упадёт, потому что старый сертификат в списке доверенных, а нового там нет. Чинится это одной командой dotnet nuget trust (или руками через nuget.config) — новый отпечаток добавляется, старый лучше не убирать сразу: часть уже опубликованных пакетов ещё какое-то время будет подписана старым. Если в CI где-то жёстко прибит trusted signer по конкретному thumbprint — самое время это найти до того, как оно упадёт само. У кого в пайплайне уже стоит trusted signer на Microsoft-пакеты — успели обновить, или ждёте первого красного билда? 👉🏻 Канал | 💬 Чат | 📕 Каталог
2 061
13
⚡️ DBSC добрался до ASP.NET Core: экспериментальная защита cookie в .NET 11 preview 8 В .NET 11 preview 8 появилась экспериментальная поддержка Device Bound Session Credentials — протокола, который закрывает классическую дыру: украл долгоживущую auth-cookie с машины жертвы — можешь пользоваться ей с любой другой машины. DBSC меняет схему на короткоживущие credentials плюс refresh, который сервер обязан проверить на той же машине, что выдавала исходный токен — подпись делает приватный ключ, который никогда не покидает TPM. Подключается это одним вызовом: AddDeviceBoundSession(sourceScheme: IdentityConstants.ApplicationScheme) на AuthenticationBuilder после dotnet add package Microsoft.AspNetCore.Authentication.DeviceBoundSessions --prerelease. Больше конфигурации на старте не требуется. Ограничения серьёзные: работает только по HTTPS, зависит от поддержки браузером (пока только Chromium-based), и — неожиданно — ломается при включённых блокировщиках рекламы. Запросы регистрации и обновления не видны в обычных devtools, так что дебажить это будет отдельным квестом. И главное: пакет останется в preview даже после релиза .NET 11 — в проде пока рано. 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 837
14
⚡️ IfItQuacks: duck typing в C# через interceptors, без dynamic и рефлексии IfItQuacks выросла из proof-of-concept в полноценную библиотеку: помечаешь метод атрибутом [DuckTyped], и source generator на этапе компиляции проверяет, что переданные аргументы структурно подходят под нужный интерфейс — без dynamic, без рефлексии, через сгенерированные адаптеры. Пример из документации: интерфейс INamed с одним Name, метод Greet(INamed first, INamed second) — и в него спокойно передаются Person и Mallard, даже если ни один из них INamed не реализует. Во второй части добавили то, чего не хватало для реального использования: события, индексаторы, делегаты, static abstract члены, сохранение identity через Equals/GetHashCode с возможностью развернуть обёртку обратно в оригинальный тип. Отдельно полезная штука для тестов — «мгновенные стабы» из анонимных типов вместо ручных моков. Ставится без правки csproj. Репозиторий и документация — у linkdotnet на GitHub. 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 561
15
⚡️ Марк Симанн: LLM ускоряют написание кода, но не скорость обучения разработчика Марк Симанн отвечает на вопрос читателя: стоит ли ещё учить основы программирования, если LLM пишет код за тебя. Его тезис — LLM ускоряют написание кода, но не скорость, с которой человеческий мозг усваивает новые концепции; это и есть настоящее узкое место, а не доступ к учебникам или ментору. Себя он в пример не ставит: C# выучил по документации и примерам кода, почти не осиливая профильные книги, а вот F# и Haskell без книг не зашли. Путь к тому, чтобы «уверенность прошлого себя» начала казаться поверхностной, занял у него десятилетия — и главный вопрос статьи в том, есть ли у тех, кто учится сейчас, время на такую же глубину, или его больше не будет. Практический совет: не задавай LLM неверифицируемые вопросы вроде «что мне учить дальше» — только фальсифицируемые, на которые есть проверяемый ответ (код работает или нет). Тем, кто входит в профессию с нуля именно сейчас, он всерьёз предлагает присмотреться к столярному делу или металлообработке — как более устойчивым к автоматизации. 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 603
16
⚡️ Вышел F# Weekly #40: главное — Blazor-компоненты для чата с AI-агентом Вышел 40-й выпуск F# Weekly Сергея Тихона — еженедельной подборки всего, что происходит в F# и вокруг .NET. Самое интересное в нём — экспериментальные Blazor AI-компоненты из .NET 11 RC1. Чат с AI-агентом теперь собирается одним компонентом ChatPage: стриминг ответа, вызовы инструментов и кнопки approve/reject для рискованных действий уже внутри, а под капотом — любой IChatClient из Microsoft.Extensions.AI. Остальное — новые проекты, релизы библиотек и видео недели — в самом выпуске. 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 582
17
⚡️ AG-UI Protocol получил официальный .NET SDK на Microsoft.Extensions.AI Microsoft выпустил официальный .NET SDK для AG-UI (Agent-User Interaction Protocol) — открытого протокола, который стандартизирует, как агент стримит события в UI: RUN_STARTED, TEXT_MESSAGE_CONTENT, STATE_DELTA и так далее, вместо того чтобы каждый фреймворк придумывал свой формат стриминга. SDK — это пять NuGet-пакетов: AGUI.Abstractions (типы протокола), AGUI.Formatting (форматы), AGUI.Protobuf (опциональный бинарный кодек), AGUI.Client и AGUI.Server. В основе — знакомый IChatClient из Microsoft.Extensions.AI: метод AsAGUIEventStreamAsync() сам превращает стриминг ответа в события протокола с нужными лайфсайкл-маркерами, а AGUIChatClient на другой стороне позволяет дёргать чужого AG-UI-агента как обычный IChatClient. Microsoft Agent Framework теперь тоже переехал на этот пакет вместо своей реализации. Главное — протокол один и тот же в C#, TypeScript и Python SDK: .NET-бэкенд агента спокойно обслуживает фронтенд на любом из них. Если у вас агенты частично на C#, частично на Python (см. на этой неделе //data science) — это буквально общий язык между ними, а не два похожих, но разных формата. 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 802
18
⚡️ Microsoft показывает, как собрать AI-агента на C# с нуля — в живой серии из четырёх сессий Microsoft Agent Framework — это не сам агент, а harness: рантайм-слой, который берёт на себя оркестрацию вокруг модели. Ты даёшь модель, промпт и доменные тулы — harness добавляет память, планирование и retry. В новой серии «From Model to Agent» на .NET YouTube это собирают вживую на C#, сессия за сессией: от chatClient.AsHarnessAgent(...) с автоматическим вызовом функций и историей — до продакшен-версии с approval-политиками на рискованные действия (ApprovalRequiredAIFunction), доступом к файлам только в разрешённых директориях, shell-командами с таймаутами и OpenTelemetry-трейсингом вызовов тулов и токенов. Готовый код — в репозитории MafClaw, две сессии из четырёх уже вышли. Это тот же Agent Framework, что и в Python-версии — если у вас в проекте C#-бэкенд и ML-агенты на Python одновременно, концепции 1-в-1 переносятся между стеками (см. на этой неделе //data science). 👉🏻 Канал | 💬 Чат | 📕 Каталог
2 331
19
⚡️ Rider и ReSharper 2026.2.2: виджет для настройки AI-агентов и точечные подсказки хуков В Rider и ReSharper вышел патч 2026.2.2 — и половина изменений про AI-агентов. Новый виджет в статус-баре показывает, какие agent-фичи вообще есть в IDE — MCP tools, skills, hooks — и что из этого уже включено, а что можно настроить в один клик. До этого искать это приходилось по настройкам. Хуки стали точнее: инспекция теперь возвращает результаты только по добавленному агентом коду, а не по всему файлу, а reformat-хук отдаёт diff именно тех изменений форматирования, которые внёс IDE — агенту не нужно гадать, что поменялось. dotCover в Rider и ReSharper научился считать покрытие для тестов на TUnit (нужен пакет JetBrains.dotCover.Framework и Microsoft.Testing.Platform 2.3.0+). 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 826
20
⚡️ Environment.ProcessorCount с .NET 6 считает лимит процесса, а не ядра хоста Andrew Lock показал, что начиная с .NET 6 Environment.ProcessorCount отдаёт не число процессоров хоста, а количество логических ядер, доступных именно процессу — в контейнере с CPU-лимитом это совсем другое число. Обхода в BCL нет, поэтому для каждой платформы — свой P/Invoke. В Windows это GetActiveProcessorCount с флагом «все группы процессоров» (0xFFFF), в macOS — sysctlbyname("hw.logicalcpu"), а в Linux приходится парсить /sys/devices/system/cpu/online, где диапазоны ядер вперемешку с одиночными номерами вроде «0-3,4,8-11». Lock приводит парсер для обоих форматов и советует завернуть результат в синглтон: значение не меняется за время жизни процесса, дёргать sysctl или P/Invoke на каждую проверку незачем. Сам автор честно пишет, что в проде это ещё не проверял. Если вам действительно нужно число ядер хоста, а не лимит контейнера — например, для пула потоков вне cgroup-ограничений — сначала прогоните код на своей платформе, а не копируйте вслепую. 👉🏻 Канал | 💬 Чат | 📕 Каталог
1 685