Skip to content

Commit

Permalink
feat(plugins): add multiple new plugins
Browse files Browse the repository at this point in the history
  • Loading branch information
jeblister committed Jul 6, 2024
1 parent fc414f3 commit 307d211
Show file tree
Hide file tree
Showing 12 changed files with 631 additions and 4 deletions.
File renamed without changes.
31 changes: 31 additions & 0 deletions plugins/complex_problem_solving_plugin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
from src.plugin_manager import hookimpl


class ComplexProblemSolvingPlugin:
@hookimpl
def get_use_case_prompt(self, objective: str) -> str:
"""Generates prompts for solving complex, multifaceted problems requiring diverse expertise."""
return f"""
Analyze and develop a comprehensive solution for the following complex problem:
Objective: {objective}
Break down this problem into several key areas of focus. For each area:
1. Identify the core challenges and opportunities
2. Propose potential solutions or strategies
3. Consider interdependencies with other areas
4. Suggest metrics for measuring success
Your analysis should cover multiple perspectives, such as:
- Strategic implications
- Financial considerations
- Operational logistics
- Market dynamics
- Technological aspects
- Human resources impact
Provide a holistic approach that addresses the complexity of the problem while ensuring all components work together cohesively.
"""


complex_problem_solving_plugin = ComplexProblemSolvingPlugin()
36 changes: 36 additions & 0 deletions plugins/content_creation_plugin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
from src.plugin_manager import hookimpl


class ContentCreationPlugin:
@hookimpl
def get_use_case_prompt(self, objective: str) -> str:
"""Assists in creating comprehensive, multi-faceted content on various topics."""
return f"""
Create comprehensive content on the following topic:
Objective: {objective}
Develop a detailed outline for the content, including:
1. An engaging introduction that sets the context
2. Main sections, each covering a key aspect of the topic
3. Subsections that delve into specific details
4. A conclusion that summarizes key points and provides a call to action
For each section, consider including:
- Relevant data and statistics
- Expert opinions or quotes
- Case studies or real-world examples
- Visual elements (describe what kind of charts, graphs, or images would be useful)
Ensure the content:
- Is well-researched and factually accurate
- Presents a balanced view of the topic
- Engages the target audience effectively
- Follows a logical flow of ideas
- Incorporates current trends and future outlooks
Suggest ways to repurpose this content for different formats (e.g., blog post, white paper, infographic, video script).
"""


content_creation_plugin = ContentCreationPlugin()
64 changes: 64 additions & 0 deletions plugins/customer_support_plugin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
from src.plugin_manager import hookimpl


class CustomerSupportPlugin:
@hookimpl
def get_use_case_prompt(self, objective: str) -> str:
"""Helps handle complex customer inquiries requiring input from multiple departments."""
return f"""
Develop a comprehensive response strategy for the following customer support scenario:
Objective: {objective}
Create a detailed plan to address this complex customer inquiry, considering the following aspects:
1. Issue Understanding:
- Break down the customer's problem into its core components
- Identify which departments or areas of expertise are involved
- Prioritize the issues based on urgency and impact
2. Information Gathering:
- List the key questions to ask the customer for clarification
- Identify the internal sources of information needed (e.g., documentation, databases)
- Outline a process for collecting input from different departments
3. Technical Support:
- Provide step-by-step troubleshooting instructions
- Suggest potential solutions based on common issues
- Outline escalation procedures for complex technical problems
4. Billing and Account Management:
- Address any billing-related concerns
- Explain relevant policies and procedures
- Suggest potential account adjustments or solutions
5. Product Functionality:
- Clarify product features and capabilities
- Provide usage instructions or best practices
- Suggest alternative features or workarounds if needed
6. Cross-departmental Coordination:
- Outline a workflow for involving multiple departments
- Suggest methods for efficient information sharing between teams
- Define responsibilities and timelines for each involved department
7. Customer Communication:
- Draft a clear and empathetic initial response to the customer
- Plan follow-up communications and progress updates
- Prepare answers to potential follow-up questions
8. Resolution and Follow-up:
- Outline steps to implement the solution
- Create a plan to verify the customer's satisfaction
- Suggest proactive measures to prevent similar issues in the future
9. Knowledge Base Update:
- Identify key learnings from this case
- Suggest updates to internal documentation or FAQs
- Outline training recommendations for support staff
Ensure the response strategy is comprehensive, customer-centric, and efficiently utilizes internal resources to resolve the complex inquiry.
"""


