Commit Graph
32 Commits
Author SHA1 Message Date
“BeeRad” 28e570696c feat: port source-first ingestion to os repo
- make source the canonical field across os routes, tools, ui, and mcp
- align fresh-install schema, search, and embedding flows with source-first ingestion

Generated with Claude Code
2026-03-20 12:36:26 +11:00
“BeeRad” 1f8f41b4e0 feat: sync quick add ingestion updates
- simplify quick add source selection and fallback saving
- improve description context and manual edit behavior
- add extractor dimension filtering and edge explanation migration
2026-03-19 21:15:30 +11:00
“BeeRad” 213c054c9f feat: sync pane workspace overhaul from private repo
- ship the expanded left-nav and pane header workspace updates
- add dimension-driven browse flow, map view upgrades, and delete-node tooling
- expand eval coverage and refresh the public UI docs for the new layout

Generated with Codex
2026-03-17 18:20:20 +11:00
“BeeRad” 4c75df101f feat: sync runtime search and schema quality updates from app repo
- port retrieval, validation, and eval improvements relevant to os
- align prompts and dimensions with the flat single-agent model
- replace the old eval suite with the focused core scenarios

Generated with Codex
2026-03-15 14:55:45 +11:00
“BeeRad” bc226b03c8 cleanup(skills): remove legacy guide bundle and harden skill migration/pruning 2026-03-07 12:00:52 +11:00
“BeeRad” b67a789740 feat(ui): add skills pane in left nav and wire skills api/service 2026-03-07 11:53:55 +11:00
“BeeRad”andClaude Opus 4.6 2f6518207d sync: multiple features from private repo
- quick-add-loading: fire-and-forget with loading placeholders, auto-open feed, SSE events, QuickAddInput redesign
- database-table-pane: TablePane + DatabaseTableView, countNodes(), event_date sort
- ui-polish-fixes: focus tab order, dim name editing, tab title sync, cost chip removal, custom sort drag-reorder, refresh button, dimension filter removal (~2,200 lines)
- node-creation-quality: description service prompt rewrite, title sanitization, extraction tool AI prompt rewrites
- feed-pane-ux: stripped kanban/grid/saved views, sort dropdown, AND dimension filtering, description preview

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 17:57:32 +11:00
“BeeRad”andClaude Opus 4.6 2940e142c8 sync: feed pane UX from private repo
- Strip kanban, grid, and saved views from ViewsOverlay (1103→631 lines)
- Add sort order dropdown (Updated/Edges/Created) with localStorage persistence
- Polish filter button, dropdown, and filter chips
- Switch to server-side dimension filtering with AND logic (dimensionsMatch=all)
- Add description preview and edge count to node cards
- Add 'created' sort option and dimensionsMatch param to types, service, API

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 13:19:42 +11:00
“BeeRad”andClaude Opus 4.6 86f43c9975 feat: final schema pass — sync 9 schema changes from main repo
- Rename nodes.content → nodes.notes across all services, tools, API routes, and UI
- Add dimensions.icon column support (GET/POST routes, types)
- Add nodes.event_date column (create/update flows, types)
- Drop nodes.type and nodes.is_pinned references
- Drop edges.user_feedback references
- Drop chat_memory_state table (replaced with DROP IF EXISTS in migration)
- Update schema guide files (system/schema.md)
- Add runtime migration block in sqlite-client.ts for existing databases
- Fix MCP tool schemas (external API keeps 'content' param, maps to 'notes' internally)
- Update standalone MCP server (nodeService.js, sqlite-client.js, index.js)
- Update HTTP MCP server (server.js, stdio-server.js)
- Update all extraction tools (paper, website, youtube)
- Update all UI components (FocusPanel, ThreePanelLayout, GridView, ListView, FolderViewOverlay)
- TypeScript: 0 errors

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 12:53:52 +11:00
“BeeRad”andClaude Opus 4.6 549476274d feat: separate guides into system and custom sections
Add system/custom guide separation with section headers, lock icons,
delete functionality for custom guides, and usage counter.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 12:51:44 +11:00
“BeeRad”andClaude Opus 4.6 3b04a1bad0 fix: move API keys to .env.local, remove localStorage dual system
Single source of truth: OPENAI_API_KEY in .env.local. Deleted the
apiKeyService class/singleton that stored keys in localStorage.
All server code reads process.env directly. FirstRunModal and
Settings now show .env.local instructions instead of key input.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 11:46:41 +11:00
“BeeRad”andClaude Opus 4.5 7beba57f63 fix: fast node creation, first-run modal, simplified docs
- Skip AI calls when no valid OpenAI key (fixes 9-13s timeout)
- Add first-run modal prompting for API key
- Rewrite README for first-time users
- Add /api/health endpoint
- Remove all Anthropic references (not used in OS)
- Fix bootstrap script (dev:local → dev)
- Fix next.config.js devIndicators warning
- Add Node 18+ version check

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 15:10:46 +11:00
“BeeRad” 6c510096a3 refactor: rename ls_* to rah_* and add optional write tools
- Rename all tools to rah_* prefix (generic, not Latent Space specific)
- Update server info to be generic RA-H branding
- Add optional write tools behind MCP_ALLOW_WRITES=true env var:
  - rah_add_node, rah_update_node
  - rah_create_edge, rah_update_edge
  - rah_create_dimension, rah_update_dimension, rah_delete_dimension
