Extending AI Assistant Creating an AI connector Responsibilities Identifier Skeleton Service registration Configuration values Creating a vector store connector Responsibilities Identifier Required capabilities Deletion by source hash Service registration Configuration usage Creating a pipeline processor Processor rules Step type and enum values Service registration Streaming processors Creating an indexer Indexer responsibilities Source identifiers Indexer type and enum values Creating a file adapter Responsibilities Identifier Supported extensions Support checks Extraction Service registration Multi-document adapters Creating a source connector Responsibilities Identifier Example skeleton Service registration Design rule Dependency injection Common service tags