customer_support_plugin = CustomerSupportPlugin()
69 changes: 69 additions & 0 deletions plugins/educational_content_plugin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
from src.plugin_manager import hookimpl


class EducationalContentPlugin:
@hookimpl
def get_use_case_prompt(self, objective: str) -> str:
"""Aids in developing comprehensive educational materials and lesson plans."""
return f"""
Develop comprehensive educational content for the following topic:
Objective: {objective}
Create a detailed plan for educational content that covers the following aspects:
1. Learning Objectives:
- Define clear, measurable learning outcomes
- Align objectives with relevant educational standards
- Consider cognitive, affective, and psychomotor domains
2. Content Outline:
- Break down the topic into main themes and subtopics
- Ensure a logical progression of ideas
- Include key concepts, theories, and practical applications
3. Historical Context:
- Provide relevant historical background
- Highlight significant developments or changes in understanding
- Connect historical context to current knowledge
4. Theoretical Concepts:
- Explain core theories or models related to the topic
- Compare and contrast different theoretical approaches
- Discuss the evolution of theoretical understanding
5. Practical Applications:
- Provide real-world examples and case studies
- Include hands-on activities or experiments
- Discuss current and potential future applications
6. Interdisciplinary Connections:
- Identify links to other subjects or fields of study
- Explore how the topic relates to broader themes or global issues
- Encourage critical thinking across disciplines
7. Multimedia Resources:
- Suggest relevant videos, animations, or simulations
- Recommend interactive tools or websites
- Include ideas for infographics or visual aids
8. Assessment Strategies:
- Develop diverse assessment methods (e.g., quizzes, projects, discussions)
- Include both formative and summative assessments
- Align assessments with learning objectives
9. Differentiation and Accessibility:
- Provide strategies for adapting content to different learning styles
- Suggest modifications for various ability levels
- Ensure content is accessible to learners with diverse needs
10. Extended Learning:
- Recommend additional resources for further study
- Suggest topics for independent research or projects
- Provide discussion questions to encourage deeper exploration
Ensure the educational content is comprehensive, engaging, and adaptable to different learning environments and student needs. Consider how to balance theoretical knowledge with practical skills and critical thinking development.
"""


educational_content_plugin = EducationalContentPlugin()
94 changes: 94 additions & 0 deletions plugins/innovation_management_plugin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
from src.plugin_manager import hookimpl


