ryu0118/agentsessions
A Swift library to read and parse conversation sessions from AI coding agents.
Supported Agents
- Claude Code
- Codex
- Cursor
Usage
import AgentSessions
// List all sessions across all agents
let readers = SessionReaderFactory.make()
for reader in readers {
let summaries = try await reader.listSessions()
for summary in summaries {
print("\(summary.source.rawValue): \(summary.id) — \(summary.lastUserMessage ?? "")")
}
}
// Load a specific session
let conversation = try await readers[0].loadSession(id: "session-id")
for message in conversation?.messages ?? [] {
print("[\(message.role.rawValue)] \(message.decodedContent(for: conversation!.source))")
}Installation
Swift Package Manager
dependencies: [
.package(url: "https://github.com/Ryu0118/AgentSessions.git", from: "0.1.0"),
].target(
name: "YourTarget",
dependencies: [
.product(name: "AgentSessions", package: "AgentSessions"),
]
)Requirements
- Swift 6.0+
- macOS 15+
License
MIT
Package Metadata
Repository: ryu0118/agentsessions
Default branch: main
README: README.md