All notable changes to Zeitgeist will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.1.1 - 2026-01-26
- Updated mcp.zig dependency to v0.2.1 with protocol version fix (2024-11-05) and memory leak fix
1.1.0 - 2026-01-26
- MCP Server Resources: Expose codebase information via MCP resources
zeitgeist://cwd- Returns the current working directory pathzeitgeist://tree- Returns a directory tree listing of the current directoryzeitgeist://file/{path}- Returns the content of a specific file
- MCP Progress Notifications: Tool handlers now send progress updates during pack/scan operations
- MCP Cancellation Support: Tools can be cancelled mid-operation via MCP cancellation tokens
- Updated mcp.zig dependency to v0.2.0 with protocol version fix (2024-11-05)
- Improved memory management in MCP resource handlers using arena allocators
- Fixed memory leaks in
resources/listandresources/readMCP handlers - Fixed protocol version in mcp.zig from invalid "2025-11-25" to correct "2024-11-05"
1.0.0 - 2025-01-26
- AI Skill Output: Generate structured documentation for AI agents with
--skill-output <dir>- Creates SKILL.md entry point with usage instructions
- Generates references/summary.md with purpose and statistics
- Generates references/project-structure.md with directory tree and line counts
- Generates references/files.md with all file contents
- Generates references/tech-stack.md with detected languages and frameworks
- Supports 50+ programming languages for tech stack detection
.ignoreFile Support: Automatically respect.ignorefiles (ripgrep-style ignore patterns)- Enabled by default, disable with
--no-dot-ignoreflag - Follows the same format as
.gitignorefiles
- Enabled by default, disable with
--no-file-summaryFlag: Omit the "Top Files by Token Count" summary section from output- Shell Completions: Generate shell completion scripts with
zeitgeist completions bash|zsh|fish- Dynamic git branch/tag completion for
--branchand--tagoptions - Config file auto-detection for
--configoption - Remote repository URL suggestions (github.com/, gitlab.com/, etc.)
- Glob pattern suggestions for
--include/--excludeoptions - Token limit and byte size value suggestions
- Support for
zgalias in all shells
- Dynamic git branch/tag completion for
- Man Page Generation: Auto-generate troff-formatted man pages via
zeitgeist --generate-man- Full documentation of all commands and options
- Examples, files, environment variables, and exit codes sections
- Compatible with
man(1)and standard man page installation - Build steps:
zig build manpage(to file) andzig build manpage-stdout(to stdout)
- Fixed
customIgnoreFileparsing in JSON configuration files
0.1.0 - 2025-01-25
- Multiple Output Formats: XML, Markdown, JSON, and plain text output
- Smart Filtering: Glob patterns for include/exclude with
.gitignoresupport - Directory Tree: Visual tree structure in output header
- Line Numbers: Optional line number annotations
- Token Counting: Accurate token estimation for LLM context planning
- Output Chunking: Split large outputs for LLM context limits (
--max-tokens,--split) - Cross-Platform: Windows, Linux, and macOS support
- Config Files: Support for
zeitgeist.json,zeitgeist.yaml, andzeitgeist.toml - JSON Schema: Full schema for editor autocompletion and validation
- Global Config: User-wide configuration with
zeitgeist init --global - Custom Ignore Files: Support for
.zeitgeistignorefor project-specific exclusions
- Git Sorting: Sort files by git recency (oldest first for optimal LLM context)
- Git Diffs: Include git diffs in output (
--include-diffs) - Git Logs: Include git log in output (
--include-logs)
- File Categorization: Categorize files as source/docs/test/config/other
- Category Weights: Configurable weights for file category sorting
- Priority Rules: Pattern-based priority boosts for fine-grained control
- Custom Templates: Define output format with
{path},{content},{tokens}placeholders - Multi-Encoding: Automatic detection of UTF-8, UTF-16 LE/BE, and Latin-1 files
- Jupyter Notebooks: Convert
.ipynbfiles to markdown automatically
- Tree-Only Mode: Output directory structure without file contents (
--tree-only) - Metadata-Only: Output tree and stats without file contents (
--no-files) - Quiet Mode: Suppress all non-error output (
--quiet) - Statistics Summary: Detailed stats with
--statsflag - Top Files Summary: Show largest files by token count (
--top-files)
- Multiple Encodings: Support for
simple,cl100k_base, ando200k_baseencodings - Token Counting Tree: Show tree with token counts per file/directory
- GitHub: Direct packing of GitHub repositories
- GitLab: Direct packing of GitLab repositories
- Bitbucket: Direct packing of Bitbucket repositories
- Gitea: Direct packing of Gitea repositories
- Codeberg: Direct packing of Codeberg repositories
- Private Repos: Authentication token support for private repositories
- Branch/Tag/Commit: Specify branch, tag, or commit SHA to pack
- Secret Scanning: Detect AWS keys, API tokens, private keys, and more
- Security Reports: Write security findings to file (
--security-report) - Block Secrets: Optionally block output if secrets detected (
--block-secrets)
- MCP Server: Model Context Protocol support (
zeitgeist serve) - Clipboard Support: Copy output directly to clipboard (
--copy) - Stdout Mode: Pipe output directly (
zeitgeist --stdout | pbcopy) - Self-Update: Check for and install updates from GitHub (
zeitgeist update)
- Unignore Patterns: Override ignore rules for specific files (
--unignore) - Follow Symlinks: Optionally follow symbolic links (
--follow-symlinks) - Include Empty Directories: Include empty directories in tree
- Max Size/Depth/Files: Limit processing scope
- Compress Output: Remove comments and whitespace (
--compress) - Remove Empty Lines: Clean up consecutive empty lines
- Truncate Base64: Reduce tokens by truncating data URIs
- Built with Zig 0.15.2 for maximum performance
- Zero runtime dependencies (single static binary)
- 247 unit tests, 30 integration tests
- Full library API for programmatic use
All planned features have been implemented. See the CHANGELOG for the complete feature list.