بنقرة واحدة
voltagent
Create or configure VoltAgent agents with tools, memory, hooks, sub-agents, and workflows.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Create or configure VoltAgent agents with tools, memory, hooks, sub-agents, and workflows.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Shell out to claude CLI.
Run a multi-agent debate to compare options and converge on a decision.
Run the same task with multiple agents for reviews, critiques, or model comparison.
Autonomous large-task delivery agent. Use for long-running coding work that should go from objective or plan to implemented code, review fixes, PR/MR, and green CI with minimal human-in-the-loop gates.
Manage ClickUp tasks.
Generate a project template for Coolify
| name | voltagent |
| description | Create or configure VoltAgent agents with tools, memory, hooks, sub-agents, and workflows. |
Guides development of VoltAgent-based AI agents including:
@voltagent/core package@ai-sdk/anthropic, @ai-sdk/openai)zod for schema validationimport { Agent } from '@voltagent/core'
import { anthropic } from '@ai-sdk/anthropic'
const agent = new Agent({
name: 'Assistant',
instructions: 'You are a helpful assistant.',
model: anthropic('claude-3-5-haiku-20241022'),
})
const result = await agent.generateText('Hello!')
console.log(result.text)
import { Agent, createTool } from '@voltagent/core'
import { z } from 'zod'
const weatherTool = createTool({
name: 'get_weather',
description: 'Get current weather for a location',
parameters: z.object({
location: z.string().describe('The city name'),
}),
execute: async ({ location }) => {
return { location, temperature: 72, conditions: 'sunny' }
},
})
const agent = new Agent({
name: 'Weather Assistant',
instructions: 'Help users with weather information.',
model: anthropic('claude-3-5-haiku-20241022'),
tools: [weatherTool],
})
import { createTool } from '@voltagent/core'
import { z } from 'zod'
export const myTool = createTool({
name: 'tool_name', // snake_case convention
description: 'Clear description of what this tool does',
parameters: z.object({
param: z.string().describe('What this parameter is for'),
optional: z.number().optional().describe('Optional parameter'),
}),
execute: async (args, options) => {
// Access context from options
const userId = options?.context?.get('userId')
const isAdmin = options?.context?.get('isAdmin') === 'true'
// Implement tool logic
return { result: 'data' }
},
})
import { createTool } from '@voltagent/core'
import { z } from 'zod'
export const fetchClientsTool = createTool({
name: 'fetch_clients',
description: 'Get list of clients for the current trainer',
parameters: z.object({
limit: z.number().optional().describe('Max clients to return'),
}),
execute: async ({ limit = 10 }, options) => {
const db = useDB()
const trainerId = options?.context?.get('trainerId')
const isSuperAdmin = options?.context?.get('isSuperAdmin') === 'true'
// Super admins see all clients, trainers see only assigned
const clients = isSuperAdmin
? await db.select().from(users).limit(limit)
: await db.select().from(users)
.innerJoin(clientsTrainers, eq(users.id, clientsTrainers.clientId))
.where(eq(clientsTrainers.trainerId, trainerId))
.limit(limit)
return { clients, count: clients.length }
},
})
const longRunningTool = createTool({
name: 'search_web',
description: 'Search the web (supports cancellation)',
parameters: z.object({
query: z.string().describe('Search query'),
}),
execute: async ({ query }, options) => {
const signal = options?.abortController?.signal
if (signal?.aborted) {
throw new Error('Search cancelled before start')
}
const response = await fetch(`https://api.search.com?q=${query}`, { signal })
return await response.json()
},
})
See tool-template.ts for a complete template.
model directly with ai-sdk LanguageModel instancesinstructions (string or function), NOT systemPrompt.describe() for all parametersuserId and conversationId for memoryllm + model pattern from v0.xgenerateObject/streamObject if you need tool callingserver/
agents/
client-insights/ # Main agent
index.ts # Agent definition
tools/ # Agent tools
fetchClients.ts
fetchClientDetails.ts
searchExercises.ts
services/
voltagent.ts # VoltAgent initialization
api/
agents/
client-insights/
text.post.ts # Sync endpoint
stream.post.ts # Streaming endpoint
# Required for Anthropic (accessed directly by AI SDK)
ANTHROPIC_API_KEY=sk-ant-...
# Optional: For observability
VOLTAGENT_PUBLIC_KEY=pk_...
VOLTAGENT_SECRET_KEY=sk_...
# Optional: For Turso remote memory
TURSO_DATABASE_URL=libsql://...
TURSO_AUTH_TOKEN=...