Skip to content

Blog

Version v0.1.66

This release focuses on improving the plugin architecture by refactoring model-related utilities into a dedicated module. This change enhances code modularity and separation of concerns, making it easier for plugins to reuse model utilities without depending on the chat module. Additionally, some cleanup was performed by removing an obsolete test file.

New Features

  • Extracted model utility functions (getApiKeyForModel and getBaseUrlForModel) into a new module model-utils.js to improve plugin reusability and separation of concerns (5945cd) (Eric Ma)

Bug Fixes

  • Removed leftover test file test-expire-auth.js that was no longer needed after debugging (5945cd) (Eric Ma)

Deprecations

  • None

Version v0.1.64

This version introduces a new AI-powered image generation feature accessible via the /image command, enhancing the user experience with creative visual content generation.

New Features

  • Added AI image generation capability using the /image command (b9eee3) (Eric Ma)

Bug Fixes

  • None

Deprecations

  • None

Version v0.1.65

This release introduces a new feature that improves user experience by prompting for reauthentication when Copilot sessions expire.

New Features

  • Prompt users to reauthenticate when their Copilot sessions have expired (b766d0) (Eric Ma)

Bug Fixes

  • No bug fixes in this release.

Deprecations

  • No deprecations in this release.

Version v0.1.63

This release focuses on improving request routing for Copilot and fixing an issue with duplicate summarize nodes to enhance stability and performance.

New Features

  • Route Copilot requests through an OpenAI-compatible API to improve integration and compatibility (e8a5a0) (Eric Ma)

Bug Fixes

  • Prevent duplicate summarize nodes to avoid redundant processing and potential errors (09a12c) (Eric Ma)

Deprecations

  • None

Version v0.1.62

This release introduces a new authentication flow for Copilot along with comprehensive tests to ensure reliability. Additionally, the plugin development documentation has been extensively rewritten and expanded to provide a complete guide with examples, covering all plugin levels, configuration formats, and file loading mechanisms.

New Features

  • Added a Copilot authentication flow with accompanying tests to improve security and user experience (0c2157) (Eric Ma)
  • Published a comprehensive plugin development guide, including architecture overview, detailed explanations of plugin types, configuration formats, and practical examples with AI prompts (171b22) (Eric Ma)

Bug Fixes

  • None

Deprecations

  • None

Version v0.1.61

This release introduces significant improvements to plugin architecture, including the addition of standalone YouTube and GitRepo plugins with dedicated slash commands. YouTube video embedding and transcript handling have been enhanced for better user experience. The CRDT graph now supports generic recursive conversion for nested plugin data, improving data persistence. URL fetching has been refactored for unified backend routing and clearer separation of concerns. Several bug fixes improve metadata handling, output panel rendering, and file selection UX. Documentation and tests have been updated to reflect these changes.

New Features

  • Added YouTube and GitRepo as standalone plugins with /youtube and /git slash commands, including new node types and simplified URL fetching (1dc43b) (Eric Ma)
  • Added generic recursive conversion for plugin-specific nested objects in CRDT graph to support deeply nested data structures (534f55) (Eric Ma)
  • Added YouTube video embedding to fetch result nodes with responsive iframe and flip button for transcript viewing (40643e) (Eric Ma)
  • Created new /fetch command for URL fetching, separating it from /note command to clarify plugin responsibilities (9d0969) (Eric Ma)
  • Improved YouTube node rendering and UX by embedding video in main content and showing transcript in output panel (4290a9) (Eric Ma)

