tech-stack — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited tech-stack (Rules) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
这是一个基于 Model Context Protocol (MCP) 构建的飞书 (Lark/Feishu) 智能代理服务。它采用 双模运行 (Dual-Mode) 架构,既是一个标准 MCP Server,也通过 FastAPI 暴露 HTTP API,完美支持 AI 助手 (Cursor/Claude) 调用和自动化工作流 (n8n) 集成。
asyncio 和 httpx 实现极高性能。flowchart TD
subgraph Clients ["客户端层"]
CURSOR["Cursor / Claude (IDE)"]
N8N["n8n / Workflows (HTTP)"]
end
subgraph Agent ["Lark Agent (Dual-Mode)"]
direction TB
MAIN["main.py (Process Manager)"]
subgraph MCP_PROC ["MCP 进程 (Main)"]
MCP_STDIO["FastMCP (Stdio Transport)"]
TOOLS["MCP Tools (Python Functions)"]
end
subgraph HTTP_PROC ["HTTP 进程 (Child)"]
FASTAPI["FastAPI (Port 8002)"]
WRAPPER["Call Tool Wrapper"]
end
MAIN --> MCP_PROC
MAIN --> HTTP_PROC
MCP_STDIO --> TOOLS
FASTAPI --> WRAPPER
WRAPPER --> TOOLS
end
subgraph Core ["能力核心层"]
PROVIDER["WorkItemProvider"]
META["MetadataManager (L1-L5 Cache)"]
AUTH["AuthManager (Token Cache)"]
end
TOOLS --> PROVIDER
PROVIDER --> META
PROVIDER --> AUTH
AUTH --> FEISHU_API["Feishu / Lark API"]| 工具名 | 功能描述 | 核心业务场景 |
|---|---|---|
list_projects | 列出所有可用项目及 Key | 初始探索、查找项目 ID |
create_task | 创建单条工作项 | 快速记录 Bug、新增需求 |
get_tasks | 全方位过滤查询工作项 | 查看我的任务、列出 P0 Bug |
get_task_detail | 获取工作项完整详情 | 查看任务描述、属性详情 |
update_task | 更新单个工作项字段 | 修改状态、指派负责人 |
batch_update_tasks | [NEW] 批量更新多个工作项 | 批量结单、批量改优先级 |
get_task_options | 查询字段可用选项 | 确认状态流转、查看优先级列表 |
uv tool install(推荐,最简单)# 1. 安装
uv tool install --from git+https://github.com/Wulnut/lark_agent lark-agent
# 2. 配置环境变量 (见下方配置说明)
# 3. 直接运行
lark-agent# 1. 克隆与进入目录
git clone https://github.com/Wulnut/lark_agent.git && cd lark_agent
# 2. 安装依赖并同步环境
uv sync
# 3. 运行服务
uv run main.py在项目根目录创建 .env 文件:
# --- 飞书项目配置 (必须) ---
FEISHU_PROJECT_USER_KEY=your_user_key
# 方案 A: 插件认证 (企业推荐,支持自动续期)
FEISHU_PROJECT_PLUGIN_ID=your_plugin_id
FEISHU_PROJECT_PLUGIN_SECRET=your_plugin_secret
# 方案 B: 静态 Token (个人测试,有效期 24h)
# FEISHU_PROJECT_USER_TOKEN=your_token
# --- 飞书机器人配置 (可选,用于 IM 通讯) ---
LARK_APP_ID=your_app_id
LARK_APP_SECRET=your_app_secret
# --- 系统配置 ---
LOG_LEVEL=INFO
FEISHU_PROJECT_KEY=默认项目KEY (可选)编辑 ~/.cursor/mcp.json:
{
"mcpServers": {
"lark-agent": {
"command": "lark-agent"
}
}
}服务启动后,HTTP 端口默认为 8002。通过 POST /call_tool 端点可以调用所有 MCP 工具。
基础信息:
http://localhost:8002/call_toolPOSTContent-Type: application/json常用请求示例:
#### 1. 列出项目 (list_projects)
{
"tool_name": "list_projects",
"parameters": {}
}#### 2. 创建任务 (create_task)
{
"tool_name": "create_task",
"parameters": {
"project": "SR6D2VA-7552-Lark",
"work_item_type": "Issue管理",
"name": "修复登录页面 Bug",
"priority": "P0",
"assignee": "张三"
}
}#### 3. 查询任务 (get_tasks)
{
"tool_name": "get_tasks",
"parameters": {
"project": "项目名称或Key",
"name_keyword": "登录",
"status": "进行中",
"page_size": 20
}
}#### 4. 获取详情 (get_task_detail)
{
"tool_name": "get_task_detail",
"parameters": {
"issue_id": 123456789
}
}#### 5. 更新任务 (update_task)
{
"tool_name": "update_task",
"parameters": {
"issue_id": 123456789,
"status": "已完成",
"priority": "P1",
"fields_json": "{\"SoC Vendor\": \"Amlogic\", \"DDR Size\": \"4GB\"}"
}
}#### 6. 批量更新 (batch_update_tasks)
{
"tool_name": "batch_update_tasks",
"parameters": {
"issue_ids": [10001, 10002],
"status": "已完成",
"priority": "P1"
}
}#### 7. 查询字段选项 (get_task_options)
{
"tool_name": "get_task_options",
"parameters": {
"field_name": "status",
"project": "项目名称"
}
}本项目严格遵循 TDD (测试驱动开发)。
respx 拦截 HTTP 请求,无需真实 Token 即可运行。uv run pytest (当前 135+ 测试用例全部通过)。await。MetadataManager 解析字段别名。src/
├── core/ # 核心逻辑 (Auth, Config, Cache, Client)
├── providers/ # 业务 Provider (Project, Meta Managers)
├── schemas/ # Pydantic 数据模型 (API 交互标准)
├── http_server.py # HTTP 包装层 (FastAPI)
├── mcp_server.py # MCP 接口定义与工具注册
main.py # 双模启动入口 & 进程管理MIT License. 版权所有 © 2026 Wulnut.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.