Далучайцеся да нашага Тэлеграм-канала
Папулярныя тэмы
AI (19)
ШІ (13)
js (11)
сумоўе js beginner (7)
сумоўе (6)
fun (5)
MCP (4)
Youtube (3)
сумоўе js (3)
2024 (2)
AWS (2)
Angular (2)
Event (2)
JSONP (2)
JavaScript (2)
LLM (2)
Prompts (2)
agents (2)
beginner (2)
docker (2)
http (2)
javascript (2)
loop (2)
other (2)
telegram (2)
беларускаямова (2)
вынікі (2)
каналы (2)
мова (2)
пераклад (2)
ASO (1)
Apple (1)
BF (1)
Bun (1)
CORS (1)
CSS (1)
CodeStars (1)
Copilot (1)
Deno (1)
EC2 (1)
ES6 (1)
Flux (1)
GitHub (1)
IOS (1)
JS (1)
JSON (1)
JSONB (1)
JSONL (1)
LangChain (1)
LangGraph (1)
MVP (1)
NodeJS (1)
NodeJS Gmail backend beginners (1)
Nodejs (1)
PWA (1)
Polotsk (1)
Promptdesigne (1)
Prompting (1)
RSS (1)
Ragneda (1)
React (1)
ReactNative (1)
SOP (1)
SQL (1)
SSR CSR js сумоўе (1)
Search (1)
Shortcuts (1)
Signal (1)
Skills (1)
SystemDesign (1)
Tailwind (1)
Telegram (1)
Threema (1)
VS (1)
Vector (1)
Vibe (1)
Windows (1)
Zed (1)
android (1)
angular (1)
architecture (1)
beginners (1)
belgeek (1)
cloudflare (1)
code (1)
composer (1)
context (1)
copilot (1)
css (1)
engineering (1)
gamedev (1)
hdd (1)
history (1)
interview (1)
ios (1)
it (1)
job (1)
js ssg сумоўе (1)
lacinka (1)
localhost ngrok тунэль (1)
models (1)
multiagents (1)
network (1)
news (1)
prompts (1)
react (1)
server (1)
socialmedia (1)
tools (1)
translations (1)
windows (1)
Абнаўленні (1)
Анімэ (1)
Артыкул (1)
БД (1)
Беларуская (1)
Беларусь (1)
Бяспека (1)
Вынікі (1)
Выявы (1)
Вядзьмар (1)
Гульні (1)
Каляндар (1)
Падарункі (1)
Токены (1)
абнаўленні (1)
бд (1)
дзень (1)
збоі (1)
кастамізацыя (1)
лаунчэры (1)
літаратура (1)
мадэлі (1)
маркетынг (1)
нараджэня (1)
планшэт (1)
праграмаванне парадыгмы (1)
практыка (1)
промпты (1)
раскладка (1)
рэпазіторыі (1)
селектары (1)
серыялы (1)
спам (1)
сумоўе js beginer (1)
сумоўе js beginner AJAX (1)
сумоўе практыка js (1)
сумоўе практыка js beginner (1)
тэлеграм (1)
цыклпадзей (1)

Bel-Geek - гэта адкрытая пляцоўка для публікацыі артыкулаў розных аўтараў на беларускай мове на свабодныя тэмы.

Перад тым як прыступіць да стварэння ўласнага артыкула, трэба аўтарызавацца. Калі ў вас няма акаунта, то трэба зарэгістравацца на сайце па спасылцы: https://bel-geek.com/register.

Далей трэба націснуць на тры кропкі ў шапцы сайта, каб з'явілася меню. Выбраць пункт "Стварыць артыкул", і перайсці на старонку рэдактара, ці скарыстацца спасылкай: https://bel-geek.com/editor/add

Пры стварэнні артыкула абавязкова трэба дадаць назву артыкула, імя аўтара ды тэгі ў адпаведныя палі формы, пажадана дадаць апісанне.

Напрыклад:

Як бачна на малюнку, з правага боку будзе панэль, на якой знаходзіцца прадагляд артыкула. З левага боку - рэдактар.

Важна!

Захоўвайце час ад часу свае артыкулы з дапамогай кнопкі "Захаваць" (працуем над аўтазахаваннем), каб выпадкова не згубіць напісанае. Таксама можна захаваць напісанае і адкласці работу з артыкулам на іншы дзень.

Калі вы ўжо вядзеце блогі ў іншых сацыяльных сетках, то дадавайце спасылкі на іх у сваіх артыкулах, каб чытачы маглі знайсці больш цікавай ім інфармацыі.

Калі артыкул будзе гатовы, трэба перавесці перамыкач над рэдактарам тэксту "Паказваць усім" у актыўнае становішча і націснуць кнопку "Захаваць".

PS. Калі вы ствараеце пераклад - то абавязкова пакідайце спасылкі на арыгінал.


Карысныя спасылкі, якімі можна карыстацца падчас напісання артыкулаў:

Мноства слоўнікаў: https://slounik.org/

Правапіс слоў у розных склонах і ліках: https://starnik.by/

Артыкул
LoveJS, 2023-08-06

17 верасня 2018 кампаніяй Apple была выпушчана чарговая IOS. Аднім з самых важных навядзенняў таго абнаўлення сталі Apple Shortcuts (ці проста Каманды), якія прыйшлі на змену Workflow, раней набытаму Apple. Яны дазваляюць аўтаматызіраваць руцінныя дзеянні і у прынцыпе з'яўляюцца карысным дадаткам, але карыстаецеся лі імі вы? Хутчэй за ўсё, не. Спадзяюся, наступны артул выправіць гэта.

Невялікая гісторыя

Гісторыя гэтага дадатку пачалася з MHacks Winter 2014, хакатона, мінулага 19 студзеня 2014 года. У ім сярод 249 праектаў быў праект чатырох студэнтаў, Вірала Патэла, Ніка Фрэя, Конрада Крамера і Ары Вайнштэйна, які перамог у намінацыі "Найлепшы дадатак для iOS".

11 снежня таго ж года Workflow выйшаў у App Store і ўжо ў 2015 годзе стаў лаўрэатам прэміі Apple Design Awards. З пачатку, кошт складаў 2.99$, але праз два гады, калі ўся каманда з дадаткам была набыта Apple, Workflow стаў бясплатным. Яшчэ праз год ён быў перайменаваны ў Apple Shortcuts і інтэграваны ў IOS, але ўсё раўно не з'яўляліся першвызначанымі. Такімі яны сталі толькі ў наступнай IOS. Далей Apple паступова абнаўляла дадатак разам з выхадам новых версій сістэмы. Так у IOS 14 былі дададзены тэчкі і падтрымка Apple Watch, у IOS 15 палепшаны рэдактар і версія для MacOS, у IOS 16 з'явіліся новыя дзеянні, у IOS 17 палепшаны інтэрфэйс, ў IOS 18 падтрымка Action Button, а ў IOS 26 інтэграцыя з ШІ і новы Liquid Glass.

Як карыстацца Apple Shortcuts

Цяпер, як выкарыстоўваць Каманды. Пасля запуску, мы карыстальнік бачыць тры катэгорыі знізу: "Хуткія каманды", "Аўтаматызацыя", "Галерэя".

У першай, знаходзяцца вашы каманды і каманды дадаткаў. У другой, налады запуску каманд пры пэўных абставінах. А у трэцяй, катэгорыі з камандамі, якія можна спампаваць. Пачну з першай. У ёй знаходзяцца з пачатку вашы каманды, а потым убудаваныя каманды дадаткаў. Таксама, як і у многіх іншых дадатках Apple ёсць бакавая панэль, якая адкрываецца пры націсканні на кнопку у верхнім левым вугле і змяшчайная тыя ж каманды, но ў больш структураваным выглядзе.

Каб стварыць новую каманду, трэба націснуць на плюс у верхнім правым вугле. Пасля гэтага адкрываецца рэдактар каманды, які падзяляны на дзве вобласці: палатно з блокамі і бібліятэка дзеянняў.

Другое можна разгарнуць на ўвесь экран, ці наадварот згарнуць да мінімуму, каб былі даступнымі кнопкі "назад", "наперад", "падрабязней", "падзяліцца" і "запусціць".

Перадзем да самаго працэсу стварэння каманды. Напрыклад, вам трэба адчыняць RSS каналы прама ў браўзеру. Можна зразумела спытаць, хто карыстаецца RSS ў 2026 годзе, але такія яшчэ ёсць. У Safari пры спробе адкрыць спасылку на RSS, браўзер прапануе ўсталяваць дадатак, для гэтага ў App Store, але навошта спампоўваць лішнія дадаткі, калі гэта трэба не заўсёды.

Для пачатку трэба стварыць новую каманду. Далей лепей адразу яе назваць. Для гэтага націскаем на цяперашнюю назву зверху пасярэдзіне, націскаем "перайменаваць" і уводзім новую назву.

Пасля гэтага, націскаем на значок побач з назвай і выбіраем патрэбны.

Цяпер трэба дадаць каманду на старонку экспарту, каб карыстальнік не ўвадзіў спасылку ўручную. Для гэтага націскаем кнопку "Падрабязней" і ўключаем "На старонцы экспарту". Пасля гэтага на палатне адразу з'яўляецца новы блок.

Выбіраем атрымаць уваходныя звесткі ад толькі URL адрасоў і калі няма ўваходных звестак – спыніць і адрэагаваць, каб каманду нельга было запусціць асобна. Далей трэба дадаць новае дзеянне. Для гэтага разгортваем спіс на ўвесь экран і шукаем патрэбны блок.

Тут я ненадоўга спынюся і раскажу больш падрабязней пра дадзены "спіс". Яго можна падзяліць на 4 часткі. У самым пачатку ідзе поле пошуку, націснуўшы на які можна знайсці дзеянне па слове. Далей ідуць наступныя катэгорыі: скрыпты (з галоўнымі элементамі: зменныя, спісы, слоўнікі, лічбы, даты і т.д.), налады, прылада (каб у асноўным атрымаць некаторыя звесткі), геапазіцыя, геапазіцыя, медыяфайлы, геапазіцыя, медыяфайлы, агульны доступ, дакументы і інтэрнэт. Трэцяе, галоўныя каманды, а дакладней: адправіць паведамленне, адкрыць дадатак і прайграць музыку. І апошняе, гэта – дзеянні па дадаткам. Вяртаючыся к нашай камандзе, нам патрэбна "Атрымаць аб'екты з RSS каналаў", якое знаходзіцца ў катэгорыі "Інтэрнэт".

Націскаем на дзеянне і яно аўтаматычна прымацоўваецца да першага блока, беручы з яго звесткі. Пасля атрымання аб'ектаў, іх трэба вывесці, таму пераходзім у скрыпты і выбіраем "Паказаць рэзультат".

Цяпер можна перайсці ў Safari, заціснуць спасылку, націснуць "Падзяліцца" і выбраць нашу каманду. У першы раз ў акне з’явіцца запыт на доступ і пасля невялікага часу ў яшчэ аднім акне адкрываецца атрыманы тэкст.

Цяпер калі мы скончылі каманду, ёй можна падзяліцца праз спасылку. Зараз я паказаў каманду, якую мы запускаем самастойна, але што рабіць, калі патрэбна уключаць каманду па ўмове. Для гэтага і ёсць другі раздзел, які называецца "Аўтаматызацыя". Каб стварыць новую "аўтаматызацыю", трэба націснуць на кнопку ў правым верхнім вугле, абраць умову, наладзіць запуск і дадаць саму каманду.

Так, я наладзіў аўтаскід статыстыкі сотавай сувязі кожны месяц у 0:00, а каб каманды мяне не даставалі апавяшчэннямі або пацверджаннямі, у мяне стаіць неадкладны запуск без апавяшчэння.

Лепшыя каманды (на маю думку)

Апошні, трэці раздзел уяўляе з сябе бібліятэку каманд. Яны тут адсартаваны па катэгорыях і хутчэй за патрэбныя для азнаямлення з магчымасцямі, чым для выкарыстання, хоць і тут такія ёсць. Яшчэ каманды можна знайсці на iosshortcut.com, але ён не абнаўляецца ўжо год. Мусіць галоўная крыніца каманд гэта сабрэдзіт r/shortcuts, дзе да гэтага часу публікуюць новыя каманды. З-за іх вялікай колькасці, па-сапраўднаму файныя экземпляры не заўсёды лёгка знайсці і вось пара з іх:

Пашыраны буфер

Адзін з галоўных мінусаў стандартнай клавіятуры – гэта адсутнасць захавання тэксту загадзя. Для гэтага і патрэбна гэта каманда (а дакладней дзве). Першая загружае тэкст з нататкі і капіруе абраны тэкст ў буфер, а другая кожнае 5 секунд правярае буфер і захоўвае новы тэкст. Пасля іх усталёўкі застаецца толькі дадаць іх ярлыкі ў панэлі кіравання, каб лёгка іх запускаць.

