30 Commits
Author SHA1 Message Date
jerome 88228a6104 chore: fork with local patches for Syslog Solution
Patches applied:
- enforceRelayTTL — auto-deletes expired relay nodes (>7d)
- updateNode — tenant enforcement (block updates on NULL-namespace nodes)
- buildCanonicalMetadata — reject nested objects, sanitize values
- createNode — source-based and title-based deduplication
- getContext — NPE-safe count queries, stale node detection
- repair_log integration on updateNode
- bridge-validation.js — auto-fill defaults for tenant/namespace

Origin: github.com/bradwmorris/ra-h_os@70e95e7
2026-06-01 09:37:19 -04:00
“BeeRad” 9ec26db660 fix: show mcp search results in visible text 2026-04-27 15:11:12 +10:00
“BeeRad” ceaace1f4a fix: write mcp edge explanations to canonical field 2026-04-27 15:02:33 +10:00
“BeeRad” 21772fcba7 feat: add frictionless RA-H OS setup
- Add MCP setup, doctor, init-db, config, and rules CLI commands
- Publish latest MCP package wiring and local setup helper
- Update OS install docs for MCP-only, full app, and demo-safe setup

Generated with Claude Code
2026-04-21 08:29:31 +10:00
“BeeRad” 7e663abfb0 feat: sync shared skills contract and graph-first discipline 2026-04-17 20:58:21 +10:00
“BeeRad” 07754f5030 feat: sync open-source context and capsule removal
- remove legacy contexts surfaces from the app, MCP bridge, standalone server, and docs
- keep getContext and retrieveQueryContext while aligning the simplified graph-only contract
- harden dev startup migration behavior and disable the accidental chat surface in open source

Generated with Codex
2026-04-17 12:34:51 +10:00
“BeeRad” c2f880d957 sync: harden standalone mcp and chunk recovery 2026-04-16 09:53:56 +10:00
“BeeRad” 91ce23309b fix: port sqlite fts corruption containment
- remove unsafe standalone startup FTS rebuild behavior
- add integrity classification and degraded FTS handling in the OS database runtime
- add clean-db FTS repair script for rebuildable corruption recovery

Generated with Claude Code
2026-04-14 22:05:54 +10:00
“BeeRad” 929423cb21 feat: port MCP retrieval and write hardening
- align os MCP/runtime/docs with ra-h contract
- add safe direct node lookup and context-optional flows
- gate edge and context writes behind confirmation
2026-04-14 20:57:07 +10:00
“BeeRad” d825e7a783 feat: align MCP retrieval contract with ra-h
- add external retrieval and confirmation-gated writeback tools across MCP surfaces
- port direct-search-first retrieval support and supporting ranking/query updates
- update MCP docs and skills to treat agent memory files as optional reinforcement

Generated with Claude Code
2026-04-13 20:50:13 +10:00
“BeeRad” 5dcb2b7df6 feat: demote context startup priority
- cap contexts to 10 per account
- align MCP and onboarding context guidance
- keep contexts optional unless obviously relevant
2026-04-13 12:18:47 +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” b9af8dc385 refactor: align source-first schema surfaces 2026-03-22 20:17:07 +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” 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” bc226b03c8 cleanup(skills): remove legacy guide bundle and harden skill migration/pruning 2026-03-07 12:00:52 +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 7c6197fc0d fix: MCP servers — broken INSERT into dropped type column, stale content refs
The previous schema sync (86f43c9) was incomplete — it renamed variables
but left the SQL statements writing to `type` and `content` columns that
no longer exist in the schema. Fresh installs crash on first node create.

nodeService.js:
- Remove `type` from INSERT/UPDATE, replace with `event_date`
- Fix `content` → `notes` in INSERT values and UPDATE SET clauses
- Add `sanitizeTitle()` and chunk fallback logic

sqlite-client.js:
- Remove `is_pinned` from CREATE TABLE
- Add `description` and `icon` to dimensions table

index.js:
- Add temporal filter fields to search schema
- Improved description prompts
- Dynamic date injection in instructions

server.js + stdio-server.js:
- Add content→notes mapping in update handlers
- Fix output returning `notes` instead of `content`
- Add extraction tool schemas and handlers

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 09:16:51 +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 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 d6987a3dc1 fix(mcp): v1.4.1 — add Node version check and better-sqlite3 error handling
- Check Node version on startup, exit with clear message if >=24
- Catch better-sqlite3 load failure with actionable error message
- Cap engines to node >=18 <24 in package.json

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-10 15:58:21 +11:00
“BeeRad”andClaude Opus 4.6 ec3ab74efe feat(mcp): v1.4.0 — FTS5 search, chunk truncation, FTS rebuild on startup
- Switch rah_search_nodes and rah_search_content from LIKE to FTS5 with word-split LIKE fallback
- Rebuild nodes_fts and chunks_fts indexes on server startup
- Cap chunk field at 10K chars in rah_get_nodes (adds chunk_truncated, chunk_length)
- Multi-word queries now work ("Tesla manufacturing" finds both words anywhere)
- Relevance-ranked results when FTS available

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-10 15:26:51 +11:00
“BeeRad”andClaude Sonnet 4.5 0577ec727d fix: strengthen proactive knowledge capture in MCP instructions
Replaces generic "offer to save" with specific triggers and the
propose-a-node pattern for minimal-friction approval.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-08 11:42:13 +11:00
“BeeRad”andClaude Sonnet 4.5 e6c8c21f1f fix: tighten MCP instructions and tool description constraints
Clarifies get_context vs start-here hierarchy ("also" keyword).
Adds batch/result limits to rah_get_nodes, rah_search_nodes,
rah_query_edges descriptions. Adds title length to rah_add_node.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-08 11:38:26 +11:00
“BeeRad”andClaude Sonnet 4.5 ed82a85fa9 feat: add start-here master guide + enriched tool descriptions
Adds immutable "start-here" system guide as the master orientation doc
for agents. Enriches all tool descriptions with key rules at point of
use so agents can execute simple tasks without reading guides.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-08 11:30:53 +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 143587ebf1 feat: MCP server v1.1.0 — proactive knowledge capture, context tool, auto-create DB
Rewrite instructions to encourage proactive capture, add rah_get_context
orientation tool (hub nodes, dimensions, stats), add rah_update_edge,
improve tool descriptions, auto-create database on first connection.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 09:59:27 +11:00
“BeeRad”andClaude Opus 4.5 bcea76800b feat: standalone MCP server (ra-h-mcp-server)
- Added apps/mcp-server-standalone/ with direct SQLite access
- Works without RA-OS app running
- Install via: npx ra-h-mcp-server
- Updated docs/8_mcp.md with setup instructions

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 09:26:46 +11:00