Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions docs/docs/api/appkit/Variable.genie.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Variable: genie

```ts
const genie: ToPlugin<typeof GeniePlugin, IGenieConfig, "genie">;
```
1 change: 1 addition & 0 deletions docs/docs/api/appkit/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ plugin architecture, and React integration.

| Variable | Description |
| ------ | ------ |
| [genie](Variable.genie.md) | - |
| [sql](Variable.sql.md) | SQL helper namespace |

## Functions
Expand Down
5 changes: 5 additions & 0 deletions docs/docs/api/appkit/typedoc-sidebar.ts
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,11 @@ const typedocSidebar: SidebarsConfig = {
type: "category",
label: "Variables",
items: [
{
type: "doc",
id: "api/appkit/Variable.genie",
label: "genie"
},
{
type: "doc",
id: "api/appkit/Variable.sql",
Expand Down
2 changes: 1 addition & 1 deletion packages/appkit/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ export {
} from "./errors";
// Plugin authoring
export { Plugin, toPlugin } from "./plugin";
export { analytics, server } from "./plugins";
export { analytics, genie, server } from "./plugins";
// Registry types and utilities for plugin manifests
export type {
ConfigSchema,
Expand Down
16 changes: 16 additions & 0 deletions packages/appkit/src/plugins/genie/defaults.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import type { StreamExecutionSettings } from "shared";

export const genieStreamDefaults: StreamExecutionSettings = {
default: {
// Cache disabled: chat messages are conversational and stateful, not repeatable queries.
cache: {
enabled: false,
},
// Retry disabled: Genie calls are not idempotent (retries could create duplicate
// conversations/messages), and the SDK Waiter already handles transient polling failures.
retry: {
enabled: false,
},
timeout: 120_000,
},
};
Loading