https://www.icloud.com/shortcuts/a4d452c3cef745b093ba3bbbead72a13

https://www.icloud.com/shortcuts/614a2e90a5e640f1b1438e44f8e40cf9

Нізкі ўзровень зарада

Проста паказвае апавяшчэнне пры нізкім узроўні зарада. Просты, але даволі карысны скріпт.

https://www.icloud.com/shortcuts/d37d6c68b2c24b7abb01b14bd92a7e89

Charge Time Rus

Паказвае прыблізны час зарадкі. На рускай, але можна самому перакласці на беларускую. https://www.icloud.com/shortcuts/97d0347d1e4c4fbd9c1cb82d6bf0b76f

На гэтым усё. Дзякуй за прагляд, падпісвайцеся на Тэлеграм канал і ўсяго добрага.

ios
IOS
Apple
Shortcuts
maksi, 2026-07-29

20 ліпеня 2026 года каманда адкрытага пратакола ACP (Agent Client Protocol) на чале з Бэнам Брандам (Ben Brandt, Zed Industries) апублікавала першы драфт версіі ACP v2.

Гэта найважнейшы крок у развіцці стандартаў узаемадзеяння паміж AI-агентамі і асяроддзямі распрацоўкі (IDE / кліентамі).


Што такое першая версія ACP (v1)?

Першая версія Agent Client Protocol (v1) была створана як адкрыты стандарт для злучэння AI-агентаў з рэдактарамі кода і IDE (напрыклад, Zed). У яе аснове ляжала некалькі ключавых прынцыпаў:

  • Адкрыты стандарт сувязі: Замест таго каб кожны рэдактар ці агент вынаходзілі ўласныя зачыненыя API, ACP v1 прапанаваў адзіную мову для перадачы каманд, паведамленняў і выклікаў інструментаў (tool calls).
  • Моцная працэдура пашырэння (RFD): Праз працэс RFD (Request for Discussion) супольнасць дадала ў v1 больш за 15 важных пашырэнняў без парушэння зваротнай сумяшчальнасці.
  • Мадэль дыялогавых хадоў (Turn-based): v1 грунтаваўся на простым і зразумелым цыкле: карыстальнік адпраўляе прампт ➔ агент апрацоўвае запыт і вяртае адказ.

Менавіта v1 дапамог аб'яднаць розныя AI-інструменты ў адзіную экасістэму. Аднак са з'яўленнем больш аўтаномных агентаў гэтая мадэль сутыкнулася з абмежаваннямі.


Чаму спатрэбілася версія v2?

Хоць ACP v1 прадэманстраваў выдатную гнуткасць дзякуючы працэсу RFD, некаторыя фундаментальныя магчымасці патрабавалі кардынальных зменаў (breaking changes), якія немагчыма было бязбольна рэалізаваць у межах старой структуры пратакола.

Па меры таго, як AI-агенты станавіліся больш аўтаномнымі і доўгапрацуючымі, жорсткая мадэль «запыт карыстальніка ➔ адказ агента» (turn-based approach) пачала абмяжоўваць іх магчымасці. Для падтрымкі фонавых працэсаў, складанай аркестрацыі і больш гнуткіх інтэрфейсаў спатрэбілася абнавіць фундаментальныя паводзіны пратакола.


5 галоўных тэм ACP v2

1. Выхад за межы дыялогавага «хода» (Moving Beyond the Turn)

У v1 апавяшчэнні ад агента звычайна прывязваліся да канкрэтнага ходу карыстальніка. У v2 апавяшчэнні session/update могуць вольна адпраўляцца ў любы момант сесіі.

  • Агент можа працягваць выконваць фонавую працу і дасылаць абнаўленні ў рэальным часе.
  • Адказ на прампт азначае падцвярджэнне прыняцця паведамлення, а не завяршэнне ўсёй працы.
  • Агент спецыяльна сігналізуе пра стан idle, калі ён гатовы да новага ўводу ад карыстальніка.

2. Уніфікаваны патчынг і струменевыя выклікі інструментаў (Message & Tool Streaming)

Паведамленні карыстальніка і агента, выклікі інструментаў (tool calls) і вывад тэрмінала цяпер маюць адзіныя семантычныя правілы абнаўлення па стейбл-ID:

  • Прапушчаныя палі застаюцца без зменаў.
  • null ачышчае поле, а новыя значэнні замяняюць старыя.
  • Часткі тэксту (chunks) далучаюцца да існуючых.

Выклікі інструментаў цяпер таксама падтрымліваюць струменевую перадачу (streaming), што пазбаўляе ад патрэбы буферызаваць і перадаваць увесь змест наноў пры кожнай змене.

3. Поўны перагляд працы з дыфамі (Diff Overhaul)

Замест простага супастаўлення oldText/newText прыходзяць структураваныя змены файлаў. Цяпер пратакол натыўна выражае:

  • Стварэнне, выдаленне, мадыфікацыю, перамяшчэнне і капіяванне файлаў.
  • Падтрымку бінарных і нетэкставых файлаў.
  • Апцыянальны git_patch для ідэальнага рэндэрынгу дыфаў у кліенцкіх рэдактарах.

4. Гнуткія запыты дазволаў (Flexible Permission Requests)

Запыты на дазвол дзеянняў вылучаныя ў асобныя структуры з уласнымі загалоўкамі (title), апісаннямі (description) і прадметам (subject). Гэта дазваляе ствараць зручныя запыты дазволаў для каманд тэрмінала або доступу да рэсурсаў, не змяняючы параметры самага выкліку інструмента.

5. Сумяшчальнасць наперад па змаўчанні (Forward Compatibility)

Усе enum-падобныя значэнні ў схеме цяпер могуць прымаць невядомыя варыянты з прэфіксам _ (напрыклад, для вендар-спецыфічных пашырэнняў). Гэта гарантуе, што новыя пашырэнні пратакола не будуць выклікаць памылак у старэйшых версіях кліентаў і агентаў.


Што гэта значыць для распрацоўшчыкаў?

  • Статус Draft: v2 знаходзіцца на стадыі абмеркавання і тэсціравання. Схема можа і будзе змяняцца на аснове фідбэку супольнасці.
  • Сцягі функцыянальнасці і узгадненне версій: Падтрымку v2 у прадакшэне варта хаваць за сцягамі функцыянальнасці (feature flags) і механізмам узгаднення версій (version negotiation).
  • Сумяшчальнасць з v1: Версія v1 застанецца папулярнай яшчэ доўгі час, таму распрацоўшчыкам SDK, агентаў і кліентаў рэкамендуецца падтрымліваць абедзве версіі паралельна.

Выснова

ACP v2 закладае трывалы фундамент для будучыні асінхроннай распрацоўкі з дапамогай AI. Пратакол вызваляе агентаў ад абмежаванняў адзінкавага дыялогавага ходу і робіць іх паўнавартаснымі аўтаномнымі напарнікамі ў IDE.

Далучыцца да абмеркавання драфта і пакінуць фідбэк можна ў афіцыйным рэпазіторыі на GitHub і праз матэрыялы v2 RFD.

AI
Zed
Admin, 2026-07-23

cover

Прывітанне, сябры!

Крыху распавяду вам пра інтсрумент які мы стварылі і карыстаемся самі.

Неяк нас крыху задзяўбло спрабаваць весці некалькі сацсетак адначасова - Адкрыць Telegram-канал, уставіць тэкст, аформіць спасылкі. Затым адкрыць Discord-сервер - там спасылкі выглядаюць інакш, трэба падправіць Markdown-разметку. Потым скапіяваць усё гэта ў X (Twitter) і Threads, дзе ліміты сімвалаў прымушаюць вас пакутаваць і сутаргава скарачаць кожны сказ. А калі вы працуеце ў камандзе, да гэтага дадаецца бясконцы абмен файламі, узгадненне чарнавікоў і пытанні кшталту: «А хто-небудзь ужо адправіў гэты пост у Твітэр?»

А сэрвісы якія ужо існуюць? Не, бо ... а 20 баксаў - гэта 20 баксаў.

Таум - калі вам гэта знаёма, вы дакладна зразумееце, чаму мы вырашылі стварыць Composer. Мы хацелі інструмент, які дазваляе напісаць тэкст адзін раз у Markdown і адным клікам адправіць яго на патрэбныя пляцоўкі. і самае галоўнае — мы хацелі зрабіць яго цалкам бясплатным, бяспечным і адкрытым.

У гэтым артыкуле мы падрабязна распавядзем, што ўмее наш інструмент, чаму мы абралі менавіта такую архітэктуру і як вы можаце разгарнуць яго на сваім серверы або самастойна скампіляваць дэсктопны дадатак для Windows, macOS ці Linux. Паехалі!


Чаму менавіта Composer? (І што ён дае людзям)

Мы не хацелі рабіць чарговы дарагі SaaS-сэрвіс па падпісцы з кучай непатрэбных функцый. Наша мэта — зручнасць, хуткасць і поўны кантроль над сваімі дадзенымі. Вось што Composer дае кожнаму карыстальніку:

  1. Markdown-рэдактар як адзіная крыніца праўды: Вы пішаце тэкст у адным акне. Вы можаце выкарыстоўваць чысты Markdown або пераключыцца ў зручны візуальны WYSIWYG-рэжым.
  2. Разумная адаптацыя фарматавання: Розныя сацыяльныя сеткі жывуць па сваіх правілах. Telegram патрабуе спецыфічны HTML, Discord разумее свой Markdown, а X і Threads любяць просты тэкст. Composer аўтаматычна канвертуе ваш зыходны тэкст пад патрабаванні кожнай платформы.
  3. Рэалістычны перадпрагляд (Preview): Больш ніякіх сюрпрызаў пасля публікацыі! Вы бачыце, як менавіта ваш допіс будзе выглядаць у кожнай выбранай сетцы, яшчэ да адпраўкі. Калі тэкст занадта доўгі, сістэма папярэдзіць вас або прапануе падзяліць яго на ланцужок паведамленняў.
  4. Поўная прыватнасць (Open Source): Праект распаўсюджваецца па ліцэнзіі MIT. Мы не збіраем вашы токены або паролі. Увесь зыходны код цалкам адкрыты і даступны на GitHub. Вы можаце бясплатна запусціць яго на нашым бэку(для дэсктоп дадатку) composer.bel-geek.com або разгарнуць цалкам лакальна.
  5. Гнуткая сумесная праца: Вы можаце ствараць працоўныя прасторы (Workspaces), запрашаць калег, даваць ім розныя правы доступу (напрыклад, толькі для рэдагавання або толькі для публікацыі ў канкрэтныя каналы) і планаваць пасты на будучыню.

Параўнанне з камерцыйнымі сэрвісамі автопостынгу

Калі вы пачнеце шукаць рашэнні для мультыпостынгу, то першымі ў пошуку з'явяцца папулярныя сэрвісы накшталт Buffer, Hootsuite, Later ці CoSchedule. Усе яны неблагія, але давайце паглядзім праўдзе ў вочы:

Функцыя / ПараметрBufferHootsuiteComposer
КоштБясплатна (абмежавана) або ад $6/мес за каналАд $99/месяц (няма бясплатнага тарыфу)Абсалютна бясплатна
Зыходны кодЗакрыты (Proprietary)Закрыты (Proprietary)Open Source (MIT)
Ліміт на каналыДа 3 каналаў на бясплатным тарыфеАд 10 каналаў (толькі платна)Ніякіх абмежаванняў
Захаванне дадзеныхНа серверах BufferНа серверах HootsuiteПад вашым кантролем (MongoDB або лакальна)
Калектыўная працаПлатна (ад $12/мес за канал)Платна (у дарагіх тарыфах ад $249/мес)Бясплатна (Workspaces без лімітаў)
Постынг у X і ThreadsАбмежаваны на бясплатным тарыфеТолькі на платных тарыфахБясплатна праз убудаваны браўзер

Чаму бясплатны Open Source лепш за камерцыйны SaaS?

  • Незалежнасць ад коштавай палітыкі: Сёння X (Twitter) робіць сваё API платным — і камерцыйныя сэрвісы мусяць падымаць кошты або цалкам адключаць падтрымку гэтай сеткі на танных тарыфах. Composer Desktop абыходзіць гэта дзякуючы працы праз лакальны браўзер.
  • Свабода выбару хостынгу: Вы не залежыце ад сервераў аднаго правайдэра. Калі іх сервер «ляжа», вы не зможаце зрабіць допіс. У выпадку з Composer вы можаце выкарыстоўваць наш гатовы сервер альбо за некалькі хвілін запусціць свой бэкенд і працаваць цалкам аўтаномна.
  • Чысты змест без «вадзяных знакаў»: Некаторыя сэрвісы на бясплатных тарыфах дадаюць у канцы вашых пастоў рэкламныя прыпіскі («via Buffer»). З Composer ваш кантэнт належыць толькі вам і публікуецца без лішніх брэндавых пазнак.

Вэб і дэсктоп: як гэта працуе пад капотам

