<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Composition | The .NET Blog</title><link>https://thedotnetblog.com/ru/tags/composition/</link><description>Articles, tutorials and insights from the .NET community.</description><generator>Hugo</generator><language>ru</language><managingEditor>@thedotnetblog (The .NET Blog)</managingEditor><webMaster>@thedotnetblog</webMaster><lastBuildDate>Tue, 09 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://thedotnetblog.com/ru/tags/composition/index.xml" rel="self" type="application/rss+xml"/><item><title>Agent Skills для Python показывают, почему композиция важнее стиля написания</title><link>https://thedotnetblog.com/ru/news/emiliano-montesdeoca/agent-skills-python-composition-patterns/</link><pubDate>Tue, 09 Jun 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://thedotnetblog.com/ru/news/emiliano-montesdeoca/agent-skills-python-composition-patterns/</guid><description>Последний пост об Agent Skills для Python формально посвящён файловым, классовым и inline-skills, но более важная идея — композируемость из разных источников без переписывания модели провайдера.</description><content:encoded>&lt;p&gt;Это один из тех постов, где конкретный языковой фокус уже, чем архитектурный урок.&lt;/p&gt;
&lt;p&gt;Да, статья про &lt;strong&gt;Agent Skills для Python&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Но более интересная мысль — про &lt;strong&gt;композицию&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Возможность смешивать файловые, классовые и inline-skills через единую модель провайдера — это именно то, что заставляет фреймворк ощущаться масштабируемым, а не просто симпатичным.&lt;/p&gt;
&lt;h2 id="важный-сдвиг--не-файл-против-класса-против-inline"&gt;Важный сдвиг — не «файл против класса против inline»&lt;/h2&gt;
&lt;p&gt;Статью легко прочитать как матрицу возможностей:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;skills на основе файлов&lt;/li&gt;
&lt;li&gt;skills на основе классов&lt;/li&gt;
&lt;li&gt;inline-skills&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Это полезно, но не главная архитектурная мысль.&lt;/p&gt;
&lt;p&gt;Главная мысль в том, что фреймворк упрощает &lt;strong&gt;композицию возможностей из нескольких источников без переписывания истории провайдера каждый раз&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Именно эта часть имеет значение, когда skills переходят от небольшого демо к реальному командному окружению.&lt;/p&gt;
&lt;h2 id="строка-на-которой-я-бы-сосредоточился"&gt;Строка, на которой я бы сосредоточился&lt;/h2&gt;
&lt;p&gt;В исходной статье говорится, что skill из локального репозитория, упакованный skill из внутреннего индекса и «&lt;strong&gt;быстрый inline-мост, который вы написали десять минут назад, — всё это подключается к одному и тому же провайдеру&lt;/strong&gt;».&lt;/p&gt;
&lt;p&gt;Именно это предложение выполняет всю реальную работу.&lt;/p&gt;
&lt;p&gt;Потому что именно здесь начинает проявляться поддерживаемость.&lt;/p&gt;
&lt;p&gt;Если команды могут смешивать:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;упакованные skills&lt;/li&gt;
&lt;li&gt;временные мосты&lt;/li&gt;
&lt;li&gt;skills из локального репозитория&lt;/li&gt;
&lt;li&gt;будущие замены&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;не переписывая каждый раз внутреннюю «сантехнику» агента, тогда у системы skills есть шанс масштабироваться в реальных организациях.&lt;/p&gt;
&lt;h2 id="почему-это-важно-даже-если-вы-больше-сфокусированы-на-net"&gt;Почему это важно, даже если вы больше сфокусированы на .NET&lt;/h2&gt;
&lt;p&gt;Даже несмотря на то, что этот пост специфичен для Python, я всё равно считаю этот паттерн достойным внимания, даже если вы в основном живёте в .NET.&lt;/p&gt;
&lt;p&gt;Почему? Потому что базовый вопрос шире, чем выбор языка:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;как skills развиваются между командами, не превращаясь в беспорядок?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Ответ редко сводится просто к «больше типов skills».&lt;/p&gt;
&lt;p&gt;Почти всегда дело в том, достаточно ли сильна модель композиции, чтобы эти типы skills могли чисто сосуществовать.&lt;/p&gt;
&lt;p&gt;Именно это, на мой взгляд, статья делает правильно.&lt;/p&gt;
&lt;h2 id="моё-мнение"&gt;Моё мнение&lt;/h2&gt;
&lt;p&gt;Даже если вы больше сфокусированы на стороне .NET, это всё равно полезный паттерн, за которым стоит наблюдать, потому что композируемость — это то, что определяет, останутся ли skills поддерживаемыми по мере распространения между командами.&lt;/p&gt;
&lt;p&gt;И как только команды начинают упаковывать, делиться и обменивать skills между репозиториями и внутренними экосистемами, эта композируемость становится намного важнее синтаксиса любого отдельного стиля написания.&lt;/p&gt;
&lt;p&gt;Оригинальный пост: &lt;a href="https://devblogs.microsoft.com/agent-framework/agent-skills-for-python-file-code-and-class-composed-in-one-provider/"&gt;Agent Skills for Python: File, Code, and Class – Composed in One Provider&lt;/a&gt;&lt;/p&gt;</content:encoded></item></channel></rss>