Compare commits

...
48 Commits
Author SHA1 Message Date
Claude Code bce12944ae mcp-dev v3.0.1: esclarecer pacote v2 ≠ API v2 e politica de migracao/terceiros 2026-08-26 19:55:44 +01:00
Claude Code 99c1f8c8d3 docs(easypanel): healing log INC-032 — restart storm por stall de compactacao de memoria, nao bug de app
- easypanel-monitor: entrada healing log com deteccao (containerd shim disconnected + journalctl -k rcu/soft lockup) e fix (sysctl compaction_proactiveness/swappiness + cgroup limits)
- easypanel-troubleshoot: novo padrao 'Crash Loop multi-servico' distinto do crash loop single-app; corrigida referencia obsoleta a ssh-unified (permanentemente proibido) para ssh/bash nativo; healing log entry
2026-08-22 12:28:41 +01:00
ealmeida e3a2c6fd9c docs: validação fase F de skills e MCPs 2026-08-19 09:18:57 +01:00
ealmeida 18e48db490 feat(infraestrutura): mcp-dev v3.0 — SDK TypeScript v2 e transporte HTTP obrigatórios
Regra de Ouro adicionada ao topo da skill: SDK v2 (@modelcontextprotocol/server),
API de alto nível McpServer+registerTool (API de baixo nível Server+setRequestHandler
proibida), transporte HTTP obrigatório (stdio só como excepção documentada), e
proibição explícita de interpolação de dados em comandos shell/SSH.

Motivado por revisão de segurança ao mcp-kivicare (19-08-2026): 8 bugs reais
corrigidos em produção, incluindo injecção de comandos shell crítica e hooks
nativos disparados com o tipo errado. Regras adicionadas para nunca mais acontecer
em silêncio.

- SKILL.md: nova secção Regra de Ouro, API/annotations/capabilities actualizadas
  para v2, transportes HTTP obrigatório, changelog v3.0.0, healing log com os
  3 bugs mais graves do incidente.
- references/templates.md: reescrito para createMcpHandler + createMcpExpressApp
  (HTTP) e serveStdio (excepção), package.json com pacotes v2.
- references/best-practices.md: capabilities/annotations/error handling
  actualizados para API v2, checklist de segurança com regra anti-injecção de
  comandos shell, tabela de transportes com HTTP obrigatório.
- references/evaluation-guide.md: script de evaluations reescrito para
  Client+StreamableHTTPClientTransport in-process (sem porta/socket).
- infraestrutura: 1.2.2 -> 1.3.0
2026-08-19 09:16:31 +01:00
ealmeida 4e33c1d697 feat(wordpress): v2.0.0 adiciona skills mcp-loco-translate, mcp-ifthenpay, mcp-google-site-kit, mcp-complianz, mcp-tablepress 2026-08-19 08:30:10 +01:00
Emanuel Almeida 7035eae927 feat(wordpress): skill mcp-pro-elements — MCP dedicado ao PRO Elements (fork GPL Elementor Pro) via WP-CLI/SSH 2026-08-19 07:59:57 +01:00
ealmeida 9df437a48e feat(wordpress): skill mcp-ai-engine — MCP dedicado ao AI Engine (Meow Apps) via WP-CLI/SSH 2026-08-19 07:36:27 +01:00
McpComplianz Agent bacf65df33 skill: adicionar mcp-complianz (MCP dedicado Complianz GDPR/CMP) 2026-08-19 07:35:53 +01:00
ealmeida 0d818d9f72 skill: adicionar mcp-tablepress (MCP dedicado TablePress) 2026-08-19 07:08:22 +01:00
Descomplicar Agent 36a0721349 feat(wordpress): nova skill mcp-skyboot-icons — MCP Skyboot Custom Icons for Elementor
- Estado do plugin, catalogo dos 15 icon packs, listar icones de um
  pack activo, activar/desactivar pack.
- Plugin so encontrado activo em descomplicar.pt (producao); os
  outros 7 sites do bundle confirmados sem ele.
- MCP maioritariamente so-leitura: unica escrita real e o toggle
  on/off por pack (skb_cife_manage_icon), testada em ciclo idempotente
  contra producao.
2026-08-19 07:06:30 +01:00
ealmeida 174f2f9357 feat(skills): adicionar mcp-updraftplus (backup UpdraftPlus, quase so-leitura, alto risco) 2026-08-19 06:43:13 +01:00
Emanuel Almeida 87e4290283 docs: skill mcp-happyfiles — MCP HappyFiles Pro (pastas media library)
Documenta a taxonomia happyfiles_category (hierárquica, attachments), o
gotcha include_children=true por omissão no WP_Query (corrigido no MCP),
query_var=false na taxonomia (wp post list --happyfiles_category não
funciona), e confirma no código-fonte que apagar pasta nunca apaga
ficheiros. 9 tools, verificação ponta-a-ponta contra descomplicar.pt
(produção) e starter.descomplicar.pt documentada.
2026-08-19 06:33:26 +01:00
ealmeida 06e6509fc6 feat(wordpress): novo MCP mcp-kivicare - gestao clinica KiviCare
24 tools tipadas cobrindo o ecossistema clinico KiviCare (Free e Pro)
em WordPress via WP-CLI/SSH (familyclinic.pt): clinicas, medicos, sessoes
e horarios semanais, pacientes (perfil 360 e historico medico),
consultas (listar, detalhe, agendar, mudar estado com disparo de hooks
nativos kc_appointment_status_update, reagendar), encontros clinicos,
prescricoes e facturacao/contas.