Магчыма, вы спытаеце: «Чаму прылада складаецца і з вэб-сервера, і з дэсктоп-дадатку?» Тут крочыцца вельмі цікавае інжынернае рашэнне.

Справа ў тым, што розныя сацыяльныя сеткі маюць розныя ўзроўні адкрытасці:

  • Telegram і Discord: Гэтыя платформы маюць выдатныя, бясплатныя і адкрытыя API. Таму наша вэб-версія (бэк) працуе з імі напрамую праз серверных ботаў. Вы проста дадаеце токен бота ў налады працоўнай прасторы, і сервер сам адпраўляе паведамленні.
  • Threads і X (Twitter): Тут сітуацыя горшая. Афіцыйныя API альбо залішне абмежаваныя, альбо каштуюць шалёных грошай для звычайных карыстальнікаў. Каб вырашыць гэтую праблему і не прымушаць вас плаціць, мы стварылі Composer Desktop на базе Electron.

Дэсктопны дадатак працуе як лакальны памочнік. У яго ўбудаваны браўзер, у якім вы адзін раз аўтарызуецеся ў сваіх акаўнтах Threads і X. Дадатак рэгулярна звяртаецца да вашага сервера, забірае запланаваныя пасты і публікуе іх ад вашага імя прама праз браўзер. Важна: вашы cookies, паролі і сесіі ніколі не адпраўляюцца на сервер — яны застаюцца толькі на вашым кампутары.


Як разгарнуць уласны бэкенд (Self-hosting)

Калі вы хочаце поўнай незалежнасці ад вонкавых сэрвісаў, вы можаце разгарнуць уласную копію Composer. Для гэтага вам спатрэбяцца Git, база даных MongoDB, а таксама Node.js і Bun.

🛠️ Як усталяваць Node.js, npm і Bun на кампутар

Перад пачаткам пераканайцеся, што на вашай машыне ўсталяваныя неабходныя інструменты. Вось кароткае кіраўніцтва па іх усталёўцы для розных аперацыйных сістэм:

1. Усталёўка Node.js і менеджэра пакетаў npm

  • Windows і macOS: Спампуйце і запусціце афіцыйны інсталятар версіі LTS з сайта nodejs.org.
  • macOS (праз Homebrew): Калі ў вас усталяваны Homebrew, выканайце ў тэрмінале:
    bash
    1brew install node
  • Linux (Ubuntu/Debian): Усталюйце праз афіцыйны пакетны менеджэр:
    bash
    1sudo apt update
    2sudo apt install -y nodejs npm

2. Усталёўка Bun

Bun — гэта суперхуткае асяроддзе выканання JavaScript/TypeScript, якое мы выкарыстоўваем для працы і зборкі праекта.

  • macOS і Linux: Усталёўваецца адной камандай у тэрмінале:
    bash
    1curl -fsSL https://bun.sh/install | bash
  • Windows: Адкрыйце PowerShell ад імя адміністратара і выканайце:
    powershell
    1powershell -c "irm bun.sh/install.ps1 | iex"
    (Або праз пакетны менеджэр: winget install Oven-sh.Bun)

3. Усталёўка і запуск MongoDB

Бэкенд Composer патрабуе базу даных MongoDB для захавання карыстальнікаў, чарнавікоў і налад. Вы можаце разгарнуць яе рознымі спосабамі:

  • Лакальная ўсталёўка:
    • macOS (праз Homebrew):
      bash
      1brew tap mongodb/brew
      2brew install mongodb-community
      3brew services start mongodb-community
    • Windows / Linux: Спампуйце бясплатную версію MongoDB Community Server з афіцыйнага сайта і запусціце яе як службу.
  • Праз Docker (самы просты лакальны спосаб): Калі ў вас усталяваны Docker, вы можаце запусціць MongoDB адной камандай без неабходнасці ўсталёўваць базу наўпрост на кампутар:
    bash
    1docker run -d -p 27017:27017 --name composer-mongo mongo:latest
  • Воблачная база даных (MongoDB Atlas): Стварыце бясплатны кластар на mongodb.com/atlas і пазначце атрыманы адрас падключэння ў .env файле як MONGODB_URI.

Крок 1. Падрыхтоўка кода і залежнасцей

Вы можаце выкарыстоўваць як bun, так і npm для ўсталёўкі залежнасцей. Звярніце ўвагу: хоць пакеты можна ўсталёўваць праз npm install, для непасрэднага запуска скрыптоў бэкенду і зборкі дэсктоп-дадатку вам усё роўна спатрэбіцца ўсталяваны bun, бо ён выклікаецца ўнутрана ў файле package.json.

Клануем рэпазіторый і ўсталёўваем пакеты:

bash
1git clone https://github.com/bel-frontend/tg_discord_bot.git
2cd tg_discord_bot
3
4# Карыстайцеся Bun (рэкамендуецца):
5bun install
6
7# Або выкарыстоўвайце npm:
8npm install

Крок 2. Налада атачэння

Стварыце файл .env на аснове прыкладу:

bash
1cp .env.example .env

Адкрыйце яго і пазначце свае налады:

env
1PORT=3000
2JWT_SECRET=прыдумайце-доўгі-выпадковы-радок
3MONGODB_URI=mongodb://localhost:27017/composer
4PUBLIC_BASE_URL=http://localhost:3000

Крок 3. Запуск

Каб запусціць праект у рэжыме распрацоўкі (з гарачай перазагрузкай):

bash
1# Праз Bun (рэкамендуецца):
2bun run dev
3
4# Праз npm:
5npm run dev

Каб запусціць праект у прадукцыйным рэжыме (Production):

bash
1# Праз Bun (рэкамендуецца):
2bun run start
3
4# Праз npm:
5npm run start

Таксама даступны запуск праз Docker:

bash
1docker compose up -d --build

Пасля гэтага ваш уласны бэкенд гатовы і будзе чакаць запытаў на порце 3000 (або 3007 при запуску праз Docker Compose).


Самастойная зборка дэсктоп-дадатку для Windows, macOS і Linux

Мы лічым, што карыстальнікі павінны мець магчымасць сабраць дэсктопны кліент самастойна з зыходнага кода, каб быць на 100% упэўненымі, што ў ім няма ніякіх «закладак» ці трэкераў.

Зрабіць гэта вельмі проста. Вось пакрокавая рэцэптура для любой папулярнай аперацыйнай сістэмы.

Што спатрэбіцца:

  • Усталяваны Node.js і Bun.
  • Кланаваны рэпазіторый праекта (гл. крок 1 у інструкцыі па бэкендзе).

Пакрокавы працэс зборкі:

  1. Перайдзіце ў каталог дэсктоп-дадатку:

    bash
    1cd desktop
  2. Усталюйце ўсе неабходныя пакеты:

    bash
    1# Праз Bun (рэкамендуецца):
    2bun install
    3
    4# Або праз npm:
    5npm install
  3. Запусціце праект у рэжыме распрацоўкі (калі хочаце проста праверыць працу): Калі ваш бэкенд працуе на http://localhost:3000, запусціце:

    bash
    1# Праз Bun:
    2COMPOSER_DESKTOP_DEV_URL=http://localhost:3000 bun run dev
    3
    4# Праз npm:
    5COMPOSER_DESKTOP_DEV_URL=http://localhost:3000 npm run dev

    Або проста выкарыстоўвайце агульную dev-каманду з кораня рэпазіторыя:

    bash
    1bun run desktop:dev # ці npm run desktop:dev
  4. Запусціце кампіляцыю інсталятара: Выканайце з кораня праекта:

    bash
    1bun run desktop:dist # ці npm run desktop:dist

    Альбо непасрэдна з тэчкі desktop:

    bash
    1bun run dist # ці npm run dist

Што вы атрымаеце на выхадзе?

Інструмент electron-builder аўтаматычна распазнае вашу аперацыйную сістэму і створыць гатовы інсталятар у тэчцы desktop/release/:

  • На macOS: вы атрымаеце пакет .dmg і архіў .zip.
  • На Windows: будзе створаны класічны інсталятар .exe (NSIS).
  • На Linux: дзякуючы нашым наладкам у package.json, вы атрымаеце ўніверсальны .AppImage і пакет .deb для Debian/Ubuntu.

Маленькая парада: Звярніце ўвагу, што для кампіляцыі пад macOS вам спатрэбіцца камп'ютар Mac, бо сабраць .dmg на Windows ці Linux стандартнымі сродкамі не атрымаецца.

🚀 Першы запуск і падключэнне да бэкенду (вэб-сервера)

Пры першым запуску скампіляванага або запушчанага ў распрацоўчым рэжыме Composer Desktop, дадатак папросіць вас увесці адрас сервера (Server URL).

