# NvwaPluse **Repository Path**: pojo123/nvwa-pluse ## Basic Information - **Project Name**: NvwaPluse - **Description**: nvwa问题处理 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-22 - **Last Updated**: 2026-06-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # nvwaPlus `nvwaPlus` 是一个从 Jira 推送入口触发的诊断服务骨架。 第一版目标: - 接收 Jira Webhook 或手动 Jira Key 提交。 - 固定推送到一个飞书群。 - 主动发送飞书卡片,并在分析过程中持续更新同一张卡片。 - 使用清晰模块边界,方便后续替换 Agent、任务存储和接收人路由。 ## 快速启动 ```bash python -m venv .venv source .venv/bin/activate pip install -r requirements.txt cp .env.example .env uvicorn app.main:app --reload --port 8010 ``` 健康检查: ```bash curl http://localhost:8010/health ``` ## 接口 ```bash curl -X POST http://localhost:8010/api/jira/webhook \ -H 'Content-Type: application/json' \ -d '{"jira_key":"ONLINE-123456","title":"测试问题"}' ``` ## 飞书配置 第一版固定推送到一个群,需要配置: ```env FEISHU_APP_ID= FEISHU_APP_SECRET= FEISHU_TARGET_OPEN_ID= FEISHU_TARGET_CHAT_ID= ``` `FEISHU_TARGET_OPEN_ID` 配置后会优先推给固定用户;未配置时使用 `FEISHU_TARGET_CHAT_ID` 推到固定群。后续可以扩展为按 Jira 经办人解析 `open_id` 或按业务域路由到不同群。 如果要像 Airbag 一样监听用户在普通聊天框里发来的消息,需要额外安装飞书长连接 SDK: ```bash .venv/bin/python -m pip install lark-oapi==1.6.8 ``` 并在开放平台订阅 `im.message.receive_v1`,同时开通私聊或群聊消息读取权限。 本地直接监听并打印普通聊天框消息: ```bash .venv/bin/python -u scripts/listen_feishu_messages.py ``` ## 当前边界 - Agent 适配器代码位置是 `app/agent/client.py`;未开启 Codex 时只返回“Agent 功能未开启”。 - 任务状态目前保存在内存里,服务重启会丢失。 - 飞书卡片使用应用 OpenAPI 主动发送和更新,不使用 webhook 机器人。 ## Codex Workspace 第一版已经预留 Codex SDK 适配器: - 每个 Jira 任务会创建独立 workspace。 - workspace 内会写入 `AGENTS.md` 和 `jira-context.json`。 - `CODEX_ENABLED=true` 后会走 `app/agent/codex_adapter.py`。 配置: ```env CODEX_ENABLED=true CODEX_WORKSPACE_ROOT=data/workspaces CODEX_MODEL= CODEX_SANDBOX=workspace_write ``` Codex SDK 的 workspace/cwd 参数在 `app/agent/codex_adapter.py` 中隔离处理;如果本地 SDK 版本字段名变化,只需要改这个适配器。