Arquitectura de dupla ponte: bridge SQL directo com JSON_OBJECT/JSON_ARRAYAGG
e paginacao por subquery para leituras instantaneas em milissegundos;
bridge PHP seguro com wp eval-file para criacao de pacientes, agendamentos
e mudancas de estado que exigem integridade e disparo de hooks.
2026-08-19 06:31:01 +01:00
ealmeida 9741b4761d feat(wordpress): nova skill mcp-full-cliente
Documenta as 9 tools do MCP dedicado multi-site (mcp-full-cliente, porta 3204) para gestão
do broker de licenças WordPress premium (full-customer, api.full.services) — estado de ligação,
plugins geridos, catálogo, extracto de licenças da conta e reactivação controlada.
2026-08-19 06:30:09 +01:00
ealmeida e127e85ef8 feat(mcp-gtranslate): adiciona skill do MCP dedicado ao GTranslate
- 9 tools: idiomas activos/ordem, estilo/posicao do widget, idioma de
  origem, estado da licenca Pro/Enterprise (read-only)
- Documenta formato de armazenamento (array PHP nativo, --format=json
  correcto) e o gotcha de escrita idempotente do wp option patch update
- Confirmado ao vivo: so descomplicar.pt tem o plugin instalado
2026-08-19 06:29:47 +01:00
Descomplicar Agent a9ad8c5171 feat(skills): mcp-insert-headers-footers — MCP dedicado ao Insert Headers and Footers (WPCode Lite), gotcha de slashing wp_unslash/wp_slash, aviso de risco explícito 2026-08-19 06:29:12 +01:00
Emanuel Almeida fad4c1f33b docs: skill mcp-click-to-chat — MCP Click to Chat for WhatsApp (número, mensagem, toggle, posição/estilo) 2026-08-19 06:28:02 +01:00
ealmeida 82c800bfe0 feat(wordpress): novas skills seriously-simple-podcasting + mcp-seriously-simple-podcasting
Documenta as 14 tools do MCP dedicado (mcp-seriously-simple-podcasting, porta 3203) para
episódios/shows/definições de show em emanuelalmeida.pt, complementado pela skill de
conhecimento seriously-simple-podcasting (achado central: REST nativo do plugin é
escrita-capaz para episódios mas read-only para definições de show).
2026-08-19 06:14:32 +01:00
Emanuel Almeida b2b5070cee docs: skill mcp-bit-integrations — MCP dedicado Bit Integrations/Bit Integrations Pro (BitApps)
Único documento de referência para o schema btcbi_* (sem skill de conhecimento separada):
flows, logs de execução, connections, mapeamento completo de flow_details por app
(PerfexCRM/Desk, Google Contacts), mascaramento recursivo de credenciais, verificação
ponta-a-ponta contra produção (10 flows/75 logs) e staging.
2026-08-19 06:08:40 +01:00
ealmeida addd556a07 docs: skill mcp-fluentform — MCP FluentForms (formulários, submissions, contagens, settings)
Documenta o MCP dedicado mcp-fluentform (descomplicar.pt + starter.descomplicar.pt):
9 tools sobre a camada de serviço oficial do plugin (FormService/
SubmissionService/GlobalSettingsService), mapeamento de tabelas custom
fluentform_*, gotchas confirmados ao vivo (serialização de datas Carbon-like,
race condition em escritas paralelas dependentes) e evidência de verificação
ponta-a-ponta contra produção/staging.
2026-08-19 06:08:01 +01:00
ealmeida e709130a1f docs(skills): adiciona mcp-wpforms — MCP dedicado ao WPForms + Form Abandonment
Documenta o novo MCP standalone /media/ealmeida/Dados/Dev/mcp-wpforms/ (12 tools,
descomplicar.pt + emanuelalmeida.pt): formularios, entries (listar/ler/contar/
marcar lida/estrela/spam), entries abandonadas com contexto capturado, settings
gerais e estado Akismet. Sem skill de conhecimento wpforms separada — esta skill
inclui o mapeamento completo de tabelas/options (unica documentacao).
2026-08-19 06:06:58 +01:00
Emanuel Almeida 1fc8756767 docs: skill mcp-fluent-smtp — MCP FluentSMTP multi-site (descomplicar.pt, starter, emanuelalmeida.pt)
Estado geral, connections com segredos sempre mascarados, logs de email com
filtros/paginacao, detalhe de log, estatisticas de envio, reenvio controlado
(confirm:true). Documenta tambem o mapeamento de dados do plugin (unica
fonte, nao existe skill de conhecimento separada) e a decisao deliberada de
nao expor escrita de configuracao de connections.
2026-08-19 06:05:47 +01:00
ealmeida 93c68f7e58 feat(wordpress): novo MCP mcp-rank-math - escrita/gestao Rank Math SEO
27 tools via WP-CLI/SSH (bridge SQL para tabelas planas + wp eval-file
para dados serializados/side-effects): meta de post/taxonomia, schema
markup, redirects (via RankMath\Redirections\DB), modulos, sitemap,
404 monitor, analytics GSC, IndexNow, validacao SEO ao vivo por HTTP.

