diff --git a/.env b/.env index ffe50c7..b0d9138 100755 --- a/.env +++ b/.env @@ -4,6 +4,7 @@ TELEGRAM_CHAT_ID=7889499475 # Default AI Model DEFAULT_MODEL=inclusionai/ling-3.0-flash +DEFAULT_MODEL=minimax/minimax-m3:free # OpenRouter Configuration diff --git a/DEPLOY.md b/DEPLOY.md index 84834ac..62b3f50 100755 --- a/DEPLOY.md +++ b/DEPLOY.md @@ -67,6 +67,8 @@ sudo chmod 600 .env ## 6. Criar serviço systemd +### Opção A — Serviço de sistema (requer sudo) + Crie o arquivo `/etc/systemd/system/psagentia.service`: ```ini @@ -77,9 +79,9 @@ After=network.target [Service] Type=simple User=marco -WorkingDirectory=/opt/PsAgentIAMarco/app -Environment="PATH=/opt/PsAgentIAMarco/app/venv/bin:/usr/bin:/bin" -ExecStart=/opt/PsAgentIAMarco/app/venv/bin/python3 /opt/PsAgentIAMarco/app/psagentia_agent.py +WorkingDirectory=/home/marco/PsAgentIA/app +Environment="PATH=/home/marco/PsAgentIA/app/venv/bin:/usr/local/bin:/usr/bin:/bin" +ExecStart=/home/marco/PsAgentIA/app/venv/bin/python3 /home/marco/PsAgentIA/app/psagentia_agent.py Restart=always RestartSec=10 StandardOutput=journal @@ -91,22 +93,55 @@ WantedBy=multi-user.target Ajuste `User` e `WorkingDirectory` conforme seu cenário. +### Opção B — Serviço de usuário (não requer sudo) + +Se o arquivo `psagentia.service` já existe em `~/.config/systemd/user/`, basta: + +```bash +systemctl --user daemon-reload +systemctl --user enable --now psagentia.service +``` + --- ## 7. Ativar e iniciar o serviço +### Opção A — Serviço de sistema (requer sudo, sobrevive a reboot) + ```bash sudo systemctl daemon-reload -sudo systemctl enable psagentiamarco.service -sudo systemctl start psagentiamarco.service +sudo systemctl enable psagentia.service +sudo systemctl start psagentia.service ``` -Comandos úteis: +### Opção B — Serviço de usuário (sem sudo, NÃO sobrevive a reboot — use se não tiver sudo) ```bash -sudo systemctl status psagentia.service # status -sudo journalctl -u psagentia.service -f # logs em tempo real -sudo systemctl restart psagentia.service # reiniciar após alterações +systemctl --user daemon-reload +systemctl --user enable --now psagentia.service +``` + +> **Importante:** Se usar a Opção B (serviço de usuário), o processo será morto quando você fizer logout. Para torná-lo persistente mesmo sem login, adicione ` lingering` para o usuário: +> ```bash +> sudo loginctl enable-linger marco +> ``` + +Comandos úteis (Opção A — sistema): + +```bash +sudo systemctl status psagentia.service # status +sudo journalctl -u psagentia.service -f # logs em tempo real +sudo systemctl restart psagentia.service # reiniciar após alterações +sudo systemctl stop psagentia.service # parar +``` + +Comandos úteis (Opção B — usuário): + +```bash +systemctl --user status psagentia.service # status +journalctl --user -u psagentia.service -f # logs em tempo real +systemctl --user restart psagentia.service # reiniciar +systemctl --user stop psagentia.service # parar ``` --- diff --git a/psagentia.service b/psagentia.service new file mode 100644 index 0000000..dc82166 --- /dev/null +++ b/psagentia.service @@ -0,0 +1,17 @@ +[Unit] +Description=PsAgentIA - Personal Agent IA Conversacional +After=network.target + +[Service] +Type=simple +User=marco +WorkingDirectory=/home/marco/PsAgentIA/app +Environment="PATH=/home/marco/PsAgentIA/app/venv/bin:/usr/local/bin:/usr/bin:/bin" +ExecStart=/home/marco/PsAgentIA/app/venv/bin/python3 /home/marco/PsAgentIA/app/psagentia_agent.py +Restart=always +RestartSec=10 +StandardOutput=journal +StandardError=journal + +[Install] +WantedBy=multi-user.target