Тут у вас ёсць два зручныя варыянты:

  1. Калі вы не хочаце разгортваць уласны бэкенд: Вы можаце выкарыстоўваць наш афіцыйны хостынг. Проста пазначце адрас нашага агульнага і цалкам бясплатнага сервера:

    text
    1https://composer.bel-geek.com

    Пасля гэтага зарэгіструйцеся там або ўвайдзіце пад сваім акаўнтам і карыстайцеся ўсімі магчымасцямі дэсктопнага памочніка (уключаючы лакальны постынг у X і Threads) без неабходнасці наладжваць базу даных MongoDB ці Docker.

  2. Калі вы разгарнулі свой бэкенд: Пазначце адрас вашай уласнай копіі сервера (напрыклад, http://localhost:3000 ці https://composer.yourdomain.com).


Далучайцеся да супольнасці!

Мы стварылі Composer для сябе і для ўсіх, хто стаміўся ад руціны і хоча мець пэўную свабоду ў кіраванні сваімі публікацыямі.

Паспрабуйце працуючую версію на composer.bel-geek.com прама зараз (даступныя тг боты і дыскорд) — гэта бясплатна і не патрабуе ніякай складанай наладкі. А калі вам спадабалася ідэя, заходзьце на наш GitHub, стаўце зорачкі, стварайце Issue з вашымі прапановамі і дасылайце Pull Request-ы. Давайце рабіць гэты праект лепш разам!

Дзякуй за ўвагу і прыемнага карыстання!

composer
Admin, 2026-07-17

Тэлеграм ніколі не адрозніваўся адсутнасцю інфанагодаў вакол яго, але цяперашні тыдзень ўжо пачаўся з некалькіх цікавых падзей аб якіх і будзе гэты артыкул.

Збоі t.me

13 ліпеня ў 23:29 Тэлеграм канал "Код Дурова" выклалі наступны пост (толькі на рускай):

Кароткі домен Telegram адключылі на глабальным узроўні. Спасылкі Telegram фармату t.me ў браўзерах перасталі працаваць па ўсім свеце, выявіў «Код Дурова». Домен фактычна выключылі з сістэмы DNS на ўзроўні рэестра доменнай зоны .me. У дадатку спасылкі гэтага фармату працягваюць працаваць. Што адбылося і хто менавіта абмежаваў працу домена: https://kod.ru/t-me-perestal-rabotat

Незадоўга да гэтага ў базе DNS у t.me з'явіўся статус serverHold, які азначае, тое што домен часова адключаны з DNS па рашэнні рэгістратара.

У хуткім часе спасылкі у дадатку Telegram былі заменены на telegram.me па зразумелым прычынам. Не гледзячы на гэта, спасылкі выгляду t.me ўсё яшчэ працавалі ўнутры самога тэлеграма. Ўжо ў адну гадзіну 9 хвілін наступнага дня Павел Дуроў у X звярнуўся да doMEn, афіцыйнага рэгістратара доменнай зоны .me з просьбай вырашыць праблему.

У 13:12 ён адказаў наступнае:

Дзякуй за цярпенне! Сайт t.me быў прыпынены з-за патрабаванняў OFAC, але цяпер зноў працуе.

Як аказалася, раней (13 ліпеня) Мінфінам ЗША ў санкцыйны спіс была уключана спасылка на адзін з тэлеграм каналаў ліквідаванага ВПН сэрвісу. Па памылцы doMEn заблакіравала ўвесь домен, які быў у спасылцы. Канал Telegram выдаліў. Зараз t.me і ўсе спасылкі з ім працуюць штатна.

Новаўвядзенні

Ўвечары 14 ліпеня пасля аднаўлення працы t.me выйшла буйное абнаўленне Telegram. Вось галоўныя новаўвядзенні:

Згуртаванні

На мой погляд, галоўным новаўвядзеннем гэтага абнаўлення з'яўляецца Згуртаванні. Гэта функцыя дазваляе аб'ядноўваць суполкі, каналы і боты. Раней з падобнага былі толькі Тэмы ў суполках, але яны не былі асобнымі чатамі з-за чаго іх нельга было наладжваць, акрамя назвы і аватара (напрыклад: абмяжоўваць адпраўку паведамленняў у пэўных тэмах). Зараз ж кожны аб'ект згуртавання з'яўляецца асобным элементам.

З цікавага, суполку з тэмамі можна дадаць у згуртаванне, пасля чаго атрымаецца чат у чаце ў чаце. Так как гэта абсалютна новая функцыя, працэс стварэння суполкі ў згуртаванні моцна адрозніваецца. Для пачатку трэба стварыць самую звычайную суполку (ці канал). Калі яна створана, або яна ўжо існуе, трэба зайсці ў яе налады, прагартаць да нізу і націснуць на "Дадаць у згуртаванне". Пасля гэтага стварыць ці абраць ўжо існуючае згуртаванне і абраць бачнасць (Бачны – для ўсіх удзельнікаў, Схаваны – для кіраўнікоў і асобных удзельнікаў). Яшчэ можна абраць, як будуць выглядаць чаты (як адзін, ці як асобныя), але з галоўнага – гэта ўсё.

Пашыраны тэкставы рэдактар

Быў дададзены новы тэкставы рэдактар з падтрымкай загалоўкаў, табліц, спісаў, цытат, кода, малюнкаў ўнутры паведамлення і зразумела ШІ. Раней такое было даступна толькі для ботаў. Паведамленні перастаюць выглядаць, як паведамленні і гэта на мой погляд, вельмі файна. Жаль толькі, што гэта новаўвядзенне даступна толькі ўдзельнікам з Premium, але распрацоўшчыкам таксама патрэбна на штосьці жыць.

Нябачныя паведамленні ад ботаў

Цяпер можна пытаць ботаў у суполках і ні хто, не убачыць, ні ваша паведамленне, ні адказ бота. Толькі трэба праверыць стаіць лі значок нябачнасці, каля каманды.

Абнаўленне GIF

Раней, 7 мая быў дададзены пошук стыкероў на 36 мовах з дапамогай Ш.І. Зараз прыйшла чарга і GIF. Цяпер больш за 350 мільёнаў GIF можна шукаць словамі на тых жа мовах. Telegram працягвае развівацца і гэта не можа не радаваць. Гэта сацсетка адрозніваецца ад іншых не толькі сваёй канфідэнцыяльнасцю, але і тым што ён не баіцца мяняцца. Дзякуй, за тое што прачыталі артыкул. Мой Telegram канал: https://t.me/maksi_tg. І ўсяго добрага.

telegram
абнаўленні
збоі
maksi, 2026-07-16

Невялікі водступ: гэта мой першы артыкул, так што ён можа быць няпэўна расплывістым, ці занадта занудна, але я спадзяюся, што ён ўсё роўна вам спадабаецца.

Пачну с пытання: дзякуючы чаму любяць android? Некаторыя скажуць, дзякуючы разнастайнасцю устройств на якіх ён стаіць, іншыя з-за большой колькасці дададкаў, якія можна ўсталяваць нават з неафіцыйных крыніц, але няпэўна галоўны плюс андроіда — гэта магчымасць кастамізацыі. Лаунчэры дазваляюць моцна змяніць выгляд сістэмы і таму в Google Play іх так шмат. У гэтым артыкуле я раскажу пра самыя файныя, ці цікавыя дадаткі, знойдзеныя мной.

1. Smart Launcher 6

Мусіць самы наладжвальны лаунчэр – гэта Smart Launcher 6. В Google Play ён мае 4.6 зоркі і цалкам заслужана. Наладжваецца ён, як звычайна, вельмі проста. Таксама як у многіх іншых лаунчэрах, гэты падзяляны на галоўны экран, старонку дадаткаў і старонку пошуку. Па змаўчанні дадаткі ідуць па алфавіце, але іх можна адсартаваць па катэгорыях, што можа камусьці аблегчыць жыццё. Пасля уключэння катэгорый на старонцы дадаткаў, унізе з'яўляецца панэль, раздзяляльная ўсе дадаткі на кантакты, інтэрнэт, медыя, прылады і налады. Без сартавання З сартаваннем К гэтым 5 катэгорыям яшчэ можна дадаць сваі. І ўжо тут можна зразумець о гіганцкіх магчымасцях кастамізацыі. Па адчуваннях у гэтым лаўнчар змяняць можна практычна ўсё. Пачну з галоўнага экрана. Не буду заставацца на шпалерах, бо гэта даволі банальная рэч, якая зроблена, як і ў іншых. Першае адрозненне ад майго стандартнага лаунчэра – гэта налады тэм. І калі я казаў, што можна змяніць практычна ўсё, я не хлусіў, таму тут можна наладзіць: форму іконак, шрыфт, анімацыя адкрыцця дадатку, колер фону старонкі дадаткаў і пошуку і так далей. Але толькі на агульнай тэме кастамізацыя не сканчваецца. Таксама можна рэдагаваць іконкі, а дакладней змяняць назву, вокладку, а таксама прызначыць дзеянне на жэст (з бясплатнага толькі падвойны націск). Так я устанавіў адключэнне экрана на налады. З вокладкай узніклі некаторыя праблемы. Справа ў тым, што акрамя усталёўкі свайго фота іншыя налады даступныя ў Icon Pack Studio (дадатку таго ж распрацоўніка). Таму для поўнай кастамізацыі, лепш спампаваць і гэты дадатак. Вось такая "хакерская" тэма ў мяне атрымалася, дзякуючы Smart Launcher 6 + Icon Pack Studio + Matrix Live Wallpaper. Галоўны экран Старонка дадаткаў І знова гэта яшчэ не ўсё. З цікавага, таксама ёсць Page manager, які дазваляе змяняць размяшчэнне старонак. Па змаўчанні галоўны экран знаходзіцца па сярэдзіне, старонка дадаткаў унізе, старонка пошуку зверху, а стужка цікавасцяў злева. Стужка цікавасцяў – гэта старонка з rss навінамі на якія вы падпісаны, але не гледзячы на файную ідэю, амаль ўсе крыніцы у мяне не спрацавалі. Мусіць галоўны мінус гэтага лаунчэра – гэта некаторыя абмежаванні бясплатнай версіі, але нават з імі, можна спакойна карыстацца гэтым дадаткам.

2. Niagara Launcher

Галоўны экран Калі мінулы лаунчэр быў раем для тых, хто любіць наладжваць усё пад сябе, то Niagara Launcher прытрымліваецца больш мінімалістычнага падыходу. У ім ёсць таксама галоўны экран, які тут называецца выбраныя. З пачатку я думаў, што ён мае абмежаванне на даданне, але на жаль 4-8 дадаткаў – гэта толькі ўсяго рэкамендацыя. Так я змог дадаць усе сваі дадаткі, а таксама некалькі ярлыкоў (якія дарэчы таксама падтрымліваліся ў Smart Launcher). Старонка пошуку уяўляе з сябе стужку з адсартаванымі дадаткамі. Перасоўвацца па ёй можна, праводзячы пальцам злева зверху ўніз, ці наадварот. старонка пошуку Старонку пошуку адчыняеца, пралістаў прымацаваныя дададкі ды нізу. Па гэтай прычыне, лепш ўсяго не мацаваць ўсе спампованыя дададкі, як я :). На яшчэ адно маё здзіўленне, на гэтым персаналізацыя не сканчваецца. Пасля невялікага агляду, пачынае катацца, што Niagara не моцна адстае ад Smart Launcher. Зразумела, аб прызначэнні дзеянняў на жэсты і гаворкі не ідзе, але змена назвы і вокладкі іконка ўсё роўна прысутнічае. Яшчэ было б вельмі страшна калі б не было сваёй разыначкі. Такою я лічу наступную асаблівасць. Пасля націску у меню праграмы сярод пунктаў ёсць дадаць у катэгорыю. У ім ёсць яшчэ 3 пункта (катэгорыі). Першае – гэта музычныя дадаткі. Пасля выбару гэтыя дадаткі будуць з'яўляцца пасля падлучэння навушнікаў. Няпэўна, бо з-за гэтую функцыю трэба купіць падпіску. Другое, гэта скрытыя. Працуе гэта, як няшмат не так, як у мінулым. Калі ў ім была асобная тэчка, то тут проста дадаткі перастаюць паказвацца сярод іншых і застаюцца толькі ў пошуку. І нарэшце апошні трэці пункт - гэта тэчка. тэчка У адрозненні ад тэчак у многіх іншых лаунчэрах, тут яна не запаўняе ўвесь экран, а ўсплывае з-за чаго і атрымала назву pop-up folder. Яшчэ у яе можна змясціць віджэты, але знова для гэтага патрэбна падпіска. Апошняе – гэта тое, што як і ў Smart Launcher, Niagara Launcher дазваляе змяняць колер тэмы.

Канец

Вось і сканчваецца гэты артыкул. На мой погляд, галоўнае адрозненне гэтых дзвюх лаунчэрах у тым, што пасля усталёўкі Smart Launcher вабіць сваімі магчымасцямі з-за чаго яго так і хочацца памяняць. Niagara Launcher ж прыцягвае к сабе сваёй прастатой, якая ўжо ёсць па змаўчанні. Але можа быць гэта толькі мае адчуванні ад выкарыстання гэтых двух дадаткаў. Вось і ўсё. Калі вам раптам было цікава, то я можа быць выпушчу працяг. Калі вам спадабалася, пакіньце каментарый, бо не важна, будзе ён з пахвалой ці крытыкай, гэта ўсё роўна будзе файна. Усяго добрага.

android
планшэт
лаунчэры
кастамізацыя
maksi, 2026-07-13

Вялікі лічбавы зыход: Як сучасныя сацсеткі змяняюць фармат і дзе шукаць новыя аазісы

Уявіце сабе ўтульную гарадскую кавярню. У куце шэпчуцца закаханыя, за суседнім сталом мастакі спрачаюцца пра новы кірунак у жывапісе, а барыста ведае кожнага госця па імені і гатуе каву менавіта так, як вы любіце. Гэта прастора сустрэч, дзе нараджаюцца ідэі, дзе пануе атмасфера даверу і прыналежнасці.

А цяпер уявіце, што ўладальнік кавярні вырашае максімалізаваць прыбытак. Спачатку ён затыкае вокны рэкламнымі банэрамі. Потым наймае зазывал, якія крычаць вам у вушы нават тады, калі вы спрабуеце пагаварыць з сябрам. Затым ён прыбірае сталы і прымушае ўсіх стаяць у чарзе, дзе кожнаму ў рукі суюць флаеры з таннай касметыкай. Нарэшце, каб пачуць свайго суразмоўцу, вам прапануюць купіць VIP-падпіску на «цішыню». Кавярня ператварылася ў шумны, брутальны гандлёвы цэнтр, адкуль хочацца збегчы пры першай жа магчымасці.

Гэты сцэнарый паўтараецца з кожнай буйной сацыяльнай сеткай нашага часу. Працэс іх ператварэння ў лічбавыя пусткі канадскі пісьменнік Коры Дактароў назваў трапным і горкім тэрмінам - «эншытыфікацыя» (enshittification). Нашы лічбавыя дамы больш нам не належаць. Стомленасць ад бясконцага шуму і маніпуляцый прымушае нас шукаць выйсце, але каб знайсці яго, трэба зразумець саму прыроду гэтага працэсу.


Анатомія лічбавага раздражнення

На пачатку свайго існавання сацыяльныя сеткі трымаліся на жывых людзях. Раннія версіі папулярных платформаў напаўняліся шчырымі думкамі, фотаздымкамі сяброў і суполкамі па інтарэсах. Абмежаванасць чалавечых рэсурсаў была натуральным фільтрам: чалавек фізічна не мог вырабляць кантэнт тонамі, таму інфармацыя мела каштоўнасць.

Сёння гэты бар'ер цалкам знік. З прыходам генератыўнага штучнага інтэлекту кошт стварэння інфармацыйнага шуму знізіўся да нуля. Нашы стужкі аказаліся затопленыя сінтэтычным кантэнтам, ботам і штучнымі рэкамендацыямі. Нават кіраўніцтва папулярных фотаплатформ адкрыта прызнае, што значная доля таго, што мы бачым, цяпер фармуецца не нашымі сябрамі, а алгарытмамі.

Праблема сучасных платформаў у тым, што іх бізнес-мадэль пабудаваная на продажы нашай увагі рэкламадаўцам. А найлепшы спосаб утрымаць чалавека перад экранам - выклікаць у яго моцныя эмоцыі: гнеў, трывогу ці абурэнне. Алгарытмы сутыкаюць карыстальнікаў ілбамі, падымаючы ў топ самыя таксічныя дыскусіі, каб павялічыць час знаходжання на сайце. Гэта сістэмная праблема буйных цэнтралізаваных пляцовак.


Лічбавыя бункеры: Чаму мы выбіраем Discord

Шукаючы спакою і камфортных зносін, карыстальнікі пачалі пераходзіць у закрытыя і паўпрыватныя прасторы. Яркім прыкладам гэтага стаў Discord. Першапачаткова створаны як інструмент для геймераў, ён прапанаваў зусім іншую мадэль: асобныя серверы, утульныя віртуальныя пакоі са сваімі правіламі і супольнасцямі.

