1 Styles and LLM Providers
maxpeterkaya edited this page 2026-09-16 10:11:13 -04:00

Styles and LLM Providers

The style input controls how the changelog reads.

Style Output Requires a provider
conventional (default) Grouped bullet lists, one bullet per commit. No
detailed A heading per commit group, each followed by a prose paragraph. Yes
summary A single prose write-up of the whole release. Yes

detailed and summary need a language model to write the prose. If neither Ollama nor an OpenAI-compatible provider is enabled, the action logs a warning and falls back to conventional.

- uses: https://vc.maxkaya.com/maxpeterkaya/changelog@latest
  with:
    server_url: https://vc.maxkaya.com
    repository: ${{ github.repository }}
    token: ${{ secrets.PAT }}
    style: summary
    openai_enabled: "true"
    openai_url: https://api.openai.com/v1
    openai_key: ${{ secrets.OPENAI_KEY }}
    openai_model: gpt-4o-mini

Ollama

Use Ollama for a local model. Enable it with ollama_enabled: "true" and set ollama_url and ollama_model.

  • If ollama_url is empty, Ollama is disabled with a warning.
  • ollama_key is optional. Without it the action warns and continues, which is fine for instances that do not require authentication.
    ollama_enabled: "true"
    ollama_url: http://ollama:11434
    ollama_model: llama3:8b

OpenAI-compatible providers

Use openai_* for any provider that exposes the OpenAI chat completions API, including a self-hosted server. If both Ollama and OpenAI are enabled, OpenAI takes precedence.

  • openai_url and openai_model are required. If either is empty, the provider is disabled with a warning.
  • openai_key is optional, for local servers without authentication.
  • The URL is the base of the API; /chat/completions is appended, so use https://api.openai.com/v1, not the full endpoint.

What the model sees

For conventional with a provider enabled, each commit and its diff are rewritten into a single past-tense sentence of at most 80 characters. For detailed and summary, commits are grouped and the model writes prose paragraphs for the group or the whole release.

  • The diff is truncated when there are many or large commits so the prompt stays within a sensible size.
  • If a model call fails partway through, the action logs an error, disables the provider for the remainder of the run, and falls back to the bullet output.
  • Model responses that appear truncated are reported in a warning, which usually means the provider needs a larger output budget.

Note that enabling a provider with the conventional style still rewrites each bullet, using the model. If you want the raw commit messages, leave providers disabled.


Home · Installation · Inputs Reference · Outputs and Commit Groups · Tag Ranges and Rollup · Writing Changelogs to the Repository · Troubleshooting