Using Factory Droids
Learn how to effectively use Factory’s specialized Droids to accelerate your development workflow
Overview
Factory Droids are specialized AI assistants designed to excel at specific types of development tasks. Each Droid comes pre-configured with optimized system prompts, carefully selected tools, and the ideal model to deliver exceptional performance for particular use cases. This guide will help you understand when and how to use each Droid type effectively.
Code Droid
When to Use Code Droid
Code Droid is your go-to assistant for all coding-related tasks, including:
- Writing new features or components
- Refactoring existing code
- Debugging issues
- Creating unit tests
- Code reviews and improvements
- Understanding complex codebases
Effective Usage Tips
Provide Clear Requirements
Be specific about what you want to build:
“Create a React component that displays a paginated table of user data with sorting capabilities.”
Include Relevant Context
Add repository context or specific files that are relevant to your task:
“I’m working with our existing UserTable component at @file src/components/UserTable.jsx and need to add filtering functionality.”
Specify Constraints
Mention any technical constraints or preferences:
“We use Tailwind CSS for styling and need to maintain accessibility compliance.”
Iterate and Refine
Provide feedback on generated code to refine the solution:
“The solution looks good, but can we modify it to handle empty data states better?”
Example Interactions
Reliability Droid
When to Use Reliability Droid
Reliability Droid specializes in maintaining system stability and resolving incidents:
- Investigating production incidents
- Creating Root Cause Analysis (RCA) documents
- Analyzing error logs and stack traces
- Developing monitoring and alerting strategies
- Implementing error handling and recovery mechanisms
- Conducting post-mortems
Effective Usage Tips
Share Incident Details
Provide comprehensive information about the incident:
“We experienced an outage in our payment processing service at 2:00 PM. Here are the error logs and alerts we received.”
Include Relevant Metrics
Share performance metrics and system behavior:
“Our database connection pool was exhausted, and response times increased from 200ms to 5s.”
Specify System Architecture
Describe the affected components and their relationships:
“The issue occurred in our order processing microservice which communicates with both the payment gateway and inventory service.”
Request Specific Deliverables
Clearly state what you need:
“I need a comprehensive RCA document that I can share with stakeholders.”
Example Interactions
Knowledge Droid
When to Use Knowledge Droid
Knowledge Droid excels at documentation and knowledge management:
- Answering questions about your codebase
- Creating technical documentation
- Explaining complex concepts or systems
- Generating API documentation
- Creating onboarding materials
- Summarizing technical discussions
Effective Usage Tips
Ask Specific Questions
Frame your questions clearly:
“How does our authentication system work? @repo our-company/auth-service”
Request Documentation
Specify the type of documentation you need:
“Create API documentation for our user management endpoints based on @file src/controllers/userController.js”
Provide Context
Include relevant files or repositories:
“I need to understand how our payment processing works. Here’s our payment service: @repo our-company/payment-service”
Specify Format and Audience
Indicate your documentation requirements:
“Create a technical guide for new developers explaining our database schema. Include diagrams and examples.”
Example Interactions
Product Droid
When to Use Product Droid
Product Droid specializes in product management tasks:
- Creating product requirements documents (PRDs)
- Defining user stories and acceptance criteria
- Planning product roadmaps
- Conducting feature analysis
- Prioritizing backlog items
- Creating user journey maps
Effective Usage Tips
Define Product Vision
Start with a clear product vision:
“We’re building a mobile app for tracking personal fitness goals and progress.”
Specify User Needs
Describe your target users and their needs:
“Our users are busy professionals who want to maintain fitness routines despite limited time.”
Outline Key Features
List the main features you’re considering:
“We need workout tracking, goal setting, progress visualization, and social sharing.”
Request Specific Deliverables
Clearly state what documents you need:
“Create a PRD for the workout tracking feature including user stories and acceptance criteria.”
Example Interactions
Tutorial Droid
When to Use Tutorial Droid
Tutorial Droid helps you learn and navigate Factory:
- Understanding Factory features and capabilities
- Learning how to use specific Factory functions
- Troubleshooting Factory issues
- Optimizing your Factory workflow
- Discovering best practices for Factory
- Onboarding new team members to Factory
Effective Usage Tips
Ask About Specific Features
Inquire about particular Factory capabilities:
“How do I use the @file command in Factory?”
Request Guided Walkthroughs
Ask for step-by-step instructions:
“Walk me through how to connect my GitHub repository to Factory.”
Seek Workflow Optimization
Ask how to improve your Factory experience:
“What’s the most efficient way to manage context in Factory for large codebases?”
Get Troubleshooting Help
Describe any issues you’re experiencing:
“I’m having trouble with local file sync. The files aren’t updating properly.”
Example Interactions
Best Practices for Using Droids
1. Choose the Right Droid
- Match the task to the Droid: Select the Droid that specializes in your current task type
- Consider switching: Don’t hesitate to switch Droids if your task changes or spans multiple domains
2. Provide Clear Context
- Be specific: Clearly describe what you’re trying to accomplish
- Include relevant files: Use @file, @repo, and other commands to provide necessary context
- Share constraints: Mention any technical limitations or requirements
3. Iterative Refinement
- Start broad: Begin with a general request and refine based on the response
- Provide feedback: Let the Droid know what’s working and what needs improvement
- Build on previous work: Reference earlier parts of the conversation when iterating
4. Maximize Efficiency
- Batch similar tasks: Group related tasks together for a more cohesive experience
- Save important sessions: Bookmark sessions with valuable insights for future reference
- Reuse context: Maintain context across related tasks to avoid repetition
Next Steps
Explore Use Cases
Discover practical applications of Factory Droids across different development scenarios