# Understand-Anything: what changed from 1 to 2 - Product: Understand-Anything (https://whatsnew.fyi/product/understand-anything) - Vendor: Understand-Anything - Range: changelog entries numbered after v1.3.0 up to and including v2.9.0, stable releases only - Entries below: 6 releases (newest first) - Resolved: 1 is v1.3.0 and 2 is v2.9.0, the newest stable release of each major we track - Carrying security changes: 1 · CVEs mentioned: 0 · Mentioning breaking changes: 0 · Removing or deprecating something: 1 - Page: https://whatsnew.fyi/product/understand-anything/compare/1...2 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. ## What changed (113 changes, grouped by kind) ### Added #### v2.9.0 (2026-07-10) - New analysis mode `/understand-figma` to generate navigable knowledge graphs from Figma files with pages, screens, components, variants, instances, and design-system models including design tokens - Screen thumbnails in the dashboard sidebar for Figma analysis - Support for Dart language - Support for Scala language - Support for Swift language - Support for Kotlin language - Support for Kiro platform - Support for Nanobot platform - Support for Trae platform - Windows install.ps1 vibe support - Conversation-language auto-detection on first run #### v2.7.3 (2026-05-19) - Accept a `--language` flag on `/understand` and related commands to generate architecture summaries, node descriptions, tours, and onboarding content in the requested language - Add Russian (`ru`) locale to dashboard UI translations - Support KIMI CLI with install and skill plumbing - Support Cline with install and skill plumbing - Support Hermes with open-source agent compatibility - Support Mistral vibe CLI in the install script - Implement `tested_by` edges with a deterministic linker to visualize test coverage during merge - Add test coverage badge on node cards in the dashboard to identify uncovered code - Add file/class dual-view toggle in the dashboard to switch between file-level and class-level structural views - Expose heading-font override in theme settings to match internal design systems - Implement responsive mobile layout for the dashboard with collapsible sidebar and touch-friendly tour navigation - Support `ACCESS_TOKEN` environment variable override for the dev server #### v2.5.0 (2026-05-04) - Source code viewer with syntax highlighting accessible via slide-up code panel and file double-click - Path-allowlisted file content access gated by access token via `/file-content.json` endpoint #### v2.3.1 (2026-04-12) - Introduce `/understand-knowledge` skill for analyzing LLM wiki knowledge bases with entity extraction, implicit relationships, and topic clustering across five phases - Add `article-analyzer` agent that extracts implicit knowledge from wiki articles including entities, claims, and semantic edges - Add `assemble-reviewer` agent that performs post-merge quality review and verifies cross-batch consistency - Add KnowledgeGraphView dashboard component with force-directed visualization, search, tour highlighting, and relationship-typed edge styling - Introduce `.understandignore` support for user-configurable file exclusion with IgnoreFilter and IgnoreGenerator - Add Phase 0.5 in `/understand` workflow that pauses for user confirmation after generating ignore file - Implement subdomain graph merging in Phase 0 to merge multiple domain-specific graphs into unified graph with deduplication - Add batch graph merging Python script with ID normalization, complexity mapping, and detailed fix reports - Support incremental updates with structural fingerprinting and `--auto-update` / `--no-auto-update` flags - Add language and framework context injection for architecture analysis - Expand review paths with inline validation option and `--review` flag for full LLM review - Add type aliases for flexible input such as `func` → `function` and `doc` → `document` - Add Korean and Spanish README translations - Add animated showcase GIFs for structural and domain views #### v2.1.0 (2026-04-03) - New domain graph view that maps codebase's business logic including domains, flows, and process steps - New /understand-domain skill that extracts business domain knowledge using a dedicated domain-analyzer agent - Custom node components DomainClusterNode, FlowNode, and StepNode with domain-aware NodeInfo sidebar - Domain overview and detail drill-down views with auto-widened spacing for long edge labels - New core node types: domain, flow, and step with domain-specific edge types - saveDomainGraph and loadDomainGraph persistence functions in core - VS Code and GitHub Copilot agent skills support - Node type filters, path finder, and tooltips in dashboard - PR workflow for build, test, and type-check in CI #### v2.0.0 (2026-03-28) - Analyze every file type in your project including configs, docs, schemas, and infrastructure files - Support for 26 new file types including Dockerfile, Docker Compose, Kubernetes manifests, Terraform, GitHub Actions, Jenkinsfile, Makefile, Shell scripts, PowerShell, Batch, SQL, GraphQL, Protobuf, JSON, JSON Schema, OpenAPI, YAML, TOML, XML, CSV, .env, Markdown, reStructuredText, HTML, CSS, and Plaintext - 8 new node types: config, document, service, table, endpoint, pipeline, schema, and resource - 8 new edge types: deploys, serves, migrates, documents, provisions, routes, defines_schema, and triggers - 12 custom parsers for Dockerfile, .env, GraphQL, JSON, Makefile, Markdown, Protobuf, Shell, SQL, Terraform, TOML, and YAML - Node type category filter controls in dashboard - File type breakdown display in ProjectOverview - 8 new node type colors across all theme presets ### Changed #### v2.9.0 (2026-07-10) - Data directory renamed from `.understand-anything/` to `.ua/` with full backward compatibility for legacy directories - C++ test and benchmark ignore patterns updated - Modern TypeScript type-declaration extraction improved - Semantic batching and output chunking optimizations added #### v2.7.3 (2026-05-19) - Replace per-platform installer pile with a unified `install.sh` / `install.ps1` that auto-detects the target CLI - Route all dashboard UI strings through `I18nProvider` including sidebar, code viewer, search, tours, and mobile layout - Use `outputLanguage` config key as the single source of truth for both generated content and dashboard UI language #### v2.5.0 (2026-05-04) - Dashboard graph layout uses ELK instead of dagre for structural-style views - Layer-detail view groups nodes into folder/community containers that lazy-expand on demand - Two-stage lazy layout renders container atoms first (~125ms at 500 nodes) then expands per-container on click, zoom, or search hit - Cross-container edges aggregate into single weighted edges that inflate when containers expand - Visual containers show search hit counts, diff impact via red border, and focus/selection via gold border - Containers implement keyboard accessibility as disclosure buttons with ARIA attributes - File double-click navigates the graph while preserving sidebar composition - DomainGraphView migrated to ELK with LR direction preserved - WarningBanner distinguishes graph data errors from dashboard rendering bugs #### v2.3.1 (2026-04-12) - Expand node types from 13 to 21, adding domain, flow, step, article, entity, topic, claim, and source types - Expand edge types to 35 covering structural, behavioral, data flow, dependency, semantic, infrastructure, domain, and knowledge relationships - Enhance project scanner to handle non-code files including configs, docs, infrastructure, and data with explicit fileCategory assignment - Implement deterministic script-based file discovery with improved language and framework detection #### v2.1.0 (2026-04-03) - Prompt templates moved into agent definitions for prompt integrity - Header legends now horizontally scrollable on overflow - Docs updated across all README translations #### v2.0.0 (2026-03-28) - All 5 agents updated to support non-code file analysis - Added language context snippets for 11 non-code file types - Implemented type-aware analysis prompts for accurate non-code understanding - Reduced code viewer overlay height to avoid blocking graph nodes - Extended NodeInfo sidebar to support new node and edge types ### Fixed #### v2.9.0 (2026-07-10) - Structural subdomain edges no longer silently dropped; now generate loud warnings and persisted merge-report.json with automatic retry - Batch files that load but contribute zero nodes or edges are now flagged in the phase report - Karpathy wiki parser now handles title-case Index.md and Log.md files and article-root-prefixed wiki links - Cross-layer container layout cache issue resolved #### v2.7.3 (2026-05-19) - Recover `imports` edges when file-analyzer batches drop them - Coerce malformed `tested_by` tags before adding to graph - Preserve language in file-analyzer and fall back when imports are unresolved - Persist canonical edge direction during merge to prevent deduplication from losing edges - Make fingerprints merge unambiguous in Phase 3d so re-runs converge - Apply `.understandignore` exclusions in Phase 0 of `auto-update` #### v2.5.0 (2026-05-04) - Horizontal sprawl problem where layers with 50+ nodes rendered as single ~14000px row - Plugin root resolution hardened across install modes - Use printf instead of echo to pipe TOOL_INPUT into grep - Log skipped invalid gitignore patterns to stderr - Hero image extension in Astro homepage - File permissions on extract-domain-context.py #### v2.3.1 (2026-04-12) - Include access token in dashboard URL - Fix connected edges to highlight correctly on node selection #### v2.1.0 (2026-04-03) - Function and class nodes now correctly appear in layer detail view - Parallel batch analyzer output now produces consistent node IDs regardless of execution order - Edge cross-variant resolution and dropped edge traceability now handle all 13 node types - Step ID normalization improved with additional test coverage - Redundant bottom bar in CodeViewer no longer appears on node click - Replaced bash herestring with POSIX pipe for broader shell support - Fixed 24 prompt engineering audit issues across all 7 agents - Addressed 8 dashboard audit issues across components - PNG export now uses clean SVG primitives instead of foreignObject ### Deprecated #### v2.5.0 (2026-05-04) - applyDagreLayout function slated for removal in next release ### Security #### v2.9.0 (2026-07-10) - Hardened skill-injection ReDoS vulnerability ## Release notes ### v2.9.0 — v2.9.0 — Figma design graphs + .ua data directory - Date: 2026-07-10 - Version: v2.9.0 - Original notes: https://github.com/Egonex-AI/Understand-Anything/releases/tag/v2.9.0 - Permalink: https://whatsnew.fyi/product/understand-anything/releases/v2.9.0 - **added** — New analysis mode `/understand-figma` to generate navigable knowledge graphs from Figma files with pages, screens, components, variants, instances, and design-system models including design tokens - **added** — Screen thumbnails in the dashboard sidebar for Figma analysis - **added** — Support for Dart language - **added** — Support for Scala language - **added** — Support for Swift language - **added** — Support for Kotlin language - **added** — Support for Kiro platform - **added** — Support for Nanobot platform - **added** — Support for Trae platform - **added** — Windows install.ps1 vibe support - **added** — Conversation-language auto-detection on first run - **changed** — Data directory renamed from `.understand-anything/` to `.ua/` with full backward compatibility for legacy directories - **changed** — C++ test and benchmark ignore patterns updated - **changed** — Modern TypeScript type-declaration extraction improved - **changed** — Semantic batching and output chunking optimizations added - **fixed** — Structural subdomain edges no longer silently dropped; now generate loud warnings and persisted merge-report.json with automatic retry - **fixed** — Batch files that load but contribute zero nodes or edges are now flagged in the phase report - **fixed** — Karpathy wiki parser now handles title-case Index.md and Log.md files and article-root-prefixed wiki links - **fixed** — Cross-layer container layout cache issue resolved - **security** — Hardened skill-injection ReDoS vulnerability ##### Highlights ###### New analysis mode: `/understand-figma` (#559) — by @gruming Point the tool at a Figma file and get the same navigable knowledge graph you get for code: pages → screens → components/variants/instances, plus a light design-system model (design tokens and `uses_token` edges). Deterministic parsing via the Figma REST API, LLM enrichment via a new `design-analyzer` agent, screen thumbnails in the dashboard sidebar, incremental `UP_TO_DATE` re-runs, and `FIGMA_TOKEN` kept strictly in the request header. Schema additions are backward compatible (6 node types, 3 edge types, `kind:"design"`). Follow-up fixes landed for real-API style-key bridging, published component keys, kind-scoped alias normalization, and dashboard edge-category filters. ###### Data directory renamed to `.ua/` — fully backward compatible Analysis artifacts now live in `.ua/` instead of `.understand-anything/`. Projects analyzed by older versions need **no migration**: when a legacy `.understand-anything/` directory exists it keeps being used for both reads and writes. The resolution rule is implemented once in core (`resolveUaDir`) and honored by every bundled script, skill, agent definition, hook, and the dashboard dev server. ###### New language support - **Dart** (#435) and **C++ test/benchmark ignore patterns** (#480, #466) — by @thejesh23 - **Scala** (#553, from #493) and **Swift** (#537) — by @KumamuKuma - **Kotlin** (#347) — by @tirth8205 - Modern TS type-declaration extraction fixes (#532) — by @jiang4wqy ###### New platform support - **Kiro** (#364) — by @smjeong84 - **Nanobot** (#419) — by @chengyongru - **Trae** (#235) — by @ZebangCheng - Windows `install.ps1` vibe support (#550) and Windows test portability (#531, #538, #551) — by @KumamuKuma ###### Merge-pipeline reliability - Structural subdomain edges (`contains_flow`/`flow_step`/`cross_domain`) are no longer silently dropped: loud warnings, a persisted `merge-report.json`, and automatic retry on the next run (#529). - Batch files that load but contribute zero nodes/edges are flagged in the phase report instead of vanishing into a partial merge (#484). - Karpathy wiki parser handles title-case `Index.md`/`Log.md` and article-root-prefixed `[[wiki/...]]` links (#342). - Cross-layer container layout cache fix (#541) — by @computersniper; UTF-8 domain context on Windows (#524) — by @multimail-dev; Phase 7 cleanup and scan-result preservation fixes (#387, #332) — by @tirth8205 and @ZebangCheng. ###### Security hardening - Skill-injection ReDoS hardening (#557) — by @jiang4wqy - Recursive subagent dispatch prevention (#560) — by @crow-1412 ###### Pipeline performance & DX - Semantic batching and output chunking (#204), `/understand` pipeline perf (#346) — by @tirth8205 - Conversation-language auto-detection on first run (#378) — by @BozhengLong - Config schema validation tests (#471) — by @yiziff; CI on Node 24 runtimes. **Full Changelog**: https://github.com/Egonex-AI/Understand-Anything/compare/v2.7.3...v2.9.0 ### v2.7.3 - Date: 2026-05-19 - Version: v2.7.3 - Original notes: https://github.com/Egonex-AI/Understand-Anything/releases/tag/v2.7.3 - Permalink: https://whatsnew.fyi/product/understand-anything/releases/v2.7.3 - **added** — Accept a `--language` flag on `/understand` and related commands to generate architecture summaries, node descriptions, tours, and onboarding content in the requested language - **added** — Add Russian (`ru`) locale to dashboard UI translations - **added** — Support KIMI CLI with install and skill plumbing - **added** — Support Cline with install and skill plumbing - **added** — Support Hermes with open-source agent compatibility - **added** — Support Mistral vibe CLI in the install script - **added** — Implement `tested_by` edges with a deterministic linker to visualize test coverage during merge - **added** — Add test coverage badge on node cards in the dashboard to identify uncovered code - **added** — Add file/class dual-view toggle in the dashboard to switch between file-level and class-level structural views - **added** — Expose heading-font override in theme settings to match internal design systems - **added** — Implement responsive mobile layout for the dashboard with collapsible sidebar and touch-friendly tour navigation - **added** — Support `ACCESS_TOKEN` environment variable override for the dev server - **changed** — Replace per-platform installer pile with a unified `install.sh` / `install.ps1` that auto-detects the target CLI - **changed** — Route all dashboard UI strings through `I18nProvider` including sidebar, code viewer, search, tours, and mobile layout - **changed** — Use `outputLanguage` config key as the single source of truth for both generated content and dashboard UI language - **fixed** — Recover `imports` edges when file-analyzer batches drop them - **fixed** — Coerce malformed `tested_by` tags before adding to graph - **fixed** — Preserve language in file-analyzer and fall back when imports are unresolved - **fixed** — Persist canonical edge direction during merge to prevent deduplication from losing edges - **fixed** — Make fingerprints merge unambiguous in Phase 3d so re-runs converge - **fixed** — Apply `.understandignore` exclusions in Phase 0 of `auto-update` ##### Highlights ###### Localized analysis output — `--language` (#142, #145) — by @zhushen12580 `/understand` (and friends) now accept a `--language` flag. Architecture summaries, node descriptions, tours, and onboarding content are generated in the language you ask for, end-to-end through the agent pipeline. Documented across every README. ###### Dashboard i18n (#142 stack + 9d1318a) The dashboard UI ships translation files alongside the analysis pipeline: - All UI strings (sidebar, code viewer, search, tours, mobile layout) routed through `I18nProvider`. - **New: Russian (`ru`)** joins the existing locales. `MobileLayout` is now wrapped in the provider so mobile screens localize too. - Output language read from the same `outputLanguage` config key for consistency between generated content and chrome. ###### Unified install script (#123) Replaced the per-platform installer pile with a single `install.sh` / `install.ps1` that detects the target CLI (Claude Code, Codex, Cursor, Copilot CLI, opencode, Gemini CLI, KIMI, Cline, Hermes, Mistral vibe) and wires up the right symlinks and config. Uninstall is robust against partial state; reparse deletes are guarded. ###### New platform support - **KIMI CLI** (#134) — install + skill plumbing. - **Cline** (#116) — install + skill plumbing. - **Hermes** (#91) — open-source agent compatibility, README refresh. - **Mistral vibe** (#127, by @3ng7n33r) — install script entry. ###### Test-coverage visualization — `tested_by` edges + dashboard badge (#122 / issue #113) A deterministic `tested_by` linker runs during merge, with a swap-then-supplement strategy that recovers edges the per-file batches drop and a max-weight Pass-1 dedup. Tested files now render a small badge on their node card so you can spot uncovered code at a glance. ###### Dashboard file/class dual-view toggle (#132) — by @Xingkai98 Toggle between file-level and class-level structural views to cut clutter on large object-oriented codebases. View-state resets are scoped so the toggle stays sane when switching layers, and the detail toolbar hides in domain view where it doesn't apply. ###### Customizable heading font (#121) — by @Buzzwoo-Ecom-Team Theme settings expose a heading-font override so teams can match their internal design system without forking. ###### Mobile layout + responsive dashboard (880e223) The dashboard now has a real mobile layout instead of a horizontally-scrolling desktop. Sidebar collapses, the code viewer adapts to portrait, and tour navigation works on touch. ###### Closed 12 sources of silent data loss in graph extraction (c49c46d) A pipeline-wide audit identified twelve places where nodes or edges were being quietly dropped during batched file analysis and merging. All twelve are now closed and covered: - `imports` edges recovered when file-analyzer batches drop them (05fd423). - `tested_by` malformed tags coerced before adding (`fdfa331`, issue #113). - File-analyzer preserves language and falls back when imports unresolved (`7834f9b`). - Canonical edge direction persisted during merge so dedup doesn't lose half the edges (`f71bad5`, in 2.7.1). - Fingerprints merge made unambiguous in Phase 3d so re-runs converge (`dd8b724`, in 2.7.2). - `.understandignore` exclusions actually applied in Phase 0 of `auto-update` (`5304ff0`). - `build-fingerprints.mjs` bundled and Phase 7 reordered so incremental updates work on fresh installs (`e7af9ae`, in 2.7.3). ###### Auto-update / incremental pipeline (2.7.x line) Structural fingerprinting (`--auto-update` / `--no-auto-update`) became real in the 2.7 line: only changed files re-run through analysis, fingerprints merge deterministically, and Phase 0 honors `.understandignore`. Big speedup on repeat runs against large repos. ###### Dashboard `ACCESS_TOKEN` override (1779cbd) The dev server's access token can be overridden via env var for embedded/CI use cases without editing config. _[Truncated at 4000 characters — full notes: https://github.com/Egonex-AI/Understand-Anything/releases/tag/v2.7.3]_ ### v2.5.0 — v2.5.0 — Dashboard layout overhaul (ELK + lazy containers) - Date: 2026-05-04 - Version: v2.5.0 - Original notes: https://github.com/Egonex-AI/Understand-Anything/releases/tag/v2.5.0 - Permalink: https://whatsnew.fyi/product/understand-anything/releases/v2.5.0 - **added** — Source code viewer with syntax highlighting accessible via slide-up code panel and file double-click - **added** — Path-allowlisted file content access gated by access token via `/file-content.json` endpoint - **changed** — Dashboard graph layout uses ELK instead of dagre for structural-style views - **changed** — Layer-detail view groups nodes into folder/community containers that lazy-expand on demand - **changed** — Two-stage lazy layout renders container atoms first (~125ms at 500 nodes) then expands per-container on click, zoom, or search hit - **changed** — Cross-container edges aggregate into single weighted edges that inflate when containers expand - **changed** — Visual containers show search hit counts, diff impact via red border, and focus/selection via gold border - **changed** — Containers implement keyboard accessibility as disclosure buttons with ARIA attributes - **changed** — File double-click navigates the graph while preserving sidebar composition - **changed** — DomainGraphView migrated to ELK with LR direction preserved - **changed** — WarningBanner distinguishes graph data errors from dashboard rendering bugs - **fixed** — Horizontal sprawl problem where layers with 50+ nodes rendered as single ~14000px row - **fixed** — Plugin root resolution hardened across install modes - **fixed** — Use printf instead of echo to pipe TOOL_INPUT into grep - **fixed** — Log skipped invalid gitignore patterns to stderr - **fixed** — Hero image extension in Astro homepage - **fixed** — File permissions on extract-domain-context.py - **deprecated** — applyDagreLayout function slated for removal in next release ##### Highlights ###### Source code viewer (#108) — by @arkaigrowth Slide-up code panel with syntax highlighting; double-click a file node to open. Path-allowlisted via the dev server's `/file-content.json` endpoint, gated by an access token. Thanks @arkaigrowth for designing and shipping this! ###### Dashboard graph layout overhaul (#111) Replaces dagre with **ELK** across all structural-style views and reshapes the layer-detail view around **folder/community containers** that lazy-expand on demand. Fixes the long-standing horizontal-sprawl problem where layers with 50+ nodes rendered as a single ~14000px row. - **Containers**: layer-detail nodes are grouped by folder (Louvain community detection as fallback when folders are too flat). Each container renders as a translucent gold-bordered atom with the folder name and child count. - **Two-stage lazy layout**: Stage 1 lays out container atoms only (~125ms even at 500 nodes). Stage 2 runs ELK per container on demand — when you click, when you zoom past 1.0, or when search/focus/tour lands a hit inside. - **Edge aggregation**: cross-container edges collapse into a single weighted edge with count. Expanding a container inflates them back to file→file. Edges anchored to collapsed containers stay anchored to the container atom so nothing silently disappears. - **Visual overlays**: containers light up for search hits (count badge), diff impact (red border), and focus/selection (gold border). - **Keyboard accessible**: containers are real disclosure buttons (`role="button"`, `aria-expanded`, Enter/Space). - **Performance**: dashboard main bundle stays at ~62KB gzipped (ELK split into a parallel-loaded chunk). ##### Other contributions since v2.3.1 Huge thanks to everyone who improved the project this cycle: - **#95** — @0xnayuta: harden plugin root resolution across install modes. - **#97** — @xiaolai: use `printf` instead of `echo` to pipe `TOOL_INPUT` into grep. - **#98** — @xiaolai: log skipped invalid gitignore patterns to stderr. - **#103** — @ZebangCheng: fix hero image extension in the Astro homepage. - **#105** — @gustn99: README link refresh (Claude Code plugin). - **#110** — @LukasWana: file permissions on `extract-domain-context.py`. ##### Other improvements - File double-click also navigates the graph; sidebar composition preserved when reopening the slide-up code viewer. - DomainGraphView migrated to ELK with LR direction preserved. - WarningBanner now distinguishes graph data errors (asks your agent to fix the JSON) from dashboard rendering bugs (links to the issue tracker). ##### Compat - No graph schema changes. Existing `.understand-anything/knowledge-graph.json` files load unchanged. - `applyDagreLayout` is `@deprecated` and slated for removal next release. ##### Full changelog `v2.3.1...v2.5.0` ### v2.3.1 - Date: 2026-04-12 - Version: v2.3.1 - Original notes: https://github.com/Egonex-AI/Understand-Anything/releases/tag/v2.3.1 - Permalink: https://whatsnew.fyi/product/understand-anything/releases/v2.3.1 - **added** — Introduce `/understand-knowledge` skill for analyzing LLM wiki knowledge bases with entity extraction, implicit relationships, and topic clustering across five phases - **added** — Add `article-analyzer` agent that extracts implicit knowledge from wiki articles including entities, claims, and semantic edges - **added** — Add `assemble-reviewer` agent that performs post-merge quality review and verifies cross-batch consistency - **added** — Add KnowledgeGraphView dashboard component with force-directed visualization, search, tour highlighting, and relationship-typed edge styling - **added** — Introduce `.understandignore` support for user-configurable file exclusion with IgnoreFilter and IgnoreGenerator - **added** — Add Phase 0.5 in `/understand` workflow that pauses for user confirmation after generating ignore file - **added** — Implement subdomain graph merging in Phase 0 to merge multiple domain-specific graphs into unified graph with deduplication - **added** — Add batch graph merging Python script with ID normalization, complexity mapping, and detailed fix reports - **added** — Support incremental updates with structural fingerprinting and `--auto-update` / `--no-auto-update` flags - **added** — Add language and framework context injection for architecture analysis - **added** — Expand review paths with inline validation option and `--review` flag for full LLM review - **changed** — Expand node types from 13 to 21, adding domain, flow, step, article, entity, topic, claim, and source types - **changed** — Expand edge types to 35 covering structural, behavioral, data flow, dependency, semantic, infrastructure, domain, and knowledge relationships - **added** — Add type aliases for flexible input such as `func` → `function` and `doc` → `document` - **changed** — Enhance project scanner to handle non-code files including configs, docs, infrastructure, and data with explicit fileCategory assignment - **changed** — Implement deterministic script-based file discovery with improved language and framework detection - **added** — Add Korean and Spanish README translations - **added** — Add animated showcase GIFs for structural and domain views - **fixed** — Include access token in dashboard URL - **fixed** — Fix connected edges to highlight correctly on node selection ##### What's New ###### `/understand-knowledge` — Knowledge Base Analysis New skill for analyzing Karpathy-pattern LLM wiki knowledge bases. Detects raw sources and wiki markdown with wikilinks, then produces interactive knowledge graphs with entity extraction, implicit relationships, and topic clustering across five phases (DETECT → SCAN → ANALYZE → MERGE → SAVE). Comes with two new agents: - **article-analyzer** — extracts implicit knowledge from wiki articles: entities (people, tools, papers), claims (decisions, assertions), and semantic edges (`builds_on`, `contradicts`, `exemplifies`, `authored_by`, `cites`) - **assemble-reviewer** — post-merge quality reviewer that recovers dropped nodes/edges, remaps unknown types, and verifies cross-batch consistency A dedicated **KnowledgeGraphView** dashboard component provides force-directed visualization with search, tour highlighting, and relationship-typed edge styling. ###### `.understandignore` Support User-configurable file exclusion for `/understand` analysis: - **IgnoreFilter** — runtime filtering with hardcoded defaults (node_modules, build outputs, lock files, binaries) plus layered `.understandignore` files from `.understand-anything/` and project root - **IgnoreGenerator** — auto-generates a starter `.understandignore` by parsing your existing `.gitignore` and detecting project directories - New **Phase 0.5** in the `/understand` workflow pauses for user confirmation after generating the ignore file ###### `/understand` Pipeline Improvements - **Subdomain graph merging** (Phase 0) — merges multiple domain-specific graphs into one unified graph with deduplication - **Batch graph merging** — new Python script with ID normalization, complexity mapping, and detailed fix reports - **Incremental updates** — structural fingerprinting with `--auto-update` / `--no-auto-update` flags - **Language/framework context injection** for architecture analysis - **Expanded review paths** — inline validation vs. full LLM review via `--review` ###### Schema & Type Expansion - Node types expanded from 13 → 21 (added `domain`, `flow`, `step`, `article`, `entity`, `topic`, `claim`, `source`) - Edge types expanded to 35 covering structural, behavioral, data flow, dependency, semantic, infrastructure, domain, and knowledge relationships - Type aliases for flexible input (`func` → `function`, `doc` → `document`, etc.) ###### Project Scanner Improvements - Now handles non-code files (configs, docs, infrastructure, data) with explicit `fileCategory` assignment - Deterministic script-based file discovery with improved language and framework detection ###### Documentation & Internationalization - Korean (`README.ko-KR.md`) and Spanish (`README.es-ES.md`) README translations - Animated showcase GIFs for structural and domain views - Multi-platform badges (Codex, Copilot, Gemini CLI, OpenCode) ###### Fixes - Dashboard URL now includes access token - Connected edges highlight correctly on node selection - Stable layout and scoped infrastructure filter in graph view - Marketplace JSON schema validation fixes - Edge weight coercion for graph merge scripts ### v2.1.0 - Date: 2026-04-03 - Version: v2.1.0 - Original notes: https://github.com/Egonex-AI/Understand-Anything/releases/tag/v2.1.0 - Permalink: https://whatsnew.fyi/product/understand-anything/releases/v2.1.0 - **added** — New domain graph view that maps codebase's business logic including domains, flows, and process steps - **added** — New /understand-domain skill that extracts business domain knowledge using a dedicated domain-analyzer agent - **added** — Custom node components DomainClusterNode, FlowNode, and StepNode with domain-aware NodeInfo sidebar - **added** — Domain overview and detail drill-down views with auto-widened spacing for long edge labels - **added** — New core node types: domain, flow, and step with domain-specific edge types - **added** — saveDomainGraph and loadDomainGraph persistence functions in core - **added** — VS Code and GitHub Copilot agent skills support - **added** — Node type filters, path finder, and tooltips in dashboard - **added** — PR workflow for build, test, and type-check in CI - **changed** — Prompt templates moved into agent definitions for prompt integrity - **changed** — Header legends now horizontally scrollable on overflow - **changed** — Docs updated across all README translations - **fixed** — Function and class nodes now correctly appear in layer detail view - **fixed** — Parallel batch analyzer output now produces consistent node IDs regardless of execution order - **fixed** — Edge cross-variant resolution and dropped edge traceability now handle all 13 node types - **fixed** — Step ID normalization improved with additional test coverage - **fixed** — Redundant bottom bar in CodeViewer no longer appears on node click - **fixed** — Replaced bash herestring with POSIX pipe for broader shell support - **fixed** — Fixed 24 prompt engineering audit issues across all 7 agents - **fixed** — Addressed 8 dashboard audit issues across components - **fixed** — PNG export now uses clean SVG primitives instead of foreignObject ##### What's New in v2.1.0 ###### Business Domain Knowledge Graph A brand new **domain graph view** that maps your codebase's business logic — domains, flows, and process steps — so you can understand *what the software does* alongside *how it's built*. - New `/understand-domain` skill extracts business domain knowledge using a dedicated domain-analyzer agent - **Domain graph view** in the dashboard with a view mode toggle pill to switch between architecture and domain graphs - Custom node components: `DomainClusterNode`, `FlowNode`, `StepNode` with domain-aware NodeInfo sidebar - Domain overview and detail drill-down views with auto-widened spacing for long edge labels - New core types: `domain`, `flow`, `step` node types and domain-specific edge types - `saveDomainGraph` / `loadDomainGraph` persistence functions in core ###### Bug Fixes - **Missing node types in layer detail view** — function/class nodes now correctly appear in layer detail (#65, #66) - **Deterministic node ID normalization** — parallel batch analyzer output now produces consistent IDs regardless of execution order (#65) - **All 13 node types handled** — edge cross-variant resolution and dropped edge traceability for generated graphs (#65) - **Step ID normalization** improved with additional test coverage - **Redundant bottom bar (CodeViewer)** no longer appears on node click (#55) - **POSIX-compatible hooks** — replaced bash herestring with POSIX pipe for broader shell support (#64) - **24 prompt engineering audit issues** fixed across all 7 agents - **8 dashboard audit issues** addressed across components ###### New Platform Support - **VS Code + GitHub Copilot** agent skills support (#52) ###### Dashboard Enhancements - PNG export fix: replaced `foreignObject` with clean SVG primitives (#50) - Node type filters, path finder, and tooltips (#50) - Header legends now horizontally scrollable on overflow ###### Other - CI: added PR workflow for build, test, and type-check - Prompt templates moved into agent definitions for prompt integrity - Docs updated across all README translations ###### Community Contributors - @fishinakleinbottle — deterministic normalization for generated graphs (#65) - @pablospe — POSIX-compatible hooks fix (#64) - @GarfieldHuang — VS Code + GitHub Copilot plugin (#52) - @berkcangumusisik — dashboard export, filtering & path finder (#50) **Full Changelog**: https://github.com/Lum1104/Understand-Anything/compare/v2.0.0...v2.1.0 ### v2.0.0 - Date: 2026-03-28 - Version: v2.0.0 - Original notes: https://github.com/Egonex-AI/Understand-Anything/releases/tag/v2.0.0 - Permalink: https://whatsnew.fyi/product/understand-anything/releases/v2.0.0 - **added** — Analyze every file type in your project including configs, docs, schemas, and infrastructure files - **added** — Support for 26 new file types including Dockerfile, Docker Compose, Kubernetes manifests, Terraform, GitHub Actions, Jenkinsfile, Makefile, Shell scripts, PowerShell, Batch, SQL, GraphQL, Protobuf, JSON, JSON Schema, OpenAPI, YAML, TOML, XML, CSV, .env, Markdown, reStructuredText, HTML, CSS, and Plaintext - **added** — 8 new node types: config, document, service, table, endpoint, pipeline, schema, and resource - **added** — 8 new edge types: deploys, serves, migrates, documents, provisions, routes, defines_schema, and triggers - **added** — 12 custom parsers for Dockerfile, .env, GraphQL, JSON, Makefile, Markdown, Protobuf, Shell, SQL, Terraform, TOML, and YAML - **added** — Node type category filter controls in dashboard - **added** — File type breakdown display in ProjectOverview - **added** — 8 new node type colors across all theme presets - **changed** — All 5 agents updated to support non-code file analysis - **changed** — Added language context snippets for 11 non-code file types - **changed** — Implemented type-aware analysis prompts for accurate non-code understanding - **changed** — Reduced code viewer overlay height to avoid blocking graph nodes - **changed** — Extended NodeInfo sidebar to support new node and edge types ##### What's New in v2.0.0 ###### Beyond Code — Analyze Your Entire Project Understand Anything now analyzes **every file in your project**, not just source code. Configs, docs, schemas, infrastructure — everything gets mapped into your knowledge graph. ###### 26 New File Types **Infrastructure & DevOps**: Dockerfile, Docker Compose, Kubernetes manifests, Terraform (HCL), GitHub Actions, Jenkinsfile, Makefile, Shell scripts, PowerShell, Batch **Data & Schema**: SQL, GraphQL, Protobuf, JSON, JSON Schema, OpenAPI, YAML, TOML, XML, CSV, .env **Documentation**: Markdown, reStructuredText, HTML, CSS, Plaintext ###### 8 New Node Types `config` · `document` · `service` · `table` · `endpoint` · `pipeline` · `schema` · `resource` ###### 8 New Edge Types `deploys` · `serves` · `migrates` · `documents` · `provisions` · `routes` · `defines_schema` · `triggers` ###### 12 Custom Parsers Structural parsers for Dockerfile, .env, GraphQL, JSON, Makefile, Markdown, Protobuf, Shell, SQL, Terraform, TOML, and YAML — extracting sections, definitions, services, endpoints, and references without tree-sitter. ###### Dashboard Enhancements - Node type category filter controls - File type breakdown in ProjectOverview - New node/edge type support in NodeInfo sidebar - 8 new node type colors across all theme presets - Code viewer overlay height reduced to avoid blocking graph nodes ###### Agent Pipeline Updates - All 5 agents updated for non-code file analysis - Language context snippets for 11 non-code file types - Type-aware analysis prompts for accurate non-code understanding **Full Changelog**: https://github.com/Lum1104/Understand-Anything/compare/v1.3.0...v2.0.0