nosovj/LLM Release Action

Analyze commits, suggest semantic version bumps, and generate multi-audience changelogs using LLM via LiteLLM.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Activelast commit Jun 2, 2026
License
MIT

Pinned Snippet

workflow.ymlSHA-pinned
uses: nosovj/llm-release-action@b476a0e5d15715559c92234bf8c3df0b7a72340f # v1.4.0

tags can be moved; commit SHAs can't. why a SHA?

namedescriptionrequireddefault
modelDefault LiteLLM model string (e.g., anthropic/claude-3-haiku-20240307)yes
model_analysisOptional model for Phase 1 semantic analysis. Falls back to model if not set.no""
model_changelogOptional model for Phase 2 changelog generation. Falls back to model if not set.no""
current_versionCurrent version to compare from. Auto-detects from latest semver tag if not provided.no
head_refHead ref to compare tonoHEAD
include_diffsFile patterns to include in diff analysis (comma-separated)no**/openapi*.yaml,**/migrations/**,**/*.proto
max_commitsMaximum recent commits to include in fullno50
temperatureLLM temperature (0.0-2.0)no0.2
max_tokensMaximum tokens in LLM responseno4000
timeoutRequest timeout in secondsno120
debugEnable verbose debug loggingnofalse
dry_runPerform analysis without suggesting versionnofalse
content_overrideMarkdown content for multi-repo analysis (bypasses git). Format: ## Repo\n### Features\n- item. See README.no""
changelog_configYAML config for audiences. Format: {audience: {preset, languages, tone, ...}}. Presets: developer, customer, executive, marketing, security, ops. See README.no""
validate_injectionsPrompt injection validation mode. "pattern" = regex only (default), "both" = pattern + LLM, "llm" = LLM only, "none" = disablednopattern
validation_modelOptional model for injection validation LLM checks. Falls back to model if not set.no""
context_filesComma-separated file patterns for project context (gitignore-style, supports negation). Examples: "README.md", "README.md,docs/API.md", "**/README.md,!**/node_modules/**"no""
context_max_tokensMaximum tokens for context content (increase for large-context models like Claude or GPT-4)no800
analyze_diffsEnable diff analysis step to extract structured changes from file diffsnofalse
diff_exclude_patternsComma-separated gitignore-style patterns for files to exclude from diff analysisno**/*.lock,**/package-lock.json,**/yarn.lock,**/Cargo.lock,**/poetry.lock,**/vendor/**,**/node_modules/**,**/*.generated.*,**/generated/**,**/*.min.js,**/*.min.css
diff_max_filesMaximum number of files to include in diff analysisno50
diff_max_total_linesMaximum total lines of diff content to analyzeno5000
namedescription
bumpBump type (major, minor, patch)
current_versionThe version compared from
next_versionCalculated next semantic version
changelogsJSON object with changelogs: {audience: {language: markdown}}. Default: {default: {en: "..."}}. See README for schema.
metadataJSON object with release metadata per audience and language: {audience: {language: {title, summary, highlights}}}
changesJSON array of structured changes from Phase 1 analysis
statsJSON object with change statistics: {features, fixes, breaking, contributors, ...}
breaking_changesJSON array of detected breaking changes
reasoningLLM reasoning for the version suggestion
usageJSON object with LLM usage statistics: {total_calls, total_tokens, total_latency_ms, phase1_tokens, phase2_tokens, ...}
warningsJSON array of warning messages (staleness, truncation, etc.)