feat: extract LLM prompts and settings into external config#14
Merged
Conversation
Design for extracting hardcoded LLM prompts into template files (prompts dir) and LLM settings (temperature, max_tokens) into env configuration. Includes settings UI update to display all config values with masked secrets. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
21 tasks covering snapshot tests, prompt-loader, template files, service migration, settings UI update, and documentation. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Locks in current system prompt text, user message format, and LLM call settings (temperature, max_tokens, model, response_format) before migrating hardcoded prompts to external config files. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Reads prompt templates from PROMPTS_DIR (default: ./prompts), caches
file contents in-memory, and substitutes {{PLACEHOLDER}} variables.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
9 template files with {{PLACEHOLDER}} syntax for dynamic values.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…o env Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…gs to env Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…tings to env Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…o env Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds three new sections to LlmSettingsTab: per-service LLM settings table (temperature/maxTokens per analyzer, chat agent, summary, highlights, test), prompt templates directory, and masked secrets display. Also fixes a TS type error in getLLMConfig() where the partial initial object was annotated as the full LLMConfig type before required fields were assigned. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…eads Eliminates duplicated config reads across 5 services. All now use getAppConfig() as single source of truth for settings. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
PavelLoparev
added a commit
that referenced
this pull request
Mar 21, 2026
This reverts commit 002453a.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Files
New
Modified
Test plan