Skip to content

session-convert v0.1.0

Latest

Choose a tag to compare

@megamen32 megamen32 released this 16 Jul 11:56
· 4 commits to main since this release
2592e1f

session-convert v0.1.0

First validated release of the Claude Code to OpenCode session converter.

Included

  • Current Claude transcript layout: ~/.claude/projects/<hash>/<session>.jsonl.
  • Legacy Claude sessions/ layout compatibility.
  • Current OpenCode global SQLite schema: session/message/part.
  • Legacy project-local OpenCode sessions/messages schema compatibility.
  • Correct OpenCode millisecond timestamps, while retaining legacy seconds read support.
  • Claude session titles derived from the first user message.
  • Idempotent OpenCode fixture generation.

Validation

  • npm run test:fixtures — passed twice consecutively.
  • npm run build — passed.
  • npm test — 38/38 tests passed.
  • Live conversion of the three latest TelegramAuto Claude sessions into the current global OpenCode database — all three visible in opencode session list:
    • de06b510-f980-4911-8266-120c4c24f5a6 → ses_1e327b9960ea4a14ba680a631fb30191, 2682 messages.
    • 7f597a04-0379-4635-8afe-bd2d2fdec6ee → ses_3dcea322aa0f48f5b8b42f682e5cc8cb, 331 messages.
    • 6bf35890-f66f-44be-a2a2-9aafaba29e27 → ses_b3ff2f2c4e88418792a3ade7a45afb80, 951 messages.

Exact tested environment

Platform: GNU/Linux x86_64.

Runtime and converter tools:

  • Node.js v22.22.3
  • npm 10.9.8
  • OpenCode 1.17.18
  • Claude Code 2.1.202 (Claude Code) — the converter test input was existing Claude JSONL transcripts; Claude Code itself was not used to generate the fixtures.
  • SQLite CLI 3.37.2 (2022-01-06 13:25:41, build 872ba256cbf61d9290b571c0e6d82a20c224ca3ad82971edc46b29818d5dalt1)

Build and test tools:

  • Vitest 4.1.10 (linux-x64, Node v22.22.3)
  • tsx 4.23.1
  • TypeScript 5.9.3
  • better-sqlite3 11.10.0

Verification and release tooling:

  • Bash 5.1.16(1)-release (x86_64-pc-linux-gnu)
  • Git 2.34.1
  • GitHub CLI 2.94.0 (2026-06-10)
  • jq 1.6

Diagnostic-only binary used during the initial investigation (not required by the converter or release validation):

  • casr 0.2.3 (0e0609f, 2026-07-03, x86_64-unknown-linux-gnu)

Source

  • Merged commit: 2592e1f2239173eb92dba0bf579d479e5b6ec003
  • Tag: v0.1.0