Discord вярнуў нам адчуванне «лямпы» і бяспекі. Для мільёнаў карыстальнікаў ён стаў ідэальным ратаваннем: тут няма глабальных рэкламных алгарытмаў, якія вырашаюць, што вам чытаць, а мадэрацыяй займаюцца самі ўдзельнікі суполкі, якія хутка выдаляюць спам і ботаў.

З іншага боку, гэты зыход паказаў і пэўныя выклікі для агульнай культуры інтэрнэту - так званую праблему закрытага вебу (Gated Web).

Калі суполкі хаваюцца ў Discord ці прыватныя Telegram-каналы, карысныя веды, інструкцыі і глыбокія дыскусіі аказваюцца заблакаванымі ўнутры прыватных сервераў, недасягальных для пошукавых сістэм. Грамадскі інтэрнэт паступова страчвае якасны кантэнт, а каштоўныя веды распадаюцца на ізаляваныя архіпелагі. Да таго ж, гэтыя серверы ўсё яшчэ знаходзяцца на платформе адной прыватнай карпарацыі, якая кантралюе ўсе дадзеныя. Але як часовы прытулак і інструмент камунікацыі Discord выдатна вырашае праблему алгарытмічнага шуму.


Сутыкненне філасофій: Федэрацыя і альтэрнатыўныя пратаколы

Каб сумясціць адкрытасць інтэрнэту і бяспеку карыстальнікаў, распрацоўшчыкі прапанавалі канцэпцыю дэцэнтралізацыі. Яе мэта - зрабіць сацыяльныя сеткі падобнымі да электроннай пошты, дзе няма аднаго ўладальніка ці цэнтральнага офіса, але ўсе могуць свабодна размаўляць паміж сабой.

Выдатным прыкладам з'яўляецца Mastodon, які працуе на адкрытым пратаколе ActivityPub. Калі папулярны сёння X (Twitter) - гэта гіганцкі мегаполіс з алгарытмічнай стужкай, дзе правілы дыктуе адзін чалавек, то Mastodon - гэта саюз вольных гарадкоў. У кожнага з іх свой мэр і свае правілы. Гэта вельмі добрая платформа, дзе няма рэкламы і рэкламных алгарытмаў, а стужка навін строга храналагічная. Вы бачыце толькі тое, што выбралі самі, а лакальная мадэрацыя дазваляе ствараць камфортныя прасторы для абмеркавання любых тэм.

Іншы падыход прапануе Bluesky, які дазваляе карыстальнікам самастойна выбіраць і наладжваць алгарытмы стужкі навін (Algorithmic Choice). Гэта дае магчымасць кіраваць сваёй увагай без неабходнасці пераезду на іншы сервер.

Існуюць і больш радыкальныя праекты, такія як Nostr або Farcaster, якія будуюць сеткі на базе матэматычных правілаў і лічбавых ключоў. Яны забяспечваюць поўную незалежнасць карыстальніка ад любых сервераў і адміністратараў, хоць пакуль і застаюцца складанымі для звычайных карыстальнікаў з-за тэхнічнага парогу ўваходу і праблем са спамам.


Выйсце праз вяртанне да чалавечага маштабу

Магчыма, вырашэнне праблемы дэградацыі сацсетак ляжыць не ў змаганні з глабальнымі карпарацыямі, а ў прапанове іншых падыходаў, якія змяняюць сам маштаб нашых лічбавых зносін. Чалавечы мозг біялагічна не прыстасаваны да камунікацыі з мільярдамі незнаёмцаў адначасова. Мы эвалюцыянавалі ў невялікіх групах, і таму вяртанне да чалавечага маштабу - гэта натуральны шлях аздараўлення лічбавай прасторы.

Адным з такіх падыходаў з'яўляецца стварэнне ўласных невялікіх сервераў (напрыклад, на базе Pixelfed - дэцэнтралізаванага аналага Instagram) для вузкага кола людзей: ад 20 да 50 сяброў, калег або сям'і.

Што гэта дае?

  • Спакойныя і шчырыя зносіны: Заходзячы на такі сервер, вы бачыце толькі жыццё блізкіх вам людзей, без рэкламы, пагоні за статусам і таксічных спрэчак у каментарах.
  • Поўны кантроль над прыватнасцю: Вашы сямейныя архівы і фатаграфіі захоўваюцца там, дзе вы вызначылі, і не выкарыстоўваюцца карпарацыямі для навучання ШІ.

Безумоўна, гэты шлях патрабуе адказнасці: нехта павінен сачыць за працай сервера, рабіць бэкапы і аплачваць невялікі хостынг. Гэта не прызначана для тых, хто хоча быць камерцыйным блогерам. Але як інструмент для захавання блізкіх сувязей гэта працуе выдатна.


Высновы

Сённяшнія змены ў інтэрнэце - гэта не вайна супраць буйных платформ, а пошук альтэрнатыўных шляхоў. Спробы схавацца ў Discord, пераезд у Mastodon ці стварэнне ўласнага невялікага сервера - усё гэта розныя варыянты рашэння адной і той жа праблемы: як зрабіць лічбавую прастору больш чалавечнай.

Будучыня сацыяльных сетак не абавязкова павінна быць маналітнай і алгарытмічнай. Дзякуючы новым тэхналогіям і пратаколам, мы атрымліваем выбар. І гэты выбар дазваляе нам вярнуць інтэрнэт да яго першапачатковай мэты - быць зручным, бяспечным і прыемным сродкам сувязі паміж жывымі людзьмі.

AI
socialmedia
Admin, 2026-05-29

Здаецца, што штучны інтэлект здольны на ўсё. Вы проста апісваеце задачу, ідзеце піць каву, а па вяртанні разлічваеце атрымаць гатовы код. Але рэальнасць іншая: калі даручыць AI-агенту занадта шмат, ён хутка губляе фокус, забываецца на першапачатковыя патрабаванні і пачынае прыдумляць тое, чаго вы ўвогуле не прасілі. У выніку замест вырашэння задачы вы марнуеце час на расшыфроўку таго, што ён напісаў.

Каб атрымаць якасны вынік, працу AI трэба арганізоўваць — гэтак жа, як вы арганізуеце сваю ўласную. У VS Code для гэтага існуюць два інструменты: Handoffs (Перадачы) і Subagents (Сабагенты). Яны дапамагаюць разбіць вялікі хаос на кіраваныя працэсы. Давайце разбяромся, як менавіта.


1. Handoffs: Аўтаматызуем

Уявіце сітуацыю: вы просіце агента спланаваць архітэктуру, а потым напісаць код. Ён пачынае выдатна, выбудоўвае лагічны план. Але на этапе напісання кода раптам цалкам яго ігнаруе і робіць усё па-свойму. Каб пазбегнуць гэтага, вам трэба неяк спыняць яго, правяраць прамежкавы вынік і толькі потым дазваляць працягваць працу.

Тут на дапамогу прыходзяць Handoffs. Гэты падыход пабудаваны на паслядоўнай працы з паўзамі для праверкі. Замест таго каб дазваляць агенту рабіць усё і адразу, вы разбіваеце задачу на этапы. Адзін агент выконвае сваю частку працы, спыняецца і чакае вашага пацверджання перад тым, як перадаць кантэкст наступнаму. Гэта дае вам магчымасць своечасова ўносіць праўкі.

Напрыклад, першы агент можа стварыць падрабязны план. Вы яго вычытваеце, выпраўляеце памылкі ў логіцы і адным націскам кнопкі перадаяце ўзгоднены план другому агенту, які ўжо непасрэдна піша код. Ці яшчэ адзін варыянт — распрацоўка праз тэставанне (TDD), калі адзін агент піша тэсты, а другі, атрымаўшы іх, піша код, які гэтыя тэсты пройдзе.

Як гэта наладзіць

Кіраванне адбываецца праз frontmatter — блок налад у пачатку markdown-файла агента. Вы дадаяце секцыю handoffs, дзе пазначаеце, да якога агента пяройдзе размова і з якім промптам.

yaml
1---
2description: Стварэнне плана
3tools: ['search', 'web']
4handoffs:
5  - label: Пачаць распрацоўку
6    agent: implementation
7    prompt: План зацверджаны. Цяпер напішы код згодна з ім.
8    send: false # Калі true, промпт адправіцца без вашага дазволу. Лепш пакінуць false, каб захаваць кантроль.
9---

Пасля таго як першы агент сканчае адказ, у чаце з'яўляецца кнопка з назвай label (напрыклад, "Пачаць распрацоўку"). Вы націскаеце на яе, і кантэкст аўтаматычна перанакіроўваецца да наступнага агента, а загадзя падрыхтаваны промпт ужо чакае ў полі ўводу.


2. Subagents: Паралельная праца без страты кантэксту

Часта для выканання задачы агенту трэба прааналізаваць шмат пабочнай інфармацыі — напрыклад, прачытаць дакументацыю новага API. Ён загружае ўсё гэта ў свой кантэкст і хутка забываецца, якую менавіта задачу вы яму паставілі першапачаткова, бо аб'ём лішняй інфармацыі проста выцесніў галоўнае.

У такіх выпадках варта выкарыстоўваць Subagents. Калі Handoffs — гэта пра паслядоўнасць і кантроль, то сабагенты — пра дэлегаванне і ізаляцыю. Замест таго каб галоўны агент рабіў усё сам, ён стварае вузкаспецыялізаванага памочніка (сабагента) для канкрэтнай задачы. Гэты памочнік ідзе, вывучае дакументацыю і вяртае толькі кароткую выснову. Асноўны кантэкст галоўнага агента застаецца чыстым.

Гэта ідэальна падыходзіць для папярэдняга аналізу кода, калі сабагент ідзе глядзець, як у праекце рэалізавана аўтарызацыя, і вяртае кароткую даведку. Ці для паралельных праверак: галоўны агент можа адначасова запусціць некалькіх сабагентаў, каб адзін шукаў уразлівасці, другі — невыкарыстаныя зменныя, а трэці ацэньваў прадукцыйнасць.

Як гэта наладзіць

Каб сабагенты працавалі, патрэбны як мінімум два файлы: для галоўнага агента і для самога сабагента.

Крок 1. Стварэнне сабагента (напрыклад, reviewer.agent.md): Каб ён не замінаў вам у агульным спісе агентаў, яго варта схаваць з дапамогай user-invocable: false. Тут таксама зручна задаць больш танную і хуткую мадэль.

yaml
1---
2name: Code Reviewer
3user-invocable: false # Хавае агента з меню, ён даступны толькі іншым агентам.
4model: ['Claude Haiku 4.5'] 
5tools: ['read', 'search'] # Толькі бяспечныя інструменты, каб пазбегнуць выпадковых змен.
6---
7
8Твая задача — прааналізаваць код і знайсці ў ім лагічныя памылкі. Нічога не рэдагуй, толькі напішы справаздачу.

Крок 2. Стварэнне галоўнага агента (напрыклад, techlead.agent.md): Галоўнаму агенту трэба даць інструмент runSubagent, каб ён меў тэхнічную магчымасць запускаць іншых. Каб ён не выкарыстоўваў усё запар, даступныя сабагенты пералічваюцца ў полі agents.

yaml
1---
2name: Lead Developer
3tools: ['runSubagent', 'edit']
4agents: ['Code Reviewer', 'Implementer'] # Абмежаваны спіс тых, да каго можна звяртацца
5---
6
7Калі карыстальнік просіць дадаць функцыянал:
81. Запусці сабагента "Code Reviewer" для ацэнкі бягучага стану файлаў.
92. Запусці "Implementer" для напісання кода.

Важнае правіла працы з сабагентамі: карыстальнік не выклікае іх наўпрост. Вы размаўляеце толькі з галоўным агентам, а ён сам вырашае, у які момант яму спатрэбіцца дапамога ізаляванага кантэксту. Гэта адбываецца ў фонавым рэжыме, і ў інтэрфейсе чата выглядае проста як звычайны выклік інструмента, які можна разгарнуць пры жаданні.

Такі падыход дазваляе будаваць складаныя сістэмы, дзе адзін агент выконвае ролю каардынатара, а руцінная праца размяркоўваецца паміж вузкапрофільнымі выканаўцамі.

AI
copilot
Admin, 2026-05-22

Вітанкі, спадарства!

Настальгія

Шмат хто з нас пачынаў свой гульнявы шлях у тыя часы, калі ў відэапракатах твайго горада стаялі першыя «Сонькі» і Sega Dreamcast, а хлопцы з раёна секліся ў Mortal Kombat. І недзе побач з імі, за «кампамі», сядзелі нейкія дзіўныя тыпы, якія будавалі замкі, вялі крыжакоў у бой ці папросту валтузілі нейкіх чалавечкаў на конях па карце. Каля кансоляў заўсёды збіраўся натоўп малых разявак, якія весела і гучна бухцелі за спінамі старшакоў, пакуль тыя віртуозна выбівалі «фаталіці» ў «Морціку» ці Street Fighter.

