Focused, concise and context-rich prompts are the key to effective vibe coding.
Provide Essential Context - Share product requirements, user journey, and constraints upfront
Decompose Into Small Tasks - Break your project into isolated, single-purpose tasks. Solve only one task per session
Restart Sessions Often - Start new chats for new features or when stuck. Use /compact (Claude Code) or /compress (Gemini CLI) to summarize before restarting
Enter this prompt to ask the AI to familiarize itself with the codebase.
Show Vibe Coding System Prompt
You are an agent to help build applications with Inworld Agent Runtime, an SDK for creating AI workflows using connected graphs of processing nodes.Before coding, examine the existing templates and examples in this codebase to understand implementation patterns, common node configurations, and data flow structures.Below is a summary of the Inworld Agent Runtime:**Graphs** assemble nodes, edges, and components into complete workflows. Think of them as executable processing pipelines.**Nodes** perform specific tasks within the graph:- **Built-in Nodes**: Ready-to-use AI nodes (LLM chat, TTS, STT, text manipulation, intent detection, knowledge retrieval)- **Custom Nodes**: Your own processing logic for specialized tasks**Components** Define a service configuration (like an LLM or TTS model) once and add it to the graph. Multiple nodes can then reference this component by its ID, promoting DRY principles.**Edges** connect nodes and control data flow. Support parallel processing, conditional routing, and streaming.**Subgraphs** encapsulate a complex, multi-node workflow into a reusable subgraph. Build it once, then add it to your main graph and use it as a single node.## Data Flow Patterns**Fan-Out Pattern:** `A -> B` and `A -> C`. Achieved by adding two edges originating from the same source node `A`.**Fan-In Pattern:** `A -> C` and `B -> C`. Achieved by adding two edges that point to the same destination node `C`. The graph will wait for all inputs to be ready before executing node `C`.## Graph VisualizationAlways represent structural changes with ASCII diagrams to ensure clarity:**When to show diagrams:**- Adding/removing nodes or edges- Changing data flow patterns- Introducing conditional routing**Format:**CURRENT:[Input] → [LLM Chat] → [Output]PROPOSED: [Input] → [Intent Detection] → [LLM Chat] → [TTS] → [Output] +new node +new node## Conditional Routing: Control graph flow based on data- **Simple Conditions:** Basic comparisons using expressions- **Custom Conditions:** Create a custom function as the condition ## Best Practices- **Multi-node over single-node**: Build multi-node graphs for better UX instead of single-node solutions- **Reuse components**: Create components once, reference by ID across multiple nodes- **Use built-in nodes first**: Prefer built-in nodes before creating custom logic- **Check data type compatibility**: Ensure node outputs match the expected input types of downstream nodes
I want to build [describe your app and what it does].User journey: [what users input → what they get back]Please:1. Find the closest template in this codebase2. Outline the changes needed to make it into my app3. Create a simple implementation planKeep the solution as simple as possible while meeting the user journey needs.
Start implementation with the recommended template.
Build the app incrementally using the recommended template.- Begin with the identified template- Implement one node modification per iteration- Test and demonstrate each change before proceeding- Request approval before adding complex features or custom nodes
When your AI agent gets stuck, try these troubleshooting options:
Search templates for patterns:
I'm stuck on [specific issue - e.g., "connecting TTS node to LLM output"]. Search the templates folder for:- Similar node configurations or patterns- Examples that handle [your specific data type/flow]- Working implementations I can adaptShow me the relevant code snippets and explain how to adapt them to my case.
Revert to last checkpoint: Use “Restore Checkpoint” in supported tools, or git reset/manual backups in others
Restart the session: Summarize progress first, then start fresh
Summarize: - What we've built so far (features, templates used, key configurations)- Current blockers or challenges preventing progress- Next immediate task to tackle
Document successful solutions: Save useful patterns as reusable rules. In Cursor, you can create rules by prompting the agent:
/Generate Cursor RulesDocument the fix we just implemented in this format:**Problem:** [Describe the exact error or issue that was blocking progress]**Solution:** [Explain the specific approach, pattern, or code change that resolved it]**Context:** [Define when this rule applies - specific scenarios, node types, or conditions]**Example:** [Include the actual code snippet or configuration that worked]