Class: RailsAiBridge::Serializers::Providers::ClaudeSerializer

Inherits:
BaseProviderSerializer show all
Defined in:
lib/rails_ai_bridge/serializers/providers/claude_serializer.rb

Overview

Generates CLAUDE.md optimized for Claude Code. In :compact mode (default), produces ≤150 lines with MCP tool references. In :full mode, delegates to MarkdownSerializer with behavioral rules.

Constant Summary

Constants inherited from BaseProviderSerializer

BaseProviderSerializer::MAX_CONFIG_FILES, BaseProviderSerializer::MAX_KEY_MODELS, BaseProviderSerializer::MAX_PATTERNS

Instance Attribute Summary

Attributes inherited from BaseProviderSerializer

#config, #context

Instance Method Summary collapse

Methods inherited from BaseProviderSerializer

#render_architecture, #render_commands, #render_compact, #render_footer, #render_header, #render_key_config_files, #render_key_considerations, #render_key_models, #render_notable_gems, #render_stack_overview

Constructor Details

#initialize(context, config: RailsAiBridge.configuration) ⇒ ClaudeSerializer

Returns a new instance of ClaudeSerializer.

Parameters:



12
13
14
# File 'lib/rails_ai_bridge/serializers/providers/claude_serializer.rb', line 12

def initialize(context, config: RailsAiBridge.configuration)
  super
end

Instance Method Details

#callString

Returns Markdown written to CLAUDE.md by ContextFileSerializer.

Returns:



17
18
19
20
21
22
23
24
25
# File 'lib/rails_ai_bridge/serializers/providers/claude_serializer.rb', line 17

def call
  if @config.context_mode == :full
    MarkdownSerializer.new(context,
                           header_class: Formatters::Providers::ClaudeHeaderFormatter,
                           footer_class: Formatters::Providers::ClaudeFooterFormatter).call
  else
    render_compact
  end
end