Skip to content
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 3 additions & 0 deletions apps/docs/app/[lang]/docs/[[...slug]]/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { notFound } from 'next/navigation';
import defaultMdxComponents from 'fumadocs-ui/mdx';
import { Step, Steps } from 'fumadocs-ui/components/steps';
import { File, Folder, Files } from 'fumadocs-ui/components/files';
import { Tab, Tabs } from 'fumadocs-ui/components/tabs';

const components = {
...defaultMdxComponents,
Expand All @@ -14,6 +15,8 @@ const components = {
Folder,
Files,
FileTree: Files,
Tab,
Tabs,
};

export default async function Page(props: {
Expand Down
12 changes: 4 additions & 8 deletions apps/docs/next.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -18,20 +18,16 @@ const config = {
},
],
},
experimental: {
turbo: {
resolveAlias: {
'fumadocs-ui/components/callout': 'fumadocs-ui/dist/components/callout.js',
},
},
},
webpack: (config, { isServer }) => {
// Resolve the fumadocs virtual collection import to the local .source directory
config.resolve = config.resolve || {};
config.resolve.alias = {
...(config.resolve.alias || {}),
'fumadocs-mdx:collections': path.resolve(__dirname, '.source'),
'fumadocs-ui/components/callout$': path.resolve(__dirname, '../../node_modules/fumadocs-ui/dist/components/callout.js'),
'fumadocs-ui/components/callout$': path.resolve(__dirname, './node_modules/fumadocs-ui/dist/components/callout.js'),
'fumadocs-ui/components/card$': path.resolve(__dirname, './node_modules/fumadocs-ui/dist/components/card.js'),
'fumadocs-ui/components/tabs$': path.resolve(__dirname, './node_modules/fumadocs-ui/dist/components/tabs.js'),
'lucide-react$': path.resolve(__dirname, './node_modules/lucide-react/dist/cjs/lucide-react.js'),
};
return config;
},
Comment on lines 21 to 33
Copy link

Copilot AI Jan 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The aliases now point to ./node_modules/... under apps/docs, but in a typical monorepo the actual dependencies live in the workspace root node_modules, so these paths are likely incorrect and will cause module resolution failures at build time. To keep the aliases working, change these path.resolve calls back to a root-level node_modules location (as previously done with ../../node_modules/...), or use require.resolve('fumadocs-ui/dist/components/callout.js') / require.resolve('lucide-react') so resolution is accurate regardless of workspace layout.

Copilot uses AI. Check for mistakes.
Expand Down
2 changes: 1 addition & 1 deletion apps/docs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"description": "ObjectStack Protocol Documentation Site",
"scripts": {
"dev": "next dev",
"build": "NEXT_PRIVATE_BUILD_WORKER=1 next build",
"build": "next build",
"site:start": "next start",
"site:lint": "next lint"
},
Expand Down
24 changes: 24 additions & 0 deletions content/docs/references/ai/agent/AIKnowledge.mdx
Original file line number Diff line number Diff line change
@@ -1,11 +1,35 @@
---
title: AIKnowledge
description: AIKnowledge Schema Reference
category: ai
zodFile: agent
---


<Callout type="info">
**Source:** `packages/spec/src/ai/agent.zod.ts`
</Callout>

## Properties

| Property | Type | Required | Description |
| :--- | :--- | :--- | :--- |
| **topics** | `string[]` | ✅ | Topics/Tags to recruit knowledge from |
| **indexes** | `string[]` | ✅ | Vector Store Indexes |

## TypeScript Usage

```typescript
import { AIKnowledgeSchema } from '@objectstack/spec/ai';
import type { AIKnowledge } from '@objectstack/spec/ai';

// Validate data
const result = AIKnowledgeSchema.parse(data);

// Type-safe usage
const myAIKnowledge: AIKnowledge = {
topics: [],
indexes: []
};
```

23 changes: 23 additions & 0 deletions content/docs/references/ai/agent/AIModelConfig.mdx
Original file line number Diff line number Diff line change
@@ -1,8 +1,15 @@
---
title: AIModelConfig
description: AIModelConfig Schema Reference
category: ai
zodFile: agent
---


<Callout type="info">
**Source:** `packages/spec/src/ai/agent.zod.ts`
</Callout>

## Properties

| Property | Type | Required | Description |
Expand All @@ -12,3 +19,19 @@ description: AIModelConfig Schema Reference
| **temperature** | `number` | optional | |
| **maxTokens** | `number` | optional | |
| **topP** | `number` | optional | |

## TypeScript Usage

```typescript
import { AIModelConfigSchema } from '@objectstack/spec/ai';
import type { AIModelConfig } from '@objectstack/spec/ai';

// Validate data
const result = AIModelConfigSchema.parse(data);

// Type-safe usage
const myAIModelConfig: AIModelConfig = {
model: 'example'
};
```

24 changes: 24 additions & 0 deletions content/docs/references/ai/agent/AITool.mdx
Original file line number Diff line number Diff line change
@@ -1,12 +1,36 @@
---
title: AITool
description: AITool Schema Reference
category: ai
zodFile: agent
---


<Callout type="info">
**Source:** `packages/spec/src/ai/agent.zod.ts`
</Callout>

## Properties

| Property | Type | Required | Description |
| :--- | :--- | :--- | :--- |
| **type** | `Enum<'action' \| 'flow' \| 'query' \| 'vector_search'>` | ✅ | |
| **name** | `string` | ✅ | Reference name (Action Name, Flow Name) |
| **description** | `string` | optional | Override description for the LLM |

## TypeScript Usage

```typescript
import { AIToolSchema } from '@objectstack/spec/ai';
import type { AITool } from '@objectstack/spec/ai';

// Validate data
const result = AIToolSchema.parse(data);

// Type-safe usage
const myAITool: AITool = {
type: 'action',
name: 'name'
};
```

26 changes: 26 additions & 0 deletions content/docs/references/ai/agent/Agent.mdx
Original file line number Diff line number Diff line change
@@ -1,8 +1,15 @@
---
title: Agent
description: Agent Schema Reference
category: ai
zodFile: agent
---


<Callout type="info">
**Source:** `packages/spec/src/ai/agent.zod.ts`
</Callout>

## Properties

| Property | Type | Required | Description |
Expand All @@ -17,3 +24,22 @@ description: Agent Schema Reference
| **knowledge** | `object` | optional | RAG access |
| **active** | `boolean` | optional | |
| **access** | `string[]` | optional | Who can chat with this agent |

## TypeScript Usage

```typescript
import { AgentSchema } from '@objectstack/spec/ai';
import type { Agent } from '@objectstack/spec/ai';

// Validate data
const result = AgentSchema.parse(data);

// Type-safe usage
const myAgent: Agent = {
name: 'name',
label: 'example',
role: 'example',
// ... other required fields
};
```

26 changes: 26 additions & 0 deletions content/docs/references/ai/conversation/ConversationAnalytics.mdx
Original file line number Diff line number Diff line change
@@ -1,8 +1,15 @@
---
title: ConversationAnalytics
description: ConversationAnalytics Schema Reference
category: ai
zodFile: conversation
---


<Callout type="info">
**Source:** `packages/spec/src/ai/conversation.zod.ts`
</Callout>

## Properties

| Property | Type | Required | Description |
Expand All @@ -22,3 +29,22 @@ description: ConversationAnalytics Schema Reference
| **duration** | `number` | optional | Session duration in seconds |
| **firstMessageAt** | `string` | optional | ISO 8601 timestamp |
| **lastMessageAt** | `string` | optional | ISO 8601 timestamp |

## TypeScript Usage

```typescript
import { ConversationAnalyticsSchema } from '@objectstack/spec/ai';
import type { ConversationAnalytics } from '@objectstack/spec/ai';

// Validate data
const result = ConversationAnalyticsSchema.parse(data);

// Type-safe usage
const myConversationAnalytics: ConversationAnalytics = {
sessionId: 'example',
totalMessages: null,
userMessages: null,
// ... other required fields
};
```

23 changes: 23 additions & 0 deletions content/docs/references/ai/conversation/ConversationContext.mdx
Original file line number Diff line number Diff line change
@@ -1,8 +1,15 @@
---
title: ConversationContext
description: ConversationContext Schema Reference
category: ai
zodFile: conversation
---


<Callout type="info">
**Source:** `packages/spec/src/ai/conversation.zod.ts`
</Callout>

## Properties

| Property | Type | Required | Description |
Expand All @@ -15,3 +22,19 @@ description: ConversationContext Schema Reference
| **scope** | `Record<string, any>` | optional | Additional context scope |
| **systemMessage** | `string` | optional | System prompt/instructions |
| **metadata** | `Record<string, any>` | optional | |

## TypeScript Usage

```typescript
import { ConversationContextSchema } from '@objectstack/spec/ai';
import type { ConversationContext } from '@objectstack/spec/ai';

// Validate data
const result = ConversationContextSchema.parse(data);

// Type-safe usage
const myConversationContext: ConversationContext = {
sessionId: 'example'
};
```

26 changes: 26 additions & 0 deletions content/docs/references/ai/conversation/ConversationMessage.mdx
Original file line number Diff line number Diff line change
@@ -1,8 +1,15 @@
---
title: ConversationMessage
description: ConversationMessage Schema Reference
category: ai
zodFile: conversation
---


<Callout type="info">
**Source:** `packages/spec/src/ai/conversation.zod.ts`
</Callout>

## Properties

| Property | Type | Required | Description |
Expand All @@ -20,3 +27,22 @@ description: ConversationMessage Schema Reference
| **importance** | `number` | optional | Importance score for pruning |
| **embedding** | `number[]` | optional | Vector embedding for semantic search |
| **metadata** | `Record<string, any>` | optional | |

## TypeScript Usage

```typescript
import { ConversationMessageSchema } from '@objectstack/spec/ai';
import type { ConversationMessage } from '@objectstack/spec/ai';

// Validate data
const result = ConversationMessageSchema.parse(data);

// Type-safe usage
const myConversationMessage: ConversationMessage = {
id: 'example',
timestamp: 'example',
role: 'system',
// ... other required fields
};
```

26 changes: 26 additions & 0 deletions content/docs/references/ai/conversation/ConversationSession.mdx
Original file line number Diff line number Diff line change
@@ -1,8 +1,15 @@
---
title: ConversationSession
description: ConversationSession Schema Reference
category: ai
zodFile: conversation
---


<Callout type="info">
**Source:** `packages/spec/src/ai/conversation.zod.ts`
</Callout>

## Properties

| Property | Type | Required | Description |
Expand All @@ -20,3 +27,22 @@ description: ConversationSession Schema Reference
| **expiresAt** | `string` | optional | ISO 8601 timestamp |
| **tags** | `string[]` | optional | |
| **metadata** | `Record<string, any>` | optional | |

## TypeScript Usage

```typescript
import { ConversationSessionSchema } from '@objectstack/spec/ai';
import type { ConversationSession } from '@objectstack/spec/ai';

// Validate data
const result = ConversationSessionSchema.parse(data);

// Type-safe usage
const myConversationSession: ConversationSession = {
id: 'example',
context: {},
tokenBudget: {},
// ... other required fields
};
```

26 changes: 26 additions & 0 deletions content/docs/references/ai/conversation/ConversationSummary.mdx
Original file line number Diff line number Diff line change
@@ -1,8 +1,15 @@
---
title: ConversationSummary
description: ConversationSummary Schema Reference
category: ai
zodFile: conversation
---


<Callout type="info">
**Source:** `packages/spec/src/ai/conversation.zod.ts`
</Callout>

## Properties

| Property | Type | Required | Description |
Expand All @@ -15,3 +22,22 @@ description: ConversationSummary Schema Reference
| **messageRange** | `object` | ✅ | Range of messages summarized |
| **generatedAt** | `string` | ✅ | ISO 8601 timestamp |
| **modelId** | `string` | optional | Model used for summarization |

## TypeScript Usage

```typescript
import { ConversationSummarySchema } from '@objectstack/spec/ai';
import type { ConversationSummary } from '@objectstack/spec/ai';

// Validate data
const result = ConversationSummarySchema.parse(data);

// Type-safe usage
const myConversationSummary: ConversationSummary = {
summary: 'example',
originalTokens: null,
summaryTokens: null,
// ... other required fields
};
```

Loading
Loading