[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-80464":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":8,"htmlUrl":8,"language":9,"languages":8,"totalLinesOfCode":8,"stars":10,"forks":11,"watchers":12,"openIssues":11,"contributorsCount":13,"subscribersCount":13,"size":13,"stars1d":13,"stars7d":13,"stars30d":13,"stars90d":13,"forks30d":13,"starsTrendScore":13,"compositeScore":14,"rankGlobal":8,"rankLanguage":8,"license":8,"archived":15,"fork":15,"defaultBranch":16,"hasWiki":17,"hasPages":15,"topics":18,"createdAt":8,"pushedAt":8,"updatedAt":19,"readmeContent":20,"aiSummary":21,"trendingCount":13,"starSnapshotCount":13,"syncStatus":22,"lastSyncTime":23,"discoverSource":24},80464,"TAgent","pengmoubuaixuexi\u002FTAgent","pengmoubuaixuexi",null,"Java",72,1,8,0,0.9,false,"main",true,[],"2026-06-12 02:04:02","# TAgent\n\nTAgent 是一个基于 Spring Boot + DDD 分层的 AI 智能体学习平台，核心目标是把「模型调用、Agent 编排、MCP 工具、RAG 检索、记忆系统、观测与成本统计」串成一套可以本地运行、可以继续扩展的工程样例。\n\n本仓库是重新整理后的公开版本：已移除日志、临时报告、历史对话、个人文档、备份 SQL、浏览器状态、私有凭据和真实密钥。所有敏感配置都使用环境变量占位符。\n\n## 项目能力\n\n- Auto Agent：自动分析任务、规划步骤、调用工具、质量检查和总结输出。\n- Flow Agent：按固定步骤拆解任务，支持 DAG 并行执行。\n- RAG 检索：支持 PgVector 语义检索、Elasticsearch BM25、混合检索与 rerank。\n- 记忆系统：支持短期会话记忆、长期记忆、情节记忆和工作记忆扩展。\n- MCP 工具：支持 SSE 和 stdio 两类 MCP 工具接入。\n- 可观测性：支持日志结构化、Prometheus 指标、Grafana 看板、Jaeger Trace。\n- 安全增强：包含敏感工具审批、PII 脱敏、输出审核、幂等请求和限流能力。\n\n## 架构总览\n\n```mermaid\nflowchart TB\n    User[\"用户 \u002F 前端页面\"] --> Trigger[\"trigger 接口层\"]\n    Trigger --> Domain[\"domain 领域层\"]\n    Domain --> Router[\"策略路由 \u002F 意图识别\"]\n    Domain --> Memory[\"记忆系统\"]\n    Domain --> Rag[\"RAG 检索\"]\n    Domain --> Tool[\"MCP 工具调用\"]\n    Domain --> LLM[\"LLM \u002F Embedding \u002F Rerank\"]\n    Memory --> MySQL[\"MySQL\"]\n    Memory --> Redis[\"Redis\"]\n    Rag --> PgVector[\"PostgreSQL + pgvector\"]\n    Rag --> ES[\"Elasticsearch\"]\n    Tool --> MCP[\"MCP Servers\"]\n    Trigger --> Observe[\"观测接口\"]\n    Observe --> Grafana[\"Grafana \u002F Prometheus \u002F Jaeger\"]\n```\n\n## 模块说明\n\n| 模块 | 说明 |\n|---|---|\n| `ai-agent-station-study-api` | 对外接口、DTO、统一响应对象 |\n| `ai-agent-station-study-app` | Spring Boot 启动类、配置、静态页面、MyBatis 映射 |\n| `ai-agent-station-study-domain` | Agent 编排、执行策略、RAG、记忆、安全与路由逻辑 |\n| `ai-agent-station-study-infrastructure` | 数据访问、Repository、外部存储适配 |\n| `ai-agent-station-study-trigger` | HTTP Controller、任务触发、管理接口 |\n| `ai-agent-station-study-types` | 通用类型、异常、任务调度基础能力 |\n| `docs\u002Fdev-ops` | 本地部署、数据库脚本、观测组件和 MCP 配置样例 |\n| `mcp-server-hmdp` \u002F `mcp-servers` | MCP 服务示例 |\n\n## Auto Agent 执行流程\n\n```mermaid\nsequenceDiagram\n    participant U as 用户\n    participant C as AiAgentController\n    participant D as AgentDispatchService\n    participant R as UnifiedAgentRouter\n    participant A as AutoAgentExecuteStrategy\n    participant L as LLM\n    participant T as MCP Tools\n    participant M as Memory\u002FRAG\n\n    U->>C: POST \u002Fapi\u002Fv1\u002Fagent\u002Fauto_agent\n    C->>D: dispatch(agentId, message, sessionId)\n    D->>R: 判断意图和执行策略\n    R-->>D: auto \u002F flow \u002F fixed\n    D->>A: 执行 Auto Agent\n    A->>M: 读取上下文、记忆和检索结果\n    A->>L: Step1 分析任务\n    A->>L: Step2 规划执行\n    A->>T: 调用 MCP 工具\n    A->>L: Step3 质量检查\n    A->>L: Step4 总结输出\n    C-->>U: SSE 流式响应\n```\n\n## RAG 与记忆链路\n\n```mermaid\nflowchart LR\n    Query[\"用户问题\"] --> Rewrite[\"Query Rewrite\"]\n    Rewrite --> Decide[\"RAG Router\"]\n    Decide -->|需要检索| Hybrid[\"Hybrid Retriever\"]\n    Decide -->|无需检索| Chat[\"直接进入对话\"]\n    Hybrid --> Vector[\"PgVector 语义召回\"]\n    Hybrid --> BM25[\"Elasticsearch BM25\"]\n    Vector --> Rerank[\"Cross-Encoder \u002F LLM Rerank\"]\n    BM25 --> Rerank\n    Rerank --> Context[\"组装上下文\"]\n    Context --> Agent[\"Agent 执行\"]\n    Chat --> Agent\n    Agent --> Store[\"写入会话记忆 \u002F 长期记忆 \u002F 事件日志\"]\n```\n\n## 运行前准备\n\n请先启动外部依赖服务：\n\n- MySQL：默认 `127.0.0.1:13306`\n- PostgreSQL + pgvector：默认 `127.0.0.1:15432`\n- Redis：默认 `127.0.0.1:16379`\n- Elasticsearch：默认 `127.0.0.1:9200`\n- Logstash：默认 `127.0.0.1:4560`\n- Jaeger OTLP：默认 `127.0.0.1:4318`\n\n敏感信息通过环境变量注入，不要写入仓库：\n\n```bash\nLLM_API_KEY=your-llm-key\nEMBEDDING_API_KEY=your-embedding-key\nOPENAI_API_KEY=your-openai-compatible-key\nGITHUB_PERSONAL_ACCESS_TOKEN=your-github-token\nGRAFANA_API_KEY=your-grafana-key\nCSDN_API_COOKIE=your-csdn-cookie\nWEIXIN_API_APP_SECRET=your-weixin-secret\n```\n\n## 本地构建\n\n```bash\nmvn \"-Dmaven.test.skip=true\" package\n```\n\n说明：项目内包含较多端到端测试和 MCP 验证测试，需要完整外部服务与私有账号环境。普通构建建议跳过测试；需要压测或验收时再单独运行指定测试类。\n\n## 本地启动\n\n```bash\njava -jar ai-agent-station-study-app\u002Ftarget\u002Fai-agent-station-study-app.jar\n```\n\n默认激活 `dev` 配置，服务端口为 `8099`。\n\n启动后可访问：\n\n- 健康检查：`http:\u002F\u002Flocalhost:8099\u002Factuator\u002Fhealth`\n- 前端页面：`http:\u002F\u002Flocalhost:8099\u002Findex.html`\n- Agent 配置页：`http:\u002F\u002Flocalhost:8099\u002Fagent-config.html`\n- 观测页：`http:\u002F\u002Flocalhost:8099\u002Fobserve.html`\n\n## 常用接口\n\n### 查询可用 Agent\n\n```http\nGET \u002Fapi\u002Fv1\u002Fagent\u002Fquery_available_agents\n```\n\n### Auto Agent 流式对话\n\n```http\nPOST \u002Fapi\u002Fv1\u002Fagent\u002Fauto_agent\nContent-Type: application\u002Fjson\nAccept: text\u002Fevent-stream\n```\n\n```json\n{\n  \"aiAgentId\": \"3\",\n  \"message\": \"请总结一下当前系统的核心能力\",\n  \"sessionId\": \"session_demo_001\",\n  \"maxStep\": 5\n}\n```\n\n响应使用 SSE 格式返回，前端可按 `data:` 行解析 JSON 内容。\n\n## 安全说明\n\n公开仓库中不应包含：\n\n- 真实 API Key、Access Token、Cookie、私钥；\n- 本地 `.local-config`、IDE 配置、浏览器状态；\n- 运行日志、崩溃日志、压测报告；\n- 个人历史对话、面试资料、临时 Markdown；\n- 生产或个人数据库备份。\n\n本仓库已经按上述规则清理，后续提交前建议继续执行敏感信息扫描。\n","TAgent 是一个基于 Spring Boot 和领域驱动设计（DDD）的 AI 智能体学习平台，旨在将模型调用、Agent 编排、RAG 检索、记忆系统等功能整合为一个可本地运行并支持扩展的工程示例。其核心功能包括自动任务分析与执行、按固定步骤拆解任务的 Flow Agent、支持多种检索方式的 RAG 系统、以及多层次的记忆管理。此外，项目还具备良好的可观测性和安全性，如日志结构化、Prometheus 监控指标集成、敏感信息审批等。适用于需要构建复杂 AI 应用场景的企业或开发者，尤其是那些希望利用现成组件快速搭建智能代理服务的团队。",2,"2026-06-11 04:00:52","CREATED_QUERY"]