Skip to main content
Glama

llm-context

by cyberchitta
CHANGELOG.md16 kB
# Changelog All notable changes to this project will be documented in this file. ## [0.5.2] - 2025-10-01 ### Bug Fixes - Pass env.tagger to ContextGenerator in get_missing_files to support excerpted file metadata - Further refine commit instruciton - Refine model identification in commit message ### Refactor - Remove rule_name parameter from lc-changed, use timestamp to lookup original selection ## [0.5.1] - 2025-09-29 ### Bug Fixes - Eliminate overlap between files_to_fetch and already_excerpted in missing_files - Handle list[Excerpts] return type in missing_files method ### Features - Add explicit file verification wording to prevent content assumptions - Add natural failure principle to error handling guidelines ## [0.5.0] - 2025-09-15 ### Bug Fixes - Return list[Excerpts] from collector to handle multiple excerpt modes - Clarify lc-missing instructions are for user execution not LLM - Run sfc on svelte repo - Template name - Include template content when include_template_logic is true in SFC excerpter - Correct YAML frontmatter delimiter in lc/exc-base.md - Refine dev instructions - Clarify that latest versions are included in lc-get-files message - Corrected cli command names in create rule instructions ### Documentation - Update user docs with new features ### Features - Fix lc-missing examples to use actual sample data instead of placeholders - Add excluded sections retrieval with -e parameter for non-outline excerpts - Add processor-aware guidance for already excerpted files in missing-files template - Remove unused missing-excerpted template and dependencies - Validate excerpt-modes required for all rules and fast-fail on missing config - Update rule framework for unified excerpting system with code outlining prominence - Upgrade to tree-sitter 0.25 API with Query/QueryCursor - Consolidate file selection into single lc-select command - Unify context retrieval with lc-missing tool and update templates - Refactor excerpts to excerpter-specific templates with explanations - Clean and copy excerpter templates during project setup - Add SFC excerpter for extracting script sections from Svelte/Vue files - Replace outlining with unified excerpting system using tree-sitter wrapper - Remove lc-project-context MCP tool ### Refactor - Remove vue config pending test - Rename SFC config to with-style and with-template for consistency - Consolidate code outlining into canonical excerpter structure - Rationalized naming - Move get_excerpted logic to ContextGenerator.missing_excerpted with template - Move get_files logic to ContextGenerator.missing_files with template - Remove obsolete tools replaced by unified lc-missing - Simplify tool descriptions even more - Extract remaining CLI business logic to commands module - Extract MCP business logic to commands module for CLI/MCP unification - Replace MCP server with FastMCP, remove Pydantic boilerplate - Keep header in main context - Reorganize templates into lc/ folder structure without prefixes - Changed cli command back to outlines - Rename sfc class and mode, fix test - Use modern resources api - Rename Source field - Simplify query path construction - Shorten query file names - Rename scm folder - Reorganize project, propogate new excerpter architecture into templates ## [0.4.1] - 2025-08-29 ### Bug Fixes - Warn on multiple limit-to clauses, keep first patterns only - Remove limit-to from lc/flt-base to prevent composition override ### Features - Update ins-rule-framework to document limit-to composition behavior - Emphasize short commits - Clarify path format rules and improve minimal context guidance - Short commit messages by default - Explicit instruction to follow style guides ### Refactor - Remove redundant name field from rule YAML frontmatter ## [0.4.0] - 2025-08-27 ### Bug Fixes - Sort file lists for consistent output and state storage - Handle rule loading errors gracefully without stack traces - Remove tool references when -nt flag is used - Remove tool references when -nt flag is used - Update rule name - Bad character in tool name - Use markdown content for instructions field instead of full rule processing - Update obsolete init message to reference user guide - Add tif to globs - Use resources.files() API for subfolder resource access - Check file modification time in lc-get-files - Ensure context timestamps match between content and state storage - Only update timestamps on actual context generation - Search all rule selections for timestamp match in MCP tools - Update rule creator to latest yaml - Remove extra newline in rule serialization - Clarify text - Outline-supported file extensions replace language list - Correct pathspec examples in lc-focus-common rule documentation - Repair also-include patterns with proper traversal logic - Remove deleted import - Update handlers to remove deleted tool - Update sort order with current fields - Yaml updates to rules - Revert formatting of yaml only files - Remove incorrect path prefixing in rule_files method - Improve focus help tool description - Implement recursive rule composition with cycle detection - Timestamp should be date only - Eliminate bare exception - Remove rule path from context - Improve end prompt - Resolve mypy type errors in mcp_tools.py - Resolve Windows 'charmap' codec error with UTF-8 encoding - Revert prior commit - Ensure UTF-8 encoding on Windows to prevent charmap codec errors - Enhance final reminder to discourage unnecessary file requests - Revert to old behaviour - Delete state store when referencing stale rule ### Documentation - Complete rewrite to reflect systematic rule organization and actual usage patterns ### Features - Clean up stale system rules during updates - Improve rule resolution error handling and init process - New rule for working with templates - Add AI co-author attribution to commit message format - Add coding style guidelines to base prompt - Add explicit code generation gate to developer prompt - Add section on imports - Add modular code style guidelines - Sort glob patterns - Add .icns to filters - Add nested .gitignore support with comprehensive tests - Organize system rules in lc/ subfolder - Add context-aware file retrieval to MCP tools - Default to full overview in rule creation for better file discoverability - Enhance focus instructions with file extensions and path format - Remove context size functionality - Remove created timestamp - Add instructions field for composable rule instructions - Replace files/outlines with unified filtering system - Finer grained file exclusion filters - Add lc-focus to config - Add comprehensive rule semantics to lc-focus content - Add lc-focus rule for comprehensive context reduction guidance - Add context_size() method and improve lc-create-rule feedback - Add cli for focus help - Add lc-create-rule MCP tool with unified focus help instructions - Add configurable overview modes (focused/full) to rules - Rename lc-focus-help to lc-rule-create-instructions in MCP - Simplify focus-help template to be fully autonomous - Add lc-block-all filter rule for explicit file selection - Standardize YAML formatting and add rule timestamp support - Add focused context creation instructions - Replace rule inheritance with composition system - Add focused overview with hierarchical file display - Add comprehensive archive format ignores to default gitignores - Add user message indicator to context output - Emphasize checking context before requesting files - Improve key file visibility in context diagrams - Skip automatic outline selection when changing rules - Add webp to ignores - Improve clarity of context usage instructions ### Refactor - Clean up vague instructions in style rules - Reorganize rules into systematic categories with kebab-case prefixes - Simplify file modification check in lc-get-files - Refine for clarity - Update SYSTEM_RULES - Rename lc-focus to lc-create-rule for clarity - Standardize YAML keys to kebab-case and remove last-used serialization - Eliminate duplication in focus help instructions and remove MCP create-rule tool - Rename lc-overview-only to lc-no-files for clarity - Rename lc-block-all to lc-overview-only for clarity - Move rules to project context - Unify context templates with tools_available flag - Rename FlatDiagram to FullOverview for clarity - Extract MCP tool definitions to centralized module ### Testing - Add pathspec pattern tests for also-include functionality ## [0.3.4] - 2025-06-04 ### Bug Fixes - Resolve Windows 'charmap' codec error with UTF-8 encoding - Revert prior commit ## [0.3.3] - 2025-06-03 ### Bug Fixes - Ensure UTF-8 encoding on Windows to prevent charmap codec errors - Enhance final reminder to discourage unnecessary file requests - Delete state store when referencing stale rule ### Documentation - Add preferred workflow to README - Add new "Full Context Magic" article to README - Be precise about new format ### Features - Emphasize checking context before requesting files - Improve key file visibility in context diagrams - Skip automatic outline selection when changing rules - Add webp to ignores - Improve clarity of context usage instructions ## [0.3.2] - 2025-04-03 ### Bug Fixes - Installation issue on linux where old versions are being installed - Prevent overwriting rule files after state update ### Features - Improve AI instructions in context templates ### Refactor - Streamline lc-code rule content ## [0.3.1] - 2025-04-01 ### Bug Fixes - Remove unintended gitignores ### Documentation - Improve context template instructions to prevent unnecessary file requests ### Refactor - Remove hardcoded pattern lists and unused methods ## [0.3.0] - 2025-03-31 ### Features - Replace profiles with Markdown/YAML-based rules ## [0.2.18] - 2025-03-29 ### Features - Make context template instructions conditional on content - Implement profile file and rule references ## [0.2.17] - 2025-03-25 ### Features - Integrate outline functionality into standard distribution - Optimize diagram generation and add .git to default ignores ## [0.2.16] - 2025-03-24 ### Features - Replace no_media flag with pattern-based diagram_files filtering - Reorganize profile structure with system profiles / base gitignore ### Refactor - Remove unused folder structure diagram - Replace profile settings with command parameters - Remove unused highlighter functionality ### Mcp - Clarify when to use lc-get-files in templates ## [0.2.15] - 2025-03-10 ### Bug Fixes - Clarify C/C++ implementation retrieval limitation in tool description ### Features - Preserve custom profiles during config updates ## [0.2.14] - 2025-03-09 ### Features - Expose (MCP & CLI) definition implementation extraction capabilities - Add explicit markers to prevent redundant context requests - Use name line for outlines and highlights ## [0.2.13] - 2025-02-28 ### Bug Fixes - Fix hatch build problems ## [0.2.11] - 2025-02-27 ### Bug Fixes - Broken build updated ### Features - Improve parser performance with caching - Add code outlines command ## [0.2.10] - 2025-02-25 ### Bug Fixes - Broken resource update ## [0.2.9] - 2025-02-24 ### BREAKING - Switch configuration from TOML to YAML (customization in toml files has to be manually re-applied) ## [0.2.9] - 2025-02-24 ### Bug Fixes - Ensure profile switch updates file selection correctly ### Features - Add profile descriptions for better usability - Add .gitignore creation in .llm_context during init ## [0.2.8] - 2025-02-09 ### Features - Migrate to tree-sitter-language-pack ## [0.2.7] - 2025-02-01 ### Features - Add lc-prompt command to generate standalone prompts ## [0.2.6] - 2025-01-15 ### Bug Fixes - Don't update timestamps on selection - Update list tools ### Features - Add generation timestamp instructions in templates - Add file modification tracking - Prefix MCP tools with lc- for namespacing - Try to avoid redundant use of project_context ### Refactor - Refine MCP related instructions ## [0.2.2] - 2024-12-25 ### Features - Add absolute root path for get_files tool (for project / MCP interop) - Replace folder structure diagram with flat diagram ## [0.2.1] - 2024-12-17 ### Bug Fixes - Remove templates key - Use system default profile in resolver ### Features - Ensure file selection before context generation in MCP - Add "\*.tmp" to ignored files - Add sample code-file profile - Add file output support via profile settings ## [0.2.0] - 2024-12-06 ### Bug Fixes - Ensure correct profile persistence - Handle missing prompt template gracefully - Bad path in manifest - Attempt to prevent duplicate context retrieval - Update logging - Attempt to prevent duplicate file retrievals - Get server working again - Add fallback logger for exception handling - Keep using pipx until 'uv' tool is debugged - Use ValueError for missing profile validation - Bug introduced by warning key - Missing argument - Restore version map - Remove erroneous '\*.scm' from gitignores in config.yaml ### Features - Make profile templates optional in storage - Switch to tomlkit for better TOML handling - Persist active profile selection in state file - Add project notes with consistent naming for user/project notes - Integrate MCP template for improved API context output - Add personal notes support - Use package version for MCP server initialization - Add only-includes pattern filtering for file selection - Implement context generation MCP endpoints - Make tree-sitter dependency optional - Add version command for installed package - Partially tested switch from poetry to uv - Add profile inheritance via base property - Simplified config update - Implement independent profiles with separate gitignores, templates, and settings - Exclude non-text files based on extensions ### Refactor - Renamed to profile_name for clarity - Rename local - Rename variables - Moved function def to keep all commands together - Remove redundant with_prompt setting - Rename with_notes setting to with_user_notes for clarity - Change user notes location to under home - Rename settings -> spec - Strip server code to essential - Rename folder_structure_diagram.py to folder_diagram.py - Restructure configuration and state management - Move default profile to system state only - Remove redundant with_logging decorator - Add IGNORE_NOTHING constant for minimal gitignore patterns - Renamed and reorganized classes - Rename commands.py -> cli.py - Rename classes, fix mypy, format - Break import cycle by moving ExecEnv import into logging util - Replace warnings with logging for user messages - Replace print with logging - Rename for accuracy - Removed side effects for clean state management - many small renames and restructuring deltas - Rename ContextConfig -> FilterDescriptor - Remove summary file - Make project root explicit - Split system state from user config - Add SystemState, ProfileTemplate, reorder classes - Rename and restructure context generation classes ## [0.1.0] - 2024-09-20 Initial public release. ### Features - Implement core functionality for generating LLM context from code repositories - Add support for multiple programming languages - Integrate smart file selection using `.gitignore` patterns - Implement clipboard integration for seamless LLM chat interaction - Add file outlining capabilities for large projects - Create command-line interface with multiple commands: - `lc-init`: Initialize LLM Context for a project - `lc-sel-files`: Select files for full content inclusion - `lc-sel-outlines`: Select files for outline inclusion - `lc-context`: Generate and copy context to clipboard - `lc-read-cliplist`: Process LLM-requested files - Add `--with-prompt` flag to `lc-context` command for including default prompt - Implement customizable ignore patterns via `.llm-context/config.yaml` - Add support for custom templates in `.llm-context/templates/`

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cyberchitta/llm-context.py'

If you have feedback or need assistance with the MCP directory API, please join our Discord server