The knowledge base gets a card catalog
A new command chops a Markdown file at every heading and files each section in Postgres with its own vector. Ask a question from code and it hands back the five closest sections.
Also leadingTook the lead from Slash commands skip the commit and file the issue #371. A new command splits the knowledge base at each heading and stores searchable sections, so code can ask a question and get the five closest passages. Held off 1 challenger since.

You change a sentence under a heading in the knowledge base, type php artisan knowledge-base:embed, and the terminal comes back. It says, "Embedded 1 knowledge base sections from KNOWLEDGE_BASE.md." Everything else in the file keeps the vectors it already had.
Credit goes to paulinevos, who taught the project to read its own manual. The command splits the Markdown at every heading, keeps the parent headings as context, and ships each non-empty section to OpenAI a hundred at a time, storing the text and a 1,536-number vector side by side in Postgres. Edit a section or move it under a new heading and it gets re-embedded. Move it untouched and its old vector comes along.
The other half is a lookup you can call from code. Give it a question and it returns the five closest sections, nearest first, each with source path, heading trail, Markdown body, and a distance score. A blank question costs no request, and repeated questions ride a one-hour embedding cache. A scheduled job reruns the import every hour, and a second run with no edits embeds zero sections.
There is one catch. There is no similarity cutoff. Ask about pastéis de nata and you get five sections no matter how far away the nearest one really is, so the caller has to read the distance and decide whether the answer is any good. The code never hides a bad match by returning nothing.
Key files · #345
- app/
Console/ EmbedKnowledgeBaseCommand.phpCommands/ - app/
Actions/ UpdateKnowledgeBaseSections.php - app/
Services/ MarkdownSections.php - app/
Queries/ KnowledgeBaseSearchQuery.php - app/
Models/ KnowledgeBaseSection.php - app/
Jobs/ EmbedKnowledgeBase.php - database/
migrations/ 2026_10_17_133420_create_knowledge_base_sections_table.php - routes/
console.php