🛠️ How-To: Ponte Knodge.eu para Obsidian
Este guia descreve como configurar a Obsidian como uma interface profissional para o seu portal de conhecimento Knodge.eu. Com esta configuração, pode carregar notas diretamente e solicitar análises de IA (tais como revisões ou resumos de especialistas) com o toque de um botão [cite: API.md].
#1 Preparativos em Knodge.eu
Antes de ligar a Obsidian, os acessos à API devem estar disponíveis em Knodge.eu:
** Chaves API:** Necessita de duas chaves do seu painel de controlo do portal:
1. Chat API key: Para consultas e análises (api-chat).
2. Chave API de carregamento: Uma chave com direitos de editor ou gestor para carregamentos de documentos.
Slug do portal: Este é o identificador do seu portal no URL (por exemplo, my-knowledge-hub).
Instruções: Certifique-se de que ficheiros como instruction_expert.md ou instruction_summary.md já estão carregados no seu portal para que as palavras-chave (#expert, #summary) funcionem [citar: _instruction_expert.md, _instruction_summary.md].
2ª configuração na Obsidian
Usamos o popular plugin Templater para executar o script JavaScript.
Passo 1: Instalar plugins
- abre as Configurações na Obsidian.
- vai a Community Plugins e desliga o "Safe Mode".
- procura Templater e instala/ativa-o.
Passo 2: Criar o guião
Crie uma nova nota (por exemplo, na pasta Templates/Knodge-Bridge.md) e insira o seguinte código:
<%*
/* Knodge.eu Unified Bridge / Compatível com SCP (Upload & Chat)
Personalizado para uploads de domínios e mensagens de agentes.
*/
// CONFIGURAÇÃO
const CHAT_API_KEY = "6393c04f..."; // A sua chave de chat
const UPLOAD_API_KEY = "cb7106f5..."; // A sua chave de carregamento
const DOMAIN_ID = "efdb0c9f..."; // Da sua definição de API
const PORTAL_SLUG = "faq"; // O seu identificador de portal
const BASE_URL = "https://knodge.eu/api";
const activeView = app.workspace.getActiveViewOfType(obsidian.MarkdownView);
se (!activeView) {
novo aviso ("Não foi encontrada nenhuma nota ativa.");
return;
}
const content = activeView.editor.getValue();
const fileName = `${activeView.file.basename}.md`;
// DIÁLOGO DE SELECÇÃO
const mode = await tp.system.suggester(
["📤 Carregar documento para o domínio", "💬 Solicitar agente de IA (Mensagens)"],
["upload", "chat"]
);
se (modo === "carregamento") {
// 1ª LÓGICA DE CARREGAMENTO (baseada no domínio)
const formData = new FormData();
const blob = new Blob([content], { type: 'text/markdown' });
formData.append('file', blob, fileName);
new Notice("Upload to domain in progress...");
try {
const res = await fetch(`${BASE_URL}/domains/${DOMAIN_ID}/documents`, {
método: "POST",
headers: {
"X-API-Key": UPLOAD_API_KEY // Cabeçalho do pedido
},
body: formData
});
Se (res.ok) new Notice("✅ Documento guardado com sucesso no domínio!");
else new Notice("❌ Erro durante o carregamento.");
} catch (e) {
new Notice("❌ Erro de rede durante o carregamento.");
}
} else if (mode === "chat") {
// 2ª LÓGICA DE CHAT (ponto final das mensagens do agente)
novo Aviso ("É solicitado um agente de IA...");
try {
const res = await fetch(`${BASE_URL}/portal/${PORTAL_SLUG}/agent/messages`, {
método: "POST",
cabeçalhos: {
"Content-Type": "application/json",
"X-API-Key": CHAT_API_KEY //
},
corpo: JSON.stringify({
messages: [{ role: "user", content: content }], // Corpo compatível com SCP
stream: false, // Streaming desativado para integração da Obsidian
locale: "de"
})
});
const data = await res.json();
// Pressuposto: a resposta é devolvida no campo 'response' ou 'message'
const aiMessage = data.response || (data.messages && data.messages[0].content);
if (aiMessage) {
const insertion = `\n\n---\n### 🤖 Resposta do agente\n${aiMessage}`;
activeView.editor.replaceRange(insertion, { line: activeView.editor.lineCount(), ch: 0 });
novo Aviso("✅ Resposta recebida.");
} else {
new Notice("❌ Nenhuma resposta válida do agente.");
}
} catch (e) {
new Notice("❌ Erro com o pedido do agente.");
}
}
%>
3. utilização no quotidiano
Nota de análise (#Palavras-chave)
Escreva os seus pensamentos em Obsidian. Se quiser uma análise específica, basta adicionar uma palavra-chave:
- #expert: Para uma análise técnica aprofundada [cite: _instruction_expert.md].
- #summary: Para obter um resumo estruturado [cite: _instruction_summary.md].
- #quiz: Para gerar perguntas de teste para o seu texto [cite: _instruction_quiz.md].
Em seguida, prima a tecla de atalho para Templater (ou chame o modelo), selecione "🎓 Request AI analysis" e o Knodge inserirá a resposta diretamente abaixo do seu texto [cite: API.md].
Guardar nota como conhecimento
Selecione "📤 Carregar nota" para mover permanentemente o documento atual para o seu portal Knodge. Este conhecimento fica então imediatamente disponível para todas as futuras consultas RAG (também através do OpenClaw).
Porque é que isto funciona
Instruções dinâmicas: Uma vez que Knodge controla as #Keywords no lado do servidor através dos ficheiros _instruction_*.md, nunca é necessário alterar o script na Obsidian quando se adicionam novas habilidades de IA [cite: API.md, _instruction_expert.md].
Contexto pessoal: Através do sistema de onboarding automático, Knodge reconhece o seu estilo a partir do ficheiro _user_{userId}.md e adapta as respostas na Obsidian às suas preferências [cite: _instruction_onboarding.md].
Ex.
_instruction_expert.md
# Modelo de instrução do modo especialista
## Objetivo
Esta instrução ativa um modo de análise de especialista com conhecimentos mais profundos, detalhes técnicos e análise abrangente.
---
## DE - Alemão
Ativar o modo especialista para análises aprofundadas.
**Caraterísticas do modo especialista:**
1 **Análise profunda**
- Vá para além das respostas superficiais
- Analisar causas e ligações
- Considerar o contexto e as nuances
2 **Detalhes técnicos**
- Utilizar terminologia especializada (com explicações)
- Mostrar fontes de dados e provas
- Discutir a metodologia
3. **Visão crítica**
- Iluminar diferentes perspectivas
- Identificar limitações e incertezas
- Distinguir factos de interpretações
4 **Recursos adicionais**
- Referir-se a documentos relevantes no portal
- Sugerir perguntas adicionais
- Identificar lacunas no conhecimento
**Formato das respostas dos especialistas:**
🎓 ANÁLISE DE PERITOS
📋 Mensagem-chave:
[Resumo conciso da principal conclusão]
🔍 Análise pormenorizada:
[Explicação aprofundada com termos técnicos]
📊 Dados e provas:
[Números, estudos e fontes relevantes dos documentos]
⚠️ Limitações:
[O que é incerto? O que está em falta?]
💭 Perspetivas diferentes:
[Pontos de vista ou interpretações alternativas]
📚 Mais informações:
[Documentos relevantes no portal]
[Perguntas aprofundadas]
🤔 Questões em aberto:
[O que mais deve ser investigado?]
**Comportamento:**
- Responder com mais pormenor do que no modo normal
- Utilize linguagem técnica, mas explique-a
- Ser preciso na citação das fontes
- Distinguir claramente entre conhecimentos comprovados e suposições
---
## PT - Inglês
Ativar o modo especialista para uma análise aprofundada.
**Propriedades do modo especialista:**
1. **Análise profunda**
- Ir além das respostas de nível superficial
- Analisar causas e ligações
- Considerar o contexto e as nuances
2. **Detalhes técnicos**
- Utilizar terminologia técnica (com explicações)
- Mostrar fontes de dados e provas
- Discutir a metodologia
3. **Exame crítico**
- Iluminar diferentes perspectivas
- Identificar limitações e incertezas
- Distinguir factos de interpretações
4. **Recursos adicionais**
- Referir documentos relevantes do portal
- Sugerir perguntas de seguimento
- Identificar lacunas de conhecimento
---
## FR - Francês
Active o modo especialista para uma análise aprofundada.
**Propriedades do modo especialista:**
1. análise adequada
2. pormenores técnicos
3. exame crítico
4. recursos complementares
---
## ES - Español
Ativa o modo experto para análises em profundidade.
**Propiedades del modo experto:**
1. análise profunda
2. pormenores técnicos
3. exame crítico
4. recursos adicionais
---
## IT - Italiano
Ativar o modo de espera para uma análise adequada.
**Propriedade do modo de espera
1. analysis approfondita
2. pormenores técnicos
3. Análise crítica
4. Riscos associados
---
## PT - Português
Você ativa o modo especialista para análise aprofundada.
**Propriedades do modo especialista:**
1. análise profunda
2. detalhes técnicos
3. exame crítico
4. recursos adicionais
---
## Utilização
Os utilizadores activam com `#expert` na sua mensagem. Exemplo: `#expert Analisar os efeitos de X em Y`