Class: Woods::Formatting::GptAdapter

Inherits:
Base
  • Object
show all
Defined in:
lib/woods/formatting/gpt_adapter.rb

Overview

Formats assembled context as Markdown for GPT models.

Produces Markdown with:

  • ‘## Codebase Context` heading

  • Token usage in bold

  • Content in a fenced Ruby code block

  • Sources as a bullet list

Examples:

adapter = GptAdapter.new
md = adapter.format(assembled_context)
# => "## Codebase Context\n\n**Tokens:** 42/8000\n..."

Instance Method Summary collapse

Instance Method Details

#format(assembled_context) ⇒ String

Format assembled context as Markdown for GPT.

Parameters:

Returns:

  • (String)

    Markdown-formatted context



25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/woods/formatting/gpt_adapter.rb', line 25

def format(assembled_context)
  parts = []
  parts << '## Codebase Context'
  parts << ''
  parts << "**Tokens:** #{assembled_context.tokens_used}/#{assembled_context.budget}"
  parts << ''
  parts << '---'
  parts << ''
  parts << '```ruby'
  parts << assembled_context.context
  parts << '```'
  parts.concat(format_sources(assembled_context.sources))
  parts.join("\n")
end