- Read tools always enabled: rah_search_nodes, rah_get_nodes,
  rah_query_edges, rah_list_dimensions
- No embedding search (disabled by DISABLE_EMBEDDINGS on hosted deployments)

This makes the HTTP MCP endpoint a general feature of ra-h_os that any
deployment can use, not specific to Latent Space Hub.
2026-01-30 08:09:05 +11:00
“BeeRad” f3d240c604 feat: add remote MCP endpoint for external agent access
- Add app/api/mcp/route.ts with read-only ls_* tools
- Tools: ls_search_nodes, ls_get_nodes, ls_query_edges, ls_list_dimensions
- Uses WebStandardStreamableHTTPServerTransport for Vercel serverless
- Stateless mode (sessionIdGenerator: undefined) for proper serverless execution
- CORS headers for cross-origin agent access
- GET endpoint returns server info for debugging

Usage: claude mcp add --transport http latent-space https://latentspace.ra-h.app/api/mcp
2026-01-30 08:01:28 +11:00
“BeeRad” 104b02b02f fix: disable vector setup when embeddings disabled 2026-01-29 21:03:01 +11:00
“BeeRad”andClaude Opus 4.5 b31441b35f feat(rah-light): replace workflows with guides system
- Remove entire workflow system (API routes, services, tools, components)
- Add guides system from main ra-h repo (for external agent integration)
- Update pane types: 'workflows' → 'guides' throughout
- Update LeftToolbar to show guides icon instead of workflows
- Update SettingsModal with GuidesViewer tab
- Add GuidesPane for browsing guides in main UI
- Clean up prompts to remove workflow references
- Update tool registry to remove workflow tools
- Add gray-matter package for frontmatter parsing

Guides are essential for RA-H Light as they help external agents
(via MCP) understand the knowledge base context and usage patterns.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 16:29:24 +11:00
“BeeRad”andClaude Opus 4.5 d9c0ba89fe feat(rah-light): remove chat API routes
- Deleted app/api/rah/chat/route.ts
- Deleted app/api/rah/usage/route.ts
- Deleted empty app/api/rah/ directory
- RAHChat.tsx references removed in Story 7

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:24:03 +11:00
“BeeRad”andClaude Opus 4.5 fa96c238c2 feat(rah-light): remove voice features
- Delete voice hooks: useVoiceSession, useRealtimeVoiceClient, useAssistantTTS, useVoiceInterruption
- Delete voice API routes: /api/voice/tts, /api/realtime/ephemeral-token
- Delete voice service: src/services/voice/usageLogger.ts
- Clean up RAHChat.tsx: remove voice stub hooks and voice-related state/handlers
- Clean up TerminalInput.tsx: remove voice props, mic icons, amplitude visualizer

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:17:31 +11:00
“BeeRad”andClaude Opus 4.5 6b7bb5a5f9 feat(rah-light): remove agent delegation system
- Delete src/services/agents/delegation.ts (AgentDelegationService)
- Delete app/api/rah/delegations/ directory (all routes)
- Delete src/components/agents/DelegationIndicator.tsx
- Update workflowExecutor.ts to work without delegation streaming
- Update executeWorkflow.ts tool to execute workflows directly
- Update quickAdd.ts to execute directly without delegation tracking
- Add stub AgentDelegation types to UI components for compatibility
- Add stub voice hooks to RAHChat.tsx (will be removed in story 2)

