Skip to content

feat(memory): open existing inline session references - #12

Open
KinomotoMio wants to merge 6 commits into
tommy0103:mainfrom
KinomotoMio:feat/memory-session-links
Open

feat(memory): open existing inline session references#12
KinomotoMio wants to merge 6 commits into
tommy0103:mainfrom
KinomotoMio:feat/memory-session-links

Conversation

@KinomotoMio

@KinomotoMio KinomotoMio commented Jul 30, 2026

Copy link
Copy Markdown
Collaborator

What this opens up

When a Memory already contains a session ID in inline code, Obelisk can now turn that existing trace into a direct reading path. For example, codex:<uuid> becomes interactive only when the local database confirms that the exact session exists.

There is no new Markdown syntax and nothing for agents to learn or rewrite.

What changed

  • Collect complete inline-code values from Memory Markdown as bounded candidates.
  • Exclude fenced code blocks before lookup.
  • Resolve candidates with a batched exact-ID query against the App's sessions table.
  • Turn only confirmed matches into internal session buttons.
  • Display each confirmed session's title and expose its exact ID through the App's existing native hover convention; untitled sessions fall back to the full ID.
  • Keep unknown IDs and ordinary inline code exactly as they were.
  • Reuse the existing session-link styling and icon from the Memory header.
  • Open confirmed sessions through the Vue Router without leaving Obelisk.

Boundary

After discussing the ownership boundary, this PR deliberately does not introduce an obelisk:// protocol or document a new agent-facing convention. Core and the published Obelisk skill are unchanged.

The App does not parse UUIDs or assume a Codex-specific shape. A value becomes interactive only when it exactly matches a real sessions.id, which keeps the behavior provider-neutral and avoids accidental format rules.

Existing Memory files are not migrated or edited.

Validation

Passed:

  • npm test — 298 tests
  • npm run typecheck
  • npm run lint — no errors; 4 pre-existing unused-variable warnings
  • cd app && npm run test:electron:memory-links
  • cd app && npm run test:electron

The Electron Memory test exercises the production renderer build and confirms exact DB resolution, title-first labels, UUID hover text, untitled fallbacks, accessible labels, provider-neutral IDs, unknown and ordinary inline code, fenced-code exclusion, reused styling, and in-App navigation.

Closes #10

@KinomotoMio KinomotoMio changed the title feat(memory): support canonical obelisk session links feat(memory): open existing inline session references Jul 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Memory] Make session references easy to open

1 participant