‹ Reports
The Dispatch

OSS Report: khoj-ai/khoj


Khoj Development Surges with New Features and Enhancements

Khoj, an open-source personal AI assistant, has seen a significant uptick in development activity, focusing on feature enhancements and user experience improvements. The project aims to provide users with a versatile AI tool that integrates with various platforms for seamless information access and interaction.

Recent Activity

Recent issues and pull requests indicate a concerted effort to enhance Khoj's capabilities and address user feedback. Key themes include improving offline chat models (#892), adding vision support (#889), and refining user interaction patterns (#875). These developments suggest a trajectory towards more robust and feature-rich AI interactions.

Development Team and Recent Activity

  1. sabaimran

    • Re-added authentication to /chat endpoint.
    • Removed hashes from note titles.
    • Implemented unlimited chats for free-tier users.
    • Collaborated on automation system improvements.
  2. Debanjum

    • Enhanced search model config display.
    • Fixed Emacs indexing issues.
    • Improved document search performance.
    • Worked on new UX and pricing strategies.
  3. Shantanu Sakpal

    • Added chat history cycling in Obsidian interface.
  4. Srikary12

    • Supported exclusion file filters in search queries.
  5. Aam-at

    • Improved admin displays and fixed Emacs-related bugs.
  6. MythicalCow

    • No recent commits; previously contributed to voice chat functionality.

The team is actively collaborating, particularly sabaimran and Debanjum, indicating a cohesive effort towards shared goals. Their focus on both backend improvements and frontend user experience suggests a balanced approach to development.

Of Note

Quantified Reports

Quantify commits



Quantified Commit Activity Over 30 Days

Developer Avatar Branches PRs Commits Files Changes
Debanjum 5 5/6/0 89 141 29834
sabaimran 3 8/9/0 104 122 25754
srikary12 1 0/1/0 1 3 106
Shantanu Sakpal 1 0/1/0 1 2 77
Alexander Matyasko 1 4/3/1 4 6 40
Raghav Tirumale (MythicalCow) 0 3/3/0 0 0 0

PRs: created by that dev and opened/merged/closed-unmerged during the period

Quantify Issues



Recent GitHub Issues Activity

Timespan Opened Closed Comments Labeled Milestones
7 Days 1 1 1 0 1
30 Days 6 3 18 0 1
90 Days 58 38 190 4 1
1 Year 166 147 508 56 1
All Time 416 355 - - -

Like all software activity quantification, these numbers are imperfect but sometimes useful. Comments, Labels, and Milestones refer to those issues opened in the timespan in question.

Detailed Reports

Report On: Fetch issues



Recent Activity Analysis

The Khoj project has recently seen a surge in activity, with 61 open issues currently reported. Notably, there are several recurring themes around feature requests, bug fixes, and user experience improvements. Issues related to Docker configurations, integration with various platforms (like Obsidian and Emacs), and error handling during installations are prevalent. A significant number of users have raised concerns about the software's performance, particularly regarding indexing and chat functionalities.

Several issues also highlight a lack of clarity in documentation, especially concerning setup instructions for different environments and configurations. This suggests that while the community is engaged and actively reporting problems, there may be underlying usability challenges that need addressing.

Issue Details

Most Recently Created Issues

  1. Issue #884: [IDEA]

    • Created: 13 days ago
    • Priority: Upgrade
    • Status: Open
    • Description: Feature request for sending multiple notes directly into Obsidian to enhance productivity.
  2. Issue #882: Pre-loaded configurations

    • Created: 14 days ago
    • Priority: Upgrade
    • Status: Open
    • Description: Suggestion to simplify Docker setup by offering pre-loaded choices for LLMs and embedding engines.
  3. Issue #881: [FIX] Docker version: Application error

    • Created: 14 days ago
    • Priority: Fix
    • Status: Open
    • Description: Bug report regarding a client-side exception when accessing the application via Docker.
  4. Issue #873: ERROR: Cannot install khoj due to conflicting dependencies

    • Created: 19 days ago
    • Priority: Fix
    • Status: Open
    • Description: Installation issue on Mac due to conflicting package versions.
  5. Issue #758: [IDEA] Live Scrolling with Scrolling Buffer

    • Created: 86 days ago
    • Priority: Upgrade
    • Status: Open
    • Description: Request for implementing a scrolling buffer feature to enhance user experience during live responses.

