Add a read-only view of backend/knowledge_base/**.md so the files that get
injected into the system prompt can be inspected from the GUI:
GET /api/kb/files lists the Markdown files (title, preview, size, mtime and
whether the file is already embedded), GET /api/kb/file returns one in full.
Paths are resolved against the knowledge base directory and rejected unless
they stay inside it and end in .md.
KnowledgeBasePanel.vue groups the files by folder (collapsible, so web_search
can be folded away), filters by title/path/preview and renders the selected
file with MarkdownContent.
The header had grown to four side panel toggles, so collapse them into one
menu: panels.ts now holds the list of panels along with the component each one
renders, App.vue picks it with , and SidePanelMenu.vue shows the
active panel on its button. Re-picking the open panel (or "パネルを閉じる")
closes it; a click outside or Esc closes just the menu.
Add a read-only view of backend/knowledge_base/**.md so the files that get
injected into the system prompt can be inspected from the GUI:
- GET /api/kb/files lists the Markdown files (title, preview, size, mtime and
whether the file is already embedded), GET /api/kb/file returns one in full.
Paths are resolved against the knowledge base directory and rejected unless
they stay inside it and end in .md.
- KnowledgeBasePanel.vue groups the files by folder (collapsible, so web_search
can be folded away), filters by title/path/preview and renders the selected
file with MarkdownContent.
The header had grown to four side panel toggles, so collapse them into one
menu: panels.ts now holds the list of panels along with the component each one
renders, App.vue picks it with <component :is>, and SidePanelMenu.vue shows the
active panel on its button. Re-picking the open panel (or "パネルを閉じる")
closes it; a click outside or Esc closes just the menu.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Add a read-only view of backend/knowledge_base/**.md so the files that get
injected into the system prompt can be inspected from the GUI:
- GET /api/kb/files lists the Markdown files (title, preview, size, mtime and
whether the file is already embedded), GET /api/kb/file returns one in full.
Paths are resolved against the knowledge base directory and rejected unless
they stay inside it and end in .md.
- KnowledgeBasePanel.vue groups the files by folder (collapsible, so web_search
can be folded away), filters by title/path/preview and renders the selected
file with MarkdownContent.
The header had grown to four side panel toggles, so collapse them into one
menu: panels.ts now holds the list of panels along with the component each one
renders, App.vue picks it with <component :is>, and SidePanelMenu.vue shows the
active panel on its button. Re-picking the open panel (or "パネルを閉じる")
closes it; a click outside or Esc closes just the menu.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Add a read-only view of backend/knowledge_base/**.md so the files that get
injected into the system prompt can be inspected from the GUI:
whether the file is already embedded), GET /api/kb/file returns one in full.
Paths are resolved against the knowledge base directory and rejected unless
they stay inside it and end in .md.
can be folded away), filters by title/path/preview and renders the selected
file with MarkdownContent.
The header had grown to four side panel toggles, so collapse them into one
menu: panels.ts now holds the list of panels along with the component each one
renders, App.vue picks it with , and SidePanelMenu.vue shows the
active panel on its button. Re-picking the open panel (or "パネルを閉じる")
closes it; a click outside or Esc closes just the menu.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com