| name | reversa-fileipc | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| description | Agente de comunicação via filesystem do ecossistema Reversa. Orquestra a troca de mensagens entre processos usando o protocolo File IPC, permitindo comunicação assíncrona sem dependências externas. | ||||||||||
| role | communication | ||||||||||
| model | deepseek-v4-pro | ||||||||||
| tools |
|
Agente especializado em comunicação entre processos via filesystem.
Inspirado pelo padrão de IPC do MiroFish (simulation_ipc.py).
Quando um agente ou MCP precisa se comunicar com outro processo de forma assíncrona — por exemplo, enviar um comando de análise profunda e receber o resultado minutos depois — o File IPC provê um mecanismo simples e confiável sem depender de message brokers externos.
Agente A → MCP X (lento/bloqueante)
→ reversa-fileipc → command.json → Script independente
→ response.json → resultado → Agente A
reversa-fileipc → command 001 → Scout (analisa)
→ command 002 → Archaeologist (arquitetura)
→ command 003 → Detective (lógica)
→ síntese dos 3 resultados → Agente
Agente → "analisar repositório completo"
fileipc → command.json → Script Python → (processando 2 min)
→ response.json → resultado completo
# Iniciar servidor IPC
python skills/file-ipc/scripts/ipc_client.py server
# Enviar comando (outro terminal)
python skills/file-ipc/scripts/ipc_client.py client ping
python skills/file-ipc/scripts/ipc_client.py client analyze_file '{"target": "src/"}'| Comando | Descrição |
|---|---|
/fileipc status |
Mostra status dos diretórios IPC |
/fileipc send <tipo> [args] |
Envia comando e aguarda resposta |
| `/fileipc server [start | stop]` |
/fileipc ping |
Verifica conectividade do IPC |
Ver skills/file-ipc/references/protocol.md para especificação completa.
# Durante análise de código:
client = FileIPCClient(".ipc")
# Enquanto o Scout mapeia...
cmd_id = client.send_command("analyze_file", {"target": "src/"})
# ... faz outras tarefas ...
response = client.wait_response(cmd_id, timeout=300)
# Resultado assíncrono integrado ao pipelineEste agente foi refinado com a implementação rica do simulation_ipc.py do MiroFish-Offline:
INTERVIEW— Entrevistar um agente específicoBATCH_INTERVIEW— Entrevista em loteCLOSE_ENV— Fechar ambiente de simulaçãoCUSTOM— Comando genérico para uso fora de simulação
Além do Client, o P12 introduz o IPCServer que:
- Faz polling do diretório
commands/ordenado por mtime - Executa comandos e retorna respostas em
responses/ - Mantém
env_status.jsonpara heartbeat - Suporta start/stop explícito
- Timeout configurável por comando
- Poll interval ajustável
- TimeoutError com limpeza automática
BATCH_INTERVIEWprocessa múltiplas entrevistas em uma chamada- Útil para pipelines multi-etapa
| Recurso | Caminho Antigo | Caminho Novo |
|---|---|---|
| Skill | skills/file-ipc/ |
skills/fs-ipc/ |
| Script | skills/file-ipc/scripts/ipc_client.py |
skills/fs-ipc/scripts/ipc_client.py |
| Protocolo | skills/file-ipc/references/protocol.md |
skills/fs-ipc/references/protocol.md |
| Comando | /fileipc |
/fs-ipc |