Most Recently Updated Issues

  1. Issue #884: [IDEA]

    • Updated: 8 days ago
  2. Issue #873: ERROR: Cannot install khoj due to conflicting dependencies

    • Updated: 4 days ago
  3. Issue #881: [FIX] Docker version: Application error

    • Updated: 5 days ago
  4. Issue #882: Pre-loaded configurations

    • No updates since creation.
  5. Issue #758: [IDEA] Live Scrolling with Scrolling Buffer

    • Updated discussions ongoing.

Themes and Commonalities

  • Integration Challenges: Many issues revolve around integrating Khoj with different platforms (e.g., Docker, Obsidian, Emacs), indicating that users face difficulties in setting up or using the software across various environments.

  • Performance Issues: Users frequently report performance-related problems, especially concerning chat response times and indexing speed, suggesting that optimization may be necessary.

  • Documentation Gaps: Several issues highlight confusion or lack of clarity in the documentation, particularly regarding installation steps and configuration settings.

  • Feature Requests: There is a strong demand for new features such as enhanced scrolling capabilities in chat interfaces and better configuration options for LLMs.

Overall, while the Khoj project is progressing well with active community engagement, addressing these recurring issues could significantly enhance user satisfaction and usability.

Report On: Fetch pull requests



Report on Pull Requests

Overview

The analysis of the pull requests (PRs) from the Khoj project reveals a dynamic and active development environment, with a focus on enhancing user experience, integrating new features, and addressing bugs. The current state includes several open PRs aimed at improving offline chat capabilities, introducing vision support, and refining the user interface.

Summary of Pull Requests

Open Pull Requests

  • PR #892: Upgrade offline chat model support. Default to Llama 3.1
    Created: 0 days ago
    This PR proposes upgrading the default offline chat model to Llama 3.1, enhancing JSON response handling, and improving UI layout by breaking long links. The changes aim to improve the robustness of chat interactions.

  • PR #889: New Feature: Vision Support for Khoj
    Created: 5 days ago
    This PR introduces a new UI for image uploads, enabling vision-based responses using GPT-4o. It includes AWS S3 integration for persistent image context and database modifications to support vision-enabled models.

  • PR #875: Use Turnstyle UX pattern to group Khoj chats into conversation turns
    Created: 18 days ago
    This draft PR aims to implement a new UX pattern that groups user queries and AI responses for clearer interaction demarcation. It is currently in an experimental phase.

