Commit Graph
74 Commits
Author SHA1 Message Date
“BeeRad” 1de5290d7a fix: remove dead os open-tab hydration loop 2026-04-11 21:48:28 +10:00
“BeeRad” a90d7d06c4 fix: stop os search modal and sse reconnect loops 2026-04-11 21:44:19 +10:00
“BeeRad” 3ae46245ec feat: port holistic node refinement contract 2026-04-11 21:37:52 +10:00
“BeeRad” 35f9ecf89c feat: port contexts layer and MCP parity 2026-04-10 19:41:26 +10:00
“BeeRad” 545dc6e2e8 fix: port search and dimension safety guardrails
- enforce canonical dimensions across app and MCP surfaces
- prioritize title-first node search in UI and query tools
- add regression tests for ranking and dimension validation
2026-03-23 10:47:18 +11:00
“BeeRad” 3b8fa75b70 sync: ui polish pass from private repo
- increase base typography and relative date formatting
- add card polish, empty states, and skeleton loaders
- center the nodes pane content like the focus panel
2026-03-23 08:53:19 +11:00
“BeeRad” b9af8dc385 refactor: align source-first schema surfaces 2026-03-22 20:17:07 +11:00
“BeeRad” 6dcf247a64 Stabilize cross-platform local runtime 2026-03-21 17:48:48 +11:00
“BeeRad” 22b627e1d2 feat: simplify settings surface\n\n- keep only API keys, context, and agents in settings\n- restyle the retained settings panels for light and dark themes\n- preserve the API keys workflow in the open-source build 2026-03-21 16:07:15 +11:00
“BeeRad” 2d63f1fa13 fix: sync light mode readability improvements
- replace hardcoded dark colors in shared light mode components
- fix focused skill and inline node label readability in light mode

Generated with Codex
2026-03-21 15:06:21 +11:00
“BeeRad” 85a16e05db feat: add three-panel layout 2026-03-20 21:22:09 +11:00
“BeeRad”andClaude Sonnet 4.6 21290bb48a feat: dimensions folder grid UI overhaul
- Folder cards: off-black bg (--rah-bg-folder), compact 80px height
- Icon + name in footer, green pill badge for node count
- Description snippet shown below name when set
- Hover-only edit/delete actions
- Add --rah-bg-folder CSS variable to both themes

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 18:14:49 +11:00
“BeeRad”andClaude Sonnet 4.6 6677b1b64b feat: node view redesign — single-scroll, no tabs
Ports the full node view redesign from ra-h. Replaces the 4-tab layout
(Desc/Notes/Edges/Source) with a single-scroll document view.

- New FocusPanel: frontmatter rows, collapse toggle, NodeSearchModal,
  TipTap SourceEditor, section headers with extending rules
