[Cursor-Guide]文件處理工作

作者:Cursor
平台:本地文件
日期:2025-05-31

學習如何透過提示、外部來源和內部上下文,在Cursor中有效利用文件。提升API理解並掌握當前最佳實踐。

文件[Cursor-Guide]API最佳實踐知識截止提示外部來源內部上下文

[Cursor-Guide]文件處理工作

原始連結: 原始連結

如何在Cursor中透過提示、外部來源和內部上下文有效利用文件

文件的重要性

文件提供最新且準確的上下文。沒有它,模型會使用過時或不完整的訓練資料。文件幫助模型理解以下內容:

  • 當前API和參數
  • 最佳實踐
  • 組織慣例
  • 領域術語

以及其他更多內容。繼續閱讀以了解如何在Cursor中直接使用文件,無需切換上下文。

模型知識截止

大型語言模型的訓練資料截止於特定時間點,稱為「知識截止」。這意味著:

  • 最近的函式庫更新可能未被反映
  • 新框架或工具可能未知
  • 截止日期後的API變更會被遺漏
  • 最佳實踐可能自訓練以來已演變

例如,若模型的知識截止為2024年初,它將不知道2024年底發布的功能,即使是熱門框架也是如此。

我該使用哪種工具?

使用此決策樹幫助決定使用哪種工具

workwithdocumentation-1

心智模型

工具心智模型
@Docs如同瀏覽和閱讀官方文件
@Web如同在網路上搜尋解決方案
MCP如同存取你的內部文件

公開文件

外部文件涵蓋公開可用的資訊,模型可能對此有有限或過時的知識。Cursor提供兩種主要方式存取此資訊。

使用@Docs

@Docs將Cursor連接到熱門工具和框架的官方文件。當你需要以下內容的最新、權威資訊時使用它:

  • API參考:函式簽名、參數、回傳類型
  • 入門指南:設定、配置、基本用法
  • 最佳實踐:來源推薦的模式
  • 框架特定除錯:官方疑難排解指南

workwithdocumentation-2

使用@Web

@Web在即時網路上搜尋最新資訊、部落格文章和社群討論。當你需要以下內容時使用它:

  • 最新教學:社群產生的內容和範例
  • 比較:比較不同方法的文章
  • 最新更新:非常近期的更新或公告
  • 多元觀點:問題的不同解決方法

workwithdocumentation-3

內部文件

內部文件包括特定於你組織的資訊,AI模型在訓練期間從未接觸過。這可能是:

  • 內部API:自訂服務和微服務
  • 公司標準:編碼慣例、架構模式
  • 專有系統:自訂工具、資料庫、工作流程
  • 領域知識:業務邏輯、合規要求

透過MCP存取內部文件

模型上下文協議(Model Context Protocol, MCP)提供標準化方式將你的私有文件和系統引入Cursor。MCP作為Cursor與你內部資源之間的薄層。

MCP的重要性:

  • 模型無法猜測你的內部慣例
  • 自訂服務的API文件未公開提供
  • 業務邏輯和領域知識是你組織獨有的
  • 合規和安全要求因公司而異

常見MCP整合

整合存取範例
Confluence公司Confluence空間架構文件、內部服務的API規格、編碼標準和指南、流程文件
Google Drive共享文件和資料夾規格文件、會議記錄和決策記錄、設計文件和需求、團隊知識庫
Notion工作區資料庫和頁面專案文件、團隊維基、知識庫、產品需求、技術規格
自訂內部系統和資料庫專有API、舊版文件系統、自訂知識庫、專業工具和工作流程

自訂解決方案

對於獨特需求,你可以建立自訂MCP伺服器,以:

  • 爬取內部網站或入口
  • 連接到專有資料庫
  • 存取自訂文件系統
  • 從內部維基或知識庫提取

若你建立自訂MCP伺服器,還可以暴露工具供Cursor更新文件

爬取內部文件的自訂MCP伺服器範例:

import { McpServer, ResourceTemplate } from "@modelcontextprotocol/sdk/server/mcp.js";

import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";

import { z } from "zod";

import TurndownService from "turndown";

// Create an MCP server for scraping internal docs

const server = new McpServer({

  name: "internal-docs",

  version: "1.0.0"

});

const turndownService = new TurndownService();

// Add tool to scrape internal documentation

server.tool("get_doc",

  { url: z.string() },

  async ({ url }) => {

    try {

      const response = await fetch(url);

      const html = await response.text();

      // Convert HTML to markdown

      const markdown = turndownService.turndown(html);

      return {

        content: [{ type: "text", text: markdown }]

      };

    } catch (error) {

      return {

        content: [{ type: "text", text: `Error scraping ${url}: ${error.message}` }]

      };

    }

  }

);

// Start receiving messages on stdin and sending messages on stdout

const transport = new StdioServerTransport();

await server.connect(transport);

保持文件更新

文件很快就會過時。Cursor可以幫助你基於實際代碼和開發對話生成和更新文件,以保持其最新和有用。

從現有代碼

使用Cursor直接從代碼庫建立文件:

  • API文件
為此Express路由器生成API文件,包括所有端點、參數和回應格式

workwithdocumentation-4

  • JSDoc註解
為此類別添加全面的JSDoc註解,記錄所有方法及其參數

workwithdocumentation-5

  • README創建
為此專案創建README,包括設定指令、使用範例和API概述

workwithdocumentation-6

  • 架構
建立文件說明我們選擇此資料庫設計的原因,包括我們討論過的權衡取捨

workwithdocumentation-8

  • 除錯
根據我們剛修復的這個錯誤撰寫疑難排解指南,包括症狀和解決步驟

workwithdocumentation-9

重點摘要

  • 將文件作為上下文能讓 Cursor 更準確且即時
  • 使用 @Docs 查閱官方文件,@Web 獲取社群知識
  • MCP 能彌合 Cursor 與您內部系統之間的差距
  • 從程式碼和對話生成文件以保持知識最新
  • 結合外部和內部文件來源以獲取全面理解

系列文章索引