Bug Fixes

  • Fixed metadata passing and storage to ensure YouTube video embedding works correctly, including storing metadata as Y.Map in CRDT graph (51933a, 4965f8) (Eric Ma)
  • Restored smooth drawer animation and preserved scroll position when selecting files in GitRepo plugin (e5fdac) (Eric Ma)
  • Removed file size limits and improved file selection UX in GitRepo plugin with clear visual distinctions (8f20bb) (Eric Ma)
  • Fixed GitRepoProtocol to properly handle YouTube videos and delegate non-git repo content to parent protocol (9b0d7f, fb4a77) (Eric Ma)
  • Prevented arxiv.org and similar URLs from being incorrectly detected as git repositories by refining URL patterns and adding exclusions (a77c01) (Eric Ma)
  • Fixed YouTube transcript API usage to be compatible with version 1.2.3 and updated dependencies accordingly (e5bcad, 72f665) (Eric Ma)
  • Fixed output panel rendering for YouTube videos by ensuring node updates before re-render and deferring rendering until graph update completes (a5fea7, 71bc36, c95143) (Eric Ma)
  • Fixed backend URL fetch endpoint to pass metadata dict instead of old video_id format (51933a) (Eric Ma)
  • Fixed handlers to accept additional parameters via **kwargs to avoid TypeErrors in GitRepo handler (caeb87) (Eric Ma)

Deprecations

  • Renamed RESUMMARIZE action to SUMMARIZE throughout the codebase for clarity and consistency (8c7f3d) (Eric Ma)

Version v0.1.60

This release introduces a fully self-contained Git repository plugin with private repository support and credential management, significantly enhancing how git repo nodes are handled. The plugin architecture continues to mature with comprehensive plugin-ification of node types and features, improved keyboard shortcut handling, and expanded plugin-scoped event handling. Additionally, the release includes numerous bug fixes, UI improvements, and extensive documentation and testing enhancements.

New Features

  • Added a self-contained Git repository plugin with interactive file selection, file tree rendering, and support for private repositories via credential management, including UI integration and backend API updates (30babc) (Eric Ma)
  • Plugin-ified keyboard shortcuts and action buttons with protocol-based dispatch and customizable node actions, improving extensibility and user interaction (a5f63c) (Eric Ma)
  • Made the Edit button on git repo nodes open a file selection modal that pre-selects fetched files and updates nodes on save, streamlining editing workflows (4318bc) (Eric Ma)
  • Added plugin-scoped canvas event handlers and implemented a comprehensive poll feature plugin demonstrating plugin-scoped event handling, streaming LLM generation, and slash command integration (aa54ea) (Eric Ma)
  • Converted numerous node types (AINode, HumanNode, OpinionNode, ResearchNode, PdfNode, FlashcardNode, FactcheckNode, HighlightNode, FetchResultNode, SummaryNode, NoteNode, ReferenceNode, SearchNode, CsvNode, ImageNode, SynthesisNode, ReviewNode) into fully self-contained plugins with protocol methods and comprehensive test suites, enhancing modularity and maintainability (multiple commits from 42af52 to e8e8aa) (Eric Ma)
  • Added FileUploadRegistry and FileUploadHandlerPlugin base class to enable plugin-based backend file type handlers, laying the foundation for extensible file upload support (a29d52) (Eric Ma)
  • Added private git repository support with credential management UI, backend API support, and secure storage scoped to the git-repo plugin (49683a) (Eric Ma)
  • Added comprehensive documentation updates including plugin system changes, plugin building tutorials with prompt templates, and a detailed documentation map to assist developers and users (multiple commits from 55f84f to b661fc) (Eric Ma)

Bug Fixes

  • Fixed keyboard shortcut 'e' to work correctly for git repo nodes by emitting the proper event and adding error handling and debug logging (cd9368, b173bd, 7b84bc) (Eric Ma)
  • Corrected repository name extraction from git URLs to properly remove the ".git" suffix (22dd5d) (Eric Ma)
  • Improved git repo file tree hover and expand/collapse behavior for better UI clarity and interaction (a87139) (Eric Ma)
  • Fixed highlight node matching to constrain fuzzy matching region and prevent over-matching (30d1f0) (Eric Ma)
  • Fixed reply behavior and node selection focus to prevent unwanted auto-focus and improve shortcut usability (f547dc) (Eric Ma)
  • Fixed factcheck claim extraction and error handling to improve robustness and logging (6935ba) (Eric Ma)
  • Fixed event listener registration and emission for nodeEditContent events on canvas instead of graph (7b84bc) (Eric Ma)
  • Fixed array field extraction in CRDT graph to handle nested arrays correctly, resolving issues with poll options and other array fields (aa54ea) (Eric Ma)
  • Updated all test imports to use plugins/ directory and enhanced test coverage and edge case handling across multiple plugins (f34330, 629a24) (Eric Ma)
  • Fixed critical documentation inaccuracies and improved documentation coverage for APIs and plugin system (commit 08b11f, 0b4dd6) (Eric Ma)

