Skip to content

Release v0.16.0

Choose a tag to compare

@github-actions github-actions released this 12 Feb 08:30
· 245 commits to master since this release

[0.16.0] - 2026-02-12

Changed (Breaking)

  • scan default mode reversed (Story 19.1): codeindex scan now generates structural documentation by default (no AI required). Use --ai flag to enable AI-enhanced documentation. This makes the zero-config experience work out of the box.
  • scan-all default mode reversed (Story 19.1): Same change as scan — structural mode is now the default.
  • --fallback deprecated: Flag is now a hidden no-op that prints a deprecation warning. Will be removed in a future version.
  • --dry-run requires --ai: Since dry-run previews the AI prompt, it now requires the --ai flag.

Added

  • Pass-through directory skipping (Story 19.5): Directories with no code files and single subdirectory are automatically skipped during scanning. Avoids redundant README_AI.md in deep structures (e.g., Java Maven src/main/java/com/...).
  • Parser installation detection (Story 19.4): codeindex init now checks which tree-sitter parsers are installed and warns about missing ones with install commands.
  • Post-init guidance (Story 19.2): Init wizard now suggests scan-all as immediate next step (works without AI). AI-enhanced docs mentioned as optional.
  • Post-commit hook auto-update: codeindex hooks install post-commit now generates a fully functional hook that runs codeindex scan for affected directories and auto-commits updated README_AI.md files.
  • mo-hooks skill: New Claude Code skill for customers to set up auto-update hooks.

Improved

  • Java auto-recursive tech-debt (Story 19.6a): codeindex tech-debt automatically enables --recursive for Java projects (deep package structures). Removes the old hint message.
  • Language-aware noise analysis (Story 19.6b): _analyze_noise_breakdown now skips getter/setter counting for Java files (JavaBeans convention). Python/PHP noise analysis unchanged.

Fixed

  • Post-commit hook not updating files: Generated hook was missing cd "$REPO_ROOT", used pipe subshells causing git add to run in wrong context, and set -e caused silent failures.