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 pasta data/.
  • 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
Dica de Segurança

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:

  1. Validação de Caminhos: Detecta automaticamente seu diretório raiz e verifica as permissões de gravação no diretório data.
  2. Conta de Administrador: Crie seu nome de usuário e senha de administrador.
  3. 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.

Tela de gerenciamento de espaço de trabalho e usuários

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.

Interface e configurações do Ace Editor

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.

Console de banco de dados integrado

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.

Histórico de backups e restaurações

Backups Unificados

Ao efetuar o backup, a rotina empacota:

  1. Todos os códigos fonte da pasta ativa.
  2. Dados de conexões com bancos.
  3. 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.

Console de chat com o Agente de IA

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.

Painel de integrações de provedores de IA

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:

  1. Instalar Ollama: Obtenha o instalador oficial:
    curl -fsSL https://ollama.com/install.sh | sh
  2. Baixar Modelo: Efetue o download via comando e.g. qwen2.5-coder:7b:
    ollama pull qwen2.5-coder:7b
  3. 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