Files deleted:
- src/services/agents/delegation.ts
- app/api/rah/delegations/route.ts
- app/api/rah/delegations/stream/route.ts
- app/api/rah/delegations/[sessionId]/route.ts
- app/api/rah/delegations/[sessionId]/summary/route.ts
- src/components/agents/DelegationIndicator.tsx

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:11:15 +11:00
“BeeRad”andClaude Opus 4.5 9b2db68751 chore: codebase audit — remove dead code, unused deps, clean configs
Phase 1: Delete 19 dead component/service/tool files (4,200+ lines)
Phase 2: Remove 13 unused npm packages (Radix UI, shadcn utilities, ytdl-core, etc.)
Phase 3: Database schema — drop agent_delegations, add performance indexes
Phase 4: Remove 12 dead types from database.ts/analytics.ts/helpers.ts
Phase 5: Strip shadcn/ui theme from tailwind config
Phase 6: Clean env vars, fix broken imports (LocalKeyGate, MapViewer)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 08:52:15 +11:00
“BeeRad”andClaude Opus 4.5 05523b7cb2 sync: Major UI updates from private repo (Jan 16-24)
Features synced:
- UI Panels Refactor: flexible pane system with ChatPane, NodePane,
  DimensionsPane, WorkflowsPane, ViewsPane, MapPane
- Source Content Reader: content type detection + 4 formatters
  (transcript, book, markdown, raw)
- Source Content Search: Cmd+F search in Source Reader
- Feed Layout Overhaul: LeftToolbar, SplitHandle, CollapsedRail
- Map Panel: promoted to first-class pane
- Edge policy simplification: auto-inference + direction correction

