🧠 内容创建助手
一个由人工智能驱动的自主代理:
- 研究 一个话题
- 写入 一篇高质量的博客文章
- 商店 Neon PostgreSQL数据库中的内容
- 和 标记完成 使用自定义
done工具
使用 @inngest/agent工具包, 谷歌双子座,以及 Smithery的MCP 通过AI实现无服务器SQL控制。
______________________________________________________________________
✨ 特性
| 特性 | 描述 |
|---|---|
| 代理工作流 | 五步人工智能工作流程(研究→ 创建数据库表→ 生成内容→ 保存到数据库→ 标记为已完成)。 |
| 启用MCP的SQL访问 | 使用Smithery的MCP+Neon安全执行SQL。无需DB客户端! |
| LLM发电 | 使用Gemini 1.5 Flash编写SEO友好、引人入胜的文章。 |
| 自定义工具集成 | done 该工具存储完成元数据并发出任务成功的信号。 |
| 网络和路由 | 当代理将内容标记为已完成时,任务会自动结束。 |
| 本地HTTP服务器 | 在上启动ESM就绪服务器 localhost:3010. |
______________________________________________________________________
🔄 代理流程(文本流程图)
START
↓
Receive Prompt (e.g., "Write a blog on urban gardening")
↓
[contentCreatorAgent Activated]
↓
1️⃣ Research Topic
↓
2️⃣ Check/Create Database Tables (via Neon MCP)
↓
3️⃣ Generate Blog Content (via Gemini 1.5 Flash)
↓
4️⃣ Store Content + Metadata in DB
↓
5️⃣ Call `done` Tool (store summary, mark complete)
↓
[Router Checks]
└── If completed = true → Stop
└── Else → Continue
↓
END______________________________________________________________________
🚀 入门指南
1.克隆和安装
git clone https://github.com/your-org/content-creation-assistant.git
cd content-creation-assistant
npm install2.配置环境变量
# .env
SMITHERY_API_KEY=your-smithery-key
GEMINI_API_KEY=your-google-gemini-key
# or: GOOGLE_GENAI_API_KEY=...3.本地运行
npx tsx index.ts输出:
🚀 Content Creation Assistant running on http://localhost:3010
🗄️ Connected to Neon PostgreSQL via MCP4.内置开发服务器(可选)
npx inngest-cli@latest dev -u http://localhost:3010/api/inngest5.尝试提示
发送POST请求:
POST http://localhost:3010
{
"prompt": "Create a 1000-word blog post on sustainable urban gardening with SEO tips."
}______________________________________________________________________
🗄️ 数据库模式
CREATE TABLE IF NOT EXISTS content_pieces (
id SERIAL PRIMARY KEY,
title VARCHAR(255) NOT NULL,
content TEXT NOT NULL,
topic VARCHAR(255),
content_type VARCHAR(100) DEFAULT 'blog_post',
word_count INTEGER,
keywords TEXT[],
research_summary TEXT,
created_at TIMESTAMP DEFAULT NOW()
);
CREATE TABLE IF NOT EXISTS research_sources (
id SERIAL PRIMARY KEY,
content_id INTEGER REFERENCES content_pieces(id),
source_title VARCHAR(255),
source_summary TEXT,
relevance_score INTEGER DEFAULT 5,
created_at TIMESTAMP DEFAULT NOW()
);______________________________________________________________________
📁 文件结构
.
├── index.ts # Main logic (agent, tool, server)
├── package.json
├── tsconfig.json
└── README.md______________________________________________________________________
🛠 定制选项
| 目标 | 如何实现 |
|---|---|
| 更改模型或LLM参数 | 编辑 model: gemini({ ... }) 把…的车堵住 index.ts. |
| 添加更多代理/工具 | 定义新的 createAgent 或 createTool 功能和接线 createNetwork. |
| 添加更多数据库字段 | 修改SQL模式并更新提示/系统说明。 |
| 部署到云端 | 作为ESM服务器部署到Vercel、Fly.io或Cloudflare。确保 .env 设置正确。 |
______________________________________________________________________
.........................................................................................
.........................................................................................
.........................................................................................
.........................................................................................
.........................................................................................
.........................................................................................
.........................................................................................
📜 许可证
麻省理工学院©2025 Hrushikesh Kadudula