Deprecations

  • Removed git credentials methods and UI from core storage and index.html, moving all git credential management fully into the git-repo plugin for better encapsulation (05a6dd, 0e5deb) (Eric Ma)
  • Removed hardcoded modal HTML from index.html and moved all plugin modals to plugin-scoped registration system for better modularity (0002732) (Eric Ma)
  • Removed backwards compatibility wrappers and consolidated all plugins into a single plugins/ directory, removing legacy import paths and hardcoded type checks (72e8b8, 5e3f19) (Eric Ma)
  • Removed SummaryNode, NoteNode, and PollFeature from built-in features and converted them to external or consolidated plugins (a0c613, 9a3ba8, 1f534e) (Eric Ma)

Version v0.1.59

This release improves the project structure by reorganizing example plugins into a dedicated directory, enhancing maintainability and clarity. It also fixes import path issues in example plugins to ensure tests run correctly.

New Features

  • Organize all example plugins into a new example-plugins/ directory, consolidating multiple plugins and updating references across config files, tests, documentation, and the codebase map for better project organization (37e9f0) (Eric Ma)

Bug Fixes

  • Fix import paths in example plugins after moving them to the new directory, correcting relative imports to prevent test failures (8093c9) (Eric Ma)

Deprecations

  • None

Version v0.1.58

This release focuses on improving the canvas rendering robustness, enhancing testing infrastructure, updating documentation for better clarity and contribution guidelines, and temporarily disabling the multiplayer UI.

New Features

  • Implemented defensive edge rendering in the canvas to handle asynchronous node rendering, preventing missing nodes from causing silent failures by deferring edge rendering until nodes are available. Added extensive unit and integration tests to verify this behavior. (5477ee) (Eric Ma)
  • Centralized and improved assertion helpers in tests to reduce duplication and increase maintainability. (dc883a, 0e1887, a86c98) (Eric Ma)
  • Updated PR description guidelines in AGENTS.md with a detailed template and best practices to improve contribution quality and clarity. (e41942) (Eric Ma)

Bug Fixes

  • Fixed canvas rendering issue where committee response nodes did not appear until page refresh due to race conditions between async node rendering and synchronous edge addition. (5477ee) (Eric Ma)
  • Corrected formatting issues in the v0.1.57 release notes and improved readability in AGENTS.md documentation. (b929a2) (Eric Ma)

Deprecations

  • Disabled the multiplayer UI temporarily. (3e380f) (Eric Ma)

Version v0.1.57

This release focuses on improving edge rendering accuracy by ensuring fresh node positions are used after asynchronous operations, introduces a full persona-based committee feature with UI and data layer support, and updates the continuous integration workflows and dependencies for better automation and stability.

New Features

  • Add persona support to the committee data layer, injecting personas as system prompts and displaying persona labels in opinion nodes (58935e) (Eric Ma)
  • Complete the persona-based committee UI with dynamic member lists, persona suggestions, add/remove functionality, and validation (7f1cc5) (Eric Ma)
  • Add comprehensive persona feature tests covering injection, UI behavior, and data validation (fffdbd) (Eric Ma)

Bug Fixes

  • Fix edge rendering bugs by switching to event-driven rendering and always using fresh node positions to prevent stale visuals after layout changes or async operations (09e2d2) (Eric Ma)
  • Correct synthesis edge rendering to use current node positions when Force Directed layout is applied during opinion generation (c46705) (Eric Ma)

Deprecations

  • None in this release.

Maintenance

  • Update auto-release workflow to streamline pre-commit usage and staging logic; update jaraco-context dependency and mark a package as editable for development (7adf70) (Eric Ma)
  • Bump GitHub Actions dependencies: actions/cache from v4 to v5 and actions/upload-pages-artifact from v3 to v4 for improved CI performance and security (5ee86f, 5e5de8) (dependabot[bot])