<?php
require 'vendor/autoload.php';
use Skald\Skald;
use Skald\Types\MemoData;
use Skald\Types\UpdateMemoData;
use Skald\Types\SearchRequest;
use Skald\Types\SearchMethod;
use Skald\Types\ChatRequest;
use Skald\Types\Filter;
use Skald\Types\FilterOperator;
// Initialize the client
$skald = new Skald('sk_proj_your_api_key');
// Create a memo
$result = $skald->createMemo(new MemoData(
title: 'Meeting Notes - Q1 Planning',
content: 'Discussed quarterly goals, hiring plans, and budget allocation...',
tags: ['meeting', 'planning', 'q1'],
source: 'notion'
));
// Search for memos
$results = $skald->search(new SearchRequest(
query: 'quarterly goals',
searchMethod: SearchMethod::CHUNK_VECTOR_SEARCH,
limit: 10,
filters: [
Filter::nativeField('tags', FilterOperator::IN, ['planning', 'q1'])
]
));
foreach ($results->results as $result) {
echo "Title: {$result->title}\n";
echo "Summary: {$result->summary}\n";
echo "Relevance: {$result->distance}\n\n";
}
// Ask questions about your knowledge base
$response = $skald->chat(new ChatRequest(
query: 'What are our main goals for Q1?'
));
echo $response->response; // "The main Q1 goals are... [[1]]"