Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/bragabarreto-pjecalc-agent-debugger
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions: not checked yet.
What's inside
- Skill name
pjecalc-agent-debugger- Description
- None
- License
- MIT
- Instructions
- 421 lines in SKILL.md · view on GitHub
Before installing
- Instructions call the network
Agent Skills spec issues
- missing YAML frontmatter
- name: missing
- description: missing
- files: referenced but missing: references/tomcat-bootstrap.md, references/joptionpane-patch.md
Files (2)
- SKILL.md
- pjecalc-agent-debugger.skill
SKILL.md (first lines)
# PJE-Calc Agent Debugger
**Premissa**: Xvfb+xdotool, Bootstrap direto, Java agent e patch de bytecode **já foram tentados**.
Esta skill investiga por que falharam e aponta o próximo passo real.
O log para em `[TRT8] Configurando variaveis basicas.` — isso significa que o bloqueio ocorre
*dentro* do Lancador, antes de qualquer inicialização do Tomcat.
---
## Arquitetura do agente (contexto para diagnóstico)
```
PDF/DOCX → ingestion.py → extraction.py (Claude API) → classification.py
→ prévia web (FastAPI + SQLite/PostgreSQL)
→ Playwright headless → PJE-Calc Cidadão (Tomcat :9257, JSF/RichFaces)
→ .PJC exportado
```
**Fases da automação** (`modules/playwright_pjecalc.py`):
1. `fase_dados_processo` — preenche Parâmetros do Cálculo + aba Parâmetros
2. `fase_parametros_gerais` — Data Inicial/Final de apuração, carga horária
3. `fase_historico_salarial` — períodos salariais (btnNovoHistorico, btnGerarOcorrencias)
4. `fase_verbas` — modo Expresso (checkboxes predefinidas) + Manual (personalizadas)
5. `fase_fgts` — alíquota, multa, saldos depositados
6. `fase_contribuicao_social` — INSS empregado/empregador
7. `fase_irpf` — tributação, deduções
8. `fase_honorarios` — advocatícios + periciais
9. `_clicar_liquidar` → gera .PJC
---
## Endpoints de diagnóstico (Railway)
| Endpoint | O que mostra |
|---|---|
| `GET /api/logs/python` | Últimos 300 logs do processo uvicorn |
| `GET /api/logs/java` | stdout+stderr do processo Java (Lancador + Tomcat) |
| `GET /api/logs/tomcat` | catalina.out do Tomcat embarcado |
| `GET /api/screenshot` | Screenshot do display Xvfb :99 |
| `GET /api/ps` | Processos em execução no container |
| `GET /api/verificar_pjecalc` | Testa se localhost:9257 responde |
| `GET /api/executar/{sessao_id}` | SSE stream com log linha a linha |
---
## Passo 1 — Coletar evidências antes de qualquer ação
Sem evidências, qualquer mudança é chute. Sempre começar aqui:
```bash
curl https://<app>.railway.app/api/logs/java # stdout+stderr do Java
curl https://<app>.railway.app/api/logs/tomcat # catalina.out
curl https://<app>.railway.app/api/ps # processos em execução
curl https://<app>.railway.app/api/screenshot # PNG do Xvfb :99 agora
curl https://<app>.railway.app/api/verificar_pjecalc # :9257 responde?
```
**O que procurar no `/api/logs/java`:**
| Sintoma no log | O que está acontecendo | Seção |
|---|---|---|
| Para em `Configurando variaveis basicas.` sem mais nada | Thread bloqueado — não é só JOptionPane | §2 |
| `java.awt.HeadlessException` aparece | `-Djava.awt.headless=true` não chegou ao processo | §3 |
| `ClassNotFoundException: org.apache.catalina...` | Bootstrap falhou — classpath incompleto | §4 |
| OOM ou stack overflow | Memória insuficiente no Railway | §5 |
| Log totalmente vazio | O processo Java nem iniciou | §6 |
| Para em linha diferente (avançou!) | Nova barreira descoberta | §7 |
---
## §2 — JOptionPane silenciado mas o log ainda trava no mesmo lugar
Se o agent ou patch está ativo mas o log continua parando em `Configurando variaveis basicas.`,
o bloqueio **não é o JOptionPane**. Há outra causa.
### 2.1 Forçar um thread dump para ver o bloqueio real
```bash
# Enviar SIGQUIT ao processo Java — força dump de todas as threads para stdout
railway run bash -c "
PID=\$(pgrep -f pjecalc.jar | head -1)
echo \"PID do Java: \$PID\"
kill -3 \$PID
sleep 3
"
# Depois acessar /api/logs/java para ler o thread dump
```
O thread dump mostra o stack trace exato de onde o main thread está bloqueado:
```
# Exemplo — bloqueio em dialog diferente de JOptionPane:
"main" #1 prio=5 os_prio=0 tid=... in Object.wait()
at javax.swing.JDialog.show(JDialog.java:...)
at com.trt8.pjecalc.Lancador.mostrarSplash(Lancador.java:203) ← bloqueio real
# Exemplo — bloqueio em leitura de arquivo:
"main" #1 prio=5 os_prio=0 tid=... runnable
at java.io.FileInputStream.readBytes(Native Method)
at com.trt8.pjecalc.Lancador.lerConfiguracao(Lancador.java:89) ← arquivo inexistente
# Exemplo — bloqueio em conexão de rede:
"main" #1 prio=5 os_prio=0 tid=... in Object.wait()
at java.net.Socket.connect(Socket.java:...)
at com.trt8.pjecalc.Lancador.validarLicenca(Lancador.java:156) ← servidor de licença
```
### 2.2 Outros componentes Swing que bloqueiam além de JOptionPane
```java
// Qualquer um desses cria uma janela e bloqueia sem Xvfb adequado:
new JFrame(...) // janela principal
new JDialog(...) // dialog genérico
new JWindow(...) // janela sem borda
splash.setVisible(true) // splash screen
```
Se o thread dump mostrar qualquer um desses, o Java agent precisa interceptá-los também:From bragabarreto/pjecalc-agente, MIT.
More from bragabarreto/pjecalc-agente
- 0.478score
pjecalc-transformacao
bragabarreto
Guia de transformação do PJe-Calc Agente para replicar o CalcMACHINE v1.6.1.
SkillDFreshness: D★ 9Claude Code +9 - 0.475score
pjecalc-operacional
bragabarreto
Regras operacionais para automação do PJE-Calc Cidadão — roteiros executáveis por parcela, regras de dependência entre módulos, fichas técnicas de cada verba…
SkillDFreshness: D★ 9Claude Code +9 - 0.470score
systematic-debugging
bragabarreto
Metodologia de debugging sistemático para Python, FastAPI, Playwright e Railway.
SkillDFreshness: D★ 9Claude Code +9 - 0.469score
pjecalc-preenchimento
bragabarreto
Guia completo de preenchimento e automação do PJE-Calc Cidadão (versão desktop).
SkillDFreshness: D★ 9Claude Code +9 - 0.465score
pjecalc-agent-architect
bragabarreto
Skill de arquitetura e refatoração do repositório pjecalc-agente — o agente de automação remota do PJE-Calc Cidadão.
SkillDFreshness: D★ 9Claude Code +9 - 0.253score
pjecalc-automacao
bragabarreto
No description from the publisher yet.
SkillDFreshness: D★ 9Claude Code +9 - 0.253score
pjecalc-processamento
bragabarreto
No description from the publisher yet.
SkillDFreshness: D★ 9Claude Code +9
Signals
- Stars
- 9
- Forks
- 4
- Open issues
- 0
- Last commit (this folder)
- May 8, 2026 (5 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/bragabarreto/pjecalc-agente
- Website
- 163.176.44.221:8000
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from bragabarreto
- 0.478score
pjecalc-transformacao
bragabarreto
Guia de transformação do PJe-Calc Agente para replicar o CalcMACHINE v1.6.1.
SkillDFreshness: D★ 9Claude Code +9 - 0.475score
pjecalc-operacional
bragabarreto
Regras operacionais para automação do PJE-Calc Cidadão — roteiros executáveis por parcela, regras de dependência entre módulos, fichas técnicas de cada verba…
SkillDFreshness: D★ 9Claude Code +9 - 0.470score
systematic-debugging
bragabarreto
Metodologia de debugging sistemático para Python, FastAPI, Playwright e Railway.
SkillDFreshness: D★ 9Claude Code +9 - 0.469score
pjecalc-preenchimento
bragabarreto
Guia completo de preenchimento e automação do PJE-Calc Cidadão (versão desktop).
SkillDFreshness: D★ 9Claude Code +9 - 0.465score
pjecalc-agent-architect
bragabarreto
Skill de arquitetura e refatoração do repositório pjecalc-agente — o agente de automação remota do PJE-Calc Cidadão.
SkillDFreshness: D★ 9Claude Code +9
Cite this page
pjecalc-agent-debugger skill. Agent Mart. https://agentmart.dev/skills/bragabarreto-pjecalc-agent-debugger (last updated 2026-10-24)