- NodeSearchModal: new full-screen portal modal for creating connections
- SourceEditor: TipTap WYSIWYG editor (new file)
- SourceReader: removed header chrome, added onContentClick prop
- Source formatters: inherit font, 15px/1.7, no max-width centering
- DimensionTags: subtle dashed + button replaces green pill
- autoEmbedQueue: recover nodes stuck in 'chunking' state on startup
- edges: fix extra parameter in getNodeConnectionsSQLite

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 17:03:06 +11:00
“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”andClaude Sonnet 4.6 41f8498d4a chore: remove locked dimension UI residue
Remove padlock button from dimensions pane, priority-toggle behaviour
from node dimension tags, and all supporting state/functions.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 10:12:14 +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”andClaude Sonnet 4.6 64aaf10feb fix: center view items vertically in left toolbar
Top actions (collapse/search/add/refresh) stay at top.
View items (nodes/skills/map/etc) sit in a flex:1 middle
section, vertically centered with a subtle top border separator.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 20:25:34 +11:00
“BeeRad”andClaude Sonnet 4.6 21ca364d80 fix: light mode for skills cards and map background
- SkillCard: hardcoded dark bg/border/text → CSS vars
- map-styles.css: migrate all hardcoded hex to CSS vars so map
  canvas, nodes, edges, and minimap respond to theme

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 20:21:29 +11:00
“BeeRad”andClaude Sonnet 4.6 ffefc7b332 fix: migrate hardcoded hex values to CSS vars for light mode
Replace dark hex values with CSS custom properties across all panel,
card, modal, and focus components so light mode renders correctly.
Backgrounds, borders, and text colors now respond to data-theme attribute.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 20:15:24 +11:00
“BeeRad”andClaude Sonnet 4.6 bf175ad125 feat: add persistent light/dark mode toggle
- Add CSS custom property token system to globals.css (dark + light variants)
- Add anti-FOUC inline script in layout.tsx head to apply stored theme before hydration
- Create useTheme hook (src/hooks/useTheme.ts) backed by usePersistentState
- Add Sun/Moon toggle button to LeftToolbar above Settings
- Wire useTheme into ThreePanelLayout and pass theme/onThemeToggle to LeftToolbar
- Migrate hardcoded hex values to CSS vars in LeftToolbar and ThreePanelLayout

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 19:32:06 +11:00
“BeeRad” 7444599817 fix: harden external link navigation in the web app
- add a shared external-navigation guard at the document level
- route onboarding, markdown, settings, and node source links through one helper
- stop browser fallback code from replacing the current app page on failures

Generated with Codex
2026-03-17 18:20:37 +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” 5997dead5d feat: polish skills pane ui
- share skill card and markdown rendering
- clean up skill detail layout and scroll reset
- remove nested interactive card structure
2026-03-15 16:02:47 +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” 2cdd685c04 sync: skills and tool contract overhaul from private repo 2026-03-07 11:45:26 +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 9954792b1d sync: temporal-awareness from private repo
- Surface created_at, updated_at, event_date in queryNodes + queryDimensionNodes responses
- Add date range filters (createdAfter/Before, eventAfter/Before) to NodeFilters + nodeService.getNodes()

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 14:34:55 +11:00
“BeeRad”andClaude Opus 4.6 0095641278 sync: chunk-embedding-audit — fix Sync to Source button visibility
- Show button when notes exist (not just when chunk exists)
- Synced from private repo

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 13:35:59 +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 1d323de11a fix: edges tab truncation and layout polish
- Add minWidth: 0 on all flex containers to enable proper truncation
- Title now truncates with ellipsis instead of pushing panel out
- Explanation row truncates to single line with ellipsis and title tooltip
- Type chip has flexShrink: 0 + whiteSpace: nowrap to prevent wrapping
- Delete button uses compact × with flexShrink: 0 (inline, not separate)
- Edit input has minWidth: 0 to prevent overflow
- Remove expand/collapse (5-item limit) — show all connections in tab
- Tighter spacing (6px padding, 2px gap) matching private repo polish

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 09:28:01 +11:00
“BeeRad”andClaude Opus 4.6 f7374590d9 refactor: move edges from modal to dedicated tab in FocusPanel
- Add 'edges' to content tab bar (Notes | Desc | Edges | Source)
- Edges tab shows count badge, has Create/Cancel toggle for search
- Replace full-screen connections modal with inline tab content
- Search input appears conditionally via edgeSearchOpen state
- Connections button near title now switches to edges tab
- Remove ~400 lines of modal overlay code

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 09:22:04 +11:00
“BeeRad”andClaude Opus 4.6 c23b743580 refactor: move guides from left toolbar to settings
- Remove guides from LeftToolbar pane type buttons
- Remove 'guides' from PaneType union and PANE_LABELS
- Remove GuidesPane from pane exports and ThreePanelLayout rendering
- Add migration to reset persisted slots that had type 'guides'
- Guides remain accessible via Settings modal (GuidesViewer tab)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 09:10:38 +11:00
“BeeRad”andClaude Opus 4.6 d723212ed3 sync: contextual substrate UX from private repo
- Add DimensionIconsContext for app-wide dimension icon sharing
- Enhanced getNodeIcon() with favicon/YouTube/PDF detection + dimension icons
- Propagate dynamic icons to GridView, ListView, SearchModal, FocusPanel, ViewsOverlay, FolderViewOverlay
- Add RahEdge component with hover labels for map edges
- Update RahNode with dimension-colored borders and icon support
- Add MiniMap with dimension color coding to MapPane
- MCP server: add description field to rah_update_node, bump standalone to v1.4.2

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 08:55:47 +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 Sonnet 4.5 be675be4e0 feat: MCP server v1.2.0 — guide system + read/write guide tools
Adds full guide system to MCP standalone server. System guides (schema,
creating-nodes, edges, dimensions, extract) are bundled and immutable.
Users can create up to 10 custom guides via rah_write_guide. Syncs guide
infrastructure from main repo to OS repo app code.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-08 11:15:13 +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” 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 3181041090 feat(rah-light): remove unused prompts.ts type file
- Delete src/types/prompts.ts (was used by deleted contextBuilder.ts)
- All other type files verified in use: analytics.ts, database.ts, logs.ts, views.ts, pdf-parse.d.ts

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:40:18 +11:00
“BeeRad”andClaude Opus 4.5 5cc198f52b feat(rah-light): simplify settings panel
- Update ContextViewer description to remove chat reference
- All existing tabs remain useful for MCP/workflow functionality:
  - Logs, Tools, Workflows, API Keys, Database, Context, External Agents
