Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
G

gpt-crawler

> 编程语言
Open source

Crawl a site to generate knowledge files to create your own custom GPT from a URL

22.4K stars0 likes0 views
WebsiteGitHub

About

Crawl a site to generate knowledge files to create your own custom GPT from a URL

# GPT Crawler [Deutsch](https://www.readme-i18n.com/BuilderIO/gpt-crawler?lang=de) | [Español](https://www.readme-i18n.com/BuilderIO/gpt-crawler?lang=es) | [français](https://www.readme-i18n.com/BuilderIO/gpt-crawler?lang=fr) | [日本語](https://www.readme-i18n.com/BuilderIO/gpt-crawler?lang=ja) | [한국어](https://www.readme-i18n.com/BuilderIO/gpt-crawler?lang=ko) | [Português](https://www.readme-i18n.com/BuilderIO/gpt-crawler?lang=pt) | [Русский](https://www.readme-i18n.com/BuilderIO/gpt-crawler?lang=ru) | [中文](https://www.readme-i18n.com/BuilderIO/gpt-crawler?lang=zh) Crawl a site to generate knowledge files to create your own custom GPT from one or multiple URLs - [Example](#example) - [Get started](#get-started) - [Running locally](#running-locally) - [Clone the repository](#clone-the-repository) - [Install dependencies](#install-dependencies) - [Configure the crawler](#configure-the-crawler) - [Run your crawler](#run-your-crawler) - [Alternative methods](#alternative-methods) - [Running in a container with Docker](#running-in-a-container-with-docker) - [Running as an API](#running-as-an-api) - [Upload your data to OpenAI](#upload-your-data-to-openai) - [Create a custom GPT](#create-a-custom-gpt) - [Create a custom assistant](#create-a-custom-assistant) - [Contributing](#contributing) ## Example [Here is a custom GPT](https://chat.openai.com/g/g-kywiqipmR-builder-io-assistant) that I quickly made to help answer questions about how to use and integrate [Builder.io](https://www.builder.io) by simply providing the URL to the Builder docs. This project crawled the docs and generated the file that I uploaded as the basis for the custom GPT. [Try it out yourself](https://chat.openai.com/g/g-kywiqipmR-builder-io-assistant) by asking questions about how to integrate Builder.io into a site. > Note that you may need a paid ChatGPT plan to access this feature ## Get started ### Running locally #### Clone the repository Be sure you have Node.js >= 16 installed. ```sh git clone https://github.com/builderio/gpt-crawler ``` #### Install dependencies ```sh npm i ``` #### Configure the crawler Open [config.ts](config.ts) and edit the `url` and `selector` properties to match your needs. E.g. to crawl the Builder.io docs to make our custom GPT you can use: ```ts export const defaultConfig: Config = { url: "https://www.builder.io/c/docs/developers", match: "https://www.builder.io/c/docs/**", selector: `.docs-builder-container`, maxPagesToCrawl: 50, outputFileName: "output.json", }; ``` See [config.ts](src/config.ts) for all available options. Here is a sample of the common configuration options: ``` … ``` #### Run your crawler ```sh npm start ``` ### Alternative methods #### [Running in a container with Docker](./containerapp/README.md) To obtain the `output.json` with a containerized execution, go into the `containerapp` directory and modify the `config.ts` as shown above. The `output.json`file should be generated in the data folder. Note: the `outputFileName` property in the `config.ts` file in the `containerapp` directory is configured to work with the container. #### Running as an API To run the app as an API server you will need to do an `npm install` to install the dependencies. The server is written in Express JS. To run the server. `npm run start:server` to start the server. The server runs by default on port 3000. You can use the endpoint `/crawl` with the post request body of config json to run the crawler. The api docs are served on the endpoint `/api-docs` and are served using swagger. To modify the environment you can copy over the `.env.example` to `.env` and set your values like port, etc. to override the variables for the server. ### Upload your data to OpenAI The crawl will generate a file called `output.json` at the root of this project. Upload that [to OpenAI](https://platform.openai.com/docs/assistants/overview) to create your custom assistant or custom GPT. #### Create a custom GPT Use this option for UI access to your generated knowledge that you can easily share with others > Note: you may need a paid ChatGPT plan to create and use custom GPTs right now 1. Go to [https://chat.openai.com/](https://chat.openai.com/) 2. Click your name in the bottom left corner 3. Choose "My GPTs" in the menu 4. Choose "Create a GPT" 5. Choose "Configure" 6. Under "Knowledge" choose "Upload a file" and upload the file you generated 7. if you get an error about the file being too large, you can try to split it into multiple files and upload them separately using the option maxFileSize in the config.ts file or also use tokenization to reduce the size of the file with the option maxTokens in the config.ts file #### Create a custom assistant Use this option for API access to your generated knowledge that you can integrate into your product. 1. Go to [https://platform.openai.com/assistants](https://platform.openai.com/assistants) 2. Click "+ Create" 3. Choose "upload" and upload the file you generated ## Contributing Know how to make this project better? Send a PR!

GitHub Issues· 110 open

View all on GitHub
  • #392

    AI Agent 中文技术交流群

    Updated Jul 29, 2026
  • #168

    GPT Crawler cli Drop-in config

    Updated Jul 23, 2026
  • #418

    Unauthenticated Arbitrary File Write via outputFileName

    Updated Jul 3, 2026
  • #183

    Scrape HTML tag

    Updated Jun 21, 2026
  • #396

    Lording investment

    Updated Jun 9, 2026
  • #394

    Crawling pages not working with specific URL configuration?

    Updated May 31, 2026
  • #179

    `exclude` Pattern in `config.ts` Not Working as Expected

    Updated May 25, 2026
  • #393

    Solving JSON to MD Conversion Formatting Issues for Import into Other Knowledge Bases

    Updated May 14, 2026
  • #416

    bug: duplicate -m CLI flag, RESOURCE_EXCLUSTIONS typo, no URL deduplication, no crawl timing

    Updated Mar 10, 2026
  • #412

    Proposal: Add a 16-problem RAG failure checklist for debugging GPT-based knowledge from crawled sites

    Updated Feb 28, 2026

Highlights

  • •Get started
  • •Running locally
  • •Clone the repository
  • •Install dependencies
  • •Configure the crawler
  • •Run your crawler
  • •Alternative methods
  • •Running in a container with Docker
  • •Running as an API
  • •Upload your data to OpenAI

> Tags

TypeScriptai

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言