
    $/i              	       |    d Z dZdZddddddZdd	d
dddddddddddddddddddddddZdefdZd Zg dZy)a6	  
Genesis System Skills Library

A comprehensive collection of AI-powered skills for the Genesis orchestration system.
Each skill is designed to be modular, self-contained, and ready for integration.

Available Skills:
-----------------

1. WebIntelligence (web_intelligence.py)
   - Web scraping using Firecrawl patterns
   - Branding extraction, screenshots, site maps
   - Knowledge base storage

2. LongDocumentAnalyzer (long_document_analyzer.py)
   - Process documents up to 1M+ tokens
   - Chunking with memory mechanism
   - Qwen-Long inspired patterns

3. CodeAnalyzer (code_analyzer.py)
   - LSP integration patterns
   - 10x token reduction for code navigation
   - Hybrid grep + precise lookup

4. ModelSelector (model_selector.py)
   - Automatic optimal model selection
   - Multi-Model-Orchestration patterns
   - Returns recommendation with reasoning

5. ResearchAgent (research_agent.py)
   - Autonomous research capability
   - Web search, analysis, synthesis
   - Persistent memory for findings

Usage:
------

Each skill can be used as a standalone script:

    python -m genesis.skills.web_intelligence https://example.com
    python -m genesis.skills.long_document_analyzer document.pdf --query "summarize"
    python -m genesis.skills.code_analyzer /path/to/project
    python -m genesis.skills.model_selector --task "analyze this code"
    python -m genesis.skills.research_agent "quantum computing advances"

Or imported programmatically:

    from genesis.skills.web_intelligence import WebIntelligence
    from genesis.skills.long_document_analyzer import LongDocumentAnalyzer
    from genesis.skills.code_analyzer import CodeAnalyzer
    from genesis.skills.model_selector import ModelSelector
    from genesis.skills.research_agent import ResearchAgent

Integration with Genesis Orchestrator:
--------------------------------------

All skills follow a consistent pattern for orchestrator integration:

    1. Each skill has a main() function as the entry point
    2. Results are returned as dataclass objects with to_dict() methods
    3. Knowledge base storage is automatic
    4. Error handling is built-in
    5. Logging is standardized

For orchestrator integration, use the skill registry:

    from genesis.skills import SKILL_REGISTRY

    skill = SKILL_REGISTRY['research']
    result = skill.execute(query="your query")
z1.0.0zGenesis Systemweb_intelligencelong_document_analyzercode_analyzermodel_selectorresearch_agent)r   r   r   r   r   WebIntelligencez'Web scraping and intelligence gatheringanalyze_website)moduleclassdescriptionentry_pointLongDocumentAnalyzerz"Long document analysis with memoryanalyzeCodeAnalyzerzCode analysis with LSP patternsanalyze_projectModelSelectorzOptimal model selectionselect_modelResearchAgentzAutonomous research agentresearch)webdocumentcodemodelr   
skill_namec           	          | t         vr,t        d|  dt        t         j                                      t         |    }|d   }|d   }ddl}|j                  d| t              }t        ||      } |       S )	a%  
    Get a skill instance by name.

    Args:
        skill_name: Name of the skill ('web', 'document', 'code', 'model', 'research')

    Returns:
        Skill instance ready for use

    Example:
        skill = get_skill('research')
        result = skill.research("quantum computing")
    zUnknown skill: z. Available: r	   r
       N.)package)SKILL_REGISTRY
ValueErrorlistkeys	importlibimport_module__name__getattr)r   
skill_infomodule_name
class_namer"   r	   skill_classs          (/mnt/e/genesis-system/skills/__init__.py	get_skillr+   x   s     '?:,mDI\I\I^D_C`abb
+JX&KG$J $$q%6$IF&*-K=    c                  d    t         j                         D  ci c]  \  } }| |d    c}} S c c}} w )z,List all available skills with descriptions.r   )r   items)nameinfos     r*   list_skillsr1      s;     )..0D$ 	d=!!  s   ,)r+   r1   r   __version__N)	__doc__r2   
__author___skill_modulesr   strr+   r1   __all__ r,   r*   <module>r9      s   FP 
 +6$&& %"@(	 +'; 	 "8(	 # 0%	 # 2!	3D# :r,   