Requisitos do Sistema
O GOGIES IDE é otimizado para ser extremamente leve e rápido. Ele roda nativamente em servidores web padrão sem a necessidade de runtimes complexos do Node.js.
- Servidor Web: Apache, Nginx ou servidor embutido do PHP.
- Versão do PHP: PHP 7.4 ou superior (PHP 8.x recomendado).
- Extensões do PHP:
curl,sqlite3,zip, e permissões de escrita na pastadata/. - Navegador do Cliente: Navegador web moderno (Chrome, Firefox, Safari, Edge) com suporte a Javascript ES6 habilitado.
- Dependências Opcionais do Agente de IA: Instale-as em seu sistema host para desbloquear todos os recursos do Agente de IA GOGIES:
- Node.js: Desbloqueia ferramentas de build (como npm/vite), servidores de desenvolvimento e runtimes de automação.
- Docker: Permite testes isolados e seguros de códigos e serviços em sandbox.
- ImageMagick: Permite ao agente otimizar, cortar e converter imagens para melhorar o desempenho na web.
Instalação
Siga estes passos para implantar o GOGIES IDE em seu ambiente de servidor autohospedado:
1. Clonar o Repositório
Clone o repositório diretamente na pasta raiz de documentos públicos do seu servidor:
git clone https://github.com/alhelalat/GOGIES-AI-IDE.git /var/www/html/ide
2. Configurar Permissões de Diretório
O IDE grava históricos de sessões, configurações, backups de banco de dados e arquivos dentro de data/. Conceda permissão de gravação ao usuário do servidor web (normalmente www-data no Ubuntu/Debian):
cd /var/www/html/ide
chmod -R 775 data
chown -R www-data:www-data data
Como o IDE oferece recursos de execução de terminal para usuários autorizados, você deve vincular seu servidor web ao localhost (127.0.0.1) em vez de 0.0.0.0 para evitar o acesso externo de outras máquinas.
Configuração Inicial
Assim que os diretórios estiverem configurados, abra seu navegador e navegue até o instalador integrado:
http://localhost/ide/install.php
O assistente de instalação guiará você pelas seguintes configurações:
- Validação de Caminhos: Detecta automaticamente seu diretório raiz e verifica as permissões de gravação no diretório data.
- Conta de Administrador: Crie seu nome de usuário e senha de administrador.
- Primeiro Espaço de Trabalho: Crie seu espaço de trabalho inicial. Forneça um nome e o caminho absoluto para uma pasta em seu servidor.
Ao concluir, o instalador gerará o arquivo config.php e você será redirecionado para a tela de login.
Gerenciamento de Espaço de Trabalho
Espaços de trabalho permitem que você separe diferentes diretórios de projetos. Você pode criar espaços separados para diferentes projetos de clientes.
Use o seletor no painel inferior esquerdo para alternar entre os espaços de trabalho. Isso altera as configurações de caminhos da sessão e recarrega a árvore de arquivos.
Gerenciamento de Arquivos
A árvore de arquivos à esquerda do IDE permite a interação direta com a estrutura do projeto ativo:
- Novos Arquivos/Diretórios: Clique nos botões de novo arquivo ou nova pasta para criar recursos vazios.
- Menu de Contexto: Clique com o botão direito em um recurso para ações rápidas:
Rename:Renomear o item selecionado.Copy:Criar uma cópia instantânea.Download:Baixar arquivos diretamente.Decompress:Extrair arquivos ZIP diretamente no servidor.Delete:Excluir de forma recursiva (requer confirmação).
Editor de Código
A edição principal baseia-se no Ace Editor. Possui destaque de sintaxe para CSS, JS, HTML, PHP, Markdown, JSON e Python.
Arquivos abertos em modo somente leitura ocultam o botão de salvar.
Permissões de Usuários
Os usuários e níveis de acesso são salvos em data/users/users.php. O administrador possui o privilégio *, permitindo controle completo.
Membros padrão podem ser restritos apenas aos diretórios que lhes forem designados.
Gerenciamento de Banco de Dados
O IDE oferece um console integrado para SQLite, MySQL e PostgreSQL diretamente no seu navegador.
Bancos de Dados Suportados
Os parâmetros e credenciais de acessos aos bancos são salvos de forma segura no servidor.
Consultas e Inspeção
- Visualizador de Tabelas: Explore estruturas de esquemas, índices e chaves.
- Console SQL Interativo: Execute queries arbitrárias com paginação de resultados.
Backup e Restauração
Gere arquivos ZIP contendo o código e dumps SQL correspondentes.
Backups Unificados
Ao efetuar o backup, a rotina empacota:
- Todos os códigos fonte da pasta ativa.
- Dados de conexões com bancos.
- Estruturas e registros via PDO transações.
O resultado é salvo na pasta de dados do sistema.
Restauração Simples
Escolha um arquivo ZIP do histórico e clique em restaurar.
Agente de IA GOGIES
Colabore em tempo real com um agente autônomo.
Como Funciona
O agente executa ações interceptando marcações XML no chat.
Fila de Tarefas
As tarefas são resolvidas em segundo plano de forma assíncrona.
Regras Customizadas (agent_rules.md)
Configure diretrizes locais no arquivo de regras do seu projeto.
Modos de Operações
Determine as permissões de gravação de arquivos pelo assistente:
- Perguntar: Exibe alertas de confirmação diff.
- Auto-Aprovar: Executa alterações de imediato.
- Auto-Rejeitar: Bloqueia modificações de códigos.
Integração de Provedores de IA (Local & Nuvem)
Utilize APIs remotas comerciais ou servidores locais.
1. Configuração na Nuvem
Insira as chaves correspondentes de acesso:
- OpenAI: Configure URL e chave para
gpt-4o. - Anthropic: Configure URL e chave para
claude-3-5-sonnet-latest. - Google Gemini: Configure o endpoint para
gemini-2.5-flash.
2. Configuração com Ollama Local
Execute modelos open source de forma 100% offline:
- Instalar Ollama: Obtenha o instalador oficial:
curl -fsSL https://ollama.com/install.sh | sh - Baixar Modelo: Efetue o download via comando e.g.
qwen2.5-coder:7b:ollama pull qwen2.5-coder:7b - Configurar IDE: Configure a URL padrão da API local
http://localhost:11434/v1.
Referência de API
Comunique-se de forma programática através do arquivo api.php.
Ações Disponíveis
- get_file_content: Retorna o código de um arquivo.
POST api.php?action=get_file_content&path=index.php - save_file_content: Salva as alterações.
POST api.php?action=save_file_content Body parameters: path=index.php, content=your_code - list_files: Lista os recursos.
POST api.php?action=list_files&path=assets/css