- No agent-specific or voice settings were present

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:36:40 +11:00
“BeeRad”andClaude Opus 4.5 ee4053a0cf feat(rah-light): remove unused supabaseTokenRegistry
- Delete src/services/context/supabaseTokenRegistry.ts (stub for private version, not imported)
- Keep requestContext.ts (used by workflow executor, middleware)
- Keep autoContext.ts (used by workflow API and tools)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:35:08 +11:00
“BeeRad”andClaude Opus 4.5 8a3b6df609 feat(rah-light): clean up unused agent services
- Delete src/services/ai.ts (not imported anywhere)
- Delete src/services/agents/registry.ts (only used by contextBuilder)
- Delete src/services/helpers/ directory (contextBuilder.ts, logger.ts - unused)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:33:37 +11:00
“BeeRad”andClaude Opus 4.5 2661be7c80 feat(rah-light): remove RAHChat and related components
- Deleted src/components/agents/RAHChat.tsx
- Deleted src/components/agents/TerminalInput.tsx
- Deleted src/components/agents/TerminalMessage.tsx
- Deleted src/components/agents/hooks/useSSEChat.ts
- Deleted src/components/helpers/ReasoningTrace.tsx
- Deleted src/components/helpers/ToolDisplay.tsx
- Simplified WorkflowsPane to show MCP integration message (no chat)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:30:05 +11:00
“BeeRad”andClaude Opus 4.5 a398819e26 feat(rah-light): remove chat pane, simplify to two-panel layout
- Deleted src/components/panes/ChatPane.tsx
- Removed 'chat' from PaneType in types.ts
- Updated ThreePanelLayout.tsx to remove chat pane case and references
- Updated LeftToolbar.tsx to remove chat icon and type
- Default slot B is now null (closed) instead of chat
- Cmd+\ now opens node pane instead of chat

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:27:53 +11:00
“BeeRad”andClaude Opus 4.5 92e48a2175 feat(rah-light): remove chat agent panels
- Deleted src/components/agents/AgentsPanel.tsx
- Deleted src/components/agents/MiniRAHPanel.tsx
- Deleted src/components/agents/WiseRAHPanel.tsx
- These components were not imported anywhere

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:22:14 +11:00
“BeeRad”andClaude Opus 4.5 844a9b57ab feat(rah-light): remove delegateToWiseRAH orchestration tool
- Deleted src/tools/orchestration/delegateToWiseRAH.ts
- Removed delegateToWiseRAH from registry.ts and groups.ts
- Deleted tests/evals/scenarios/delegate-wise.ts and delegate-mini.ts
- Updated tests/evals/scenarios/index.ts to remove deleted test imports

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:20:35 +11:00