Criei um pipeline para publicar automaticamente no WordPress os logs de consultas de IA do Obsidian
Introdução
Quando você consulta questões técnicas com uma IA, há momentos em que pensa "essa conversa vai ser útil mais tarde". No entanto, na prática, os históricos de chat acabam se perdendo e raramente são aproveitados como conhecimento.
Neste artigo, apresento o design e os pontos de implementação de um pipeline que converte automaticamente os logs de consultas de IA colados no Obsidian em artigos de blog e os publica como rascunhos no WordPress. Espero que sirva de referência para quem enfrenta o mesmo problema.
Visão geral do pipeline
O fluxo se divide simplesmente em 4 etapas:
- Entrada — Salvar os logs de conversa como Markdown na pasta Inbox do Obsidian
- Gatilho — Detectar mudanças no arquivo e iniciar o processamento
- Processamento — Converter o log para o formato de artigo de blog usando a API do Claude
- Saída — Publicar automaticamente como rascunho via WordPress REST API
Obsidian (Markdown)
└─ watchdog (monitoramento de arquivos)
└─ Claude API (conversão de artigo)
└─ WP REST API (publicação como rascunho)
Seleção do stack tecnológico
Monitoramento de arquivos: Python watchdog
A biblioteca watchdog do Python pode detectar em tempo real eventos de mudança no diretório especificado. Como o evento é disparado toda vez que o Obsidian salva, é ideal como gatilho.
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
class MarkdownHandler(FileSystemEventHandler):
def on_created(self, event):
if event.src_path.endswith(".md"):
process_file(event.src_path)
observer = Observer()
observer.schedule(MarkdownHandler(), path="./inbox", recursive=False)
observer.start()
Conversão de artigo: API do Claude
Em vez de publicar o log como está, passa-se um "prompt de conversão de artigo" para a API do Claude para formatá-lo. O ponto chave aqui é definir o formato do artigo com antecedência.
- Manter formato Q&A → facilita a transmissão do fluxo da conversa
- Converter em artigo resumido → fácil de escanear e ler
- Híbrido → introdução + trechos Q&A + conclusão
Exemplo de prompt:
prompt = f"""
Com base no seguinte log de consultas de IA, escreva um artigo de blog técnico.
- Use títulos H2/H3
- Use blocos de código adequadamente
- Proponha 3 tags
- Formato de saída: JSON {{ "title": "", "content": "", "tags": [] }}
---Log---
{raw_log}
"""
Publicação no WordPress: REST API
Usando o WP REST API é possível publicar programaticamente de fora. Usar Application Password para autenticação é a melhor prática atual.
import requests
import base64
def post_to_wordpress(title, content, tags):
credentials = base64.b64encode(b"username:app_password").decode("utf-8")
headers = {"Authorization": f"Basic {credentials}"}
payload = {
"title": title,
"content": content,
"status": "draft", # Sempre publicar como rascunho
"tags": tags,
}
response = requests.post(
"https://example.com/wp-json/wp/v2/posts",
json=payload,
headers=headers,
)
return response.json()
Pontos difíceis de decidir no design
Até que ponto manter a "naturalidade" do log
As conversas com a IA incluem o processo de tentativa e erro. Se tudo for formatado, o contexto de "como se chegou a essa conclusão" é perdido. Manter parte do formato Q&A torna o artigo mais fácil de acompanhar pelos leitores.
Atribuição automática de tags e categorias
Incluir candidatos de tags na resposta da API do Claude permite eliminar completamente o trabalho manual. No entanto, até que a precisão se estabilize, é mais seguro manter o status de publicação como draft para revisão humana.
Prevenção de processamento duplo
Como o watchdog dispara um evento a cada salvamento de arquivo, pode processar o mesmo arquivo várias vezes. É melhor prevenir isso com um banco de dados que registre os arquivos processados (SQLite é suficiente) ou com gerenciamento de hash do arquivo.
Conclusão
O ponto central deste pipeline é "decidir primeiro o formato de saída do artigo". Uma vez determinado o formato, o design do prompt e a implementação do código avançam sem problemas.
Em vez de tentar automatizar tudo desde o início, a abordagem prática é começar com o fluxo de conversão → revisão → publicação manual, e depois mudar para publicação automática quando a qualidade se estabilizar. As conversas com a IA têm qualidade suficiente para se tornarem artigos de blog se organizadas adequadamente. É uma pena desperdiçá-las.