# Usage Examples

Usage examples cooking show

## Basic Query ```javascript // Ask the default duck await ask_duck({ prompt: "Explain async/await in JavaScript" }); ``` ## Conversation ```javascript // Start a conversation await chat_with_duck({ conversation_id: "learning-session", message: "What is TypeScript?" }); // Continue the conversation await chat_with_duck({ conversation_id: "learning-session", message: "How does it differ from JavaScript?" }); ``` ## Compare Responses ```javascript // Get different perspectives await compare_ducks({ prompt: "What's the best way to handle errors in Node.js?", providers: ["openai", "groq", "ollama"] }); ``` ## Duck Council ```javascript // Convene the council for important decisions await duck_council({ prompt: "Should I use REST or GraphQL for my API?" }); ``` ## Multi-Agent Voting ```javascript // Have ducks vote on a decision await duck_vote({ question: "Best database for a real-time chat app?", options: ["PostgreSQL", "MongoDB", "Redis", "Cassandra"] }); // Returns: Winner with consensus level (unanimous/majority/split) ``` ## Judge Responses ```javascript // First, get responses from council const responses = await duck_council({ prompt: "Implement a rate limiter" }); // Then have a duck judge them await duck_judge({ responses: responses, criteria: ["correctness", "efficiency", "readability"], persona: "senior backend engineer" }); ``` ## Iterative Refinement ```javascript // Two ducks collaborate to improve a solution await duck_iterate({ prompt: "Write a TypeScript function to deep clone objects", providers: ["openai", "google"], mode: "critique-improve", iterations: 3 }); ``` ## Structured Debate ```javascript // Oxford-style debate on architecture await duck_debate({ prompt: "Monorepo vs polyrepo for a growing startup", format: "oxford", rounds: 3 }); ``` ## Check Usage Stats ```javascript // See today's usage await get_usage_stats({ period: "today" }); // See last 7 days with cost breakdown await get_usage_stats({ period: "7d" }); ```