Skip to content

Commit 7e56da4

Browse files
committed
docs: add command metadata
1 parent 1c98367 commit 7e56da4

24 files changed

+231
-145
lines changed

apps/test-bot/src/app/commands/(general)/ping.ts

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import {
1414
stopMiddlewares,
1515
Logger,
1616
unstable_after as after,
17+
CommandMetadataFunction,
1718
} from 'commandkit';
1819

1920
export const command: CommandData = {
@@ -35,10 +36,25 @@ export const command: CommandData = {
3536
// guilds: ['1314834483660455938'],
3637
};
3738

38-
export const metadata: CommandMetadata = {
39-
// userPermissions: 'Administrator',
40-
// botPermissions: 'KickMembers',
41-
// guilds: ['1314834483660455938'],
39+
// export const metadata: CommandMetadata = {
40+
// // userPermissions: 'Administrator',
41+
// // botPermissions: 'KickMembers',
42+
// // guilds: ['1314834483660455938'],
43+
// aliases: [''],
44+
// userPermissions: 'Administrator',
45+
// botPermissions: 'KickMembers',
46+
// guilds: ['1314834483660455938'],
47+
// };
48+
49+
export const generateMetadata: CommandMetadataFunction = async () => {
50+
// Dynamically determine the metadata for the command
51+
52+
return {
53+
userPermissions: 'Administrator',
54+
botPermissions: ['KickMembers', 'BanMembers'],
55+
guilds: ['1234567890', '1234567891'],
56+
aliases: ['p', 'pong'],
57+
};
4258
};
4359

4460
const tests = Array.from({ length: 10 }, (_, i) => ({

apps/website/docs/api-reference/ai/functions/create-tool.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import MemberDescription from '@site/src/components/MemberDescription';
1313

1414
## createTool
1515

16-
<GenerationInfo sourceFile="packages/ai/src/tools/common/index.ts" sourceLine="88" packageName="@commandkit/ai" />
16+
<GenerationInfo sourceFile="packages/ai/src/tools/common/index.ts" sourceLine="90" packageName="@commandkit/ai" />
1717

1818
Creates a new AI tool with the specified configuration.
1919
This function wraps the underlying AI library's tool creation with additional

apps/website/docs/api-reference/ai/interfaces/configure-ai.mdx

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,16 @@ interface ConfigureAI {
2323
messageFilter?: MessageFilter;
2424
selectAiModel: SelectAiModel;
2525
prepareSystemPrompt?: (ctx: AiContext, message: Message) => Promise<string>;
26-
preparePrompt?: (
27-
ctx: AiContext,
28-
message: Message,
26+
preparePrompt?: (
27+
ctx: AiContext,
28+
message: Message,
2929
) => Promise<string | AiMessage>;
3030
onProcessingStart?: (ctx: AiContext, message: Message) => Promise<void>;
3131
onProcessingFinish?: (ctx: AiContext, message: Message) => Promise<void>;
32-
onResult?: (
33-
ctx: AiContext,
34-
message: Message,
35-
result: AIGenerateResult,
32+
onResult?: (
33+
ctx: AiContext,
34+
message: Message,
35+
result: AIGenerateResult,
3636
) => Promise<void>;
3737
onError?: (ctx: AiContext, message: Message, error: Error) => Promise<void>;
3838
}
@@ -49,24 +49,24 @@ Whether to disable the built-in tools. Default is false.
4949

5050
<MemberInfo kind="property" type={`<a href='/docs/next/api-reference/ai/types/message-filter#messagefilter'>MessageFilter</a>`} />
5151

52-
A filter function that determines whether a message should be processed by the AI.
52+
A filter function that determines whether a message should be processed by the AI.
5353
CommandKit invokes this function before processing the message.
5454
### selectAiModel
5555

5656
<MemberInfo kind="property" type={`<a href='/docs/next/api-reference/ai/types/select-ai-model#selectaimodel'>SelectAiModel</a>`} />
5757

58-
A function that selects the AI model to use based on the message.
58+
A function that selects the AI model to use based on the message.
5959
This function should return a promise that resolves to an object containing the model and options.
6060
### prepareSystemPrompt
6161

6262
<MemberInfo kind="property" type={`(ctx: <a href='/docs/next/api-reference/ai/classes/ai-context#aicontext'>AiContext</a>, message: Message) =&#62; Promise&#60;string&#62;`} />
6363

64-
A function that generates a system prompt based on the message.
65-
This function should return a promise that resolves to a string containing the system prompt.
64+
A function that generates a system prompt based on the message.
65+
This function should return a promise that resolves to a string containing the system prompt.
6666
If not provided, a default system prompt will be used.
6767
### preparePrompt
6868

69-
<MemberInfo kind="property" type={`( ctx: <a href='/docs/next/api-reference/ai/classes/ai-context#aicontext'>AiContext</a>, message: Message, ) =&#62; Promise&#60;string | <a href='/docs/next/api-reference/ai/types/ai-message#aimessage'>AiMessage</a>&#62;`} />
69+
<MemberInfo kind="property" type={`( ctx: <a href='/docs/next/api-reference/ai/classes/ai-context#aicontext'>AiContext</a>, message: Message, ) =&#62; Promise&#60;string | <a href='/docs/next/api-reference/ai/types/ai-message#aimessage'>AiMessage</a>&#62;`} />
7070

7171
A function that prepares the prompt for the AI model.
7272
### onProcessingStart
@@ -81,7 +81,7 @@ A function that gets called when the AI starts processing a message.
8181
A function that gets called when the AI finishes processing a message.
8282
### onResult
8383

84-
<MemberInfo kind="property" type={`( ctx: <a href='/docs/next/api-reference/ai/classes/ai-context#aicontext'>AiContext</a>, message: Message, result: <a href='/docs/next/api-reference/ai/types/aigenerate-result#aigenerateresult'>AIGenerateResult</a>, ) =&#62; Promise&#60;void&#62;`} />
84+
<MemberInfo kind="property" type={`( ctx: <a href='/docs/next/api-reference/ai/classes/ai-context#aicontext'>AiContext</a>, message: Message, result: <a href='/docs/next/api-reference/ai/types/aigenerate-result#aigenerateresult'>AIGenerateResult</a>, ) =&#62; Promise&#60;void&#62;`} />
8585

8686
A function that gets called upon receiving the result from the AI model.
8787
### onError

apps/website/docs/api-reference/ai/interfaces/create-tool-options.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import MemberDescription from '@site/src/components/MemberDescription';
1313

1414
## CreateToolOptions
1515

16-
<GenerationInfo sourceFile="packages/ai/src/tools/common/index.ts" sourceLine="36" packageName="@commandkit/ai" />
16+
<GenerationInfo sourceFile="packages/ai/src/tools/common/index.ts" sourceLine="38" packageName="@commandkit/ai" />
1717

1818
Configuration options for creating an AI tool.
1919

apps/website/docs/api-reference/ai/types/infer-parameters.mdx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import MemberDescription from '@site/src/components/MemberDescription';
1313

1414
## InferParameters
1515

16-
<GenerationInfo sourceFile="packages/ai/src/tools/common/index.ts" sourceLine="24" packageName="@commandkit/ai" />
16+
<GenerationInfo sourceFile="packages/ai/src/tools/common/index.ts" sourceLine="25" packageName="@commandkit/ai" />
1717

1818
Utility type that infers the TypeScript type from a tool parameter schema.
1919
Supports both Zod schemas and AI library schemas.
@@ -23,5 +23,7 @@ type InferParameters<T extends ToolParameterType> = T extends Schema<any>
2323
? T['_type']
2424
: T extends z.ZodTypeAny
2525
? z.infer<T>
26-
: never
26+
: T extends z3.ZodTypeAny
27+
? z3.infer<T>
28+
: never
2729
```

apps/website/docs/api-reference/ai/types/tool-execute-function.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import MemberDescription from '@site/src/components/MemberDescription';
1313

1414
## ToolExecuteFunction
1515

16-
<GenerationInfo sourceFile="packages/ai/src/tools/common/index.ts" sourceLine="55" packageName="@commandkit/ai" />
16+
<GenerationInfo sourceFile="packages/ai/src/tools/common/index.ts" sourceLine="57" packageName="@commandkit/ai" />
1717

1818
Type definition for a tool's execute function.
1919

apps/website/docs/api-reference/ai/types/tool-parameter-type.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,11 @@ import MemberDescription from '@site/src/components/MemberDescription';
1313

1414
## ToolParameterType
1515

16-
<GenerationInfo sourceFile="packages/ai/src/tools/common/index.ts" sourceLine="17" packageName="@commandkit/ai" />
16+
<GenerationInfo sourceFile="packages/ai/src/tools/common/index.ts" sourceLine="18" packageName="@commandkit/ai" />
1717

1818
Type representing the parameters schema for AI tools.
1919
Extracted from the first parameter of the `tool` function from the 'ai' library.
2020

2121
```ts title="Signature"
22-
type ToolParameterType = z.ZodType | Schema<any>
22+
type ToolParameterType = z.ZodType | z3.ZodType | Schema<any>
2323
```

apps/website/docs/api-reference/cache/classes/use-cache-directive-plugin.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import MemberDescription from '@site/src/components/MemberDescription';
1313

1414
## UseCacheDirectivePlugin
1515

16-
<GenerationInfo sourceFile="packages/cache/src/use-cache-directive.ts" sourceLine="13" packageName="@commandkit/cache" />
16+
<GenerationInfo sourceFile="packages/cache/src/use-cache-directive.ts" sourceLine="12" packageName="@commandkit/cache" />
1717

1818
Compiler plugin for the "use cache" directive.
1919
This plugin transforms the "use cache" directive into a runtime cache operation.

apps/website/docs/api-reference/commandkit/classes/analytics-engine.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import MemberDescription from '@site/src/components/MemberDescription';
1313

1414
## AnalyticsEngine
1515

16-
<GenerationInfo sourceFile="packages/commandkit/src/analytics/analytics-engine.ts" sourceLine="26" packageName="commandkit" />
16+
<GenerationInfo sourceFile="packages/commandkit/src/analytics/analytics-engine.ts" sourceLine="25" packageName="commandkit" />
1717

1818
AnalyticsEngine class for managing analytics providers and tracking events.
1919
This class allows you to register a provider, set a filter for events, and track or identify events.

apps/website/docs/api-reference/commandkit/functions/flag.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import MemberDescription from '@site/src/components/MemberDescription';
1313

1414
## flag
1515

16-
<GenerationInfo sourceFile="packages/commandkit/src/flags/feature-flags.ts" sourceLine="412" packageName="commandkit" />
16+
<GenerationInfo sourceFile="packages/commandkit/src/flags/feature-flags.ts" sourceLine="410" packageName="commandkit" />
1717

1818
Create a new feature flag.
1919

0 commit comments

Comments
 (0)