А вось вершнікі, што няспешна скакалі па мапе на экранах пузатых манітораў, такой папулярнасцю сярод гледачоў не карысталіся. У той далёкі час я і падумаць не мог, што менавіта гэтыя вершнікі стануць тым самым парталам, які назаўжды будзе вяртаць мяне і мае ўспаміны ў тое светлае, бестурботнае дзяцінства. І так, гэта былі менавіта яны — тыя самыя «Героі Меча і Магіі 3» (Heroes of Might and Magic 3).

Упершыню я дакрануўся да гэтай легенды, калі бацька набыў наш першы камп’ютар — Першы Pentium з ажно 48 Мб аператыўнай памяці і цэлым гігабайтам на вінчэстэры! Каб усталяваць гульню, мне давялося выдаліць бацькаў Word (што потым было з маёй дупай, думаю, вы і самі здагадаліся), бо гульня тупа не змяшчалася. Але ж яно таго каштавала!

Той самы першы відэаролік, дзе каралева Эрафіі высаджваецца з карабля на бераг, і легендарны лагатып 3DO назаўжды ўрэзаліся мне ў памяць. Як і мая першая эпічная бойка: калі маё «непераможнае» войска з трох гномаў і дванаццаці кентаўраў дзёрзка ўварвалася ў сховішча нагаў... і я проста знатна атрымаў «на арэхі». Менавіта пасля такога халоднага душа і прыйшло ўсведамленне: гэтая гульня значна, значна глыбейшая за проста «хадзіць конікам па мапе».

А затым... Затым прыйшлі Пятыя «Героі». Гульня, дзеля якой я ліхаманкава мяняў сваю старэнькую Nvidia 440 MX на бадзёрую GeForce 5500 — і ўсё толькі дзеля таго, каб запусціць гэтую прыгажосць. І яна сапраўды была выдатнай: што па сюжэце, што па геймплэі, што па графіцы.

Вечары напралёт я праседжваў там, збіраючы непераможныя арміі з чорных драконаў ці тытанаў... Усё гэта назаўжды засталося ў маім сэрцы як адны з самых шчаслівых гульнявых момантаў.

Ну а пасля... Пасля былі шостыя «Героі», потым сёмыя. Я ў іх нават не пачынаў гуляць. І, як выглядае цяпер, не дарма. Бо яны так і не пакінулі пасля сябе ніякага значнага следу, назаўжды згубіўшыся недзе ў густым цені сваіх папярэднікаў.

Вяртанне легенды?

Дзесьці гады са тры таму (дакладна ўжо і не ўзгадаю) у нашу інфармацыйную прастору з дзвюх ног уварвалася навіна: хутка будуць новыя «Героі»! І не тыя, якіх мы і так не памятаем, а як Трэція ці Пятыя — толькі яшчэ лепш. Распрацоўшчыкі шчодра абяцалі, што навінка ўбярэ ў сябе ўсё самае-самае з усёй серыі. Што яна зноў будзе бязлітасна красці нашыя вечары па класічнай схеме: «сяду на хвілінку зрабіць пару хадоў», а ў ложак папаўзеш недзе далёка за апоўнач.

І вось — яна перад намі. Няхай пакуль і ў раннім доступе. Наслухаўшыся захопленых водгукаў і наглядзеўшыся дзясяткаў аглядаў на гэтых «новых герояў», я вырашыў: усё, прыйшоў час браць.

Колькі ж гэтую гульню хвалілі! І за глыбокую прадуманасць фракцый, і за свежы подых у старых механіках, і за тое, што каманда літаральна на голым энтузіязме здолела выцягнуць такі шэдэўр. Карацей кажучы, канчаткова заблукаўшы сярод усяго гэтага інфашуму, я набыў гульню. Набыў з вялікай надзеяй...

Першы запуск. Уражанні.

Першае ўражанне было простае: ну вось, дачакаліся. Новыя «Героі», яшчэ і з абяцаннем вяртання да класікі. Пад уздзеяннем аглядаў я набыў Heroes of Might and Magic: Olden Era за свае грошы, запусціў і вельмі хацеў, каб гульня мяне зацягнула.

Але ўжо праз першыя гадзіны стала зразумела: галоўная праблема не ў тым, што гульня зусім дрэнная. Наадварот, у ёй ёсць цікавыя ідэі, добрыя механічныя знаходкі і выразнае жаданне спадабацца фанатам старых частак. Праблема ў іншым: яна выглядае і адчуваецца так, быццам яе збіралі з аглядкай на мабілкі ці планшэты, а не на вялікую камп'ютарную стратэгію, у якую хочацца праваліцца на ўвесь вечар.

Вось гэта адчуванне і не адпускае: нібыта перад табой знаёмая формула, але яна працуе не на поўную моц. Усё быццам на месцы: фракцыі, гарады, карта, гексаганальныя баі, музыка з настальгічнымі інтанацыямі. Але д'ябал, як заўжды, у дэталях.

У раннім доступе ўжо можна пагуляць за шэсць фракцый:

  • Храм (Temple)
  • Некропаль (Necropolis)
  • Гай (Sylvan)
  • Рой (Hive)
  • Раскол (Schism)
  • Падзямелле (Dungeon)

Частка з іх добра знаёмая па папярэдніх гульнях: Храм, Некропаль, Гай, Падзямелле. Рой — новая фракцыя з інсектоідамі, якая робіць стаўку на хуткае развіццё і колькасць войска. Па настроі яна месцамі нагадвае Інферна з трэцяй часткі: шмат агрэсіі, шмат масы, шмат ціску.

Асобна варта згадаць Раскол. Гэта новая для серыі фракцыя з мутаванымі эльфамі і істотамі ў духу лаўкрафтаўскіх жахаў. Ідэя цікавая: замест чарговай варыяцыі на тэму «цёмных эльфаў» тут спрабуюць даць нешта больш дзіўнае і трывожнае. Іх механікі завязаныя на непазбежны ўрон і кантроль магіі праціўніка.

Ёсць і важная сістэмная змена: многія юніты маюць дзве розныя галіны паляпшэння. Гэта нагадвае альтэрнатыўныя апгрэйды з пятай часткі і сапраўды дадае тактычнай гнуткасці. У залежнасці ад сітуацыі можна выбраць, што патрэбней: больш урону, больш жывучасці, кантроль ці спецыфічная здольнасць.

На паперы ўсё гэта гучыць добра. І вось тут пачынаецца галоўны канфлікт Olden Era: механікі часта выглядаюць цікавей, чым тое, як гульня іх паказвае і тлумачыць.

Горад

alt text

(Параўнаем з пятымі)

alt text

(І трэцімі)

alt text

Пачаць хочацца менавіта з гарадоў, бо для «Герояў» гэта не проста меню для найму войска. Горад заўсёды быў асобным маленькім светам: месцам, дзе адчуваеш фракцыю, яе настрой, маштаб і фантазію мастакоў.

У Olden Era гарады функцыянальна працуюць, але візуальна пакідаюць слабейшае ўражанне. На мой погляд, гарады з пятых «Герояў», гульні, якой ужо больш за дваццаць гадоў, выглядаюць больш выразна і атмасферна. У Olden Era яны хутчэй нагадваюць плоскую сцэну з аб'ектамі, чым жывы фэнтэзійны цэнтр фракцыі.

Так, можна сказаць, што распрацоўшчыкі свядома вярталіся да духу трэцяй часткі і таму адмовіліся ад паўнавартаснага 3D. Але праблема не ў самой адсутнасці 3D. Трэція «Героі» і без яго мелі шыкоўную чытальнасць і мастацкую глыбіню. Тут жа ўсё часта выглядае занадта чыста, плоска і цацачна. Хочаце аб'ёмных, уражваючых гарадоў - пятая частка дагэтуль робіць гэта лепш.

Далей крыху душнілава, але менавіта з такіх дробязяў і складваецца ўражанне ад гульні. Інтэрфейс у горадзе не заўсёды паводзіць сябе так, як чакаеш ад камп'ютарнай стратэгіі. На першы погляд нават не відавочна, як паглядзець поўныя характарыстыкі юніта. Потым высвятляецца, што такая магчымасць ёсць, але пададзеная яна так неінтуітыўна, што яе лёгка прапусціць. У старых частках статы звычайна былі пад рукой: навёў мышку, націснуў правую кнопку - атрымаў патрэбную інфармацыю.

Раздражняе і тое, што на розных экранах пастаянна вісяць заданні: у горадзе, у гільдыі магаў, на карце. Нават калі яны ўжо выкананыя або ў гэты момант не патрэбныя. Гэта можна было б вынесці ў асобны журнал, а не закрываць частку экрана. Такое рашэнне зноў нагадвае планшэтны інтэрфейс, дзе ўсё павінна быць буйным і заўсёды навідавоку.

У гарадах не заўсёды выразна счытваюцца актыўныя збудаванні. Назвы будынкаў таксама месцамі выглядаюць сыравата.

alt text

Напрыклад, «Норы 1», якія паляпшаюцца да «Нор 2», не вельмі дапамагаюць паверыць у жывы свет. Гэта больш падобна да тэхнічнага плэйсхолдара, чым да назвы будынка ў гатовай гульні. Мінікарта, якая недарэчна вісіць нават у гільдыі магаў, таксама выклікае пытанні. Навошта яна там? Каб гулец не забыўся, у якім горадзе знаходзіцца?

З важных эканамічных змен: з гульні прыбралі звыклую Серу. Замест яе з'явіўся Алхімічны пыл (Alchemical Dust). Яго можна знаходзіць на карце або атрымліваць, разбіраючы непатрэбныя артэфакты. Менавіта гэты рэсурс моцна звязаны з развіццём магіі.

alt text

Гільдыя магаў - добры прыклад таго, як цікавая ідэя губляецца ў падачы. Замест звыклых школ магіі тут выкарыстоўваюцца сузор'і і даследаванні. Каб адкрываць новыя заклёны, недастаткова проста пабудаваць чарговы ўзровень гільдыі. Трэба ўкладваць рэсурсы, мець патрэбныя навыкі героя і разбірацца, што менавіта ад цябе патрабуе сістэма.

Сама па сабе ідэя нядрэнная. Магія становіцца не проста наборам выпадковых заклёнаў, а асобным кірункам развіцця. Але інтэрфейс тлумачыць гэта слаба. Частка заклёнаў заблакаваная, і з першага погляду не заўсёды зразумела, чаго не хапае: пылу, навыку, кнігі, скрутка ці яшчэ нейкай умовы. У выніку замест цікаўнасці ўзнікае раздражненне.

Яшчэ адна новая механіка - Зводы законаў (Faction Laws). Гэта не столькі будынак, колькі сістэма фракцыйных бонусаў. За балы законаў можна паляпшаць эканоміку, павялічваць прырост юнітаў або атрымліваць баявыя перавагі.

На практыцы гэта працуе як інструмент адаптацыі пад сітуацыю. У пачатку партыі можна ўкласціся ў золата і развіццё, а перад вялікай бойкай - пераключыцца на бонусы для войска. Механічна гэта зразумела. Пытанне ў іншым: ці патрэбна гульні яшчэ адна асобная сістэма, калі інтэрфейс і без таго перагружаны? Можа лепш выправіць баланс?

Бой

alt text

Бой тут блізкі да класічнай формулы: гексаганальнае поле, чарговасць хадоў, атрады, заклёны, здольнасці. У гэтым сэнсе Olden Era не спрабуе ламаць аснову, і гэта правільна.

Але ёсць нюансы кіравання. Напрыклад, нельга проста перад боем адразу выбраць аўтабой. Трэба спачатку зайсці ў рэжым бітвы і ўжо там уключаць аўтаматычнае прайграванне. Магчыма, задумка была ў тым, каб даць гульцу магчымасць пачаць рукамі, а потым перадаць бой камп'ютару. Але ў звычайных дробных сутычках гэта выглядае як лішні клік і лішні экран.

Герой у баі ўдзельнічае даволі сціпла: ён можа падтрымаць войска або скарыстаць магію, але не становіцца цэнтрам бітвы. У гэтым Olden Era бліжэй да трэцяй часткі, чым да пятай, дзе моцны герой часам мог ледзь не сам вырашаць вынік сутычкі.

alt text

alt text

Затое больш увагі атрымалі самі юніты. У многіх істот ёсць актыўныя здольнасці з аднаўленнем. Гэта добра працуе на разнастайнасць: цяпер трэба не толькі падвесці атрад і ўдарыць, але і выбраць правільны момант для спецыяльнага дзеяння. У лепшых выпадках гэта робіць бой больш тактычным.

І зноў атрымліваецца тая ж карціна: аснова ў баёўкі нармальная, асобныя ідэі нават цікавыя, але агульнае адчуванне псуецца недапрацаваным кіраваннем і занадта «пальцавым» інтэрфейсам.

Карта

alt text