class InnovationManagementPlugin:
@hookimpl
def get_use_case_prompt(self, objective: str) -> str:
"""Assists in developing strategies to foster, manage, and implement innovation within an organization."""
return f"""
Develop a comprehensive innovation management strategy for the following objective:
Objective: {objective}
Create a detailed innovation management plan that covers the following aspects:
1. Innovation Vision and Goals:
- Define a clear vision for innovation within the organization
- Set specific, measurable innovation goals aligned with business objectives
- Identify key areas or domains for innovation focus
2. Innovation Culture:
- Outline strategies to foster a culture of creativity and experimentation
- Suggest ways to encourage risk-taking and learning from failures
- Develop approaches to break down silos and promote cross-functional collaboration
3. Idea Generation and Capture:
- Design processes for soliciting ideas from employees, customers, and partners
- Suggest tools or platforms for capturing and organizing ideas
- Develop criteria for initial idea evaluation and prioritization
4. Innovation Portfolio Management:
- Create a framework for categorizing innovation projects (e.g., core, adjacent, transformational)
- Develop a balanced portfolio approach to manage risk and potential returns
- Suggest methods for allocating resources across different types of innovation
5. Innovation Process:
- Outline a stage-gate process for moving ideas from concept to implementation
- Define key milestones, deliverables, and decision points in the innovation journey
- Suggest agile methodologies for rapid prototyping and iterative development
6. Open Innovation Strategies:
- Develop approaches for engaging external partners in the innovation process
- Suggest methods for identifying and managing strategic partnerships or collaborations
- Outline strategies for participating in innovation ecosystems or clusters
7. Innovation Metrics and KPIs:
- Define key performance indicators to measure innovation success
- Suggest both leading and lagging indicators for innovation performance
- Develop a dashboard for tracking and reporting innovation metrics
8. Funding and Resource Allocation:
- Outline strategies for securing funding for innovation projects
- Suggest models for allocating resources (e.g., dedicated innovation budget, time allocation)
- Develop approaches for managing innovation project portfolios
9. Talent Management for Innovation:
- Identify key skills and competencies needed for innovation
- Suggest strategies for attracting, developing, and retaining innovative talent
- Outline approaches for building diverse, cross-functional innovation teams
10. Innovation Governance:
- Design an innovation governance structure (e.g., innovation council, chief innovation officer)
- Define roles and responsibilities for managing the innovation process
- Develop decision-making frameworks for innovation investments
11. Intellectual Property Strategy:
- Outline approaches for protecting and managing intellectual property
- Suggest strategies for leveraging IP for competitive advantage
- Develop guidelines for IP sharing in collaborative innovation efforts
12. Innovation Training and Education:
- Design programs to develop innovation skills across the organization
- Suggest methods for sharing innovation best practices and case studies
- Outline approaches for continuous learning and skill development in innovation
13. Technology and Tools:
- Recommend technologies to support the innovation process (e.g., idea management software, collaboration tools)
- Suggest approaches for leveraging emerging technologies in the innovation process
- Outline strategies for maintaining technological competitiveness
14. Innovation Communication and Recognition:
- Develop strategies for communicating innovation successes and learnings
- Suggest approaches for recognizing and rewarding innovative contributions
- Outline methods for storytelling and celebrating innovation within the organization
15. Scaling and Implementation:
- Design processes for scaling successful innovations
- Suggest strategies for overcoming resistance to change and driving adoption
- Develop approaches for integrating innovations into existing operations
Ensure the innovation management strategy is comprehensive, adaptable to the organization's specific context, and provides actionable plans for fostering and managing innovation effectively.
"""


innovation_management_plugin = InnovationManagementPlugin()
59 changes: 59 additions & 0 deletions plugins/product_development_plugin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
from src.plugin_manager import hookimpl


class ProductDevelopmentPlugin:
@hookimpl
def get_use_case_prompt(self, objective: str) -> str:
"""Guides through the process of developing new products from ideation to launch."""
return f"""
Develop a comprehensive plan for the following product:
Objective: {objective}
Create a detailed product development strategy covering the following areas:
1. Market Analysis:
- Target audience and their needs
- Competitive landscape
- Market trends and opportunities
2. Product Conceptualization:
- Core features and functionalities
- Unique selling propositions
- Product vision and long-term roadmap
3. Technical Architecture:
- High-level system design
- Technology stack recommendations
- Scalability and performance considerations
4. User Experience (UX) Design:
- User personas and journey maps
- Key user interfaces and interactions
- Accessibility and usability guidelines
5. Development Planning:
- Sprint planning and milestones
- Resource allocation
- Risk assessment and mitigation strategies
6. Quality Assurance:
- Testing strategies (unit, integration, user acceptance)
- Performance benchmarks
- Security and compliance considerations
7. Launch Strategy:
- Go-to-market plan
- Marketing and promotion strategies
- Customer onboarding and support plans
8. Post-launch Considerations:
- Maintenance and update schedules
- User feedback collection and analysis
- Performance monitoring and optimization
Ensure each area is thoroughly addressed and consider interdependencies between different aspects of the product development process.
"""


product_development_plugin = ProductDevelopmentPlugin()
Loading

0 comments on commit 307d211

Please sign in to comment.