Cobre exactamente o que o MCP oficial rank-math-mcp (abilities
rank-math/* via WP Abilities API, documentado nesta sessao por outro
agente em rank-math/SKILL.md secao 17) nao cobre: esse e read-only/
analise (audit-site-seo, get-post-schema, scores, AI Visibility); este
e escrita/gestao (redirects, modulos, 404s, sitemap, options). Os dois
coexistem - rank-math/SKILL.md secao 17.4 actualizada com tabela de
quando usar qual dos tres caminhos (rank-math-mcp / mcp-rank-math /
WP-CLI).

Testado ponta-a-ponta em producao 19-08-2026: leituras com dados reais
(383 posts score bom, 21 modulos activos, 3 redirects, sitemap 9
entradas) e escritas verificadas sem mutar dados (no-op em option/meta
existentes, ciclo completo create+delete de um redirect de teste). Bug
real apanhado no smoke test: rank_math_modules tem chaves nao-
sequenciais na BD -> json_encode serializa como objecto, nao array -
normalizado em normalizeStringArray() antes de considerar pronto.
2026-08-19 05:53:53 +01:00
Claude Code ea051c273f feat(wordpress): playbooks de uso para mcp-jetengine
Adiciona references/playbooks.md (7 fluxos: ler antes de criar, modulos
opcionais, CPT+taxonomia+meta-box, CCT, glossario, query builder+listing,
levantar contexto) + indice curto em SKILL.md + keywords de trigger.

Documenta 2 gotchas confirmados contra o schema nativo (tools/list
19-08-2026, nao exercidos como writes em producao): CCT exige o modulo
'custom-content-types' activo (so 'booking-forms' estava activo);
query_type 'custom-content-type' aparece na descricao de tool-add-query
mas nao no enum real - usar 'posts' com post_type 'slug/name'.
2026-08-19 05:52:05 +01:00
ealmeida 46175594c1 feat(wordpress): nova skill fluent-crm (conhecimento profundo) + actualiza mcp-fluent-crm
fluent-crm documenta arquitectura Free/Pro, schema fc_*, FluentCrmApi(), guarda anti-escalada de status, wp-admin, Funnels/Dynamic Segments — companheira de conhecimento da mcp-fluent-crm (execução), mesmo padrão app-for-cloudflare/mcp-cloudflare-app.
2026-08-19 05:50:10 +01:00
Claude Code 47ab74ccfa feat(wordpress): nova skill mcp-jetengine - proxy MCP nativo JetEngine
Documenta o MCP jetengine (proxy stdio<->HTTPS ao MCP nativo do plugin,
Features API v3.8.0+): 11 tools, seguranca, verificacao, relacao com a
skill jetengine e com mcp-wpfc/mcp-webp-express.
2026-08-19 05:45:55 +01:00
ealmeida 572cb91b38 feat(wordpress): nova skill mcp-fluent-crm - MCP dedicado FluentCRM/FluentCRM Pro
20 tools (10 leitura + 10 escrita) para descomplicar.pt (produção, 291k contactos). Escritas via FluentCrmApi()/modelos do próprio plugin por SSH+wp eval, sem escrever ficheiros no servidor. Guardas de status explícitas (force_update/confirm) para nunca rebaixar/ressuscitar contactos sem intenção clara.
2026-08-19 05:44:16 +01:00
ealmeida c74dab4ac2 wordpress: nova skill mcp-wpmeteor (como usar o MCP wpmeteor)
- documenta as 8 tools do MCP wpmeteor: status, config, toggle de modulo,
  delay, exclusoes, telemetria detected
- wp-meteor actualizada: estado real confirmado nos 8 sites do bundle
  (so emanuelalmeida.pt tem o plugin), cross-referencia para mcp-wpmeteor
- mesma convencao de mcp-wpfc/mcp-element-pack/mcp-cloudflare-app: esta
  skill e o 'como executar', wp-meteor continua a ser o mapeamento
2026-08-19 05:35:21 +01:00
Claude Code 1ee91142d9 feat(wordpress): nova skill mcp-webp-express + doc MCP webpx na skill webp-express
Skill mcp-webp-express: MCP dedicado (webpx) para WebP Express multi-site
via WP-CLI/SSH, mesmo padrao mcp-wpfc. webp-express/SKILL.md: nova seccao
14 documentando o MCP construido e testado ao vivo em emanuelalmeida.pt.
2026-08-19 05:31:08 +01:00
ealmeida eae213c7f0 feat(wordpress): nova skill mcp-fluent-booking - MCP dedicado FluentBooking/FluentBooking Pro
Cobre: calendarios, event types, reservas (listar/detalhe/mudar
estado/reenviar confirmacao), actividade, disponibilidade, reports,
definicoes gerais, anfitrioes, estado do plugin/licenca Pro. 15
tools via REST API real com Application Password (nao SSH/SQL como
mcp-bit-social - o FluentBooking regista register_rest_route com
permission_callback por capability). Testado ponta-a-ponta em
producao 19-08-2026, incluindo escrita sem mutar dados reais (422
'No changes found' do proprio plugin). references/api-reference.md
com os endpoints/filtros/enums confirmados e references/diagnostics.md
com o playbook de uso (agenda, cancelamento, health check).
2026-08-19 05:29:42 +01:00
ealmeida b32ad83617 wordpress: nova skill mcp-wpfc (como usar o MCP wpfc)
- documenta as 18 tools do MCP wpfc (site como parametro, guarda-corpo
  Premium, allowlist fixa de 7 option keys)
- mesma convencao das skills mcp-element-pack/mcp-bit-social/mcp-cloudflare-app:
  esta skill e o 'como executar', wp-fastest-cache continua a ser o
  mapeamento completo das options
- cross-referencia wp-fastest-cache <-> mcp-wpfc nos dois sentidos
2026-08-19 05:24:09 +01:00
ealmeida c4139c84c3 wordpress/wp-fastest-cache: MCP wpfc construido e testado em producao (§16)
- estado real por site actualizado: 8 sites WP reais do bundle, nao 7
  (ccv, care, ecommerce-demo, ecommerce, e-commerce mapeados)
- pergunta em aberto sobre camada de cache em descomplicar.pt respondida:
  nenhum plugin de page-cache activo hoje, so edge Cloudflare
- achado critico documentado: options WPFC sao strings PHP planas com
  JSON dentro, nao JSON tipado do WP-CLI -- usar --format=json causa
  dupla codificacao e corrompe a option (reproduzido e corrigido)
- 18 tools testados ponta-a-ponta contra producao (descomplicar.pt, ccv)
2026-08-19 05:14:53 +01:00
ealmeida 70b2866edf feat(wordpress): nova skill mcp-bit-social - MCP dedicado BitSocial/BitSocial Pro
Cobre: contas sociais ligadas (+ activar/desactivar), schedules de
auto-post e Share Now, logs de publicacao, resumo de falhas por
plataforma, analytics, estado da licenca Pro. 12 tools, testado
ponta-a-ponta em producao 19-08-2026. references/data-model.md com o
schema completo wpah_bit_social_* e references/diagnostics.md com o
playbook de investigacao de falhas (inclui o caso real recorrente do
Pinterest sem imagem).
2026-08-19 05:11:24 +01:00
ealmeida a2205076fc feat(wordpress): skill mcp-cloudflare-app para o novo MCP da zona Cloudflare (app-for-cf)
Documenta as 14 tools do MCP dedicado descomplicar.pt (Bot Management, WAF Managed Ruleset, HSTS, CT, Leaked Credential Checks, purge cache), complementar à skill app-for-cloudflare existente. Keyword cloudflare adicionada ao manifesto.
2026-08-19 05:10:03 +01:00
ealmeida 639a5a4f6a wordpress/wp-fastest-cache: regista plano do MCP wpfc-mcp e corrige estado Premium por site
- descomplicar.pt tem wp-fastest-cache-premium 1.7.7 no disco mas INACTIVO
  (corrige a afirmacao anterior de que Premium nao estava instalado em
  nenhum site do bundle -- so era verdade para emanuelalmeida.pt)
- emanuelalmeida.pt e starter.descomplicar.pt: Free activo
- descomplicar.pt: nem Free nem Premium activos -- pergunta em aberto
  sobre o que serve cache HTML la hoje
- decisao de ambito: MCP multi-site (parametro site), activar Premium
  em descomplicar.pt (ainda por executar), catalogo de 18 tools previsto
2026-08-19 05:03:28 +01:00
ealmeida 5647b558cd wordpress/rank-math: documenta MCP oficial Rank Math (secao 17)
- rank-math-mcp via mcp-adapter-default-server, mesma infra wp mcp-adapter
  ja vendored no EMCP Tools, sem instalacao nova
- 13 abilities rank-math/* catalogadas com descricoes reais, testadas
  ao vivo em descomplicar.pt (get-seo-scores devolveu dados reais)
- tabela quando usar MCP vs WP-CLI
2026-08-19 04:55:56 +01:00
ealmeida 67f6d6e6e1 wordpress: adiciona skills element-pack-widgets e mcp-element-pack
- element-pack-widgets: catalogo verificado 168 widgets core + 95 integracao
  Element Pack Pro (BdThemes), get_name() extraido do codigo-fonte, 11
  excepcoes de nome confirmadas
- mcp-element-pack: documenta o MCP dedicado (node stdio) para licenca/
  modulos/mega-menu/white-label/custom-code do Element Pack Pro
2026-08-19 04:47:07 +01:00
Claude Code 000faca193 fix(wordpress): mcp-abilities-elementor - causa-raiz exacta da nao-exposicao MCP
Confirmado via WordPress/mcp-adapter README + wp eval ao vivo: o plugin
nao esta invisivel por falta do WP MCP Adapter instalado, mas por nunca
ter marcado nenhuma das 89 abilities com meta.public/meta.mcp.public
nem criado servidor MCP custom. get_meta() confirma ausencia da flag.
2026-08-19 04:19:45 +01:00
Claude Code 8bfdd34bb6 feat(wordpress): adiciona mcp-abilities-elementor (testado ao vivo)
Plugin Devenia instalado e testado em emanuelalmeida.pt (19-08-2026):
89 abilities elementor/* via WordPress Abilities API nativa. Confirmado
nao acessivel por MCP nesta sessao (sem servidor MCP proprio) - testado
via wp eval-file + WP_Ability::execute(). Achados reais: camada de
auditoria de design funcional (evaluate-design score 88/100 em pagina
real), delete-template funcional (preenche gap do EMCP), gate
template-first em authoring primitives, bug de poluicao de settings
em add-heading, bug de PHP warning em list-experiments, update-element
exige objecto completo (nao merge parcial como EMCP). Artefactos de
teste removidos (post 18166, template 18168).
2026-08-19 04:09:24 +01:00
Claude Code 7363300a7f feat(wordpress): adiciona elementor-v4-visual-editor (editor visual V4)
Adaptado de jainshwetank/elementor-pro-designer-skill (MIT) - painel
General/Style/Interactions, Class Manager, Variables Manager, breakpoints,
padroes de layout e troubleshooting para o editor visual Elementor Pro V4.
Complementa emcp-page-building (mesma versao Elementor, mas via MCP/API).
2026-08-19 03:50:30 +01:00
Claude Code 4a55d51329 feat(wordpress): EMCP Tools workflow skills + widget catalogs + pending wordpress skills
- emcp-page-building, emcp-content-ops, emcp-site-audit: EMCP Tools MCP
  workflows verified live (atomic/legacy interplay, apply-template overwrite
  risk, create-theme-template goes live immediately, false-positive malware
  pattern in scan-security, change ledger + rollback)
- elementor-pro-widgets: 30+5 native Elementor Pro widgets (curated catalog)
- elementskit-widgets / powerpack-widgets: 42 + 97 third-party widgets,
  widgetType extracted from plugin source (not guessed by convention)
- plugin.json bumped 1.2.0 -> 1.3.0, keywords + description updated
- commits pending wordpress skills already present as untracked files
  (emcp-tools, wordfence, wp-activity-log, seguranca-descomplicar,
  webp-express, wp-fastest-cache, wp-font-perf, wp-meteor,
  wp-activity-log, redis-object-cache, app-for-cloudflare) and pending
  edits (rank-math, wp-cli, wp-content-seo-gate)
2026-08-19 03:44:00 +01:00
AIkTop aa981e8089 feat(wordpress): nova skill full-cliente - broker de licencas WordPress premium (api.full.services)
Cobre: auditoria de ligacao/licencas por site, ligar sites a conta FULL,
reactivacao de plugins premium, e diagnostico de licencas fora da FULL
(fabricante directo, CodeCanyon). Baseada em leitura directa do codigo do
plugin full-customer v4.1.3 durante sessao real de auditoria da frota WP.
2026-08-16 15:21:49 +01:00
Claude Code 2863d0207f docs(gateway-check): regista slides-mcp (porta 3201) e bumpla infraestrutura para 1.2.2 2026-08-10 21:47:59 +01:00
Claude Code a179075704 feat(today): adicionar bloco de seguranca (P2-10, SPEC-Hardening-Seguranca.md)
Fase 2 passo 7b invoca today-security-block.py (71.Seguranca, Hub) -- le
relatorios/*.md ja gerados (sem correr scans novos), score+delta+alertas
por dominio. Secao '## Seguranca' nova no formato do dashboard. v12.0.0 -> v12.1.0.
2026-08-10 12:34:00 +01:00
Claude Code AI 88e0758d94 docs(gateway-check): regista MCPs migrados para o gateway (easypanel, infisical, paperclip)
- +paperclip (pm2, 3168), +easypanel/infisical (systemd fastmcp-proxy, 3206/3207)
- contadores corrigidos (30->33 services), proxima porta livre 3185->3208
2026-08-08 23:02:33 +01:00
ealmeida fd9b333b7b infraestrutura: bump 1.2.1 — propaga correccoes do mapa de portas do gateway
A cache do plugin e versionada por directorio (cache/.../1.2.0/), pelo que
as correccoes de ca6c56c ao gateway-check nao chegavam ao carregador sem
bump de versao.
2026-07-30 23:04:32 +01:00
ealmeida ca6c56c4d4 infraestrutura: actualiza mapa de portas do gateway e regras de operação
Corrige a próxima porta livre (a 3188 documentada estava ocupada e causou um
deploy falhado), regista o router youtube e o ssh-unified, e acrescenta três
regras: backups do nginx nunca em sites-enabled/, cruzar sempre ss -tlnH com
as portas roteadas, e contar ~40s de arranque nos MCPs Python/FastMCP.
2026-07-30 22:58:47 +01:00
ealmeida 1f19ec315c fix: bump plugin.json de marketing/gestao/project-manager/wordpress
O commit 0e2c832 bumpou só o marketplace.json agregado. A fonte de verdade
para o /plugin update é <plugin>/.claude-plugin/plugin.json, que ficou nas
versões antigas — resultado: o catálogo mostrava marketing 2.0.0 mas o
/plugin update respondia "already at the latest version (1.0.0)" e o cache
continuou a servir a superfície SEO morta.

Alinha as quatro fontes com o agregado e documenta o acoplamento no README:
os dois ficheiros têm de ser bumpados juntos, não há automação a sincronizá-los.
2026-07-30 22:58:46 +01:00
354 changed files with 14142 additions and 364 deletions
+1 -1
View File
@@ -70,7 +70,7 @@
"name": "infraestrutura",
"source": "./infraestrutura",
"description": "Server management, Proxmox VE/PBS/Clustering, CWP administration, EasyPanel deployments, security audits, backups and MCP development. Backed by NotebookLM notebooks (Proxmox 150+ sources).",
"version": "1.2.0",
"version": "1.2.2",
"author": {
"name": "Descomplicar - Crescimento Digital",
"url": "https://descomplicar.pt"
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — claude-plugins
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — claude-plugins
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — claude-plugins
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+28 -1
View File
@@ -8,4 +8,31 @@ layer: wiki
---
# claude-plugins
Marketplace de plugins Claude Code da Descomplicar
Marketplace de plugins Claude Code da Descomplicar
## Versões — bumpar sempre nos DOIS sítios
A versão de cada plugin vive em dois ficheiros e **não há automação a sincronizá-los**:
| Ficheiro | Papel | Quem o lê |
|---|---|---|
| `<plugin>/.claude-plugin/plugin.json` | **fonte de verdade** | `/plugin update` — é esta que decide se há versão nova |
| `.claude-plugin/marketplace.json` | agregado derivado | `/plugin marketplace update` — catálogo |
Bumpar só o agregado **não tem efeito nenhum**: o catálogo mostra a versão nova, o
`/plugin update` responde `already at the latest version` e o cache continua na antiga.
Aconteceu a 30-07-2026 com marketing/gestao/project-manager/wordpress.
Verificar coerência antes de commitar:
```bash
for p in */; do p=${p%/}; f="$p/.claude-plugin/plugin.json"; [ -f "$f" ] || continue
a=$(jq -r .version "$f")
b=$(jq -r ".plugins[]|select(.name==\"$p\").version" .claude-plugin/marketplace.json)
[ "$a" = "$b" ] || echo "DIVERGE $p: plugin.json=$a marketplace.json=$b"
done
```
Depois de publicar: `/plugin marketplace update descomplicar-plugins` (catálogo) **e**
`/plugin update <nome>@descomplicar-plugins` (reinstala no cache). O primeiro sozinho
não actualiza o que corre.
+8
View File
@@ -0,0 +1,8 @@
# STATUS.md — claude-plugins
**Versão:** 0.1 | **Data:** 2026-06-30 | **Agente:** —
## Estado actual
- Em curso: —
- Bloqueios: —
- Próximos passos: —
+23
View File
@@ -0,0 +1,23 @@
---
type: Validation
version: 2.5
padrao-versao: 2.5
timestamp: 2026-08-19 09:16:34 UTC
mode: project
status: ❌ FAILED
---
# VALIDAÇÃO — 2026-08-19
## Resumo
| Métrica | Valor |
|---------|-------|
| Modo | project |
| Total projecto | 23 |
| Ficheiros OKF | 0 |
| Entidades OKF | 0 |
| Relacionamentos OKF | 0 |
| Erros | 23 |
| Avisos | 6 |
| Veredicto | ❌ FAILED |
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — skills
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — skills
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — skills
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+3
View File
@@ -0,0 +1,3 @@
# skills
Subprojecto skills do ecossistema Descomplicar.
+8
View File
@@ -0,0 +1,8 @@
# STATUS.md — skills
**Versão:** 0.1 | **Data:** 2026-06-30 | **Agente:** —
## Estado actual
- Em curso: —
- Bloqueios: —
- Próximos passos: —
+6
View File
@@ -0,0 +1,6 @@
{
"task_id": null,
"project_id": null,
"customer_id": null,
"gitea_repo": null
}
+8
View File
@@ -0,0 +1,8 @@
# skills
## Documentação
- [README](README.md)
- [AGENTS](AGENTS.md)
- [STATUS](STATUS.md)
- [MEMORY](MEMORY.md)
+1
View File
@@ -0,0 +1 @@
## 2026-06-30 init | Estrutura padrão
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — automacao
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — automacao
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — automacao
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+3
View File
@@ -0,0 +1,3 @@
# automacao
Subprojecto automacao do ecossistema Descomplicar.
+8
View File
@@ -0,0 +1,8 @@
# STATUS.md — automacao
**Versão:** 0.1 | **Data:** 2026-06-30 | **Agente:** —
## Estado actual
- Em curso: —
- Bloqueios: —
- Próximos passos: —
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — agents
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — agents
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — agents
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+3
View File
@@ -0,0 +1,3 @@
# agents
Subprojecto agents do ecossistema Descomplicar.
+8
View File
@@ -0,0 +1,8 @@
# STATUS.md — agents
**Versão:** 0.1 | **Data:** 2026-06-30 | **Agente:** —
## Estado actual
- Em curso: —
- Bloqueios: —
- Próximos passos: —
+6
View File
@@ -0,0 +1,6 @@
{
"task_id": null,
"project_id": null,
"customer_id": null,
"gitea_repo": null
}
+8
View File
@@ -0,0 +1,8 @@
# agents
## Documentação
- [README](README.md)
- [AGENTS](AGENTS.md)
- [STATUS](STATUS.md)
- [MEMORY](MEMORY.md)
+1
View File
@@ -0,0 +1 @@
## 2026-06-30 init | Estrutura padrão
+6
View File
@@ -0,0 +1,6 @@
{
"task_id": null,
"project_id": null,
"customer_id": null,
"gitea_repo": null
}
+8
View File
@@ -0,0 +1,8 @@
# automacao
## Documentação
- [README](README.md)
- [AGENTS](AGENTS.md)
- [STATUS](STATUS.md)
- [MEMORY](MEMORY.md)
+1
View File
@@ -0,0 +1 @@
## 2026-06-30 init | Estrutura padrão
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — skills
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — skills
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — skills
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+3
View File
@@ -0,0 +1,3 @@
# skills
Subprojecto skills do ecossistema Descomplicar.
+8
View File
@@ -0,0 +1,8 @@
# STATUS.md — skills
**Versão:** 0.1 | **Data:** 2026-06-30 | **Agente:** —
## Estado actual
- Em curso: —
- Bloqueios: —
- Próximos passos: —
+6
View File
@@ -0,0 +1,6 @@
{
"task_id": null,
"project_id": null,
"customer_id": null,
"gitea_repo": null
}
+8
View File
@@ -0,0 +1,8 @@
# skills
## Documentação
- [README](README.md)
- [AGENTS](AGENTS.md)
- [STATUS](STATUS.md)
- [MEMORY](MEMORY.md)
+1
View File
@@ -0,0 +1 @@
## 2026-06-30 init | Estrutura padrão
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — skills
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — skills
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — skills
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+3
View File
@@ -0,0 +1,3 @@
# skills
Subprojecto skills do ecossistema Descomplicar.
+8
View File
@@ -0,0 +1,8 @@
# STATUS.md — skills
**Versão:** 0.1 | **Data:** 2026-06-30 | **Agente:** —
## Estado actual
- Em curso: —
- Bloqueios: —
- Próximos passos: —
+6
View File
@@ -0,0 +1,6 @@
{
"task_id": null,
"project_id": null,
"customer_id": null,
"gitea_repo": null
}
+8
View File
@@ -0,0 +1,8 @@
# skills
## Documentação
- [README](README.md)
- [AGENTS](AGENTS.md)
- [STATUS](STATUS.md)
- [MEMORY](MEMORY.md)
+1
View File
@@ -0,0 +1 @@
## 2026-06-30 init | Estrutura padrão
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — crm-ops
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — crm-ops
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — crm-ops
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+3
View File
@@ -0,0 +1,3 @@
# crm-ops
Subprojecto crm-ops do ecossistema Descomplicar.
+8
View File
@@ -0,0 +1,8 @@
# STATUS.md — crm-ops
**Versão:** 0.1 | **Data:** 2026-06-30 | **Agente:** —
## Estado actual
- Em curso: —
- Bloqueios: —
- Próximos passos: —
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — agents
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — agents
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — agents
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+3
View File
@@ -0,0 +1,3 @@
# agents
Subprojecto agents do ecossistema Descomplicar.
+8
View File
@@ -0,0 +1,8 @@
# STATUS.md — agents
**Versão:** 0.1 | **Data:** 2026-06-30 | **Agente:** —
## Estado actual
- Em curso: —
- Bloqueios: —
- Próximos passos: —
+6
View File
@@ -0,0 +1,6 @@
{
"task_id": null,
"project_id": null,
"customer_id": null,
"gitea_repo": null
}
+8
View File
@@ -0,0 +1,8 @@
# agents
## Documentação
- [README](README.md)
- [AGENTS](AGENTS.md)
- [STATUS](STATUS.md)
- [MEMORY](MEMORY.md)
+1
View File
@@ -0,0 +1 @@
## 2026-06-30 init | Estrutura padrão
+6
View File
@@ -0,0 +1,6 @@
{
"task_id": null,
"project_id": null,
"customer_id": null,
"gitea_repo": null
}
+8
View File
@@ -0,0 +1,8 @@
# crm-ops
## Documentação
- [README](README.md)
- [AGENTS](AGENTS.md)
- [STATUS](STATUS.md)
- [MEMORY](MEMORY.md)
+1
View File
@@ -0,0 +1 @@
## 2026-06-30 init | Estrutura padrão
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — skills
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — skills
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — skills
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+3
View File
@@ -0,0 +1,3 @@
# skills
Subprojecto skills do ecossistema Descomplicar.
+8
View File
@@ -0,0 +1,8 @@
# STATUS.md — skills
**Versão:** 0.1 | **Data:** 2026-06-30 | **Agente:** —
## Estado actual
- Em curso: —
- Bloqueios: —
- Próximos passos: —
+6
View File
@@ -0,0 +1,6 @@
{
"task_id": null,
"project_id": null,
"customer_id": null,
"gitea_repo": null
}
+8
View File
@@ -0,0 +1,8 @@
# skills
## Documentação
- [README](README.md)
- [AGENTS](AGENTS.md)
- [STATUS](STATUS.md)
- [MEMORY](MEMORY.md)
+1
View File
@@ -0,0 +1 @@
## 2026-06-30 init | Estrutura padrão
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — design-media
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — design-media
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — design-media
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+3
View File
@@ -0,0 +1,3 @@
# design-media
Subprojecto design-media do ecossistema Descomplicar.
+8
View File
@@ -0,0 +1,8 @@
# STATUS.md — design-media
**Versão:** 0.1 | **Data:** 2026-06-30 | **Agente:** —
## Estado actual
- Em curso: —
- Bloqueios: —
- Próximos passos: —
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — agents
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — agents
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — agents
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+3
View File
@@ -0,0 +1,3 @@
# agents
Subprojecto agents do ecossistema Descomplicar.
+8
View File
@@ -0,0 +1,8 @@
# STATUS.md — agents
**Versão:** 0.1 | **Data:** 2026-06-30 | **Agente:** —
## Estado actual
- Em curso: —
- Bloqueios: —
- Próximos passos: —
+6
View File
@@ -0,0 +1,6 @@
{
"task_id": null,
"project_id": null,
"customer_id": null,
"gitea_repo": null
}
+8
View File
@@ -0,0 +1,8 @@
# agents
## Documentação
- [README](README.md)
- [AGENTS](AGENTS.md)
- [STATUS](STATUS.md)
- [MEMORY](MEMORY.md)
+1
View File
@@ -0,0 +1 @@
## 2026-06-30 init | Estrutura padrão
+6
View File
@@ -0,0 +1,6 @@
{
"task_id": null,
"project_id": null,
"customer_id": null,
"gitea_repo": null
}
+8
View File
@@ -0,0 +1,8 @@
# design-media
## Documentação
- [README](README.md)
- [AGENTS](AGENTS.md)
- [STATUS](STATUS.md)
- [MEMORY](MEMORY.md)
+1
View File
@@ -0,0 +1 @@
## 2026-06-30 init | Estrutura padrão
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — skills
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — skills
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — skills
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+3
View File
@@ -0,0 +1,3 @@
# skills
Subprojecto skills do ecossistema Descomplicar.
+8
View File
@@ -0,0 +1,8 @@
# STATUS.md — skills
**Versão:** 0.1 | **Data:** 2026-06-30 | **Agente:** —
## Estado actual
- Em curso: —
- Bloqueios: —
- Próximos passos: —
+6
View File
@@ -0,0 +1,6 @@
{
"task_id": null,
"project_id": null,
"customer_id": null,
"gitea_repo": null
}
+8
View File
@@ -0,0 +1,8 @@
# skills
## Documentação
- [README](README.md)
- [AGENTS](AGENTS.md)
- [STATUS](STATUS.md)
- [MEMORY](MEMORY.md)
+1
View File
@@ -0,0 +1 @@
## 2026-06-30 init | Estrutura padrão
+6
View File
@@ -0,0 +1,6 @@
{
"task_id": null,
"project_id": null,
"customer_id": null,
"gitea_repo": null
}
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — dev-tools
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — dev-tools
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — dev-tools
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+3
View File
@@ -0,0 +1,3 @@
# dev-tools
Subprojecto dev-tools do ecossistema Descomplicar.

Some files were not shown because too many files have changed in this diff Show More