Глабальная карта - адна з мацнейшых частак гульні. Яна шчыльна набіта аб'ектамі, шахтамі, нейтральнымі арміямі, артэфактамі і дробнымі ўзнагародамі. Даследаваць яе ў прынцыпе цікава, і тут Olden Era сапраўды трапляе ў знаёмы рытм: яшчэ адзін крок, яшчэ адзін аб'ект, яшчэ адна бойка, яшчэ адзін артэфакт.

Але менавіта на карце мацней за ўсё кідаецца ў вочы візуальны стыль. Колеры яркія, мадэлькі праставатыя, аб'екты часта выглядаюць занадта цацачна. Для кагосьці гэта будзе проста лёгкая, казачная падача. Для мяне ж гэта яшчэ адзін элемент таго самага мабільнага адчування, праз якое свет не становіцца сапраўды эпічным.

Асобна трэба адзначыць генератар выпадковых карт. Наяўнасць RMG ужо на старце ранняга доступу — вялікі плюс. Ён працуе не проста як выпадковае раскідванне аб'ектаў, а праз сістэму шаблонаў. Ёсць нават аналагі легендарных шаблонаў з трэцяй часткі, што важна для мультыплэера і для тых, хто хоча гуляць доўга, а не толькі прайсці некалькі сцэнарыяў.

Гэта, бадай, адзін з самых моцных аргументаў на карысць гульні. Калі распрацоўшчыкі давядуць баланс, інтэрфейс і візуальную чытальнасць, менавіта генератар можа зрабіць Olden Era доўгажыхаром.

Малы жук, ды вялікі гук.

Музыка ў гульні з першых хвілін вельмі знаёмая. Дзесьці чуюцца інтанацыі трэцяй часткі, дзесьці пятай, дзесьці проста агульны дух старых «Герояў». Гэта нядзіўна: над саўндтрэкам працаваў Пол Рамэра, кампазітар класічных частак серыі.

Музыка прыемная і аўтэнтычная. Яна не раздражняе, добра кладзецца на даследаванне карты і ў цэлым працуе на настальгію. Але сказаць, што яна адкрывае нейкі новы твар серыі, цяжка. Гэта хутчэй якаснае вяртанне да знаёмага, чым самастойнае адкрыццё.

Не лезь, жаба, туды, дзе коней куюць

У выніку галоўная прэтэнзія да Olden Era застаецца той самай: у гульні занадта моцны мабільна-планшэтны прысмак. Пра гэта крычаць гіганцкія кнопкі, буйныя экраны, паводзіны мышкі, недахоп звыклых ховераў і правага кліку, пастаянныя панэлі з заданнямі і агульная логіка інтэрфейсу пад «тап» пальцам.

Нізкія сістэмныя патрабаванні і невялікі памер гульні самі па сабе не з'яўляюцца мінусам. Наадварот, добрая аптымізацыя заўсёды плюс. Але ў кантэксце ўсяго астатняга яны толькі ўзмацняюць уражанне, што перад намі не вялікая камп'ютарная стратэгія, а вельмі акуратна сабраны праект, які мог бы больш натуральна глядзецца на планшэце.

І вось тут узнікае галоўнае расчараванне. Olden Era не выглядае як безнадзейная гульня. У ёй ёсць працоўная класічная аснова, цікавыя фракцыі, нядрэнныя баі, добры генератар карт і музыка, якая ведае, на якія кнопкі настальгіі націскаць. Але ўсё гэта пакуль не складваецца ў тую самую магію «Герояў», калі забываешся на час і проста жывеш у гэтым свеце.

Магчыма, камусьці якраз такі лёгкі, яркі і больш просты стыль зайдзе. Магчыма, для новых гульцоў ён нават будзе плюсам. Але для мяне Olden Era пакуль выглядае слабейшай за пятыя «Героі» і менш чароўнай за трэція. Яна нібыта вельмі стараецца быць машынай часу, але замест поўнага вяртання ў мінулае часта нагадвае сучасны рэмэйк, які занадта моцна баіцца быць складаным, цяжкім і вялікім.

Таму мой вывад асцярожны. Гуляць ці не - кожны вырашыць сам. Калі вам патрэбны новыя «Героі» з класічнай структурай і вы гатовыя дараваць ранняму доступу сырасць, паспрабаваць можна. Калі ж вы чакаеце эпічнага фэнтэзійнага пагружэння ўзроўню лепшых частак серыі, лепш не спяшацца.

Мне з першага разу гульня не зайшла. Але гэта ранні доступ, і шанец у яе яшчэ ёсць. (Але усе ж нейкая мабілка ды 25 еўра - ну... у мяне шмат пытанняў) Калі распрацоўшчыкі давядуць інтэрфейс, зробяць гарады і карту больш выразнымі, прыбяруць лішнюю планшэтнасць і дададуць візуальнага лоску, Olden Era можа стаць значна мацнейшай. Пакуль жа гэта хутчэй цікавая нарыхтоўка, чым сапраўднае вяртанне караля.

Таму ... пайду я падыму чарговую сотню зомбі ў свеце пад назвай Асхан, або чарговы раз зачышчу логава драконаў недзе на абшарах Эрафіі.

Гульні
Admin, 2026-05-13

cover

Уводзіны: Чаму "дзікі Захад" AI-агентаў нарэшце заканчваецца

Яшчэ некалькі год таму здавалася, што штучны інтэлект проста піша нам вершыкі ды папраўляе памылкі ў кодзе. А сёння кожны другі праграміст спрабуе прыкруціць да AI-агента ўсялякае "непатрэбства" і, канешне ж, даць яму прамы доступ да production-сервераў. "Няхай ён сам усё дэплоіць, а я пайду TikTok пагартаю!" — геніяльны план, надзейны як швейцарскі гадзіннік, які звычайна заканчваецца знесенай базай дадзеных і нервовым цікам у распрацоўшчыка.

І такія "геніяльныя планы" прывялі да таго, што індустрыя вырашыла неяк гэты хаос кантраляваць (ці хаця б перакласці адказнасць з LLM-мадэляў на нас з вамі). Каб штучны інтэлект мог рэальна нешта рабіць і пры гэтым не разносіў сістэму, яму трэба выдаваць доступ кропкава і бяспечна. Менавіта таму такія гіганты, як Anthropic і GitHub, выдзелілі тры асобныя падыходы для доступу: MCP (Model Context Protocol), Skills (Навыкі) і Subagents (Сабагенты).

Калі пачытаць IT-форумы, то падаецца, што гэта канкурэнты ў барацьбе за вашы правы доступу: "У мяне ж і так стаіць MCP, навошта мне дадаваць нейкія Skills?". Адкажу адразу і шчыра: выбар "ці адно, ці другое" тут увогуле не працуе.

У нармальным бяспечным workflow вам дакладна спатрэбяцца ўсе тры інструменты. Давайце разбяромся, навошта яны патрэбныя, і чаму ваш любімы агент усё яшчэ тупіць.


1. MCP: Адзіны пратакол для знешніх API

Па сутнасці, MCP — гэта стандартызаваны пратакол інтэграцыі. Індустрыя проста дамовілася: "хопіць кожнаму агенту пісаць свае асобныя кастылі пад кожны новы сэрвіс, давайце зробім адну трубу для ўсіх".

Як гэта працуе ў рэальнасці: вы запускаеце на сваім кампе фонавы сервер (дэмана). Дапусцім, ставіце афіцыйны github-mcp. Гэты сервер вісіць у памяці і вітаецца з вашым рэдактарам: "Хэлоў, я ўмею ствараць Pull Request-ы і чытаць issue". Агент такі: "Клас, давай рабіць", і яны пачынаюць перакідацца паміж сабой JSON-амі.

У чым плюсы? Калі табе трэба цягаць вялізныя кавалкі дадзеных са Stripe, Slack ці Postgres — гэта ідэальна. MCP забірае на сябе ўвесь галаўны боль з OAuth, токенамі і лімітамі запытаў.

Дзе пачынаецца боль? (Бяспека) Гэта татальная "чорная скрыня". Каб яго ўсталяваць, вы часта пішаце ў тэрмінале магічнае npx @нейкі-чувак/mcp-server-tools. Гэты невядомы працэс атрымлівае доступ да файлавай сістэмы, вісіць у фоне БЯСКОНЦА і трымае ў памяці вашы паролі. Гэта прамы шлях да supply chain attack проста таму, што вы захацелі, каб AI-агент "прыгожа фарматаваў тэкст". Для маштабных задач тыпу баз дадзеных — супер, але для дробных лакальных аперацый — гэта дзірка ў бяспецы.


2. Skills: Лакальныя скрыпты без магіі

Вось тут на арэну выходзяць Skills (Навыкі) — вашы ўласныя лакальныя скрыпты, якія працуюць менавіта так, як вы напісалі, ні кропляй больш.

Skill — гэта наогул не пратакол, не сервер і не дэман. Гэта татальна простая, але максімальна эфектыўная рэч. Гэта літаральна звычайная папка на тваім ноўтбуку. У ёй ляжыць тэкставы файл SKILL.md са словамі "Калі я прашу цябе зрабіць дэплой, юзай вось гэты інструмент", і побач — самы звычайны bash-скрыпт або script.js.

Сцэнарый: Вы кажаце агенту: "Зрабі аўдыт праекта". Ён чытае маркдаўн са Skills, запускае праз тэрмінал твой audit.sh, чакае выніку, чытае яго з кансолі і... скрыпт завяршаецца. Ніякіх фонавых дэманаў і вісячых у памяці пароляў. Зрабіў справу — гуляй смела.

Чаму гэта крута? Таму што вы бачыце код вачыма. Калі агент памыліцца, ён не знясе вам тэчку System32, таму што ў вашым асабістым скрыпце напісана толькі "прачытаць файлы". Выкарыстоўвайце Skills для спецыфічнай, бруднай лакальнай працы (запуск тэстаў, зборка для хітрага сервера). Гэта дае 100% кантролю і ніякай фрэймворк-магіі.

Дарэчы, калі вам не хочацца пісаць усе скрыпты з нуля, ужо пачынаюць з'яўляцца каталогі гатовых рашэнняў — напрыклад, Agent Skills, дзе можна знайсці скілы пад розныя папулярныя задачы.


3. Subagents: Дэлегаванне інтэлекту

А вось цяпер мы дабраліся да самага смачнага. Subagents (Сабагенты) — гэта архітэктурны падыход, дзе ваш асноўны AI-агент не робіць брудную інтэлектуальную працу сам, а наймае ізаляваных "мікра-агентаў".

Уявіце, што вы просіце AI: "Знайдзі мне інфармацыю пра абнаўленне React 19 на трох розных сайтах, прааналізуй 10 старонак і напішы мне справаздачу". Калі прастакаваты агент паспрабуе прачытаць усе гэтыя кілабайты HTML-кода і вываліць бруд у ваш бягучы чат — чат проста лопне. Агент зловіць перапаўненне кантэксту і пачне жорстка галюцыянаваць.

Як вырашаюць праблему Сабагенты і чым яны адрозніваюцца ад Skills? Каб дакладна адчуць розніцу, уявіце задачу: "Прачытай серверныя логі на 10 МБ і знайдзі прычыну памылкі 500".

Калі вы выкарыстоўваеце тупы Skill: Галоўны агент выклікае ваш скрыпт read_logs.sh. Скрыпт сумленна чытае 10 МБ тэксту і выплёўвае ўсё гэтае палатно проста ў ваш бягучы чат. Асноўная (вельмі дарагая!) мадэль пачынае яго чытаць, маментальна забывае, пра што вы размаўлялі, і хутчэй за ўсё, ліміт кантэксту лопаецца. Skill дэтэрмінавана выканаў працу без памылак, але ваш чат знішчаны.

Калі вы выкарыстоўваеце Subagent: Галоўны агент кажа: "Я тут архітэктар, я не буду сам капацца ў гэтым смецці". Ён дэлегуе задачу Сабагенту ў ізаляваным фонавым асяроддзі. Той сам спампоўвае логі, прапускае іх праз уласны "мозг" (праз асобны зварот да таннай LLM-мадэлі накшталт GPT-4o-mini). Сабагент ізалявана аналізуе 10 МБ, самастойна знаходзіць радок са збоем і вяртае галоўнаму босу толькі кароткі вынік: {"error": "Database timeout in User.tsx line 42"}.

  1. Чысты кантэкст. Асноўны чат застаецца чыстым, там няма кілабайт мініфікаванага JS-кода са старонкі індуса са StackOverflow.
  2. Бяспека. Сабагенту-скраперу мы ніколі не дадзім правоў на запіс у файлы ці базу дадзеных. Яго задача — толькі "чытаць інтэрнэт". Небяспека зведзена да нуля.
  3. Паралельнасць. Можна адправіць аднаго сабагента гугліць, а другога — перакопваць сотні файлаў старога кода. А самому пайсці піць каву.

Практыка: Як стварыць свайго ўласнага Subagent-а?

