feat: projeto buddie-chat - interface nativa linux para MCPs
- aplicação GTK4/Python para servidores MCP - interface moderna com Libadwaita - suporte OpenAI e OpenRouter - configuração múltiplos MCPs - chat em tempo real 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
131
README.md
Normal file
131
README.md
Normal file
@@ -0,0 +1,131 @@
|
||||
# Buddie Chat - Aplicação Nativa Linux
|
||||
|
||||
**Interface nativa para servidores MCP (Model Context Protocol)**
|
||||
|
||||
Descomplicar® Crescimento Digital
|
||||
https://descomplicar.pt
|
||||
|
||||
## Características
|
||||
|
||||
- ✅ **Aplicação nativa Linux** com GTK4 + Libadwaita
|
||||
- ✅ **Interface moderna** seguindo design patterns do GNOME
|
||||
- ✅ **Configuração de múltiplos MCPs** com teste de conexão
|
||||
- ✅ **Suporte OpenAI e OpenRouter** para processamento de mensagens
|
||||
- ✅ **Gestão de configuração** persistente
|
||||
- ✅ **Chat em tempo real** com interface intuitiva
|
||||
|
||||
## Requisitos do Sistema
|
||||
|
||||
- Linux (testado no Linux Mint)
|
||||
- Python 3.8+
|
||||
- GTK 4.0
|
||||
- Libadwaita 1.0
|
||||
|
||||
## Instalação
|
||||
|
||||
### 1. Dependências do sistema
|
||||
```bash
|
||||
sudo apt update
|
||||
sudo apt install python3 python3-pip python3-venv
|
||||
sudo apt install python3-gi python3-gi-cairo gir1.2-gtk-4.0 gir1.2-adw-1
|
||||
```
|
||||
|
||||
### 2. Instalar aplicação
|
||||
```bash
|
||||
cd /media/ealmeida/Dados/Dev/buddie-chat
|
||||
./run.sh
|
||||
```
|
||||
|
||||
O script automaticamente:
|
||||
- Cria ambiente virtual Python
|
||||
- Instala dependências necessárias
|
||||
- Executa a aplicação
|
||||
|
||||
## Como Usar
|
||||
|
||||
### 1. Configurar APIs
|
||||
- Abra a aplicação
|
||||
- Na barra lateral, configure sua chave OpenAI ou OpenRouter
|
||||
- As configurações são guardadas automaticamente
|
||||
|
||||
### 2. Adicionar Servidores MCP
|
||||
- Clique em "Adicionar MCP"
|
||||
- Configure:
|
||||
- **Nome**: Nome amigável para o servidor
|
||||
- **Comando**: Caminho para executável MCP
|
||||
- **Argumentos**: Parâmetros do servidor (opcional)
|
||||
|
||||
### 3. Conversar
|
||||
- Selecione um servidor MCP da lista
|
||||
- Digite sua mensagem no campo inferior
|
||||
- Pressione Enter ou clique em "Enviar"
|
||||
|
||||
## Estrutura do Projeto
|
||||
|
||||
```
|
||||
buddie-chat/
|
||||
├── buddie_chat.py # Aplicação principal
|
||||
├── requirements.txt # Dependências Python
|
||||
├── run.sh # Script de execução
|
||||
├── style.css # Estilos GTK
|
||||
└── README.md # Este ficheiro
|
||||
```
|
||||
|
||||
## Configuração
|
||||
|
||||
As configurações são guardadas em: `~/.buddie-chat/config.json`
|
||||
|
||||
```json
|
||||
{
|
||||
"openai_key": "sk-...",
|
||||
"openrouter_key": "sk-...",
|
||||
"theme": "dark",
|
||||
"mcps": [
|
||||
{
|
||||
"id": "mcp_0",
|
||||
"name": "Exemplo MCP",
|
||||
"command": "/path/to/mcp-server",
|
||||
"args": ["--port", "8080"],
|
||||
"enabled": true
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
## Vantagens da Aplicação Nativa
|
||||
|
||||
- **Performance superior** - Sem overhead do browser
|
||||
- **Integração com o sistema** - Notificações nativas, gestão de janelas
|
||||
- **Menor consumo de recursos** - Mais eficiente que Electron
|
||||
- **Interface consistente** - Segue design do ambiente desktop
|
||||
- **Estabilidade** - Menos dependências, mais confiável
|
||||
|
||||
## Desenvolvimento
|
||||
|
||||
Para modificar a aplicação:
|
||||
|
||||
1. Ative o ambiente virtual:
|
||||
```bash
|
||||
source venv/bin/activate
|
||||
```
|
||||
|
||||
2. Edite `buddie_chat.py`
|
||||
|
||||
3. Execute:
|
||||
```bash
|
||||
python3 buddie_chat.py
|
||||
```
|
||||
|
||||
## Funcionalidades Implementadas
|
||||
|
||||
- [x] Interface GTK4 com Libadwaita
|
||||
- [x] Configuração de chaves API (OpenAI/OpenRouter)
|
||||
- [x] Gestão de múltiplos servidores MCP
|
||||
- [x] Teste de conexão MCP
|
||||
- [x] Chat funcional com processamento assíncrono
|
||||
- [x] Persistência de configuração
|
||||
- [x] Interface responsiva e moderna
|
||||
|
||||
---
|
||||
|
||||
**Descomplicar® Crescimento Digital** | versão 1.0
|
||||
Reference in New Issue
Block a user