Closed Pull Requests

  • PR #888: Add user conversation config to admin console
    Closed: 2 days ago
    This PR was closed without merging as the issue it addressed was resolved in another PR (#886). It highlights the collaborative nature of the development process.

  • PR #887: Improve search model config display for admin
    Closed: 3 days ago
    This merged PR enhances the admin console's display of search model configurations, making it more informative by including model names alongside their IDs.

  • PR #886: Enable free tier users to have unlimited chats with the default chat model
    Closed: 3 days ago
    This significant update allows free-tier users unlimited access to the default chat model while implementing rate limits for subscribed users.

Analysis of Pull Requests

The recent pull requests reflect several key themes in the ongoing development of Khoj:

Feature Enhancements

A notable trend is the introduction of new features aimed at enriching user interaction with the AI. For instance, PR #889 focuses on adding vision capabilities that allow users to upload images and receive contextually relevant responses from the AI. This aligns with Khoj's goal of providing a multi-modal interaction experience, combining text and visual inputs.

Similarly, PR #892 enhances offline chat functionality by upgrading the underlying model and improving response handling. These enhancements are critical as they directly impact user satisfaction and engagement with the platform.

User Experience Improvements

Several PRs are dedicated to refining the user interface and overall experience. The implementation of the Turnstyle UX pattern in PR #875 aims to create a more intuitive interaction flow between users and AI agents. Such UX improvements are essential for maintaining user interest and ensuring that interactions feel natural and engaging.

Moreover, closed PRs like #887 demonstrate a commitment to making administrative tools more user-friendly, which is crucial for maintaining an efficient development environment.

Collaboration and Community Engagement

The collaborative nature of the development process is evident through discussions in various PRs. For example, in PR #889, contributors engage in detailed discussions about implementation specifics and potential improvements based on peer feedback. This level of engagement is vital for fostering a healthy community around open-source projects like Khoj.

Additionally, instances where PRs are closed due to redundancy (e.g., PR #888) highlight an organized approach to managing contributions, ensuring that efforts are not duplicated unnecessarily.

Bug Fixes and Maintenance

The closed pull requests also indicate ongoing maintenance efforts within the project. Fixes related to search model configurations (PR #887) and adjustments to user conversation settings (PR #886) show that developers are actively addressing issues that could hinder user experience or system performance.

Conclusion

In summary, the current set of pull requests for Khoj illustrates a robust development cycle characterized by feature enhancements, user experience improvements, active collaboration among contributors, and diligent maintenance efforts. As Khoj continues to evolve, these elements will be crucial in ensuring its success as a versatile personal AI assistant platform. The focus on integrating advanced functionalities while maintaining usability will likely keep it competitive in an increasingly crowded market for AI-driven applications.

Report On: Fetch commits



Repo Commits Analysis

Development Team and Recent Activity

Team Members:

  1. sabaimran

    • Recent Activity:
    • Re-added authenticated decorator to /chat endpoint.
    • Removed hashes from titles in relevant notes.
    • Implemented unlimited chats for free tier users with various adjustments to chat model settings.
    • Collaborated with Debanjum on multiple features and bug fixes, including the automation system and chat model configurations.
    • Active in bug fixes related to automations and Emacs integration.
  2. Debanjum

    • Recent Activity:
    • Improved search model config display for admins.
    • Fixed indexing issues related to Emacs.
    • Enhanced document search performance for vague queries.
    • Implemented various features related to chat models, including cross-encoder model configuration and user feedback mechanisms.
    • Collaborated with sabaimran on several features, including the new UX and pricing strategy updates.
  3. Shantanu Sakpal

    • Recent Activity:
    • Added cycling through chat history in the Obsidian interface, co-authored with Debanjum.
  4. Srikary12

    • Recent Activity:
    • Supported exclusion file filters in user search queries, co-authored with Debanjum.
  5. Aam-at

    • Recent Activity:
    • Contributed to improving admin displays and fixed bugs related to Emacs.
  6. MythicalCow

    • Recent Activity:
    • No recent commits; previously contributed to voice chat functionality in the Obsidian plugin.

Summary of Recent Activities:

  • The team has been actively working on enhancing the Khoj application, focusing on user experience improvements, bug fixes, and feature additions across various platforms (Web, Desktop, Emacs, Obsidian).
  • Notable features include unlimited chats for free-tier users, improved admin interfaces for managing search models, and enhancements to the chat experience.
  • There is a significant collaboration between team members, particularly between sabaimran and Debanjum, indicating a cohesive development effort towards shared goals.
  • The recent activities reflect a pattern of iterative improvements aimed at refining existing functionalities while also introducing new features that enhance user engagement and accessibility.

Patterns and Conclusions:

  • The development team is highly active, with a significant number of commits indicating ongoing enhancements and responsiveness to user needs.
  • Collaboration is a key theme among team members, which fosters a productive environment leading to rapid feature development and bug resolution.
  • The focus on both backend improvements (like API enhancements) and frontend user experience (like chat history navigation) suggests a balanced approach to software development that prioritizes both functionality and usability.
  • The high volume of changes across multiple branches indicates an agile development process where features are continuously integrated and tested before release.

Overall, the Khoj project demonstrates robust activity from its development team, reflecting a commitment to improving the application through collaborative efforts and community engagement.