Тут трэба зрабіць важную рэмарку: знешне Skills і Subagents часта выглядаюць абсалютна аднолькава — гэта проста нейкі інструмент або код, які выклікае асноўны агент. Галоўная розніца ў тым, што Skill робіць тупую дэтэрмінаваную працу (напрыклад, чытае файл), а Subagent мае ўласны "мозг" і сам прымае рашэнні (напрыклад, робіць асобны зварот да API іншай LLM).

Больш за тое, магчымасць іх стварэння моцна залежыць ад вашага рэдактара. Напрыклад, у GitHub Copilot ёсць цудоўныя ўбудаваныя сабагенты (тыпу @workspace), і ён ужо ўмее працаваць са Skills (праз сістэму Agent Skills).

Каб стварыць свайго кастомнага рашалу, мы можам пайсці на хітрасць і зрабіць ізаляванага сабагента літаральна за 5 хвілін, проста эмулюючы яго з дапамогай Skill-скрыпта. Гэта самы рабочы падыход на сёння для ўсіх прасунутых рэдактараў (Cursor, Copilot, Claude Code).

Вось пакрокавы прыклад: ствараем сабагента-скрапера на Node.js.

Крок 1. SKILL.md — інструкцыя для галоўнага агента

Робім у праекце папку .skills/scraper/ і кладзём туды SKILL.md. Менавіта адсюль ваш асноўны AI-памочнік даведаецца, што ў яго з'явіўся новы супрацоўнік.

text
1# Scraper Subagent
2
3## Калі выкарыстоўваць
4Гэта твой лакальны інструмент парсінгу. Выкарыстоўвай яго заўсёды, калі трэба:
5- Зайсці на вонкавы сайт і прачытаць яго змест
6Не спрабуй грузіць сайт сам у чаце, дэлегуй гэтую працу сабагенту.
7
8## Як выклікаць
9> node .skills/scraper/index.js "<URL>"
10
11## Фармат адказу
12Сабагент верне табе гатовы прааналізаваны JSON у stdout:
13> { "title": "...", "text": "Чысты тэкст без тэгаў" }

Крок 2. index.js — логіка сабагента (з уласным "мозгам")

А вось і сам "мозг" сабагента. Каб гэта быў не проста скрыпт, а сапраўдны сабагент, ён сам звернецца да "таннай" LLM для чорнай працы:

javascript
1// .skills/scraper/index.js
2import fetch from 'node-fetch';
3import * as cheerio from 'cheerio';
4
5const url = process.argv[2];
6const OPENAI_API_KEY = process.env.OPENAI_API_KEY; // Сабагент мае свой доступ
7
8async function runSubagent() {
9    console.error(`[Scraper Subagent] Бос сказаў ісці парсіць і аналізаваць: ${url}`);
10    
11    // 1. Ідзем у сетку і цягнем цяжкі дакумент
12    const response = await fetch(url, { headers: { 'User-Agent': 'Mozilla/5.0' } });
13    const html = await response.text();
14
15    // 2. Базавая чыстка ад смецця
16    const $ = cheerio.load(html);
17    $('script, style, nav, footer').remove(); 
18    const rawText = $('body').text().replace(/\s+/g, ' ').trim().slice(0, 8000);
19
20    // 3. ІНТЭЛЕКТ: Выклікаем танную мадэль (Subagent), каб яна зрабіла выцісканне
21    console.error(`[Scraper Subagent] Тэкст атрыманы, перадаю свайму нейра-мозгу...`);
22    const aiResponse = await fetch('https://api.openai.com/v1/chat/completions', {
23        method: 'POST',
24        headers: { 'Content-Type': 'application/json', 'Authorization': `Bearer ${OPENAI_API_KEY}` },
25        body: JSON.stringify({
26            model: "gpt-4o-mini", // Танны рабочы
27            messages: [{
28                role: "system", 
29                content: "Ты — сабагент. Дастань з тэксту галоўную сутнасць у 2 абзацах і вярні строгі JSON: {title, summary}."
30            }, { role: "user", content: rawText }]
31        })
32    });
33
34    const aiData = await aiResponse.json();
35    const cleanResult = aiData.choices[0].message.content;
36
37    // 4. Выплёўваем ЧЫСТЫ вынік асноўнаму агенту ў стандартны вывад
38    console.log(cleanResult);
39}
40
41runSubagent();

Што адбудзецца на практыцы? Заўважце розніцу звычайнага Skill-скрыпта ад Сабагента. Калі б гэта быў тупы Skill, ён бы проста вярнуў 8000 сімвалаў бруднага тэксту галоўнаму агенту ў чат (і забіў бы яму "мазгі"). Але наш Сабагент запускае асобны Node-працэс, выцягвае дадзеныя, сам выклікае танную нейрасетку для аналізу і вяртае цэнтральнаму босу чысцюткі, кароткі JSON. Галоўны агент нават не ведае, колькі смецця давялося перакапаць памочніку.

Віншую, вы толькі што хутка рэалізавалі простую мікрасэрвісную архітэктуру для свайго штучнага інтэлекту.


Хто ўвогуле падтрымлівае ўсё гэта? (Шпаргалка па экасістэме)

З тэорыяй разабраліся, але куды гэта ўсё піхаць? У 2026-м годзе кожны рэдактар ці кліент прапануе сваю рэалізацыю. Каб вы не чыталі тоны дакументацыі і не ламалі галаву, вось кароткая таблічка:

Інструмент / IDEMCP (Глабальны сервер)Skills (Лакальныя скрыпты)Subagents (Дэлегаванне)Як наладзіць?
Cursor✅ Натыўна, клік-клік⚠️ Праз кастыль❌ Не падтрымліваецца наўпростMCP дадаецца праз Settings -> Features -> MCP Server. Каб прымусіць яго бачыць Skills, трэба строга напісаць у .cursorrules: "Заўсёды чытай інструкцыі са скрыптоў у папцы .skills/".
Claude Code (тэрмінал)✅ Натыўна✅ Ягоны родны дом❌ Няма з каробкіMCP настройваецца праз файл канфігу. Кансольныя гікі будуць шчаслівыя: Skills проста ляжаць у лакальнай папцы — кліент сам іх знойдзе і ўсвядоміць, бо гэта яго базавая фіча.
Claude Desktop✅ Натыўна і моцна❌ Не ўмее наогул❌ НямаЗапісваем шляхі ў claude_desktop_config.json. Лакальныя bash-скрыпты (Skills) і сабагенты ён пакуль не цягне ў прынцыпе.
GitHub Copilot⚠️ Пакуль эксперымент✅ Падтрымліваецца✅ Натыўна (толькі ўбудаваныя)Выдатныя ўбудаваныя сабагенты з каробкі (@workspace, @terminal). Лакальныя Skills падтрымліваюцца праз сістэму Agent Skills (можна дадаваць кастомныя інструкцыі і інструменты ў .md файлах). А вось кастомнага сабагента без мыліц фізічна не дадаць — давядзецца пісаць паўнавартаснае пашырэнне для VS Code (Chat extensions API).
Roo Code (VS Code)✅ Натыўна, зручна⚠️ Праз кастыль⚠️ Праз "Ролі" агентаўMCP дадаецца наўпрост у графічным інтэрфейсе. Для паўнавартасных сабагентаў ён дазваляе наладжваць так званыя 'Custom Modes' — абмежаваныя ролі, паміж якімі можна пераключацца.
Windsurf✅ Натыўна❌ Лепш не мучаць❌ НямаMCP дадаецца наўпрост у графічных наладах. Са сваімі скрыптамі да яго лезці пакуль рана.

Кароткая выснова па экасістэме: MCP — гэта ўжо глабальны і непазбежны стандарт інтэграцый. Skills — гэта хутчэй фішка для тых, хто хоча жорсткага кантролю за лакальнымі скрыптамі (тут лідаруе Claude Code). А вось Subagents — гэта відавочны трэнд для складанай шматкрокавай распрацоўкі, які пакуль натыўна найлепш працуе ў сістэме Copilot.


Высновы: Дык што юзаць?

Запомніце простае правіла, якое дакладна падзяляе адказнасць інструментаў:

  1. Інтэграцыя са знешнім светам (Складаныя API і базы дадзеных) = MCP. Бярыце яго, калі агенту трэба працаваць са Stripe, GitHub ці Postgres. Даверцеся гатоваму MCP-серверу: ён сам вырашае пытанні з аўтарызацыяй, токенамі і лімітамі. Гэта ваш стандартызаваны мост да чужых сістэм.
  2. Дакладныя лакальныя дзеянні (Без удзелу нейрасеткі) = Skills. Пішыце ўласны скрыпт (Skill), калі трэба проста запусціць тэсты, сабраць праект або скапіяваць файлы. Гэта звычайны код, які выконваецца строга і прадказальна. Агент проста "націскае кнопку", а скрыпт робіць працу бяспечна і пад вашым поўным кантролем.
  3. Аўтаномны аналіз і ізаляцыя кантэксту (Шматкрокавыя задачы) = Subagents. Выкарыстоўвайце іх, калі трэба шукаць, аналізаваць або працаваць з вялікімі аб'ёмамі дадзеных. Сабагент сам "падумае" (праз асобны выклік LLM), самастойна перакапае 10 МБ логаў або 5 сайтаў і верне галоўнаму агенту толькі кароткі вынік, не знішчаючы ваш бягучы кантэкст у чаце.

Не давайце чужым невядомым працэсам поўны доступ да вашага камп'ютара, каб не чакаць сюрпрызаў ад невядомых npm-пакетаў. Ваша кодавая база скажа вам дзякуй.


Падабаецца чытаць пра тэхналогіі па-беларуску? Мы пішам пра IT, навуку і гікаўскія тэмы на роднай мове — проста, зразумела і без лішняга пафасу. Штодзённыя навіны і кароткія тлумачэнні са свету тэхналогій — у нашым тэлеграм-канале: https://t.me/bel_frontend. Поўныя артыкулы, кіраўніцтвы і разборы — на сайце: https://bel-geek.com. Далучайцеся, чытайце, дзяліцеся сваімі ідэямі. Разам робім беларускамоўны тэх-кантэнт, якога так не хапае.


AI
MCP
Skills
Admin, 2026-04-22

Традыцыя фарбаваць яйкі на Вялікдзень — гэта захапляльнае спалучэнне старажытных паганскіх вераванняў, прыгожых хрысціянскіх легенд і чыстай практычнасці.

1. Яшчэ да хрысціянства

У многіх старажытных народаў яйка было сімвалам жыцця, адраджэння і вясны. Паводле паданняў, сусвет быў створаны з яйка, якое падклала казачная птушка Фенікс або качка. Пасля зімы людзі святкавалі абнаўленне прыроды, і яйка натуральна стала сімвалам новага жыцця. Таму яйкі фарбавалі ў жоўты колер (сонца) або чырвоны (агонь, кроў), каб «задобрыць» сілы прыроды і забяспечыць ураджай і здароўе і дарылі адзін аднаму.

А пазней Вялікдзень супаў з часам вясновага раўнадзенства, калі прырода абуджалася.

2. У хрысціянстве

З распаўсюджаннем хрысціянства гэтая традыцыя атрымала новы сэнс — яйка стала сімвалам Уваскрасення Хрыста: шкарлупіна — як магіла, жыццё ўнутры — як новае жыццё пасля смерці.

Чаму менавіта чырвоны колер?

Існуе вядомая легенда пра Марыю Магдалену. Паводле падання, яна прыйшла да рымскага імператара Тыберыя, каб паведаміць пра ўваскрасенне Хрыста, і прынесла яму ў падарунак курынае яйка.

Тыберый засмяяўся і сказаў: «Чалавек не можа ўваскрэснуць, як і гэтае белае яйка не можа стаць чырвоным».

У той жа момант яйка ў яго руках стала чырвоным.

Чырвоны колер сімвалізуе кроў Хрыста.

3. Практычнае тлумачэнне

Падчас Вялікага посту (перад Вялікаднем) у хрысціянстве нельга было есці яйкі, але куры, аднак, не ведалі пра пост і працягвалі несціся. Каб яйкі не сапсаваліся, іх адварвалі. А каб адрозніць вараныя яйкі ад сырых (і каб ведаць, якія былі знесены раней), іх пачалі фарбаваць — звычайна ў цыбульным лупінні.

Беларускія традыцыі: крашанкі і пісанкі

На нашых землях традыцыя набыла мастацкія формы:

Крашанкі — яйкі, пафарбаваныя ў адзін колер (звычайна натуральнымі фарбамі: лупіннем цыбулі, карой дуба, бярозавым лісцем).

Пісанкі — сапраўдныя творы мастацтва, дзе на яйка воскам наносіліся складаныя арнаменты. Кожны ўзор меў сэнс: «зоркі» сімвалізавалі чалавечае жыццё, «грабеньчыкі» — ваду, а «дубовае лісце» — моц (відэа тут).

other
BiełaruskiBajan, 2026-04-05