chatgpt-api/fixtures/valid/everything-openapi/agentic.config.ts

178 wiersze
3.8 KiB
TypeScript
Czysty Zwykły widok Historia

2025-06-10 05:01:46 +00:00
import { defineConfig } from '@agentic/platform'
export default defineConfig({
2025-06-26 04:01:38 +00:00
name: 'Test Everything OpenAPI',
slug: 'test-everything-openapi',
origin: {
2025-06-10 05:01:46 +00:00
type: 'openapi',
url: 'https://agentic-platform-fixtures-everything.onrender.com',
2025-06-11 04:10:20 +00:00
spec: 'https://agentic-platform-fixtures-everything.onrender.com/docs'
2025-06-10 05:01:46 +00:00
},
2025-07-02 12:26:42 +00:00
icon: 'https://storage.agentic.so/agentic-dev-icon-circle-dark.svg',
readme: './readme.md',
2025-06-10 05:01:46 +00:00
toolConfigs: [
{
2025-06-11 04:31:16 +00:00
name: 'get_user',
2025-06-10 05:01:46 +00:00
enabled: true,
pure: true,
// cacheControl: 'no-cache',
reportUsage: true,
2025-06-12 19:07:52 +00:00
rateLimit: { enabled: false },
pricingPlanOverridesMap: {
2025-06-10 05:01:46 +00:00
free: {
enabled: true,
reportUsage: true
}
}
},
{
name: 'echo',
examples: [
{
name: 'Example 1',
prompt: 'Use the echo tool to say hello.',
featured: true,
args: {
message: 'Hello, world!'
}
}
]
},
2025-06-10 05:01:46 +00:00
{
2025-06-11 04:31:16 +00:00
name: 'disabled_tool',
2025-06-10 05:01:46 +00:00
enabled: false
},
{
2025-06-11 04:31:16 +00:00
name: 'disabled_for_free_plan_tool',
pricingPlanOverridesMap: {
2025-06-10 05:01:46 +00:00
free: {
enabled: false
}
}
},
{
2025-06-11 04:31:16 +00:00
name: 'pure',
2025-06-10 05:01:46 +00:00
pure: true
},
{
2025-06-11 04:31:16 +00:00
name: 'unpure_marked_pure',
2025-06-10 05:01:46 +00:00
pure: true
},
{
2025-06-11 04:31:16 +00:00
name: 'custom_cache_control_tool',
2025-06-10 05:01:46 +00:00
cacheControl:
'public, max-age=7200, s-maxage=7200, stale-while-revalidate=3600'
},
{
2025-06-11 04:31:16 +00:00
name: 'no_cache_cache_control_tool',
2025-06-10 05:01:46 +00:00
cacheControl: 'no-cache'
},
{
2025-06-11 04:31:16 +00:00
name: 'no_store_cache_control_tool',
2025-06-10 05:01:46 +00:00
cacheControl: 'no-store'
},
{
2025-06-11 04:31:16 +00:00
name: 'custom_rate_limit_tool',
2025-06-10 05:01:46 +00:00
rateLimit: {
interval: '30s',
2025-06-12 20:37:25 +00:00
limit: 2,
mode: 'strict'
2025-06-10 05:01:46 +00:00
}
},
{
name: 'custom_rate_limit_approximate_tool',
rateLimit: {
interval: '30s',
limit: 2,
mode: 'approximate'
}
},
2025-06-10 05:01:46 +00:00
{
2025-06-11 04:31:16 +00:00
name: 'disabled_rate_limit_tool',
2025-06-12 19:07:52 +00:00
rateLimit: { enabled: false }
},
{
name: 'strict_additional_properties',
2025-06-11 22:15:14 +00:00
inputSchemaAdditionalProperties: false,
outputSchemaAdditionalProperties: false
2025-06-10 05:01:46 +00:00
}
2025-06-20 19:00:56 +00:00
],
pricingPlans: [
{
name: 'Free',
slug: 'free',
lineItems: [
{
slug: 'base',
usageType: 'licensed',
amount: 0
},
{
slug: 'requests',
usageType: 'metered',
billingScheme: 'per_unit',
unitAmount: 0
}
]
},
{
name: 'Starter',
slug: 'starter',
lineItems: [
{
slug: 'base',
usageType: 'licensed',
amount: 999 // $9.99 USD
},
{
slug: 'requests',
usageType: 'metered',
billingScheme: 'tiered',
tiersMode: 'volume',
// free for first 1000 requests per month
// then $0.00053 USD for unlimited further requests that month
tiers: [
{
upTo: 1000,
unitAmount: 0
},
{
upTo: 'inf',
unitAmount: 0.053
}
]
}
]
},
{
name: 'Pro',
slug: 'pro',
lineItems: [
{
slug: 'base',
usageType: 'licensed',
amount: 2999 // $29.99 USD
},
{
slug: 'requests',
usageType: 'metered',
billingScheme: 'tiered',
tiersMode: 'volume',
// free for first 10000 requests per month
// then $0.00049 USD for unlimited further requests that month
tiers: [
{
upTo: 10_000,
unitAmount: 0
},
{
upTo: 'inf',
unitAmount: 0.049
}
]
}
]
}
2025-06-10 05:01:46 +00:00
]
})