@weppy/roblox-mcp 2.4.1 → 2.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +2 -2
- package/.github/workflows/install-test.yml +2 -21
- package/CHANGELOG.md +30 -5
- package/COMMERCIAL-LICENSE.md +1 -1
- package/README.md +12 -11
- package/TRADEMARKS.md +1 -1
- package/docs/assets/screenshots/roblox-explorer/roblox-explorer-property-window.png +0 -0
- package/docs/en/dashboard/changelog.md +1 -1
- package/docs/en/dashboard/connection.md +1 -1
- package/docs/en/dashboard/overview.md +1 -1
- package/docs/en/dashboard/playtest.md +1 -1
- package/docs/en/dashboard/settings.md +1 -1
- package/docs/en/dashboard/sync.md +1 -1
- package/docs/en/dashboard/tools.md +1 -1
- package/docs/en/explorer/overview.md +104 -0
- package/docs/en/installation/README.md +4 -4
- package/docs/en/installation/ai-apps/antigravity.md +1 -1
- package/docs/en/installation/ai-apps/claude-app.md +1 -1
- package/docs/en/installation/ai-apps/claude-code.md +1 -1
- package/docs/en/installation/ai-apps/codex-app.md +1 -1
- package/docs/en/installation/ai-apps/codex-cli.md +1 -1
- package/docs/en/installation/ai-apps/cursor.md +1 -1
- package/docs/en/installation/ai-apps/gemini-cli.md +1 -1
- package/docs/en/installation/roblox-explorer.md +12 -12
- package/docs/en/installation/roblox-plugin.md +5 -5
- package/docs/en/pro-upgrade.md +3 -3
- package/docs/en/sync/luau-lsp.md +13 -13
- package/docs/en/sync/overview.md +8 -8
- package/docs/en/tools/overview.md +1 -1
- package/docs/en/tools/playtest.md +2 -2
- package/docs/es/README.md +11 -10
- package/docs/es/dashboard/changelog.md +1 -1
- package/docs/es/dashboard/connection.md +1 -1
- package/docs/es/dashboard/overview.md +1 -1
- package/docs/es/dashboard/playtest.md +1 -1
- package/docs/es/dashboard/settings.md +1 -1
- package/docs/es/dashboard/sync.md +1 -1
- package/docs/es/dashboard/tools.md +1 -1
- package/docs/es/explorer/overview.md +104 -0
- package/docs/es/installation/README.md +3 -3
- package/docs/es/installation/ai-apps/antigravity.md +1 -1
- package/docs/es/installation/ai-apps/claude-app.md +1 -1
- package/docs/es/installation/ai-apps/claude-code.md +1 -1
- package/docs/es/installation/ai-apps/codex-app.md +1 -1
- package/docs/es/installation/ai-apps/codex-cli.md +1 -1
- package/docs/es/installation/ai-apps/cursor.md +1 -1
- package/docs/es/installation/ai-apps/gemini-cli.md +1 -1
- package/docs/es/installation/roblox-explorer.md +11 -11
- package/docs/es/installation/roblox-plugin.md +3 -3
- package/docs/es/pro-upgrade.md +1 -1
- package/docs/es/sync/luau-lsp.md +13 -13
- package/docs/es/sync/overview.md +8 -8
- package/docs/es/tools/overview.md +1 -1
- package/docs/es/tools/playtest.md +2 -2
- package/docs/id/README.md +11 -10
- package/docs/id/dashboard/changelog.md +1 -1
- package/docs/id/dashboard/connection.md +1 -1
- package/docs/id/dashboard/overview.md +1 -1
- package/docs/id/dashboard/playtest.md +1 -1
- package/docs/id/dashboard/settings.md +1 -1
- package/docs/id/dashboard/sync.md +1 -1
- package/docs/id/dashboard/tools.md +1 -1
- package/docs/id/explorer/overview.md +104 -0
- package/docs/id/installation/README.md +4 -4
- package/docs/id/installation/ai-apps/antigravity.md +1 -1
- package/docs/id/installation/ai-apps/claude-app.md +1 -1
- package/docs/id/installation/ai-apps/claude-code.md +1 -1
- package/docs/id/installation/ai-apps/codex-app.md +1 -1
- package/docs/id/installation/ai-apps/codex-cli.md +1 -1
- package/docs/id/installation/ai-apps/cursor.md +1 -1
- package/docs/id/installation/ai-apps/gemini-cli.md +1 -1
- package/docs/id/installation/roblox-explorer.md +11 -11
- package/docs/id/installation/roblox-plugin.md +3 -3
- package/docs/id/pro-upgrade.md +1 -1
- package/docs/id/sync/luau-lsp.md +13 -13
- package/docs/id/sync/overview.md +8 -8
- package/docs/id/tools/overview.md +1 -1
- package/docs/id/tools/playtest.md +2 -2
- package/docs/installer/assets/index-Bz0amd7x.js +2 -2
- package/docs/installer/index.html +1 -1
- package/docs/installer/manifest.webmanifest +3 -3
- package/docs/ja/README.md +11 -10
- package/docs/ja/explorer/overview.md +104 -0
- package/docs/ja/installation/README.md +4 -4
- package/docs/ja/installation/ai-apps/antigravity.md +1 -1
- package/docs/ja/installation/ai-apps/claude-app.md +1 -1
- package/docs/ja/installation/ai-apps/claude-code.md +1 -1
- package/docs/ja/installation/ai-apps/codex-app.md +1 -1
- package/docs/ja/installation/ai-apps/codex-cli.md +1 -1
- package/docs/ja/installation/ai-apps/cursor.md +1 -1
- package/docs/ja/installation/ai-apps/gemini-cli.md +1 -1
- package/docs/ja/installation/roblox-explorer.md +11 -11
- package/docs/ja/installation/roblox-plugin.md +3 -3
- package/docs/ja/pro-upgrade.md +1 -1
- package/docs/ja/sync/luau-lsp.md +13 -13
- package/docs/ja/sync/overview.md +8 -8
- package/docs/ja/tools/overview.md +1 -1
- package/docs/ja/tools/playtest.md +2 -2
- package/docs/ko/README.md +11 -10
- package/docs/ko/explorer/overview.md +104 -0
- package/docs/ko/installation/README.md +4 -4
- package/docs/ko/installation/ai-apps/antigravity.md +1 -1
- package/docs/ko/installation/ai-apps/claude-app.md +1 -1
- package/docs/ko/installation/ai-apps/claude-code.md +1 -1
- package/docs/ko/installation/ai-apps/codex-app.md +1 -1
- package/docs/ko/installation/ai-apps/codex-cli.md +1 -1
- package/docs/ko/installation/ai-apps/cursor.md +1 -1
- package/docs/ko/installation/ai-apps/gemini-cli.md +1 -1
- package/docs/ko/installation/roblox-explorer.md +12 -12
- package/docs/ko/installation/roblox-plugin.md +5 -5
- package/docs/ko/pro-upgrade.md +1 -1
- package/docs/ko/sync/luau-lsp.md +13 -13
- package/docs/ko/sync/overview.md +8 -8
- package/docs/ko/tools/overview.md +1 -1
- package/docs/ko/tools/playtest.md +2 -2
- package/docs/pt-br/README.md +12 -11
- package/docs/pt-br/dashboard/changelog.md +1 -1
- package/docs/pt-br/dashboard/connection.md +1 -1
- package/docs/pt-br/dashboard/overview.md +1 -1
- package/docs/pt-br/dashboard/playtest.md +1 -1
- package/docs/pt-br/dashboard/settings.md +1 -1
- package/docs/pt-br/dashboard/sync.md +1 -1
- package/docs/pt-br/dashboard/tools.md +1 -1
- package/docs/pt-br/explorer/overview.md +104 -0
- package/docs/pt-br/installation/README.md +4 -4
- package/docs/pt-br/installation/ai-apps/antigravity.md +1 -1
- package/docs/pt-br/installation/ai-apps/claude-app.md +1 -1
- package/docs/pt-br/installation/ai-apps/claude-code.md +1 -1
- package/docs/pt-br/installation/ai-apps/codex-app.md +1 -1
- package/docs/pt-br/installation/ai-apps/codex-cli.md +1 -1
- package/docs/pt-br/installation/ai-apps/cursor.md +1 -1
- package/docs/pt-br/installation/ai-apps/gemini-cli.md +1 -1
- package/docs/pt-br/installation/roblox-explorer.md +11 -11
- package/docs/pt-br/installation/roblox-plugin.md +3 -3
- package/docs/pt-br/pro-upgrade.md +1 -1
- package/docs/pt-br/sync/luau-lsp.md +13 -13
- package/docs/pt-br/sync/overview.md +8 -8
- package/docs/pt-br/tools/overview.md +1 -1
- package/docs/pt-br/tools/playtest.md +2 -2
- package/docs/troubleshooting.md +1 -1
- package/install.ps1 +23 -12
- package/install.sh +26 -13
- package/llms-full.txt +8 -8
- package/llms.txt +4 -4
- package/package.json +1 -1
- package/plugins/weppy-roblox-mcp/.claude-plugin/plugin.json +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{ChangelogDetailPage-J4ikmBDz.js → ChangelogDetailPage-DRfFUIvC.js} +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{ChangelogPage-CRyiyz5Q.js → ChangelogPage-Dgl8dBt6.js} +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{ConfirmModal-BqqXDrdf.js → ConfirmModal-DfdyAPrJ.js} +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{ConnectionPage-BFjleYaN.js → ConnectionPage-LSvSX1_u.js} +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{InfoLabel-DG5Q_c5f.js → InfoLabel-DrK7vhO-.js} +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{OverviewPage-skOVAGFT.js → OverviewPage-CXsGuoPu.js} +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{PlaytestPage-jdZTJ1qE.js → PlaytestPage-CgkzRAqQ.js} +2 -2
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{PropertyDiff-DGvziVFn.js → PropertyDiff-Dy3MffNh.js} +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/SettingsPage-D2ZBQ2KF.js +1 -0
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{StatusBadge-D-Jxp4ai.js → StatusBadge-hJyzgRAl.js} +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/SyncPage-eX2Rh-Ct.js +4 -0
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{TierComparison-Ct-fbCs5.js → TierComparison-BwKqP_4s.js} +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{TierPromoProgress-CoEpWzRl.js → TierPromoProgress-CLAr1gQq.js} +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{ToolsPage-Ov5mDGFU.js → ToolsPage-CqzfCxxH.js} +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{WhatsNewPage-DZ-tJeoq.js → WhatsNewPage-23o8LmsR.js} +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/index-BfvSPSNj.js +207 -0
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/{useLiveUptime-BpIv_H68.js → useLiveUptime-BeRNzFBh.js} +1 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/index.html +3 -3
- package/plugins/weppy-roblox-mcp/dashboard/dist/weppy-icon.png +0 -0
- package/plugins/weppy-roblox-mcp/dist/index.js +82 -82
- package/plugins/weppy-roblox-mcp/roblox-plugin/WeppyRobloxMCP.rbxm +0 -0
- package/.github/workflows/deploy-docs.yml +0 -41
- package/docs/assets/screenshots/roblox-explorer/install-from-vsix.png +0 -0
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/SettingsPage-DNmdsQlc.js +0 -1
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/SyncPage-BTX8aTCf.js +0 -4
- package/plugins/weppy-roblox-mcp/dashboard/dist/assets/index-aMbdHsW4.js +0 -147
- package/plugins/weppy-roblox-mcp/dashboard/dist/wrox-icon.png +0 -0
- /package/docs/installer/{wrox-icon.png → weppy-icon.png} +0 -0
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# Guia detalhado do WEPPY Roblox Explorer
|
|
2
|
+
|
|
3
|
+
O **WEPPY Roblox Explorer** e uma extensao complementar para VSCode / Antigravity que replica a arvore do Explorer do Roblox Studio dentro do seu editor. Navegue por instancias sincronizadas, abra scripts e edite propriedades sem precisar alternar entre o Studio e o editor.
|
|
4
|
+
|
|
5
|
+
> **Opcional** — o Explorer nao e obrigatorio. O servidor MCP e o plugin do Roblox Studio sao suficientes para usar todos os recursos principais. Instale o Explorer quando quiser navegar pela estrutura do projeto ou inspecionar e editar propriedades diretamente do editor.
|
|
6
|
+
|
|
7
|
+

