Skip to content

Releases: EdmundHee/codemap-cli

v0.6.2

15 Apr 05:07

Choose a tag to compare

What's New

Synthetic Framework Callers for Dead Code Detection

Reduces dead code false positives by injecting synthetic call graph edges for framework-managed functions. Instead of exemption lists, the call graph now reflects how frameworks invoke functions (e.g., __celery__ -> process_data).

  • 16 built-in rules covering Celery, FastAPI, pytest, Django, Flask, NestJS, React, Vue, Nuxt, Next.js, LangGraph, Express
  • Configurable via dead_code.synthetic_callers in .codemaprc for custom frameworks
  • Decorator extraction for standalone Python functions (@celery.task, @app.get, @pytest.fixture)
  • Simplified dead-code analyzer — removed hardcoded lifecycle hooks and decorator patterns; zero callers = dead
  • codemap_callers now shows the framework as a caller (e.g., __fastapi__)

Improved Framework Detection

  • Added celery, pytest, and langgraph to auto-detection
  • Monorepo support — scans immediate subdirectories for package.json / requirements.txt

Daily Usage Breakdown

  • Usage stats now show a daily summary table before the 5-hour drill-down
  • Groups existing interval data by date with top tools per day

Session Context Command + Hook

  • New codemap context CLI command — compact project overview (health, frameworks, recent usage, hotspots)
  • New SessionStart hook — auto-shows project context when Claude Code opens a session
  • Run codemap hooks to install the new hook

Full Changelog: v0.6.1...v0.6.2

v0.6.1

14 Apr 07:11

Choose a tag to compare

What's Changed

Dead Code Detection Improvements

  • Fix call-filter prefix stripping: this.get() and self.set() are no longer silently filtered as builtins — user method calls are preserved in the call graph
  • Confidence levels: Dead functions now have confidence: 'high' | 'low' — exported/public functions get low confidence since they may be consumed externally
  • Re-export awareness: Functions re-exported from barrel files (index.ts) are correctly flagged as low-confidence instead of definitive dead code
  • Namespace import resolution: Calls like utils.foo() (from import * as utils) now resolve to the standalone function foo in the reverse call graph
  • Health score consistency: Health penalty now uses only high-confidence dead code, computed via the same detectDeadCode analyzer used by codemap analyze

Cross-Name Function Similarity Detection

  • Multi-signal similarity scoring: New 5-signal weighted comparison (call patterns 35%, param structure 25%, structural shape 15%, call categories 15%, return type 10%)
  • Cross-name detection: Functions with different names but similar behavior are now detected with a 0.6 similarity threshold
  • Smart pre-filtering: Skips comparisons where line count ratio exceeds 2x to avoid noise
  • Distinct recommendations: Structural matches get "Functionally similar" titles with "review and consolidate" action plans, separate from same-name "Deduplicate" recommendations

Stats

  • 25 new tests (335 → 360 total)
  • 0 regressions

Full Changelog: v0.6.0...v0.6.1

v0.6.0

13 Apr 04:14

Choose a tag to compare

Full Changelog: v0.5.0...v0.6.0

v0.5.0

12 Apr 01:34

Choose a tag to compare

What's Changed

  • feat: call-graph clustering and codemap_explore for token-efficient MCP by @EdmundHee in #3

Full Changelog: v0.4.0...v0.5.0

v0.4.0

10 Apr 07:05

Choose a tag to compare

What's Changed

  • Add file dependency tracing and code analysis tools by @EdmundHee in #2

Full Changelog: v0.3.0...v0.4.0

v0.3.0

06 Apr 15:30

Choose a tag to compare

What's Changed

  • feat: auto-generate CLAUDE.md on codemap init by @EdmundHee in #1

New Contributors

Full Changelog: v0.2.3...v0.3.0

v0.2.3

04 Apr 08:36

Choose a tag to compare

Full Changelog: v0.2.2...v0.2.3

v0.2.2

23 Mar 03:37

Choose a tag to compare

Full Changelog: v0.2.1...v0.2.2

v0.2.1

23 Mar 03:37

Choose a tag to compare

Full Changelog: v0.2.0...v0.2.1

v0.2.0

20 Mar 15:14

Choose a tag to compare

Full Changelog: v0.1.9...v0.2.0