Nothing
test_that("console session event store writes custom and visible events separately", {
startup <- tempfile("aisdk-session-store-")
dir.create(startup, recursive = TRUE)
on.exit(unlink(startup, recursive = TRUE), add = TRUE)
session <- create_chat_session(model = "mock:test")
event1 <- aisdk:::console_append_session_event(
session,
type = "custom",
payload = list(extension_state = list(count = 1)),
startup_dir = startup
)
event2 <- aisdk:::console_append_session_event(
session,
type = "custom_message",
payload = list(message = list(role = "system", content = "visible summary")),
startup_dir = startup,
visible = TRUE
)
events <- aisdk:::console_read_session_events(session, startup_dir = startup)
visible <- aisdk:::console_event_visible_messages(events)
expect_match(event1$event_id, "^evt_")
expect_match(event2$event_id, "^evt_")
expect_length(events, 2)
expect_length(visible, 1)
expect_equal(visible[[1]]$content, "visible summary")
})
test_that("console branch tree can fork, checkout, and summarize", {
session <- create_chat_session(model = "mock:test")
tree <- aisdk:::console_branch_tree(session)
branch <- aisdk:::console_fork_branch(session, "experiment")
ok <- aisdk:::console_checkout_branch(session, "main")
aisdk:::console_checkout_branch(session, branch)
aisdk:::console_set_branch_summary(session, "branch summary")
updated <- aisdk:::console_branch_tree(session)
expect_equal(tree$active, "main")
expect_true(ok)
expect_equal(updated$active, branch)
expect_equal(updated$branches[[branch]]$parent, "main")
expect_equal(updated$branches[[branch]]$summary, "branch summary")
})
test_that("extension runtime loads builtins and custom extension commands", {
startup <- tempfile("aisdk-ext-")
ext_dir <- file.path(startup, ".aisdk", "extensions", "custom")
dir.create(ext_dir, recursive = TRUE)
on.exit(unlink(startup, recursive = TRUE), add = TRUE)
writeLines(c(
"register_extension(",
" id = 'custom',",
" commands = list(hello = function(...) 'hi'),",
" state = list(value = 1)",
")"
), file.path(ext_dir, "extension.R"))
session <- create_chat_session(model = "mock:test")
runtime <- aisdk:::console_extension_runtime_load(session, startup_dir = startup)
expect_true("r-console" %in% names(runtime$extensions))
expect_true("custom" %in% names(runtime$extensions))
expect_true("hello" %in% names(runtime$commands))
expect_equal(session$get_metadata("console_extensions")[[length(session$get_metadata("console_extensions"))]], "custom")
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.