AI Adapters
This package is provider-agnostic. You inject your own adapter via options.ai.adapter.
Canonical API signatures are documented in README.
Adapter Contract
type PostMetaAIAdapter = {
name?: string;
generate: (input: {
system: string;
user: string;
schema: {
type: "object";
properties: {
description: { type: ["string", "null"] };
tags: { type: "array"; items: { type: "string" } };
};
required: ["description", "tags"];
additionalProperties: false;
};
}) => Promise<{ description: string | null; tags: string[] }>;
};Behavior Notes
- AI retries default to 3
- Invalid responses are retried
- After retries fail:
description = null,tags = [] - Diagnostics are always returned in
result.ai