New files:
- src/components/panes/* (pane system)
- src/components/layout/CollapsedRail.tsx
- src/components/layout/LeftToolbar.tsx
- src/components/layout/SplitHandle.tsx
- src/components/focus/source/* (Source Reader + formatters)
- src/components/views/ViewsOverlay.tsx

Updated:
- ThreePanelLayout.tsx (complete refactor)
- FocusPanel.tsx (Source tab integration)
- API routes (dimensions GET, edges auto-inference)
- Database services (nodes, edges, dimensions)

Dependencies added:
- react-markdown
- remark-gfm

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 21:54:21 +11:00
“BeeRad”andClaude Opus 4.5 419d29dbe8 sync: PDF file upload from private repo
- Add drag-and-drop PDF upload to Quick Capture
- New upload endpoint with size limits (warn 10MB, reject 50MB)
- Add extractFromBuffer method to PaperExtractor
- Visual feedback: drag-over highlight, file preview card

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 20:13:13 +11:00
“BeeRad”andClaude Opus 4.5 2cbc950fd4 sync: Idea Genealogy + Quick Capture Overhaul
From private repo:

Idea Genealogy:
- Required edge explanations across UI/tools/API/MCP
- Inferred edge schema (category/type/confidence)
- Added part_of relationship type
- Connection UI chips (Made by / Part of / Came from / Related)

Quick Capture Overhaul:
- Jina.ai fallback for JS-rendered sites (Twitter, SPAs)
- Simplified UI: removed mode buttons, auto-detect input type
- Renamed to "Add Stuff", moved to top-right
- Auto-edge creation from description entities
- Increased content summary length (500→1500 chars)

Description Generation Fix:
- Simplified prompt to "what is this"
- Added link/dimensions context
- Better creator attribution

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 17:08:26 +11:00
“BeeRad” f7b8b2058c sync: description generation fix - simplified prompt 2026-01-13 11:38:25 +11:00
“BeeRad” 4f030c7d29 sync: ingestion improvements from private repo
- Fixed dimension auto-assignment (locked dimensions now properly assigned)
- Added description field as grounding context for AI
- Updated embedding format: Title → Description → Content → Dimensions
- Description-weighted search (5x boost)
- Bug fixes: extraction tool dimension display, DimensionSearchModal closing
- Removed quickLink tool (use Quick Link workflow instead)
- Added regenerate-description API endpoint
2026-01-13 11:03:56 +11:00
“BeeRad”andClaude Opus 4.5 3f0426ecf4 sync: Agent Architecture Overhaul - AI SDK 6 + workflow optimization
Synced from private repo (feature/ai-sdk-6-upgrade):
- Upgrade AI SDK 5 → 6 (packages + API changes)
- Add sqliteQuery tool for flexible read-only queries
- New WorkflowExecutor with workflow-specific tools
- 83% token reduction for workflow execution
- Remove mini-rah dead code (simplified architecture)
- Add context management usage endpoint
- Fix Connect workflow instructions
- Clickable node references in workflow UI

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-12 20:59:27 +11:00
“BeeRad”andClaude Opus 4.5 f9271aeeb4 sync: Workflows P2 features from private repo
- 5 bundled workflows (prep, research, connect, integrate, survey)
- quickLink tool for fast edge creation
- queryDimensionNodes tool for dimension queries
- Workflow orchestration tools (list, get, edit)
- Dimension awareness with active dimension tracking
- Unified Workflows tab in Agent Panel
- MCP server updates for workflow execution

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-11 18:54:34 +11:00
“BeeRad” a3647c0693 sync: editable workflows from private repo
- Users can edit/create workflows from Settings → Workflows tab
- File-based storage for custom workflows
- Bundled workflows serve as fallback when no user file exists
- Added createEdge tool access for workflows (Quick Link)
- Cleaned up stale terminology in workflow prompts

Files synced:
- src/services/workflows/workflowFileService.ts (NEW)
- app/api/workflows/[key]/route.ts (NEW)
- src/services/workflows/registry.ts
- src/components/settings/WorkflowsViewer.tsx
- src/tools/infrastructure/registry.ts
- src/services/agents/wiseRAHExecutor.ts
- src/config/workflows/integrate.ts
- src/config/prompts/wise-rah.ts
2026-01-04 16:30:25 +11:00
“BeeRad”andClaude Opus 4.5 bcfeb285bb fix: add /api/logs route (fix gitignore that was blocking it)
- Fix .gitignore: logs/ -> /logs/ to only ignore root logs dir
- Add app/api/logs/route.ts (was being ignored by gitignore)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 14:43:39 +11:00
“BeeRad”andClaude Opus 4.5 2f2ef10ec9 sync: bug fixes + eval system from private repo
- Fix chunk_status: pass chunk_status/chunk/metadata to context builder
- Fix vector search: scope by node_id BEFORE similarity search
- Add eval logging system (RAH_EVALS_LOG=1)
- Add eval dashboard at /evals
- Add vitest for testing

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 16:09:25 +11:00
“BeeRad”andClaude Opus 4.5 c9d85998c1 sync: Phase 3 Agent Features from private repo
Features synced:
- LucideIconPicker component (115 icons for dimension customization)
- Dimension editing modal (descriptions + icons)
- Compound filters (per-column AND filters)
- Improved dimension assignment with keyword tagging
- queryDimensions and getDimension agent tools

New files:
- src/components/common/LucideIconPicker.tsx
- src/tools/database/queryDimensions.ts
- src/tools/database/getDimension.ts

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-25 10:05:02 +11:00
“BeeRad” 733d1c3407 Initial commit: RA-H Open Source Edition
Local-first knowledge management system with BYO API keys.

Features:
- 3-panel UI (Nodes | Focus | Helpers)
- SQLite + sqlite-vec for vector search
- Agent system (Easy/Hard mode orchestrators)
- Content extraction (YouTube, PDF, web)
- Integrate workflow for connection discovery
- Dimension system with auto-assignment

Tech stack:
- Next.js 15 + TypeScript + Tailwind CSS
- Anthropic (Claude) + OpenAI (GPT) via Vercel AI SDK

Setup:
  npm install && npm rebuild better-sqlite3
  scripts/dev/bootstrap-local.sh
  npm run dev

MIT License
2025-12-15 16:14:28 +11:00