Skip to content

About

No description, website, or topics provided.

Resources

Stars

3 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Knowledge Work Plugins & Agent Extension

A Manifest V3 Chrome Extension designed to automate repetitive knowledge-work tasks. It integrates page text extraction, vector embeddings, dynamic Notion/HubSpot CRM synchronization, and multi-document synthesis inside the Chrome Side Panel.

Inspired by ideas from anthropics/skills and knowledge-work-plugins, this tool acts as a local digital assistant for researchers, operators, and sales teams.


🚀 Core Features & Implementation

1. Zero-Click Knowledge Synthesis (Chrome Sidepanel)

  • DOM Listener & Parser: Background scripts track active tabs. When a user lands on a research paper, article, or documentation page, the extension automatically extracts text and computes a structured AI summary in the sidepanel.
  • Vector Semantic Search: Utilizes a lightweight client-side vector database (Wasm-based) to store page highlights and perform semantic search across the user's current browsing session.

2. Autonomous CRM & Workspace Syncing

  • Dynamic API Sync: Exposes seamless integrations with Notion Database API and HubSpot CRM API.
  • Automatic Categorization: The background agent reads the page context, categorizes the lead or article, and automatically pushes a structured entry to the user's workspace without manual copy-pasting.

3. Document Processing Pipeline

  • Supports drag-and-drop PDF extraction, feeding text chunks to the DeepSeek/OpenAI API with sliding-window chunking to bypass token limits.

💻 Code Highlight: Notion Dynamic Page Syncer

Below is an abstract of the background syncer module that formats page metadata and saves it to Notion:

const syncToNotion = async (notionApiKey, databaseId, pageTitle, pageUrl, summary) => {
  const url = `https://api.notion.com/v1/pages`;
  const headers = {
    "Authorization": `Bearer ${notionApiKey}`,
    "Notion-Version": "2022-06-28",
    "Content-Type": "application/json"
  };

  const payload = {
    parent: { database_id: databaseId },
    properties: {
      Name: {
        title: [
          { text: { content: pageTitle } }
        ]
      },
      URL: {
        url: pageUrl
      },
      Category: {
        select: { name: "Knowledge Extraction" }
      }
    },
    children: [
      {
        object: "block",
        type: "paragraph",
        paragraph: {
          rich_text: [
            { text: { content: summary } }
          ]
        }
      }
    ]
  };

  try {
    const response = await fetch(url, {
      method: "POST",
      headers: headers,
      body: JSON.stringify(payload)
    });
    const data = await response.json();
    if (!response.ok) throw new Error(data.message || "Failed to sync");
    return { success: true, pageId: data.id };
  } catch (error) {
    console.error("Notion Sync Error:", error);
    return { success: false, error: error.message };
  }
};

🛠️ Technical Stack

  • Runtime: Vanilla JavaScript (ES6+), Tailwind CSS
  • APIs: Chrome Extension API (MV3), Notion API, HubSpot API
  • AI Client: OpenAI API (embeddings + completion)

About

No description, website, or topics provided.

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages