用Cursor IDE配合Claude 3.7,我在3天内搭建了一个可以处理邮件、总结文档、自动回复的个人AI助手。附完整代码和部署教程。

用Cursor IDE配合Claude 3.7,我在3天内搭建了一个可以处理邮件、总结文档、自动回复的个人AI助手。
今天分享完整流程,你也可以复制。
1. 最终效果
我的AI助手可以:
2. 技术栈
-
-
AI模型:Claude 3.7 Sonnet API
-
-
-
3. 第一步:环境准备
3.1 安装Cursor
-
-
-
3.2 获取Claude API Key
-
-
-
-
4. 第二步:用Cursor写核心代码
4.1 创建项目结构
在Cursor中打开终端,输入:
mkdir ai-assistant
cd ai-assistant
python -m venv venv
source venv/bin/activate
pip install anthropic fastapi uvicorn python-dotenv
4.2 核心AI模块
在Cursor中,按 Cmd+K(Mac)或 Ctrl+K(Windows),输入:
帮我写一个Python模块,使用Claude 3.7 API,实现:
1. 邮件内容分析和分类
2. 自动生成回复草稿
3. 文档摘要生成
Cursor会自动生成代码,核心代码如下:
import anthropic
from typing import Optional
client = anthropic.Anthropic(api_key="your-api-key")
def analyze_email(email_content: str) -> dict:
"""分析邮件并生成回复草稿"""
message = client.messages.create(
model="claude-3-7-sonnet-20250220",
max_tokens=1024,
messages=[
{
"role": "user",
"content": f"""分析以下邮件,返回JSON格式:
{{
"category": "工作/个人/营销/其他",
"priority": "高/中/低",
"summary": "一句话摘要",
"reply_draft": "建议回复内容"
}}
邮件内容:
{email_content}"""
}
]
)
return message.content[0].text
def summarize_document(doc_content: str, max_length: int = 500) -> str:
"""生成文档摘要"""
message = client.messages.create(
model="claude-3-7-sonnet-20250220",
max_tokens=max_length,
messages=[
{
"role": "user",
"content": f"请用{max_length}字以内总结以下文档的核心内容:\n\n{doc_content}"
}
]
)
return message.content[0].text
5. 第三步:搭建API服务
from fastapi import FastAPI, HTTPException
from pydantic import BaseModel
app = FastAPI(title="AI助手API")
class EmailRequest(BaseModel):
content: str
class DocumentRequest(BaseModel):
content: str
max_length: Optional[int] = 500
@app.post("/analyze-email")
async def analyze_email_endpoint(request: EmailRequest):
try:
result = analyze_email(request.content)
return {"success": True, "data": result}
except Exception as e:
raise HTTPException(status_code=500, detail=str(e))
@app.post("/summarize")
async def summarize_endpoint(request: DocumentRequest):
try:
result = summarize_document(request.content, request.max_length)
return {"success": True, "summary": result}
except Exception as e:
raise HTTPException(status_code=500, detail=str(e))
if __name__ == "__main__":
import uvicorn
uvicorn.run(app, host="0.0.0.0", port=8000)
6. 第四步:部署到Railway
-
-
-
-
免费额度:每月 $5,够个人使用。
7. 第五步:接入Gmail
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
def get_unread_emails(credentials_file: str, max_results: int = 10):
"""获取未读邮件"""
creds = Credentials.from_authorized_user_file(credentials_file)
service = build('gmail', 'v1', credentials=creds)
results = service.users().messages().list(
userId='me',
q='is:unread',
maxResults=max_results
).execute()
messages = results.get('messages', [])
emails = []
for msg in messages:
msg_data = service.users().messages().get(
userId='me', id=msg['id']
).execute()
emails.append(msg_data)
return emails
8. 实际使用效果
| 功能 |
处理时间 |
准确率 |
| 邮件分类 |
2秒 |
92% |
| 回复草稿 |
5秒 |
85%满意度 |
| 文档摘要 |
8秒 |
90% |
| 每日简报 |
30秒 |
– |
9. 成本分析
| 项目 |
月费用 |
| Claude API |
约$15 |
| Railway部署 |
$0(免费额度) |
| Gmail API |
$0(免费) |
| 合计 |
约$15/月 |
10. Cursor使用技巧
-
-
-
-
11. 总结
用Cursor + Claude 3.7搭建AI助手,核心优势:
-
-
-
-
建议从最简单的功能开始,比如先做邮件摘要,跑通后再加其他功能。
代码已开源:GitHub搜索「ai-personal-assistant-cursor」