My Architect, частка 5: дыстрыбуцыя праз Claude Code marketplace
Гэта фінал серыі пра My Architect — сістэму, у якой праект жыве паміж сесіямі AI-агента. У частцы 1 я тлумачыў, навошта агенту памяць і план. Сёння пра апошні кавалак пазла: як усё гэта трапляе на машыну карыстальніка за дзве каманды.
Праблема апошняй мілі
З боку карыстальніка My Architect — гэта тры рэчы. MCP-сервер @my-architect/mcp, які дае агенту трыццаць з лішкам інструментаў. Skill myarchitect — паводзінскія правілы: калі агент сам заводзіць вузел пад адкладзены баг, а калі спыняецца і пытаецца. І чатыры slash-каманды для тыповых сцэнарыяў.
Раней усталяванне выглядала як інструкцыя на паўстаронкі. Адкрый .mcp.json, упішы канфіг сервера, не пераблытай імя зменнай асяроддзя. Спампуй SKILL.md, пакладзі ў ~/.claude/skills/, паўтары на рабочым ноўтбуку. Кожны ручны крок — месца, дзе чалавек адвальваецца, а ў мяне з'яўляецца яшчэ адна копія skill, якую трэба не забыцца абнавіць.
Plugin marketplace у Claude Code закрыў гэтую дзірку. Маркетплейс — гэта звычайны публічны git-рэпазіторый з manifest-файлам, плагін унутры яго — папка з канфігам, skill і камандамі. Ніякай рэгістрацыі, ніякай мадэрацыі, ніякай крамы: рэпа на GitHub і ёсць канал дыстрыбуцыі.
Усталяванне вачыма карыстальніка
Адзін раз экспартаваць токен (бярэцца ў Settings → Connect Agent на сайце):
export MCP_API_KEY=mcp_ВАШ_ТОКЕН
Далей дзве каманды ўнутры Claude Code:
/plugin marketplace add d7561985/my-architect-marketplace
/plugin install my-architect@my-architect-marketplace
Праверка — /mcp: сервер my-architect павінен значыцца падключаным.
За кулісамі Claude Code кланіруе рэпазіторый, парсіць manifest, рэгіструе skill і slash-каманды, а пры старце сесіі падымае MCP-сервер камандай npx -y @my-architect/mcp@latest. Карыстальнік не рэдагаваў ніводнага файла рукамі. Тая самая інструкцыя на паўстаронкі ўціснулася да трох радкоў, і зламацца ў іх амаль няма дзе.
Анатомія: два маніфесты і markdown
Каранёвы marketplace.json — тонкая абгортка: імя, уладальнік, спіс плагінаў са спасылкамі на папкі. Поле $schema паказвае на схему з json.schemastore.org, так што рэдактар падсвечвае памылкі яшчэ да каміту.
Уся змястоўная частка — у plugin.json плагіна:
{
"name": "my-architect",
"version": "1.4.0",
"mcpServers": {
"my-architect": {
"command": "npx",
"args": ["-y", "@my-architect/mcp@latest"],
"env": {
"MCP_API_KEY": "${MCP_API_KEY}",
"MA_API_URL": "https://my-architect.app"
}
}
}
}
Тут важны адзін радок: "${MCP_API_KEY}". Гэта падстаноўка з shell-асяроддзя карыстальніка ў момант запуску. Рэпазіторый публічны, і сакрэтам у ім не месца — токен жыве ў карыстальніка ў ~/.zshrc і ніколі не пакідае яго машыну.
Астатняе — markdown. SKILL.md з YAML frontmatter (name і description, па якім Claude вырашае, калі падгружаць skill), і commands/*.md — чатыры файлы, кожны з якіх становіцца slash-камандай кшталту /my-architect:next. Каманды — тонкія промпт-абгорткі над skill: «вазьмі наступную задачу і вядзі яе па Workflow D».
Кода сервера тут няма
У рэпазіторыі маркетплейса няма ніводнага радка TypeScript. MCP-сервер жыве ў прыватным прадуктовым рэпа і публікуецца ў npm, а плагін спасылаецца на @my-architect/mcp@latest. Выйшла новая версія сервера з новымі інструментамі — карыстальнікі атрымліваюць яе пры наступным запуску Claude Code, увогуле без дзеянняў са свайго боку і без рэлізу плагіна.
Са skill сітуацыя адваротная, і гэта ўсвядомленае рашэнне. SKILL.md ляжыць у публічным рэпа як адзіная крыніца праўды. Прыватны прадуктовы рэпазіторый копію не трымае прынцыпова: я ўжо праходзіў перыяд, калі адна версія skill жыла ў ~/.claude/skills/ як асабістая ўстаноўка, другая ў прадукце, і яны ціха раз'язджаліся. Цяпер правіла запісана проста ў CLAUDE.md маркетплейса: рэдагуем тут, пушым адсюль, карыстальнікі цягнуць адсюль. Любая знойдзеная копія — састарэлая па азначэнні.
Дысцыпліна версій
У маркетплейса ёсць невідавочнае следства: /plugin update my-architect спрацоўвае толькі калі версія ў plugin.json змянілася. Паправіў фармулёўку ў SKILL.md і запушыў без bump — ніхто з карыстальнікаў гэтага не ўбачыць, абнаўленне проста не прапануецца. Таму правіла жорсткае: кожная бачная змена — гэта bump версіі плюс запіс у CHANGELOG, нават калі памянялася адно слова.
Перад публікацыяй — claude plugin validate .: абодва маніфесты і frontmatter skill павінны распарсіцца. Рэліз закрываецца камандай claude plugin tag, якая зверае версію ў plugin.json, запіс у маркетплейсе і ствараны git-тэг паміж сабой і толькі потым ставіць тэг кшталту my-architect--v1.4.0. Узгодненасць версій правярае інструмент, а не мая ўважлівасць, і гэта правільнае размеркаванне абавязкаў.
Паўтара месяца ў changelog
Плагін жыве з канца красавіка, і яго changelog атрымаўся летапісам таго, як мянялася маё разуменне працы агента з архітэктарам:
- v1.0.0 (29 красавіка) — skill як праактыўны трэкер бэклогу плюс аўтаканфігурацыя MCP-сервера.
- v1.1.0 (29 мая) — Workflow C: дакументы на вузлах як source of truth,
validate_projectперад закрыццём задачы. - v1.2.0 (5 чэрвеня) — Workflow D: архітэктар перастаў быць журналам постфактум, skill цяпер патрабуе чытаць вузел і докі да кода і абнаўляць іх па ходзе працы.
- v1.3.0 (7 чэрвеня) — чатыры slash-каманды:
next,progress,doc,reconcile. - v1.4.0 (7 чэрвеня) — узмоцненае правіла наймення вузлоў: сутнасць, а не праца, з лінтэрам на баку сервера.
Заўважце: чатыры змястоўныя рэлізы за пяць тыдняў, і ніводзін не запатрабаваў ад карыстальнікаў нічога, акрамя /plugin update.
Вынік серыі
Пяць частак складаюцца ў адну думку. Агент моцны роўна настолькі, наколькі добры знешні контур вакол яго.
У частцы 1 — навошта гэты контур патрэбны: памяць агента не кантэкстнае акно, а структура праекта, якую ён чытае за адзін выклік. У частцы 2 — на чым ён стаіць: YAML-файлы замест базы, атамарны запіс і жывая сінхранізацыя з канвой. У частцы 3 — як прымусіць агента планаваць як архітэктар: іерархія, спадкаваныя патрабаванні, User Story Map. У частцы 4 — рабочы цыкл ад get_next_task да complete_task з дакументацыяй як часткай задачы. І сёння — апошняя міля: усё гэта ставіцца дзвюма камандамі і абнаўляецца адной.
Паспрабаваць можна на my-architect.app: акаўнт, токен, дзве каманды ў Claude Code. Калі штосьці не сыдзецца з тым, што я тут напісаў — напішыце мне, такія лісты карыснейшыя за пахвалу.