|
|
8
|
+
|
|
9
|
+
## Por que usar o Explorer
|
|
10
|
+
|
|
11
|
+
Agentes de IA ja conseguem entender o contexto completo do projeto a partir dos arquivos gerados pelo Sync, mas quando um humano navega pelo mirror os caminhos de arquivo sozinhos nem sempre deixam a hierarquia clara. O Explorer reutiliza os mesmos dados de sync e os apresenta com a **mesma arvore que voce ve no Roblox Studio**, o que facilita muito:
|
|
12
|
+
|
|
13
|
+
- Ver de relance a qual servico / instancia um script pertence
|
|
14
|
+
- Localizar rapidamente instancias entre servicos por nome ou caminho
|
|
15
|
+
- Verificar o status de sync por arquivo (modified / studio / conflict)
|
|
16
|
+
- Editar propriedades sem abrir o Studio
|
|
17
|
+
|
|
18
|
+
## Requisitos
|
|
19
|
+
|
|
20
|
+
- VSCode 1.85+ ou Antigravity
|
|
21
|
+
- [Roblox MCP](../installation/README.md) instalado com Sync habilitado (Basic ou Pro)
|
|
22
|
+
- Um arquivo `weppy-project-sync/place_*/.sync-meta.json` gerado pelo Sync na raiz do projeto
|
|
23
|
+
|
|
24
|
+
O Explorer funciona apenas com os arquivos de sync em disco. Quando o servidor MCP local esta em execucao, o estado de sync ao vivo e as informacoes de direction tambem sao refletidos.
|
|
25
|
+
|
|
26
|
+
## Instalacao
|
|
27
|
+
|
|
28
|
+
Procure por **WEPPY Roblox Explorer** na barra lateral de Extensions (`Ctrl+Shift+X` / `Cmd+Shift+X`) do VSCode ou Antigravity e clique em **Install**.
|
|
29
|
+
|
|
30
|
+
Links diretos dos marketplaces:
|
|
31
|
+
|
|
32
|
+
- [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=weppy.weppy-roblox-explorer)
|
|
33
|
+
- [Open VSX](https://open-vsx.org/extension/weppy/weppy-roblox-explorer)
|
|
34
|
+
|
|
35
|
+
## Navegando pela arvore de instancias
|
|
36
|
+
|
|
37
|
+
Apos a instalacao, uma visao **WEPPY Explorer** aparece na Activity Bar do VSCode e descobre automaticamente o diretorio de sync a partir da raiz do projeto.
|
|
38
|
+
|
|
39
|
+
- **Raizes de servicos**: Servicos sincronizados como `Workspace`, `ReplicatedStorage` e `ServerScriptService` aparecem no nivel superior.
|
|
40
|
+
- **Icones de classes Roblox**: Mais de 200 icones no estilo do Studio que alternam automaticamente entre tema escuro e claro.
|
|
41
|
+
- **Multi Place**: Cada Place sincronizado e mostrado com sua propria raiz de arvore quando ha varios places.
|
|
42
|
+
- **Atualizacao automatica**: A arvore e atualizada com um debounce de 500ms sempre que arquivos de sync mudam.
|
|
43
|
+
- **Badges de status de sync**: Os estados `modified`, `studio` e `conflict` aparecem ao lado dos icones para voce notar mudancas e conflitos na hora.
|
|
44
|
+
|
|
45
|
+
Clicar em um item da arvore abre o arquivo que respalda a instancia (`.server.luau`, `.client.luau`, `.module.luau`, `.props.json`, ...). O menu de contexto permite copiar o caminho da instancia no formato `game.Workspace.Part` ou revelar o arquivo no explorador padrao do VSCode.
|
|
46
|
+
|
|
47
|
+
## Painel de propriedades
|
|
48
|
+
|
|
49
|
+
Selecione uma instancia na arvore do Explorer e execute **Open Properties** para abrir um painel parecido com a janela Properties do Studio. Voce pode inspecionar e editar propriedades agrupadas sem mexer diretamente no arquivo `.props.json`.
|
|
50
|
+
|
|
51
|
+

|
|
52
|
+
|
|
53
|
+
- **Exibicao agrupada**: As propriedades sao organizadas nos mesmos grupos do Studio (Appearance, Behavior, Data, Part, Transform etc.).
|
|
54
|
+
- **Editores por tipo**: Os widgets de entrada combinam com o tipo da propriedade — numeros, strings, booleanos, cores, Vector3, enums e muito mais.
|
|
55
|
+
- **Edicao baseada em arquivo**: As mudancas sao escritas no arquivo `*.props.json` da instancia e retornam ao Studio pelo caminho reverso do Sync (Pro, quando bidirectional esta ativado).
|
|
56
|
+
- **Editor personalizado**: Abrir um arquivo `.props.json` diretamente carrega o Painel de propriedades em vez do editor de texto padrao.
|
|
57
|
+
|
|
58
|
+
Se voce quiser que o Painel de propriedades abra automaticamente enquanto navega pela arvore, defina `robloxExplorer.propertyPanel.autoOpen` como `true` nas configuracoes.
|
|
59
|
+
|
|
60
|
+
## Busca de instancias
|
|
61
|
+
|
|
62
|
+
Execute o comando `WEPPY Explorer: Search Instances` (pelo icone do titulo da visao ou pela Command Palette) para abrir um QuickPick que busca em todos os servicos sincronizados.
|
|
63
|
+
|
|
64
|
+
- Correspondencia parcial sobre os nomes de instancia
|
|
65
|
+
- Selecionar um resultado foca a arvore no item correspondente
|
|
66
|
+
- Quando varios places estao sincronizados, os resultados sao delimitados por place
|
|
67
|
+
|
|
68
|
+
## Configuracoes
|
|
69
|
+
|
|
70
|
+
| Configuracao | Padrao | Descricao |
|
|
71
|
+
|--------------|--------|-----------|
|
|
72
|
+
| `robloxExplorer.mcpBaseUrl` | `""` | URL HTTP base do MCP local. Vazio faz o Explorer tentar `http://127.0.0.1:3002` e depois `http://127.0.0.1:3003`. |
|
|
73
|
+
| `robloxExplorer.syncRoot` | `""` | Caminho absoluto para a raiz `weppy-project-sync`. Descoberto automaticamente pelas pastas do workspace quando vazio. |
|
|
74
|
+
| `robloxExplorer.hidePropsFiles` | `false` | Oculta os arquivos de sync (`.props.json`, `_tree.json`, `.value.json`) no explorador padrao do VSCode. |
|
|
75
|
+
| `robloxExplorer.autoRefresh` | `true` | Atualiza automaticamente a arvore quando arquivos de sync mudam. |
|
|
76
|
+
| `robloxExplorer.showSyncStatus` | `true` | Mostra decoracoes de status de sync nos itens da arvore. |
|
|
77
|
+
| `robloxExplorer.followFocusCue` | `false` | Segue arquivos externos de focus cue para expandir a arvore e abrir arquivos relacionados. |
|
|
78
|
+
| `robloxExplorer.propertyPanel.autoOpen` | `false` | Abre o Painel de propriedades automaticamente ao selecionar uma instancia na arvore. |
|
|
79
|
+
|
|
80
|
+
## Comandos
|
|
81
|
+
|
|
82
|
+
| Comando | Descricao |
|
|
83
|
+
|---------|-----------|
|
|
84
|
+
| `WEPPY Explorer: Refresh` | Atualiza manualmente a arvore de instancias |
|
|
85
|
+
| `WEPPY Explorer: Search Instances` | Busca instancias em todos os servicos |
|
|
86
|
+
| `WEPPY Explorer: Open Backing File` | Abre o arquivo da instancia selecionada |
|
|
87
|
+
| `WEPPY Explorer: Open Properties` | Abre o Painel de propriedades da instancia selecionada |
|
|
88
|
+
| `WEPPY Explorer: Copy Instance Path` | Copia o caminho completo da instancia (ex.: `game.Workspace.Part`) |
|
|
89
|
+
| `WEPPY Explorer: Reveal in Explorer` | Mostra o arquivo no explorador padrao do VSCode |
|
|
90
|
+
| `WEPPY Explorer: Collapse All` | Recolhe todos os nos da arvore |
|
|
91
|
+
| `WEPPY Explorer: Open Settings` | Abre a pagina de configuracoes do Explorer |
|
|
92
|
+
|
|
93
|
+
## Solucao de problemas
|
|
94
|
+
|
|
95
|
+
- **Arvore vazia**: Verifique se o diretorio `weppy-project-sync/place_*` existe e se o Sync completou pelo menos um Full Sync. Defina `robloxExplorer.syncRoot` manualmente se necessario.
|
|
96
|
+
- **Status de sync nao aparece**: Confirme que o servidor MCP local esta em execucao e tente definir `robloxExplorer.mcpBaseUrl` de forma explicita.
|
|
97
|
+
- **Painel de propriedades nao abre**: Se um arquivo `.props.json` abrir no editor de texto padrao, clique com o direito sobre ele e escolha **Reopen Editor With... → WEPPY Property Panel**.
|
|
98
|
+
- **Icones quebrados**: Selecione novamente o tema do VSCode ou reinicie a janela para atualizar o cache de icones.
|
|
99
|
+
|
|
100
|
+
## Documentos relacionados
|
|
101
|
+
|
|
102
|
+
- [Guia de instalacao do Roblox MCP](../installation/README.md)
|
|
103
|
+
- [Guia de Sync](../sync/overview.md)
|
|
104
|
+
- [Visao geral das ferramentas](../tools/overview.md)
|
|
@@ -68,12 +68,12 @@ Registre o servidor MCP no seu app de IA. Funciona com qualquer app que suporte
|
|
|
68
68
|
|
|
69
69
|
---
|
|
70
70
|
|
|
71
|
-
## Opcional: Instalar
|
|
71
|
+
## Opcional: Instalar WEPPY Roblox Explorer (Extensão VSCode)
|
|
72
72
|
|
|
73
73
|
Navegue pelas árvores de instâncias sincronizadas dentro do VSCode com ícones de classes Roblox.
|
|
74
|
-
Esta extensao opcional exige que a instalacao do Roblox MCP acima ja esteja concluida, porque o Explorer le os dados de Sync em `
|
|
74
|
+
Esta extensao opcional exige que a instalacao do Roblox MCP acima ja esteja concluida, porque o Explorer le os dados de Sync em `weppy-project-sync` dentro da raiz do projeto.
|
|
75
75
|
|
|
76
|
-
👉 [Guia de instalação do
|
|
76
|
+
👉 [Guia de instalação do WEPPY Roblox Explorer](https://weppyai.com/en/install#explorer)
|
|
77
77
|
|
|
78
78
|
Instalação direta:
|
|
79
79
|
- [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=weppy.weppy-roblox-explorer)
|
|
@@ -83,7 +83,7 @@ Instalação direta:
|
|
|
83
83
|
|
|
84
84
|
## Depois da instalação
|
|
85
85
|
|
|
86
|
-
1. Abra o **Roblox Studio** e na aba Plugins clique em **
|
|
86
|
+
1. Abra o **Roblox Studio** e na aba Plugins clique em **WEPPY** → **Connect**
|
|
87
87
|
2. No **app de IA** teste assim:
|
|
88
88
|
|
|
89
89
|
```
|
|
@@ -61,7 +61,7 @@ Recomendamos manter o padrão (HTTP `127.0.0.1:3002`). Se necessário, você pod
|
|
|
61
61
|
|
|
62
62
|
## Teste de conexão
|
|
63
63
|
|
|
64
|
-
1. Abra o **Roblox Studio** → aba Plugins → **
|
|
64
|
+
1. Abra o **Roblox Studio** → aba Plugins → **WEPPY** → **Connect**
|
|
65
65
|
2. No **Antigravity**, digite:
|
|
66
66
|
```
|
|
67
67
|
Diga-me o que está selecionado atualmente no Roblox Studio
|
|
@@ -46,7 +46,7 @@ Como usar o Roblox MCP no [Claude Desktop App](https://claude.ai/download).
|
|
|
46
46
|
|
|
47
47
|
## Teste de Conexao
|
|
48
48
|
|
|
49
|
-
1. Inicie o **Roblox Studio** → Aba Plugins → **
|
|
49
|
+
1. Inicie o **Roblox Studio** → Aba Plugins → **WEPPY** → **Connect**
|
|
50
50
|
2. Inicie uma nova conversa no **Claude Desktop** e teste:
|
|
51
51
|
```
|
|
52
52
|
Crie uma parte azul no Roblox Studio
|
|
@@ -64,7 +64,7 @@ O Claude Code gerencia o servidor MCP automaticamente:
|
|
|
64
64
|
|
|
65
65
|
## Teste de Conexao
|
|
66
66
|
|
|
67
|
-
1. Inicie o **Roblox Studio** → Aba Plugins → **
|
|
67
|
+
1. Inicie o **Roblox Studio** → Aba Plugins → **WEPPY** → **Connect**
|
|
68
68
|
2. Teste no **Claude Code**:
|
|
69
69
|
```
|
|
70
70
|
Crie uma parte azul no Roblox Studio
|
|
@@ -30,7 +30,7 @@ Command: npx -y @weppy/roblox-mcp
|
|
|
30
30
|
|
|
31
31
|
## Teste de Conexao
|
|
32
32
|
|
|
33
|
-
1. Inicie o **Roblox Studio** → Aba Plugins → **
|
|
33
|
+
1. Inicie o **Roblox Studio** → Aba Plugins → **WEPPY** → **Connect**
|
|
34
34
|
2. Inicie uma nova conversa no **Codex App** e teste:
|
|
35
35
|
```
|
|
36
36
|
Diga-me o que esta selecionado atualmente no Roblox Studio
|
|
@@ -40,7 +40,7 @@ args = ["-y", "@weppy/roblox-mcp"]
|
|
|
40
40
|
|
|
41
41
|
## Teste de Conexao
|
|
42
42
|
|
|
43
|
-
1. Inicie o **Roblox Studio** → Aba Plugins → **
|
|
43
|
+
1. Inicie o **Roblox Studio** → Aba Plugins → **WEPPY** → **Connect**
|
|
44
44
|
2. Inicie o **Codex CLI** e digite:
|
|
45
45
|
```
|
|
46
46
|
Diga-me o que esta selecionado atualmente no Roblox Studio
|
|
@@ -45,7 +45,7 @@ Depois de editar a configuração, recarregue a janela do Cursor ou reinicie o a
|
|
|
45
45
|
|
|
46
46
|
## Teste de conexão
|
|
47
47
|
|
|
48
|
-
1. Abra o **Roblox Studio** → aba Plugins → **
|
|
48
|
+
1. Abra o **Roblox Studio** → aba Plugins → **WEPPY** → **Connect**
|
|
49
49
|
2. No **Cursor**, digite:
|
|
50
50
|
```
|
|
51
51
|
Tell me what's currently selected in Roblox Studio
|
|
@@ -81,7 +81,7 @@ gemini mcp add weppy-roblox-mcp npx --trust -e HTTP_PORT=3002 -- -y @weppy/roblo
|
|
|
81
81
|
|
|
82
82
|
## Teste de conexão
|
|
83
83
|
|
|
84
|
-
1. Abra o **Roblox Studio** → aba Plugins → **
|
|
84
|
+
1. Abra o **Roblox Studio** → aba Plugins → **WEPPY** → **Connect**
|
|
85
85
|
2. Execute o **Gemini CLI** e digite:
|
|
86
86
|
```
|
|
87
87
|
Me diga o que está selecionado atualmente no Roblox Studio
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
#
|
|
1
|
+
# WEPPY Roblox Explorer (Extensão VSCode)
|
|
2
2
|
|
|
3
3
|
Visualização em árvore de instâncias similar ao Explorer do Roblox Studio, dentro do VSCode. Navegue por instâncias sincronizadas, abra scripts diretamente e acompanhe o status de sincronização sem sair do editor.
|
|
4
|
-
Esta é uma extensao complementar do
|
|
4
|
+
Esta é uma extensao complementar do WEPPY, e não uma integração Roblox independente.
|
|
5
5
|
|
|
6
|
-

|
|
7
7
|
|
|
8
8
|
## Requisitos
|
|
9
9
|
|
|
10
10
|
- VSCode 1.85+
|
|
11
11
|
- [Roblox MCP](../../../README.md) instalado com Sync habilitado (Basic ou Pro)
|
|
12
|
-
- O Sync ja gerou `
|
|
12
|
+
- O Sync ja gerou `weppy-project-sync/place_*/.sync-meta.json` na raiz do projeto
|
|
13
13
|
|
|
14
14
|
## Instalação
|
|
15
15
|
|
|
16
|
-
Pesquise **
|
|
16
|
+
Pesquise **WEPPY Roblox Explorer** na barra lateral de Extensões do VSCode (`Ctrl+Shift+X` / `Cmd+Shift+X`) e clique em **Install**.
|
|
17
17
|
|
|
18
18
|
Ou instale diretamente por um destes marketplaces:
|
|
19
19
|
|
|
@@ -37,7 +37,7 @@ A navegação basica da arvore funciona a partir dos arquivos sincronizados em d
|
|
|
37
37
|
|
|
38
38
|
| Configuração | Padrão | Descrição |
|
|
39
39
|
|--------------|--------|-----------|
|
|
40
|
-
| `robloxExplorer.syncRoot` | `""` | Caminho absoluto para a raiz do `
|
|
40
|
+
| `robloxExplorer.syncRoot` | `""` | Caminho absoluto para a raiz do `weppy-project-sync`. Se estiver vazio, e detectado automaticamente. O WEPPY usa `{projectRoot}/weppy-project-sync`. |
|
|
41
41
|
| `robloxExplorer.hidePropsFiles` | `false` | Oculta arquivos de Sync (`.props.json`, `_tree.json`, `.value.json`) no explorador padrão do VSCode. |
|
|
42
42
|
| `robloxExplorer.autoRefresh` | `true` | Atualiza automaticamente a árvore quando os arquivos Sync mudam. |
|
|
43
43
|
| `robloxExplorer.showSyncStatus` | `true` | Exibe decorações de status Sync nos itens da árvore. |
|
|
@@ -46,11 +46,11 @@ A navegação basica da arvore funciona a partir dos arquivos sincronizados em d
|
|
|
46
46
|
|
|
47
47
|
| Comando | Descrição |
|
|
48
48
|
|---------|-----------|
|
|
49
|
-
| `
|
|
50
|
-
| `
|
|
51
|
-
| `
|
|
52
|
-
| `
|
|
53
|
-
| `
|
|
49
|
+
| `WEPPY Explorer: Refresh` | Atualizar manualmente a árvore de instâncias |
|
|
50
|
+
| `WEPPY Explorer: Search Instances` | Pesquisar instâncias em todos os serviços |
|
|
51
|
+
| `WEPPY Explorer: Open Backing File` | Abrir o arquivo de suporte de uma instância selecionada |
|
|
52
|
+
| `WEPPY Explorer: Copy Instance Path` | Copiar o caminho completo da instância (ex. `game.Workspace.Part`) |
|
|
53
|
+
| `WEPPY Explorer: Reveal in Explorer` | Mostrar o arquivo no explorador padrão do VSCode |
|
|
54
54
|
|
|
55
55
|
## Relacionado
|
|
56
56
|
|
|
@@ -25,9 +25,9 @@ Nota:
|
|
|
25
25
|
|
|
26
26
|
## 3. Verificar a Instalacao
|
|
27
27
|
|
|
28
|
-
Apos reiniciar, o botao **
|
|
28
|
+
Apos reiniciar, o botao **WEPPY** aparecera na aba Plugins.
|
|
29
29
|
|
|
30
|
-

|
|
31
31
|
|
|
32
32
|
## 4. Conectar ao Agente de IA
|
|
33
33
|
|
|
@@ -48,7 +48,7 @@ O servidor MCP deve estar instalado. Complete primeiro o guia do seu app de IA:
|
|
|
48
48
|
### Conectar
|
|
49
49
|
|
|
50
50
|
1. Abra qualquer projeto no **Roblox Studio**
|
|
51
|
-
2. Aba **Plugins** -> **
|
|
51
|
+
2. Aba **Plugins** -> **WEPPY**
|
|
52
52
|
3. Clique em **Connect**
|
|
53
53
|
4. Quando aparecer **"Connected"**, esta pronto
|
|
54
54
|
|
|
@@ -48,7 +48,7 @@ Você só precisa ativar a licença uma vez, no plugin ou no dashboard. As duas
|
|
|
48
48
|
|
|
49
49
|
### Ativar no plugin
|
|
50
50
|
|
|
51
|
-
1. Abra o **
|
|
51
|
+
1. Abra o **WEPPY** no Roblox Studio e conecte ao servidor MCP.
|
|
52
52
|
2. Abra a seção **Settings > License** no plugin.
|
|
53
53
|
3. Cole a chave comprada no campo `License key`.
|
|
54
54
|
4. Clique em **Activate** para ativar a licença.
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
# Usar `luau-lsp` com
|
|
1
|
+
# Usar `luau-lsp` com WEPPY Sync
|
|
2
2
|
|
|
3
|
-
O
|
|
3
|
+
O WEPPY Sync pode gerar automaticamente os arquivos sourcemap que o `luau-lsp` precisa, para que voce habilite recursos de editor com contexto de Roblox sem montar um projeto Rojo separado.
|
|
4
4
|
|
|
5
|
-
## O que o
|
|
5
|
+
## O que o WEPPY grava
|
|
6
6
|
|
|
7
|
-
Depois que o Full Sync termina, o
|
|
7
|
+
Depois que o Full Sync termina, o WEPPY grava:
|
|
8
8
|
|
|
9
|
-
- Place sourcemap: `
|
|
10
|
-
- Arquivo representativo da raiz: `
|
|
9
|
+
- Place sourcemap: `weppy-project-sync/place_<id>/sourcemap.json`
|
|
10
|
+
- Arquivo representativo da raiz: `weppy-project-sync/sourcemap.json`
|
|
11
11
|
|
|
12
|
-
Para a maioria dos usuarios, o caminho recomendado e `
|
|
12
|
+
Para a maioria dos usuarios, o caminho recomendado e `weppy-project-sync/sourcemap.json`.
|
|
13
13
|
|
|
14
14
|
## O que melhora
|
|
15
15
|
|
|
16
|
-
Quando o `luau-lsp` usa o sourcemap do
|
|
16
|
+
Quando o `luau-lsp` usa o sourcemap do WEPPY, melhora:
|
|
17
17
|
|
|
18
18
|
- Autocomplete de `game.*`
|
|
19
19
|
- Navegacao entre scripts sincronizados
|
|
@@ -21,8 +21,8 @@ Quando o `luau-lsp` usa o sourcemap do WROX, melhora:
|
|
|
21
21
|
|
|
22
22
|
## Configuracao recomendada
|
|
23
23
|
|
|
24
|
-
1. Execute o Full Sync uma vez para que o
|
|
25
|
-
2. Aponte a configuracao de sourcemap do `luau-lsp` no seu editor para `
|
|
24
|
+
1. Execute o Full Sync uma vez para que o WEPPY crie `weppy-project-sync/sourcemap.json`.
|
|
25
|
+
2. Aponte a configuracao de sourcemap do `luau-lsp` no seu editor para `weppy-project-sync/sourcemap.json`.
|
|
26
26
|
3. Se o seu cliente puder desativar a geracao automatica com Rojo, defina `luau-lsp.sourcemap.autogenerate` como `false`.
|
|
27
27
|
|
|
28
28
|
Exemplo de configuracao no VSCode:
|
|
@@ -31,11 +31,11 @@ Exemplo de configuracao no VSCode:
|
|
|
31
31
|
{
|
|
32
32
|
"luau-lsp.sourcemap.enabled": true,
|
|
33
33
|
"luau-lsp.sourcemap.autogenerate": false,
|
|
34
|
-
"luau-lsp.sourcemap.sourcemapFile": "
|
|
34
|
+
"luau-lsp.sourcemap.sourcemapFile": "weppy-project-sync/sourcemap.json"
|
|
35
35
|
}
|
|
36
36
|
```
|
|
37
37
|
|
|
38
38
|
## Observacao sobre Multi-place
|
|
39
39
|
|
|
40
|
-
`
|
|
41
|
-
Se voce precisar fixar um place especifico, aponte o `luau-lsp` diretamente para `
|
|
40
|
+
`weppy-project-sync/sourcemap.json` acompanha o place representativo atual do projeto.
|
|
41
|
+
Se voce precisar fixar um place especifico, aponte o `luau-lsp` diretamente para `weppy-project-sync/place_<id>/sourcemap.json`.
|
|
@@ -18,16 +18,16 @@ Sem Sync, a IA so enxerga trechos colados no chat. Com Sync ativo, ela trabalha
|
|
|
18
18
|
2. Incremental Sync: atualizacao continua das mudancas novas
|
|
19
19
|
3. Rastreamento de History/Status: ver o que mudou, quando e em qual direcao
|
|
20
20
|
|
|
21
|
-
Os dados de Sync ficam em `{projectRoot}/
|
|
22
|
-
Alem disso, o
|
|
23
|
-
Para integracoes de editor como `luau-lsp`, o caminho da raiz e o recomendado. Os passos de configuracao estao em [Usar `luau-lsp` com
|
|
21
|
+
Os dados de Sync ficam em `{projectRoot}/weppy-project-sync/place_{placeId}/explorer`.
|
|
22
|
+
Alem disso, o WEPPY grava um sourcemap por place em `{projectRoot}/weppy-project-sync/place_{placeId}/sourcemap.json` e mantem o arquivo representativo recomendado na raiz em `{projectRoot}/weppy-project-sync/sourcemap.json`.
|
|
23
|
+
Para integracoes de editor como `luau-lsp`, o caminho da raiz e o recomendado. Os passos de configuracao estao em [Usar `luau-lsp` com WEPPY Sync](./luau-lsp.md).
|
|
24
24
|
|
|
25
25
|
### Explorar dados sincronizados no VSCode
|
|
26
26
|
|
|
27
|
-
Instale a extensao [
|
|
27
|
+
Instale a extensao [WEPPY Roblox Explorer](../explorer/overview.md) para explorar a arvore de instancias sincronizada no VSCode, assim como no Roblox Studio.
|
|
28
28
|
O Explorer le os arquivos de sync gerados aqui e tambem pode mostrar status sync ao vivo e informacoes de direction quando o servidor MCP local estiver em execucao.
|
|
29
29
|
|
|
30
|
-

|
|
31
31
|
|
|
32
32
|
- Arvore de servicos/instancias com icones de classes Roblox
|
|
33
33
|
- Clique em um script para abri-lo e editar
|
|
@@ -40,7 +40,7 @@ O Explorer le os arquivos de sync gerados aqui e tambem pode mostrar status sync
|
|
|
40
40
|
| Direcao de sync | Studio -> Local | Bidirecional |
|
|
41
41
|
| Direction por tipo | Nao suportado | Suportado (Scripts / Values / Containers / Data / Services) |
|
|
42
42
|
| Apply Mode por tipo | Nao suportado | Suportado (Auto / Manual) |
|
|
43
|
-
| APIs de status/historico | Nao suportado | Suportado (`
|
|
43
|
+
| APIs de status/historico | Nao suportado | Suportado (`status_current_place`, `history`, `progress`) |
|
|
44
44
|
| Ferramenta `manage_sync` | Nao suportado | Suportado |
|
|
45
45
|
| Sync multiplace | Nao suportado | Suportado (ate 3 places) |
|
|
46
46
|
|
|
@@ -87,7 +87,7 @@ No Pro, voce controla Direction e Apply Mode por tipo.
|
|
|
87
87
|
|
|
88
88
|
| Acao | Descricao | Parametros principais |
|
|
89
89
|
|------|------|-----------|
|
|
90
|
-
| `
|
|
90
|
+
| `status_current_place` | Consultar o estado atual de sync do Place conectado | `-` |
|
|
91
91
|
| `history` | Consultar historico de mudancas | `placeId`, `query.limit`, `query.offset` |
|
|
92
92
|
| `directions` | Obter direcoes por tipo | `placeId` |
|
|
93
93
|
| `read_file` | Ler arquivo sincronizado | `placeId`, `instancePath` |
|
|
@@ -148,6 +148,6 @@ Nomes que contem `~` sao escapados como `~~` (ex: `Part~2` → `Part~~2/`). Regr
|
|
|
148
148
|
|
|
149
149
|
## Documentos relacionados
|
|
150
150
|
|
|
151
|
-
- [Usar `luau-lsp` com
|
|
151
|
+
- [Usar `luau-lsp` com WEPPY Sync](./luau-lsp.md)
|
|
152
152
|
- [Cobertura de ferramentas (Tools Overview)](../tools/overview.md)
|
|
153
153
|
- [Guia de upgrade Pro](https://weppyai.com/en/plans)
|
|
@@ -227,7 +227,7 @@ Politica de Sync:
|
|
|
227
227
|
|
|
228
228
|
| Acao | Descricao | Tier |
|
|
229
229
|
|------|-----------|------|
|
|
230
|
-
| `
|
|
230
|
+
| `status_current_place` | Obter o status de sincronizacao do Place conectado no momento | Pro |
|
|
231
231
|
| `history` | Obter historico de mudancas | Pro |
|
|
232
232
|
| `directions` | Obter direcoes de sincronizacao por tipo | Pro |
|
|
233
233
|
| `read_file` | Ler um arquivo sincronizado | Pro |
|
|
@@ -86,10 +86,10 @@ Edit --play--> Running --stop--> Edit
|
|
|
86
86
|
|
|
87
87
|
### 5. Escrita de relatorios
|
|
88
88
|
|
|
89
|
-
Os relatorios e logs sao gravados em `{projectRoot}/
|
|
89
|
+
Os relatorios e logs sao gravados em `{projectRoot}/weppy-project-sync/place_XXXXX/tests/YYYYMMDD-HHmmss/`.
|
|
90
90
|
|
|
91
91
|
```text
|
|
92
|
-
{projectRoot}/
|
|
92
|
+
{projectRoot}/weppy-project-sync/place_XXXXX/tests/YYYYMMDD-HHmmss/
|
|
93
93
|
├── test-report.md
|
|
94
94
|
└── test-log.txt
|
|
95
95
|
```
|
package/docs/troubleshooting.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
**Symptom:** "Connection failed" or plugin shows disconnected in Roblox Studio.
|
|
6
6
|
|
|
7
7
|
1. Make sure the MCP server is running: `npx -y @weppy/roblox-mcp`
|
|
8
|
-
2. In Roblox Studio: Plugins tab →
|
|
8
|
+
2. In Roblox Studio: Plugins tab → WEPPY → Connect
|
|
9
9
|
3. Confirm nothing is blocking `localhost:3002` (firewall, antivirus, VPN)
|
|
10
10
|
4. Try restarting both Roblox Studio and the MCP server
|
|
11
11
|
|
package/install.ps1
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#
|
|
2
|
-
#
|
|
2
|
+
# WEPPY — One-line install script (Windows PowerShell)
|
|
3
3
|
#
|
|
4
4
|
# Usage:
|
|
5
5
|
# irm https://raw.githubusercontent.com/hope1026/weppy-roblox-mcp/main/install.ps1 | iex
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
#
|
|
11
11
|
|
|
12
12
|
$ErrorActionPreference = "Stop"
|
|
13
|
-
$script:InstallLogPath = Join-Path ([System.IO.Path]::GetTempPath()) ("
|
|
13
|
+
$script:InstallLogPath = Join-Path ([System.IO.Path]::GetTempPath()) ("weppy-install-{0:yyyyMMdd-HHmmss}.log" -f (Get-Date))
|
|
14
14
|
$script:TranscriptStarted = $false
|
|
15
15
|
$script:NpmCommandPath = $null
|
|
16
16
|
|
|
@@ -118,7 +118,7 @@ function Add-AntigravityMcpConfig($configPath) {
|
|
|
118
118
|
if (-not (Test-Path $parentDir)) { New-Item -ItemType Directory -Path $parentDir -Force | Out-Null }
|
|
119
119
|
$env:MCP_CONFIG_PATH = $configPath
|
|
120
120
|
try {
|
|
121
|
-
node -e @"
|
|
121
|
+
node --input-type=commonjs -e @"
|
|
122
122
|
const fs = require('fs');
|
|
123
123
|
const configPath = process.env.MCP_CONFIG_PATH;
|
|
124
124
|
let config = {};
|
|
@@ -168,7 +168,7 @@ function Test-CodexConfigConfigured($configPath) {
|
|
|
168
168
|
|
|
169
169
|
$env:MCP_CODEX_CONFIG_PATH = $configPath
|
|
170
170
|
try {
|
|
171
|
-
node -e @'
|
|
171
|
+
node --input-type=commonjs -e @'
|
|
172
172
|
const fs = require('fs');
|
|
173
173
|
|
|
174
174
|
const configPath = process.env.MCP_CODEX_CONFIG_PATH;
|
|
@@ -589,7 +589,7 @@ function Add-McpToConfig($configPath) {
|
|
|
589
589
|
if (-not (Test-Path $parentDir)) { New-Item -ItemType Directory -Path $parentDir -Force | Out-Null }
|
|
590
590
|
$env:MCP_CONFIG_PATH = $configPath
|
|
591
591
|
try {
|
|
592
|
-
node -e @"
|
|
592
|
+
node --input-type=commonjs -e @"
|
|
593
593
|
const fs = require('fs');
|
|
594
594
|
const configPath = process.env.MCP_CONFIG_PATH;
|
|
595
595
|
let config = {};
|
|
@@ -605,7 +605,7 @@ fs.writeFileSync(configPath, JSON.stringify(config, null, 2) + '\n');
|
|
|
605
605
|
|
|
606
606
|
# ── Header ──
|
|
607
607
|
Write-Host ""
|
|
608
|
-
Write-Host "
|
|
608
|
+
Write-Host "WEPPY Installer" -ForegroundColor White -BackgroundColor DarkCyan
|
|
609
609
|
Write-Host "AI-powered Roblox Studio integration" -ForegroundColor DarkGray
|
|
610
610
|
Write-Host ("=" * 40)
|
|
611
611
|
|
|
@@ -635,11 +635,22 @@ if (Confirm-Action " Run npx -y @weppy/roblox-mcp --setup?") {
|
|
|
635
635
|
if (-not (Test-Path $npxPath)) {
|
|
636
636
|
$npxPath = "npx"
|
|
637
637
|
}
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
638
|
+
$setupWorkingDir = Join-Path ([System.IO.Path]::GetTempPath()) ("weppy-setup-" + [System.Guid]::NewGuid().ToString("N"))
|
|
639
|
+
$previousLocation = Get-Location
|
|
640
|
+
|
|
641
|
+
try {
|
|
642
|
+
New-Item -ItemType Directory -Path $setupWorkingDir -Force | Out-Null
|
|
643
|
+
Set-Location $setupWorkingDir
|
|
644
|
+
& $npxPath -y @weppy/roblox-mcp --setup
|
|
645
|
+
if ($LASTEXITCODE -ne 0) {
|
|
646
|
+
Write-Warn "Setup encountered a warning (non-blocking)"
|
|
647
|
+
} else {
|
|
648
|
+
Write-Ok "Setup complete"
|
|
649
|
+
}
|
|
650
|
+
}
|
|
651
|
+
finally {
|
|
652
|
+
Set-Location $previousLocation
|
|
653
|
+
Remove-Item $setupWorkingDir -Recurse -Force -ErrorAction SilentlyContinue
|
|
643
654
|
}
|
|
644
655
|
}
|
|
645
656
|
catch {
|
|
@@ -874,7 +885,7 @@ Write-Host "Installation complete!" -ForegroundColor Green
|
|
|
874
885
|
Write-Host ""
|
|
875
886
|
Write-Host " Next steps:"
|
|
876
887
|
Write-Host " 1. Restart Roblox Studio"
|
|
877
|
-
Write-Host " 2. Look for the
|
|
888
|
+
Write-Host " 2. Look for the WEPPY button in the Plugins tab"
|
|
878
889
|
Write-Host " 3. Click Connect and start building with AI!"
|
|
879
890
|
Write-Host ""
|
|
880
891
|
Write-Host " Auto registration: Claude Code, Claude Desktop, Cursor, Codex CLI/App, Gemini CLI, Antigravity"
|
package/install.sh
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
#
|
|
3
|
-
#
|
|
3
|
+
# WEPPY — One-line install script (macOS/Linux)
|
|
4
4
|
#
|
|
5
5
|
# Usage:
|
|
6
6
|
# curl -fsSL https://raw.githubusercontent.com/hope1026/weppy-roblox-mcp/main/install.sh | bash
|
|
@@ -22,9 +22,9 @@ DIM='\033[2m'
|
|
|
22
22
|
BOLD='\033[1m'
|
|
23
23
|
NC='\033[0m'
|
|
24
24
|
|
|
25
|
-
INSTALL_LOG_FILE="$(mktemp "${TMPDIR:-/tmp}/
|
|
25
|
+
INSTALL_LOG_FILE="$(mktemp "${TMPDIR:-/tmp}/weppy-install-XXXXXX.log" 2>/dev/null || true)"
|
|
26
26
|
if [ -z "${INSTALL_LOG_FILE:-}" ]; then
|
|
27
|
-
INSTALL_LOG_FILE="${HOME}/
|
|
27
|
+
INSTALL_LOG_FILE="${HOME}/weppy-install-error.log"
|
|
28
28
|
: > "$INSTALL_LOG_FILE"
|
|
29
29
|
fi
|
|
30
30
|
|
|
@@ -92,7 +92,7 @@ add_mcp_to_config() {
|
|
|
92
92
|
local parent_dir
|
|
93
93
|
parent_dir=$(dirname "$config_path")
|
|
94
94
|
mkdir -p "$parent_dir"
|
|
95
|
-
MCP_CONFIG_PATH="$config_path" node -e '
|
|
95
|
+
MCP_CONFIG_PATH="$config_path" node --input-type=commonjs -e '
|
|
96
96
|
const fs = require("fs");
|
|
97
97
|
const configPath = process.env.MCP_CONFIG_PATH;
|
|
98
98
|
let config = {};
|
|
@@ -108,7 +108,7 @@ is_json_mcp_configured() {
|
|
|
108
108
|
|
|
109
109
|
[ -f "$config_path" ] || return 1
|
|
110
110
|
|
|
111
|
-
MCP_CONFIG_PATH="$config_path" node -e '
|
|
111
|
+
MCP_CONFIG_PATH="$config_path" node --input-type=commonjs -e '
|
|
112
112
|
const fs = require("fs");
|
|
113
113
|
const configPath = process.env.MCP_CONFIG_PATH;
|
|
114
114
|
try {
|
|
@@ -126,7 +126,7 @@ add_antigravity_mcp_config() {
|
|
|
126
126
|
local parent_dir
|
|
127
127
|
parent_dir=$(dirname "$config_path")
|
|
128
128
|
mkdir -p "$parent_dir"
|
|
129
|
-
MCP_CONFIG_PATH="$config_path" node -e '
|
|
129
|
+
MCP_CONFIG_PATH="$config_path" node --input-type=commonjs -e '
|
|
130
130
|
const fs = require("fs");
|
|
131
131
|
const configPath = process.env.MCP_CONFIG_PATH;
|
|
132
132
|
let config = {};
|
|
@@ -154,7 +154,7 @@ is_antigravity_mcp_configured() {
|
|
|
154
154
|
|
|
155
155
|
[ -f "$config_path" ] || return 1
|
|
156
156
|
|
|
157
|
-
MCP_CONFIG_PATH="$config_path" node -e '
|
|
157
|
+
MCP_CONFIG_PATH="$config_path" node --input-type=commonjs -e '
|
|
158
158
|
const fs = require("fs");
|
|
159
159
|
const configPath = process.env.MCP_CONFIG_PATH;
|
|
160
160
|
function isJsonObject(value) {
|
|
@@ -185,7 +185,7 @@ is_codex_config_configured() {
|
|
|
185
185
|
local config_path="$1"
|
|
186
186
|
|
|
187
187
|
[ -f "$config_path" ] || return 1
|
|
188
|
-
MCP_CODEX_CONFIG_PATH="$config_path" node <<'NODE' >/dev/null 2>&1
|
|
188
|
+
MCP_CODEX_CONFIG_PATH="$config_path" node --input-type=commonjs <<'NODE' >/dev/null 2>&1
|
|
189
189
|
const fs = require("fs");
|
|
190
190
|
|
|
191
191
|
const configPath = process.env.MCP_CODEX_CONFIG_PATH;
|
|
@@ -615,7 +615,7 @@ resolve_optional_cli_command() {
|
|
|
615
615
|
|
|
616
616
|
# ── Header ──
|
|
617
617
|
# shellcheck disable=SC2059
|
|
618
|
-
printf "\n${BOLD}
|
|
618
|
+
printf "\n${BOLD}WEPPY Installer${NC}\n"
|
|
619
619
|
# shellcheck disable=SC2059
|
|
620
620
|
printf "${DIM}AI-powered Roblox Studio integration${NC}\n"
|
|
621
621
|
printf "%s\n" "════════════════════════════════════"
|
|
@@ -641,10 +641,23 @@ success "Node.js $(node -v) detected"
|
|
|
641
641
|
step "1/2" "Setup Roblox Studio Plugin"
|
|
642
642
|
|
|
643
643
|
if confirm " Run npx -y @weppy/roblox-mcp --setup?"; then
|
|
644
|
-
|
|
645
|
-
|
|
644
|
+
setup_tmp_dir=""
|
|
645
|
+
if setup_tmp_dir=$(mktemp -d "${TMPDIR:-/tmp}/weppy-setup-XXXXXX" 2>/dev/null); then
|
|
646
|
+
:
|
|
647
|
+
elif setup_tmp_dir=$(mktemp -d 2>/dev/null); then
|
|
648
|
+
:
|
|
649
|
+
fi
|
|
650
|
+
|
|
651
|
+
if [ -n "${setup_tmp_dir:-}" ] && [ -d "$setup_tmp_dir" ]; then
|
|
652
|
+
if (cd "$setup_tmp_dir" && npx -y @weppy/roblox-mcp --setup); then
|
|
653
|
+
success "Setup complete"
|
|
654
|
+
else
|
|
655
|
+
warn "Setup encountered a warning (non-blocking)"
|
|
656
|
+
fi
|
|
657
|
+
|
|
658
|
+
rm -rf "$setup_tmp_dir"
|
|
646
659
|
else
|
|
647
|
-
warn "Setup encountered a warning (
|
|
660
|
+
warn "Setup encountered a warning (failed to create temp working directory)"
|
|
648
661
|
fi
|
|
649
662
|
else
|
|
650
663
|
warn "Setup skipped"
|
|
@@ -872,7 +885,7 @@ printf "${BOLD}Installation complete!${NC}\n\n"
|
|
|
872
885
|
printf " ${BOLD}Next steps:${NC}\n"
|
|
873
886
|
printf " 1. Restart Roblox Studio\n"
|
|
874
887
|
# shellcheck disable=SC2059
|
|
875
|
-
printf " 2. Look for the ${BOLD}
|
|
888
|
+
printf " 2. Look for the ${BOLD}WEPPY${NC} button in the Plugins tab\n"
|
|
876
889
|
printf " 3. Click Connect and start building with AI!\n\n"
|
|
877
890
|
printf " Auto registration: Claude Code, Claude Desktop, Cursor, Codex CLI/App, Gemini CLI, Antigravity\n\n"
|
|
878
891
|
# shellcheck disable=SC2059
|