智能文档编辑器

ClauseCraft是一款基于AI的智能文档编辑器,支持通过对话命令和行级引用进行文档编辑,适用于法律、合同等专业文档处理。

  • by PranavMishra17
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 PranavMishra17/ClauseCraft

使用说明

ClauseCraft-代理文档编辑器-

由人工智能驱动的代理文档编辑器,通过对话命令和基于行的引用实现智能文档编辑。

文档

特性

  • 多格式支持:上传和解析DOCX、PDF和Markdown文件
  • AI驱动的编辑:使用Google Gemini Flash搜索、阅读和编辑文档
  • 基于行的引用:对于第3页的语法类型,请使用@line10、@l5-10或@p3引用特定行
  • 文档锁定:锁定线条以防止AI修改
  • 占位符检测:自动突出显示{{PLACEHOLDERS}}、[CONTANTS]和_____图案
  • 聊天记录:与localStorage的持久聊天记录(目前将切换到Supabase)
  • 实时编辑:当AI进行编辑时,立即看到文档更改

建筑

采用模块化、简洁的架构构建:

/src
  /app
    page.tsx              # Main UI with state management
    layout.tsx
    /api
      /parse              # Document parsing endpoint
      /chat               # Gemini chat endpoint
  /lib
    /parsers              # DOCX, PDF, Markdown parsers
    /citations            # Citation parsing and resolution
    /gemini               # Gemini API client and tools
    /storage              # LocalStorage wrapper
  /components
    /document             # Document viewer and line components
    /chat                 # Chat interface
    /sidebar              # Chat history

技术栈

  • 框架:Next.js 14与TypeScript
  • 人工智能:带函数调用的Google Gemini 1.5 Flash
  • 解析:猛犸象(DOCX),pdf解析(pdf),标记(Markdown)
  • 出口:docx、jsPDF
  • 样式:顺风CSS
  • 图标:Lucide React

入门指南

先决条件

  • Node.js 18+
  • Google Gemini API密钥

安装

  1. 克隆存储库:
git clone https://github.com/yourusername/clausecraft.git
cd clausecraft
  1. 安装依赖项:
npm install
  1. 设置环境变量:
cp .env.example .env

编辑 .env 并添加您的Gemini API密钥:

GEMINI_API_KEY=your_api_key_here

从以下位置获取API密钥:https://makersuite.google.com/app/apikey

  1. 运行开发服务器:
npm run dev
  1. 打开http://localhost:3000在浏览器中

用法

上传文档

点击“上传文档”并选择DOCX、PDF或Markdown文件。

与您的文档聊天

使用自然语言与文档交互:

  • “搜索所有提及‘付款条件’的内容”
  • “阅读第10-20行”
  • 将第15行替换为“此处有新内容”
  • “第25行说什么?”

使用引文

参考文件的具体部分:

  • @line10 或 @l10 -参考线10
  • @l5-10 -参考线5至10
  • @page3 或 @p3 -参考第3页的所有行

示例:“将@line10替换为'更新文本'”

锁线

单击任何行旁边的锁图标以防止AI修改。

出口

点击“导出”按钮,下载DOCX、PDF或Markdown格式的编辑文档。

AI工具

AI助手可以使用三种工具:

  1. doc_search(查询) -在文档中搜索关键字
  2. doc_read(行) -读取特定行号
  3. doc_edit(操作、行、newText) -编辑行(替换、插入、删除)

所有工具都尊重线锁,并提供详细的错误处理。

发展

项目结构

  • /src/lib/parsers -文档解析逻辑
  • /src/lib/citations -引文系统
  • /src/lib/gemini -AI集成
  • /src/lib/storage -数据持久性
  • /src/components -React组件
  • /src/app/api -API路线

部署

维塞尔

  1. 推送到GitHub
  2. Vercel的进口项目
  3. 添加 GEMINI_API_KEY 环境变量
  4. 部署

局限性

  • PDF解析可能因PDF结构而异
  • 未提取图像内容
  • 复杂的格式可以简化
  • 最大文件大小:10MB

许可证

MIT许可证-请参阅许可证文件

联系我